StateTest.php 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Indexer\Test\Unit\Model\Mview\View;
  7. class StateTest extends \PHPUnit\Framework\TestCase
  8. {
  9. /**
  10. * @var \Magento\Indexer\Model\Mview\View\State
  11. */
  12. protected $model;
  13. /**
  14. * @var \Magento\Framework\Model\Context|\PHPUnit_Framework_MockObject_MockObject
  15. */
  16. protected $_contextMock;
  17. /**
  18. * @var \Magento\Framework\Registry|\PHPUnit_Framework_MockObject_MockObject
  19. */
  20. protected $_registryMock;
  21. /**
  22. * @var \Magento\Indexer\Model\ResourceModel\Mview\View\State|\PHPUnit_Framework_MockObject_MockObject
  23. */
  24. protected $_resourceMock;
  25. /**
  26. * @var \Magento\Indexer\Model\ResourceModel\Mview\View\State\Collection|\PHPUnit_Framework_MockObject_MockObject
  27. */
  28. protected $_resourceCollectionMock;
  29. protected function setUp()
  30. {
  31. $this->_contextMock = $this->createPartialMock(\Magento\Framework\Model\Context::class, ['getEventDispatcher']);
  32. $eventManagerMock = $this->createMock(\Magento\Framework\Event\ManagerInterface::class);
  33. $this->_contextMock->expects($this->any())->method('getEventDispatcher')->willReturn($eventManagerMock);
  34. $this->_registryMock = $this->createMock(\Magento\Framework\Registry::class);
  35. $this->_resourceMock =
  36. $this->createMock(\Magento\Indexer\Model\ResourceModel\Mview\View\State::class);
  37. $this->_resourceCollectionMock = $this->createMock(
  38. \Magento\Indexer\Model\ResourceModel\Mview\View\State\Collection::class
  39. );
  40. $this->model = new \Magento\Indexer\Model\Mview\View\State(
  41. $this->_contextMock,
  42. $this->_registryMock,
  43. $this->_resourceMock,
  44. $this->_resourceCollectionMock
  45. );
  46. }
  47. public function testLoadByView()
  48. {
  49. $viewId = 'view_id';
  50. $this->_resourceMock->expects($this->once())->method('load')->with($this->model, $viewId)->willReturnSelf();
  51. $this->model->loadByView($viewId);
  52. $this->assertEquals($viewId, $this->model->getViewId());
  53. }
  54. public function testBeforeSave()
  55. {
  56. $this->assertEquals(null, $this->model->getUpdated());
  57. $this->model->beforeSave();
  58. $this->assertTrue(($this->model->getUpdated() != null));
  59. }
  60. public function testSetterAndGetter()
  61. {
  62. $setData = 'data';
  63. $this->model->setMode($setData);
  64. $this->assertEquals($setData, $this->model->getMode());
  65. $this->model->setStatus($setData);
  66. $this->assertEquals($setData, $this->model->getStatus());
  67. $this->model->setUpdated($setData);
  68. $this->assertEquals($setData, $this->model->getUpdated());
  69. $this->model->setVersionId($setData);
  70. $this->assertEquals($setData, $this->model->getVersionId());
  71. }
  72. }