DbTest.php 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Cron\Test\Unit\Model\Config\Reader;
  7. use Magento\Framework\App\Config;
  8. use Magento\GoogleAdwords\Block\Code;
  9. /**
  10. * Test reading for cron parameters from data base storage
  11. *
  12. * @package Magento\Cron\Test\Unit\Model\Config\Reader
  13. */
  14. class DbTest extends \PHPUnit\Framework\TestCase
  15. {
  16. /**
  17. * @var Config | \PHPUnit_Framework_MockObject_MockObject
  18. */
  19. protected $config;
  20. /**
  21. * @var \Magento\Cron\Model\Config\Converter\Db|\PHPUnit_Framework_MockObject_MockObject
  22. */
  23. protected $_converter;
  24. /**
  25. * @var \Magento\Cron\Model\Config\Reader\Db
  26. */
  27. protected $_reader;
  28. /**
  29. * Initialize parameters
  30. */
  31. protected function setUp()
  32. {
  33. $this->config = $this->getMockBuilder(Config::class)
  34. ->disableOriginalConstructor()
  35. ->getMock();
  36. $this->_converter = new \Magento\Cron\Model\Config\Converter\Db();
  37. $this->_reader = new \Magento\Cron\Model\Config\Reader\Db($this->config, $this->_converter);
  38. }
  39. /**
  40. * Testing method execution
  41. */
  42. public function testGet()
  43. {
  44. $job1 = ['schedule' => ['cron_expr' => '* * * * *']];
  45. $job2 = ['schedule' => ['cron_expr' => '1 1 1 1 1']];
  46. $data = ['crontab' => ['default' => ['jobs' => ['job1' => $job1, 'job2' => $job2]]]];
  47. $this->config->expects($this->once())
  48. ->method('get')
  49. ->with('system', 'default')
  50. ->will($this->returnValue($data));
  51. $expected = [
  52. 'default' => [
  53. 'job1' => ['schedule' => $job1['schedule']['cron_expr']],
  54. 'job2' => ['schedule' => $job2['schedule']['cron_expr']],
  55. ],
  56. ];
  57. $result = $this->_reader->get();
  58. $this->assertEquals($expected['default']['job1']['schedule'], $result['default']['job1']['schedule']);
  59. $this->assertEquals($expected['default']['job2']['schedule'], $result['default']['job2']['schedule']);
  60. }
  61. }