* Refactor upgradeModel::saveLogs, and add its unit test.
This commit is contained in:
@@ -3485,13 +3485,14 @@ class upgradeModel extends model
|
||||
}
|
||||
|
||||
/**
|
||||
* Save Logs.
|
||||
* 存储日志。
|
||||
* Save logs.
|
||||
*
|
||||
* @param string $log
|
||||
* @param string $log
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function saveLogs($log)
|
||||
public function saveLogs(string $log): void
|
||||
{
|
||||
$logFile = $this->getLogFile();
|
||||
$log = date('Y-m-d H:i:s') . ' ' . trim($log) . "\n";
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
#!/usr/bin/env php
|
||||
<?php
|
||||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
|
||||
title=测试 upgradeModel->saveLogs();
|
||||
cid=1
|
||||
|
||||
- 测试记录日志 log 1,然后获取最后一条日志 @log 1
|
||||
- 测试记录日志 log 2,然后获取最后一条日志 @log 2
|
||||
- 测试记录日志 log 3,然后获取最后一条日志 @log 3
|
||||
- 测试记录日志 log 4,然后获取最后一条日志 @log 4
|
||||
- 测试记录日志 空,然后获取最后一条日志 @0
|
||||
|
||||
**/
|
||||
|
||||
include dirname(__FILE__, 5) . '/test/lib/init.php';
|
||||
include dirname(__FILE__, 2) . '/upgrade.class.php';
|
||||
|
||||
$logs = array('log 1', 'log 2', 'log 3', 'log 4', '');
|
||||
|
||||
$upgrade = new upgradeTest();
|
||||
r($upgrade->saveLogsTest($logs[0])) && p() && e('log 1'); // 测试记录日志 log 1,然后获取最后一条日志
|
||||
r($upgrade->saveLogsTest($logs[1])) && p() && e('log 2'); // 测试记录日志 log 2,然后获取最后一条日志
|
||||
r($upgrade->saveLogsTest($logs[2])) && p() && e('log 3'); // 测试记录日志 log 3,然后获取最后一条日志
|
||||
r($upgrade->saveLogsTest($logs[3])) && p() && e('log 4'); // 测试记录日志 log 4,然后获取最后一条日志
|
||||
r($upgrade->saveLogsTest($logs[4])) && p() && e('0'); // 测试记录日志 空,然后获取最后一条日志
|
||||
@@ -282,4 +282,23 @@ class upgradeTest
|
||||
global $tester;
|
||||
return $tester->dao->select('count(1) as count')->from(TABLE_USERVIEW)->fetch('count');
|
||||
}
|
||||
|
||||
/**
|
||||
* 测试存储日志。
|
||||
* Test save logs.
|
||||
*
|
||||
* @param string $log
|
||||
* @access public
|
||||
* @return string
|
||||
*/
|
||||
public function saveLogsTest(string $log): string
|
||||
{
|
||||
$this->objectModel->saveLogs($log);
|
||||
$logFile = $this->getLogFile();
|
||||
$logContent = file_get_contents($logFile);
|
||||
$logContent = explode("\n", $logContent);
|
||||
array_pop($logContent);
|
||||
return substr(array_pop($logContent), 20, 30);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user