GetPageByIdentifierTest.php 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Cms\Test\Unit\Model;
  7. use Magento\Cms\Model\GetPageByIdentifier;
  8. /**
  9. * Test for Magento\Cms\Model\GetPageByIdentifier
  10. */
  11. class GetPageByIdentifierTest extends \PHPUnit\Framework\TestCase
  12. {
  13. /**
  14. * @var GetPageByIdentifier
  15. */
  16. protected $getPageByIdentifierCommand;
  17. /**
  18. * @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Cms\Model\Page
  19. */
  20. protected $page;
  21. /**
  22. * @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Cms\Model\PageFactory
  23. */
  24. protected $pageFactory;
  25. /**
  26. * @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Cms\Model\ResourceModel\Page
  27. */
  28. protected $pageResource;
  29. public function setUp()
  30. {
  31. $this->pageFactory = $this->getMockBuilder(\Magento\Cms\Model\PageFactory::class)
  32. ->disableOriginalConstructor(true)
  33. ->setMethods(['create'])
  34. ->getMock();
  35. $this->pageResource = $this->getMockBuilder(\Magento\Cms\Model\ResourceModel\Page::class)
  36. ->disableOriginalConstructor(true)
  37. ->getMock();
  38. $this->page = $this->getMockBuilder(\Magento\Cms\Model\Page::class)
  39. ->disableOriginalConstructor()
  40. ->setMethods(['setStoreId', 'getId'])
  41. ->getMock();
  42. $this->getPageByIdentifierCommand = new GetPageByIdentifier($this->pageFactory, $this->pageResource);
  43. }
  44. /**
  45. * Test for getByIdentifier method
  46. */
  47. public function testGetByIdentifier()
  48. {
  49. $identifier = 'home';
  50. $storeId = 0;
  51. $this->pageFactory->expects($this->once())
  52. ->method('create')
  53. ->willReturn($this->page);
  54. $this->page->expects($this->once())
  55. ->method('setStoreId')
  56. ->willReturn($this->page);
  57. $this->page->expects($this->once())
  58. ->method('getId')
  59. ->willReturn(1);
  60. $this->pageResource->expects($this->once())
  61. ->method('load')
  62. ->with($this->page, $identifier)
  63. ->willReturn($this->page);
  64. $this->getPageByIdentifierCommand->execute($identifier, $storeId);
  65. }
  66. }