diff options
| author | 2023-03-27 00:36:21 +0200 | |
|---|---|---|
| committer | 2023-03-27 00:36:21 +0200 | |
| commit | 0317683155a3966830f3972fde1562087f65cf94 (patch) | |
| tree | d2806e337c54d449704e6a8f3f8d1887d6c174f2 /app/Models/LogDAO.php | |
| parent | f3af3f0f3d4da8023c5e918545d47a51afc4b6c1 (diff) | |
Add test and type hinting (#5087)
* - Add test and type hinting
- pass PhpStan Level 9
* fix dump
* fix style
* fix visibility
* fix style
* add test
* add test
* add test
* add test
* add test
* Simplify
* cleaning after test
* remove space
* fix style
* use specific log file for test
* Remarque's from Alkarex
* A few more details
---------
Co-authored-by: Luc <sanchezluc+freshrss@gmail.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
Diffstat (limited to 'app/Models/LogDAO.php')
| -rw-r--r-- | app/Models/LogDAO.php | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/app/Models/LogDAO.php b/app/Models/LogDAO.php index 6e5bf171b..080af54ea 100644 --- a/app/Models/LogDAO.php +++ b/app/Models/LogDAO.php @@ -1,19 +1,21 @@ <?php -class FreshRSS_LogDAO { - - private static function logPath(): string { - return USERS_PATH . '/' . (Minz_User::name() ?? Minz_User::INTERNAL_USER) . '/' . LOG_FILENAME; +final class FreshRSS_LogDAO { + public static function logPath(?string $logFileName = null): string { + if ($logFileName === null || $logFileName === '') { + $logFileName = LOG_FILENAME; + } + return USERS_PATH . '/' . (Minz_User::name() ?? Minz_User::INTERNAL_USER) . '/' . $logFileName; } /** @return array<FreshRSS_Log> */ - public static function lines(): array { - $logs = array(); - $handle = @fopen(self::logPath(), 'r'); + public static function lines(?string $logFileName = null): array { + $logs = []; + $handle = @fopen(self::logPath($logFileName), 'r'); if ($handle) { while (($line = fgets($handle)) !== false) { if (preg_match('/^\[([^\[]+)\] \[([^\[]+)\] --- (.*)$/', $line, $matches)) { - $myLog = new FreshRSS_Log (); + $myLog = new FreshRSS_Log(); $myLog->_date($matches[1]); $myLog->_level($matches[2]); $myLog->_info($matches[3]); @@ -25,8 +27,8 @@ class FreshRSS_LogDAO { return array_reverse($logs); } - public static function truncate(): void { - file_put_contents(self::logPath(), ''); + public static function truncate(?string $logFileName = null): void { + file_put_contents(self::logPath($logFileName), ''); if (FreshRSS_Auth::hasAccess('admin')) { file_put_contents(ADMIN_LOG, ''); file_put_contents(API_LOG, ''); |
