mirror of
https://github.com/zhamao-robot/zhamao-framework.git
synced 2026-07-21 15:45:36 +08:00
add FileSystemTest
This commit is contained in:
@@ -4,8 +4,10 @@ declare(strict_types=1);
|
||||
|
||||
namespace Tests\Trait;
|
||||
|
||||
use Prophecy\Argument;
|
||||
use Prophecy\Prophet;
|
||||
use Psr\Log\AbstractLogger;
|
||||
use Psr\Log\LogLevel;
|
||||
|
||||
/**
|
||||
* 模拟 Logger 行为
|
||||
@@ -36,9 +38,21 @@ trait HasLogger
|
||||
private function startMockLogger(): void
|
||||
{
|
||||
$logger = $this->prophet->prophesize(AbstractLogger::class);
|
||||
$logger->log()->will(function ($args) {
|
||||
$this->mockLog(...$args);
|
||||
});
|
||||
$levels = [
|
||||
LogLevel::EMERGENCY,
|
||||
LogLevel::ALERT,
|
||||
LogLevel::CRITICAL,
|
||||
LogLevel::ERROR,
|
||||
LogLevel::WARNING,
|
||||
LogLevel::NOTICE,
|
||||
LogLevel::INFO,
|
||||
LogLevel::DEBUG,
|
||||
];
|
||||
$log_it = fn (...$args) => $this->mockLog(...$args);
|
||||
foreach ($levels as $level) {
|
||||
$logger->{$level}(Argument::type('string'), Argument::any())->will(fn ($args) => $log_it($level, ...$args));
|
||||
}
|
||||
$logger->log(Argument::in($levels), Argument::type('string'), Argument::any())->will(fn ($args) => $log_it(...$args));
|
||||
ob_logger_register($logger->reveal());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user