QueryLogDisableCommandTest.php 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Developer\Test\Unit\Console\Command;
  7. use Magento\Developer\Console\Command\QueryLogDisableCommand;
  8. use Magento\Framework\App\DeploymentConfig\Writer;
  9. use Magento\Framework\Config\File\ConfigFilePool;
  10. use Magento\Framework\DB\Logger\LoggerProxy;
  11. use Symfony\Component\Console\Tester\CommandTester;
  12. /**
  13. * Class QueryLogDisableCommandTest
  14. *
  15. * Tests dev:query-log:disable command.
  16. * Tests that the correct configuration is passed to the deployment config writer.
  17. */
  18. class QueryLogDisableCommandTest extends \PHPUnit\Framework\TestCase
  19. {
  20. /**
  21. * @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Framework\App\DeploymentConfig\Writer
  22. */
  23. private $configWriter;
  24. /**
  25. * @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Developer\Console\Command\QueryLogEnableCommand
  26. */
  27. private $command;
  28. /**
  29. * {@inheritdoc}
  30. */
  31. public function setUp()
  32. {
  33. $this->configWriter = $this->getMockBuilder(Writer::class)
  34. ->disableOriginalConstructor()
  35. ->getMock();
  36. $this->command = new QueryLogDisableCommand($this->configWriter);
  37. }
  38. /**
  39. * Test execute()
  40. */
  41. public function testExecute()
  42. {
  43. $data = [LoggerProxy::PARAM_ALIAS => LoggerProxy::LOGGER_ALIAS_DISABLED];
  44. $this->configWriter
  45. ->expects($this->once())
  46. ->method('saveConfig')
  47. ->with([ConfigFilePool::APP_ENV => [LoggerProxy::CONF_GROUP_NAME => $data]]);
  48. $commandTester = new CommandTester($this->command);
  49. $commandTester->execute([]);
  50. $this->assertSame(
  51. QueryLogDisableCommand::SUCCESS_MESSAGE . PHP_EOL,
  52. $commandTester->getDisplay()
  53. );
  54. }
  55. }