LoggerTest.php 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Migration\Logger;
  7. class LoggerTest extends \PHPUnit\Framework\TestCase
  8. {
  9. /** @var Logger */
  10. protected $logger;
  11. /**
  12. * @return void
  13. */
  14. protected function setUp()
  15. {
  16. $this->logger = new Logger();
  17. }
  18. /**
  19. * @return void
  20. */
  21. public function testGetName()
  22. {
  23. $someName = 'Some name';
  24. $logger = new Logger($someName);
  25. $this->assertEquals($someName, $logger->getName());
  26. }
  27. /**
  28. * @covers Migration\Logger\Logger::addRecord
  29. * @covers Migration\Logger\Logger::getMessages
  30. * @return void
  31. */
  32. public function testAddRecord()
  33. {
  34. $infoMessage = 'info1';
  35. $errorMessage = 'error1';
  36. $consoleHandler = $this->getMockBuilder(\Migration\Logger\ConsoleHandler::class)
  37. ->disableOriginalConstructor()
  38. ->setMethods(['handle'])
  39. ->getMock();
  40. $consoleHandler->expects($this->any())->method('handle')->will($this->returnValue(true));
  41. $this->logger->pushHandler($consoleHandler);
  42. $this->logger->addRecord(\Monolog\Logger::INFO, $infoMessage);
  43. $this->logger->addRecord(\Monolog\Logger::ERROR, $errorMessage);
  44. $messages = \Migration\Logger\Logger::getMessages();
  45. $this->assertEquals($infoMessage, $messages[\Monolog\Logger::INFO][0]);
  46. $this->assertEquals($errorMessage, $messages[\Monolog\Logger::ERROR][0]);
  47. $this->logger->clearMessages();
  48. $this->assertEmpty(\Migration\Logger\Logger::getMessages());
  49. }
  50. }