GroupHandlerTest.php 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. namespace Test\Michel\Log;
  3. use Michel\Log\Handler\GroupHandler;
  4. use Michel\Log\Handler\MemoryHandler;
  5. use Michel\UniTester\TestCase;
  6. use Psr\Log\LogLevel;
  7. class GroupHandlerTest extends TestCase
  8. {
  9. protected function setUp(): void
  10. {
  11. // TODO: Implement setUp() method.
  12. }
  13. protected function tearDown(): void
  14. {
  15. // TODO: Implement tearDown() method.
  16. }
  17. protected function execute(): void
  18. {
  19. $this->testHandle();
  20. }
  21. private function testHandle()
  22. {
  23. $storage1 = [];
  24. $storage2 = [];
  25. $handler1 = new MemoryHandler($storage1);
  26. $handler2 = new MemoryHandler($storage2);
  27. $groupHandler = new GroupHandler([$handler1, $handler2]);
  28. $vars = [
  29. 'level' => LogLevel::INFO,
  30. 'message' => 'test message',
  31. 'timestamp' => '2023-01-01 00:00:00'
  32. ];
  33. $groupHandler->handle($vars);
  34. $this->assertEquals(1, count($storage1));
  35. $this->assertEquals(1, count($storage2));
  36. $this->assertStringContains($storage1[0], 'test message');
  37. $this->assertStringContains($storage2[0], 'test message');
  38. }
  39. }