paulgoughbooks_old
This repository has no backups
This repository's network speed is throttled to 100KB/sec
Upgrade your account to fix these warnings, or use backups.vc for automated backups
@ 2
paulgoughbooks_old / trunk / system / Test / TestLogger.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 |
<?php namespace CodeIgniter\Test; use CodeIgniter\Log\Logger; class TestLogger extends Logger { protected static $op_logs = []; //-------------------------------------------------------------------- /** * The log method is overridden so that we can store log history during * the tests to allow us to check ->assertLogged() methods. * * @param string $level * @param string $message * @param array $context * * @return boolean */ public function log($level, $message, array $context = []): bool { // While this requires duplicate work, we want to ensure // we have the final message to test against. $log_message = $this->interpolate($message, $context); // Determine the file and line by finding the first // backtrace that is not part of our logging system. $trace = debug_backtrace(); $file = null; foreach ($trace as $row) { if (! in_array($row['function'], ['log', 'log_message'])) { $file = basename($row['file'] ?? ''); break; } } self::$op_logs[] = [ 'level' => $level, 'message' => $log_message, 'file' => $file, ]; // Let the parent do it's thing. return parent::log($level, $message, $context); } //-------------------------------------------------------------------- /** * Used by CIUnitTestCase class to provide ->assertLogged() methods. * * @param string $level * @param string $message * * @return boolean */ public static function didLog(string $level, $message) { foreach (self::$op_logs as $log) { if (strtolower($log['level']) === strtolower($level) && $message === $log['message']) { return true; } } return false; } //-------------------------------------------------------------------- // Expose cleanFileNames() public function cleanup($file) { return $this->cleanFileNames($file); } } |
Commits for paulgoughbooks_old/trunk/system/Test/TestLogger.php
Revision | Author | Commited | Message |
---|---|---|---|
2 | tporter | Tue 03 Nov, 2020 08:50:21 +0000 | Migration of Paul Goughs Books site to Codeignitor 4 |