diff --git a/app/code/Magento/Cms/Controller/Adminhtml/Page/Save.php b/app/code/Magento/Cms/Controller/Adminhtml/Page/Save.php index f2d10d59e02c499fca965ce2a38a03804adc3654..45a74260e927001bcf39148dc2f5d9a9574d0189 100644 --- a/app/code/Magento/Cms/Controller/Adminhtml/Page/Save.php +++ b/app/code/Magento/Cms/Controller/Adminhtml/Page/Save.php @@ -30,18 +30,38 @@ class Save extends \Magento\Backend\App\Action */ protected $dataPersistor; + /** + * @var \Magento\Cms\Model\PageFactory + */ + private $pageFactory; + + /** + * @var \Magento\Cms\Api\PageRepositoryInterface + */ + private $pageRepository; + /** * @param Action\Context $context * @param PostDataProcessor $dataProcessor * @param DataPersistorInterface $dataPersistor + * @param \Magento\Cms\Model\PageFactory $pageFactory + * @param \Magento\Cms\Api\PageRepositoryInterface $pageRepository + * */ public function __construct( Action\Context $context, PostDataProcessor $dataProcessor, - DataPersistorInterface $dataPersistor + DataPersistorInterface $dataPersistor, + \Magento\Cms\Model\PageFactory $pageFactory = null, + \Magento\Cms\Api\PageRepositoryInterface $pageRepository = null ) { $this->dataProcessor = $dataProcessor; $this->dataPersistor = $dataPersistor; + $this->pageFactory = $pageFactory + ?: \Magento\Framework\App\ObjectManager::getInstance()->get(\Magento\Cms\Model\PageFactory::class); + $this->pageRepository = $pageRepository + ?: \Magento\Framework\App\ObjectManager::getInstance() + ->get(\Magento\Cms\Api\PageRepositoryInterface::class); parent::__construct($context); } @@ -66,7 +86,7 @@ class Save extends \Magento\Backend\App\Action } /** @var \Magento\Cms\Model\Page $model */ - $model = $this->_objectManager->create(\Magento\Cms\Model\Page::class); + $model = $this->pageFactory->create(); $id = $this->getRequest()->getParam('page_id'); if ($id) { @@ -85,7 +105,7 @@ class Save extends \Magento\Backend\App\Action } try { - $model->save(); + $this->pageRepository->save($model); $this->messageManager->addSuccess(__('You saved the page.')); $this->dataPersistor->clear('cms_page'); if ($this->getRequest()->getParam('back')) { diff --git a/app/code/Magento/Cms/Test/Unit/Controller/Adminhtml/Page/SaveTest.php b/app/code/Magento/Cms/Test/Unit/Controller/Adminhtml/Page/SaveTest.php index 7495a2ad1bad924c241e9fae564785574f13a3a1..12057d2681c20cf8cbc5822d6180b9df96b095ee 100644 --- a/app/code/Magento/Cms/Test/Unit/Controller/Adminhtml/Page/SaveTest.php +++ b/app/code/Magento/Cms/Test/Unit/Controller/Adminhtml/Page/SaveTest.php @@ -13,73 +13,61 @@ class SaveTest extends \PHPUnit_Framework_TestCase /** * @var \Magento\Framework\App\RequestInterface|\PHPUnit_Framework_MockObject_MockObject */ - protected $requestMock; + private $requestMock; /** * @var \Magento\Cms\Controller\Adminhtml\Page\PostDataProcessor|\PHPUnit_Framework_MockObject_MockObject */ - protected $dataProcessorMock; + private $dataProcessorMock; /** * @var \Magento\Framework\App\Request\DataPersistorInterface|\PHPUnit_Framework_MockObject_MockObject */ - protected $dataPersistorMock; + private $dataPersistorMock; /** * @var \Magento\Backend\Model\View\Result\RedirectFactory|\PHPUnit_Framework_MockObject_MockObject */ - protected $resultRedirectFactory; + private $resultRedirectFactory; /** * @var \Magento\Backend\Model\View\Result\Redirect|\PHPUnit_Framework_MockObject_MockObject */ - protected $resultRedirect; + private $resultRedirect; /** - * @var \Magento\Backend\App\Action\Context|\PHPUnit_Framework_MockObject_MockObject - */ - protected $contextMock; - - /** - * @var \Magento\Framework\ObjectManager\ObjectManager|\PHPUnit_Framework_MockObject_MockObject - */ - protected $objectManagerMock; - - /** - * @var \Magento\Cms\Model\Page|\PHPUnit_Framework_MockObject_MockObject $pageMock + * @var \Magento\Framework\Message\ManagerInterface|\PHPUnit_Framework_MockObject_MockObject */ - protected $pageMock; + private $messageManagerMock; /** - * @var \Magento\Framework\Message\ManagerInterface|\PHPUnit_Framework_MockObject_MockObject + * @var \Magento\Framework\Event\ManagerInterface|\PHPUnit_Framework_MockObject_MockObject */ - protected $messageManagerMock; + private $eventManagerMock; /** - * @var \Magento\Framework\Event\ManagerInterface|\PHPUnit_Framework_MockObject_MockObject + * @var \Magento\Cms\Model\PageFactory|\PHPUnit_Framework_MockObject_MockObject */ - protected $eventManagerMock; + private $pageFactory; /** - * @var \Magento\Framework\TestFramework\Unit\Helper\ObjectManager + * @var \Magento\Cms\Api\PageRepositoryInterface|\PHPUnit_Framework_MockObject_MockObject */ - protected $objectManager; + private $pageRepository; /** * @var \Magento\Cms\Controller\Adminhtml\Page\Save */ - protected $saveController; + private $saveController; /** * @var int */ - protected $pageId = 1; + private $pageId = 1; protected function setUp() { - $this->objectManager = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this); - - $this->contextMock = $this->getMock(\Magento\Backend\App\Action\Context::class, [], [], '', false); + $objectManager = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this); $this->resultRedirectFactory = $this->getMockBuilder(\Magento\Backend\Model\View\Result\RedirectFactory::class) ->disableOriginalConstructor() @@ -91,69 +79,37 @@ class SaveTest extends \PHPUnit_Framework_TestCase $this->resultRedirectFactory->expects($this->atLeastOnce()) ->method('create') ->willReturn($this->resultRedirect); - - $this->dataProcessorMock = $this->getMock( - \Magento\Cms\Controller\Adminhtml\Page\PostDataProcessor::class, - ['filter'], - [], - '', - false - ); - + $this->dataProcessorMock = $this->getMockBuilder( + \Magento\Cms\Controller\Adminhtml\Page\PostDataProcessor::class + )->setMethods(['filter'])->disableOriginalConstructor()->getMock(); $this->dataPersistorMock = $this->getMockBuilder(\Magento\Framework\App\Request\DataPersistorInterface::class) ->getMock(); - - $this->requestMock = $this->getMockForAbstractClass( - \Magento\Framework\App\RequestInterface::class, - [], - '', - false, - true, - true, - ['getParam', 'getPostValue'] - ); - - $this->pageMock = $this->getMockBuilder( - \Magento\Cms\Model\Page::class - )->disableOriginalConstructor()->getMock(); - - $this->messageManagerMock = $this->getMock( - \Magento\Framework\Message\ManagerInterface::class, - [], - [], - '', - false - ); - - $this->eventManagerMock = $this->getMockForAbstractClass( - \Magento\Framework\Event\ManagerInterface::class, - [], - '', - false, - true, - true, - ['dispatch'] - ); - - $this->objectManagerMock = $this->getMockBuilder(\Magento\Framework\ObjectManager\ObjectManager::class) + $this->requestMock = $this->getMockBuilder(\Magento\Framework\App\RequestInterface::class) + ->setMethods(['getParam', 'getPostValue']) + ->getMockForAbstractClass(); + $this->messageManagerMock = $this->getMockBuilder(\Magento\Framework\Message\ManagerInterface::class) + ->getMockForAbstractClass(); + $this->eventManagerMock = $this->getMockBuilder(\Magento\Framework\Event\ManagerInterface::class) + ->setMethods(['dispatch']) + ->getMockForAbstractClass(); + $this->pageFactory = $this->getMockBuilder(\Magento\Cms\Model\PageFactory::class) ->disableOriginalConstructor() - ->setMethods(['get', 'create']) + ->setMethods(['create']) ->getMock(); - - $this->contextMock->expects($this->any())->method('getRequest')->willReturn($this->requestMock); - $this->contextMock->expects($this->any())->method('getObjectManager')->willReturn($this->objectManagerMock); - $this->contextMock->expects($this->any())->method('getMessageManager')->willReturn($this->messageManagerMock); - $this->contextMock->expects($this->any())->method('getEventManager')->willReturn($this->eventManagerMock); - $this->contextMock->expects($this->any()) - ->method('getResultRedirectFactory') - ->willReturn($this->resultRedirectFactory); - - $this->saveController = $this->objectManager->getObject( + $this->pageRepository = $this->getMockBuilder(\Magento\Cms\Api\PageRepositoryInterface::class) + ->disableOriginalConstructor() + ->getMockForAbstractClass(); + $this->saveController = $objectManager->getObject( \Magento\Cms\Controller\Adminhtml\Page\Save::class, [ - 'context' => $this->contextMock, + 'request' => $this->requestMock, + 'messageManager' => $this->messageManagerMock, + 'eventManager' => $this->eventManagerMock, + 'resultRedirectFactory' => $this->resultRedirectFactory, 'dataProcessor' => $this->dataProcessorMock, 'dataPersistor' => $this->dataPersistorMock, + 'pageFactory' => $this->pageFactory, + 'pageRepository' => $this->pageRepository ] ); } @@ -190,20 +146,21 @@ class SaveTest extends \PHPUnit_Framework_TestCase ['back', null, false], ] ); - - $this->objectManagerMock->expects($this->atLeastOnce()) + $page = $this->getMockBuilder(\Magento\Cms\Model\Page::class) + ->disableOriginalConstructor() + ->getMock(); + $this->pageFactory->expects($this->atLeastOnce()) ->method('create') - ->with($this->equalTo(\Magento\Cms\Model\Page::class)) - ->willReturn($this->pageMock); + ->willReturn($page); - $this->pageMock->expects($this->any()) + $page->expects($this->any()) ->method('load') ->willReturnSelf(); - $this->pageMock->expects($this->any()) + $page->expects($this->any()) ->method('getId') ->willReturn(true); - $this->pageMock->expects($this->once())->method('setData'); - $this->pageMock->expects($this->once())->method('save'); + $page->expects($this->once())->method('setData'); + $this->pageRepository->expects($this->once())->method('save')->with($page); $this->dataPersistorMock->expects($this->any()) ->method('clear') @@ -240,20 +197,21 @@ class SaveTest extends \PHPUnit_Framework_TestCase $this->dataProcessorMock->expects($this->any()) ->method('filter') ->willReturnArgument(0); - - $this->objectManagerMock->expects($this->atLeastOnce()) + $page = $this->getMockBuilder(\Magento\Cms\Model\Page::class) + ->disableOriginalConstructor() + ->getMock(); + $this->pageFactory->expects($this->atLeastOnce()) ->method('create') - ->with($this->equalTo(\Magento\Cms\Model\Page::class)) - ->willReturn($this->pageMock); + ->willReturn($page); - $this->pageMock->expects($this->any()) + $page->expects($this->any()) ->method('load') ->willReturnSelf(); - $this->pageMock->expects($this->any()) + $page->expects($this->any()) ->method('getId') ->willReturn(true); - $this->pageMock->expects($this->once())->method('setData'); - $this->pageMock->expects($this->once())->method('save'); + $page->expects($this->once())->method('setData'); + $this->pageRepository->expects($this->once())->method('save')->with($page); $this->messageManagerMock->expects($this->once()) ->method('addSuccess') @@ -286,20 +244,22 @@ class SaveTest extends \PHPUnit_Framework_TestCase $this->dataProcessorMock->expects($this->any()) ->method('filter') ->willReturnArgument(0); - - $this->objectManagerMock->expects($this->atLeastOnce()) + $page = $this->getMockBuilder(\Magento\Cms\Model\Page::class) + ->disableOriginalConstructor() + ->getMock(); + $this->pageFactory->expects($this->atLeastOnce()) ->method('create') - ->with($this->equalTo(\Magento\Cms\Model\Page::class)) - ->willReturn($this->pageMock); + ->willReturn($page); - $this->pageMock->expects($this->any()) + $page->expects($this->any()) ->method('load') ->willReturnSelf(); - $this->pageMock->expects($this->any()) + $page->expects($this->any()) ->method('getId') ->willReturn(true); - $this->pageMock->expects($this->once())->method('setData'); - $this->pageMock->expects($this->once())->method('save')->willThrowException(new \Exception('Error message.')); + $page->expects($this->once())->method('setData'); + $this->pageRepository->expects($this->once())->method('save')->with($page) + ->willThrowException(new \Exception('Error message.')); $this->messageManagerMock->expects($this->never()) ->method('addSuccess'); diff --git a/app/code/Magento/CmsUrlRewrite/Test/Unit/Model/CmsPageUrlRewriteGeneratorTest.php b/app/code/Magento/CmsUrlRewrite/Test/Unit/Model/CmsPageUrlRewriteGeneratorTest.php new file mode 100644 index 0000000000000000000000000000000000000000..96a964c3d2d33aa7b0e49baec1db61666718a6a9 --- /dev/null +++ b/app/code/Magento/CmsUrlRewrite/Test/Unit/Model/CmsPageUrlRewriteGeneratorTest.php @@ -0,0 +1,133 @@ +<?php +/** + * Copyright © 2016 Magento. All rights reserved. + * See COPYING.txt for license details. + */ +namespace Magento\CmsUrlRewrite\Test\Unit\Model; + + +class CmsPageUrlRewriteGeneratorTest extends \PHPUnit_Framework_TestCase +{ + /** + * @var \Magento\Framework\TestFramework\Unit\Helper\ObjectManager + */ + private $objectManager; + + /** + * @var \Magento\Store\Model\StoreManagerInterface|\PHPUnit_Framework_MockObject_MockObject + */ + private $storeManager; + + /** + * @var \Magento\UrlRewrite\Service\V1\Data\UrlRewriteFactory|\PHPUnit_Framework_MockObject_MockObject + */ + private $urlRewriteFactory; + + /** + * @var \Magento\CmsUrlRewrite\Model\CmsPageUrlPathGenerator|\PHPUnit_Framework_MockObject_MockObject + */ + private $urlPathGenerator; + + /** + * @var \Magento\CmsUrlRewrite\Model\CmsPageUrlRewriteGenerator + */ + private $urlRewriteGenerator; + + /** + * @return void + */ + protected function setUp() + { + $this->objectManager = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this); + $this->storeManager = $this->getMockBuilder(\Magento\Store\Model\StoreManagerInterface::class) + ->getMockForAbstractClass(); + $this->urlRewriteFactory = $this->getMockBuilder(\Magento\UrlRewrite\Service\V1\Data\UrlRewriteFactory::class) + ->setMethods(['create']) + ->disableOriginalConstructor() + ->getMock(); + $this->urlPathGenerator = $this->getMockBuilder(\Magento\CmsUrlRewrite\Model\CmsPageUrlPathGenerator::class) + ->disableOriginalConstructor() + ->getMock(); + $this->urlRewriteGenerator = $this->objectManager->getObject( + \Magento\CmsUrlRewrite\Model\CmsPageUrlRewriteGenerator::class, + [ + 'storeManager' => $this->storeManager, + 'urlRewriteFactory' => $this->urlRewriteFactory, + 'cmsPageUrlPathGenerator' => $this->urlPathGenerator + ] + ); + } + + public function testGenerateForAllStores() + { + $initializesStores = [0]; + $cmsPageId = 1; + $cmsPage = $this->getMockBuilder(\Magento\Cms\Model\Page::class) + ->disableOriginalConstructor() + ->getMock(); + $cmsPage->expects($this->any())->method('getStores')->willReturn($initializesStores); + $store = $this->getMockBuilder(\Magento\Store\Api\Data\StoreInterface::class) + ->setMethods(['getStoreId']) + ->getMockForAbstractClass(); + $this->storeManager->expects($this->any())->method('getStores')->willReturn([$store]); + $store->expects($this->any())->method('getStoreId')->willReturn($initializesStores[0]); + $urlRewrite = $this->getMockBuilder(\Magento\UrlRewrite\Service\V1\Data\UrlRewrite::class) + ->getMockForAbstractClass(); + $this->urlRewriteFactory->expects($this->any())->method('create')->willReturn($urlRewrite); + $cmsPage->expects($this->any())->method('getId')->willReturn($cmsPageId); + $cmsPage->expects($this->any())->method('getIdentifier')->willReturn('request_path'); + $this->urlPathGenerator->expects($this->any())->method('getCanonicalUrlPath')->with($cmsPage) + ->willReturn('cms/page/view/page_id/' . $cmsPageId); + + $urls = $this->urlRewriteGenerator->generate($cmsPage); + $this->assertEquals($initializesStores[0], $urls[0]->getStoreId()); + $this->assertFalse(isset($urls[1])); + } + + public function testGenerateForSpecificStores() + { + $initializesStores = [1, 2]; + $cmsPageId = 1; + $cmsPage = $this->getMockBuilder(\Magento\Cms\Model\Page::class) + ->disableOriginalConstructor() + ->getMock(); + $cmsPage->expects($this->any())->method('getStores')->willReturn($initializesStores); + $firstStore = $this->getMockBuilder(\Magento\Store\Api\Data\StoreInterface::class) + ->setMethods(['getStoreId']) + ->getMockForAbstractClass(); + $secondStore = $this->getMockBuilder(\Magento\Store\Api\Data\StoreInterface::class) + ->setMethods(['getStoreId']) + ->getMockForAbstractClass(); + $this->storeManager->expects($this->any())->method('getStores')->willReturn( + [ + 1 => $firstStore, + 2 => $secondStore + ] + ); + $firstStore->expects($this->any())->method('getStoreId')->willReturn($initializesStores[0]); + $secondStore->expects($this->any())->method('getStoreId')->willReturn($initializesStores[1]); + + $urlRewriteFirst = $this->getMockBuilder(\Magento\UrlRewrite\Service\V1\Data\UrlRewrite::class) + ->getMockForAbstractClass(); + $urlRewriteSecond = $this->getMockBuilder(\Magento\UrlRewrite\Service\V1\Data\UrlRewrite::class) + ->getMockForAbstractClass(); + $this->urlRewriteFactory->expects($this->at(0))->method('create')->willReturn($urlRewriteFirst); + $this->urlRewriteFactory->expects($this->at(1))->method('create')->willReturn($urlRewriteSecond); + + $cmsPage->expects($this->any())->method('getId')->willReturn($cmsPageId); + $cmsPage->expects($this->any())->method('getIdentifier')->willReturn('request_path'); + $this->urlPathGenerator->expects($this->any())->method('getCanonicalUrlPath')->with($cmsPage) + ->willReturn('cms/page/view/page_id/' . $cmsPageId); + $urls = $this->urlRewriteGenerator->generate($cmsPage); + $this->assertEquals( + [ + $initializesStores[0], + $initializesStores[1] + ], + [ + $urls[0]->getStoreId(), + $urls[1]->getStoreId(), + ] + ); + } +} diff --git a/dev/tests/functional/tests/app/Magento/Backend/Test/Repository/ConfigData.xml b/dev/tests/functional/tests/app/Magento/Backend/Test/Repository/ConfigData.xml index a341341cf7c1dfd873ed552c202a2ece65c4ef6c..fcf6e2ac0c4d0ece60aa742dfcb438456a0d9bd5 100644 --- a/dev/tests/functional/tests/app/Magento/Backend/Test/Repository/ConfigData.xml +++ b/dev/tests/functional/tests/app/Magento/Backend/Test/Repository/ConfigData.xml @@ -212,5 +212,21 @@ <item name="inherit" xsi:type="string">1</item> </field> </dataset> + <dataset name="enable_single_store_mode"> + <field name="general/single_store_mode/enabled" xsi:type="array"> + <item name="scope" xsi:type="string">default</item> + <item name="scope_id" xsi:type="number">0</item> + <item name="label" xsi:type="string">Yes</item> + <item name="value" xsi:type="number">1</item> + </field> + </dataset> + <dataset name="enable_single_store_mode_rollback"> + <field name="general/single_store_mode/enabled" xsi:type="array"> + <item name="scope" xsi:type="string">default</item> + <item name="scope_id" xsi:type="number">0</item> + <item name="label" xsi:type="string">No</item> + <item name="value" xsi:type="number">0</item> + </field> + </dataset> </repository> </config> diff --git a/dev/tests/functional/tests/app/Magento/Cms/Test/Constraint/AssertCmsPageFormSingleStoreMode.php b/dev/tests/functional/tests/app/Magento/Cms/Test/Constraint/AssertCmsPageFormSingleStoreMode.php new file mode 100644 index 0000000000000000000000000000000000000000..4f96b2e3944751082b3371393d976e469bc7b81a --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Cms/Test/Constraint/AssertCmsPageFormSingleStoreMode.php @@ -0,0 +1,40 @@ +<?php +/** + * Copyright © 2016 Magento. All rights reserved. + * See COPYING.txt for license details. + */ + +namespace Magento\Cms\Test\Constraint; + +use Magento\Cms\Test\Fixture\CmsPage; +use Magento\Cms\Test\Page\Adminhtml\CmsPageIndex; +use Magento\Cms\Test\Page\Adminhtml\CmsPageNew; + +/** + * Assert that displayed CMS page data on edit page equals passed from fixture. + */ +class AssertCmsPageFormSingleStoreMode extends AssertCmsPageForm +{ + /** + * Assert that displayed CMS page data on edit page equals passed from fixture with enabled single store mode. + * + * @param CmsPage $cms + * @param CmsPageIndex $cmsIndex + * @param CmsPageNew $cmsPageNew + * @return void + */ + public function processAssert( + CmsPage $cms, + CmsPageIndex $cmsIndex, + CmsPageNew $cmsPageNew + ) { + $cmsIndex->open(); + $filter = ['title' => $cms->getTitle()]; + $cmsIndex->getCmsPageGridBlock()->searchAndOpen($filter); + + $cmsFormData = $cmsPageNew->getPageForm()->getData($cms); + $cmsFixtureData = $cms->getData(); + $errors = $this->verifyData($cmsFixtureData, $cmsFormData); + \PHPUnit_Framework_Assert::assertEmpty($errors, $errors); + } +} diff --git a/dev/tests/functional/tests/app/Magento/Cms/Test/TestCase/CreateCmsPageEntityTest.php b/dev/tests/functional/tests/app/Magento/Cms/Test/TestCase/CreateCmsPageEntityTest.php index 250c55ff00d444635f08c2ea4a5f31d8b225fe10..4f02e7c4caf245528fab63d09d959ff3b8981779 100644 --- a/dev/tests/functional/tests/app/Magento/Cms/Test/TestCase/CreateCmsPageEntityTest.php +++ b/dev/tests/functional/tests/app/Magento/Cms/Test/TestCase/CreateCmsPageEntityTest.php @@ -6,6 +6,7 @@ namespace Magento\Cms\Test\TestCase; +use Magento\Config\Test\Fixture\ConfigData; use Magento\Cms\Test\Fixture\CmsPage as CmsPageFixture; use Magento\Cms\Test\Page\Adminhtml\CmsPageIndex; use Magento\Cms\Test\Page\Adminhtml\CmsPageNew; @@ -53,6 +54,13 @@ class CreateCmsPageEntityTest extends Injectable */ protected $fixtureFactory; + /** + * Configuration data. + * + * @var string + */ + private $configData; + /** * Inject pages. * @@ -73,10 +81,18 @@ class CreateCmsPageEntityTest extends Injectable * * @param array $data * @param string $fixtureType + * @param string $configData * @return array */ - public function test(array $data, $fixtureType) + public function test(array $data, $fixtureType, $configData = '') { + $this->configData = $configData; + + // Preconditions + $this->objectManager->create( + \Magento\Config\Test\TestStep\SetupConfigurationStep::class, + ['configData' => $configData] + )->run(); // Steps $cms = $this->fixtureFactory->createByCode($fixtureType, ['data' => $data]); $this->cmsIndex->open(); @@ -86,4 +102,19 @@ class CreateCmsPageEntityTest extends Injectable return ['cms' => $cms]; } + + /** + * Disable single store mode on config level. + * + * @return void + */ + public function tearDown() + { + if ($this->configData) { + $this->objectManager->create( + \Magento\Config\Test\TestStep\SetupConfigurationStep::class, + ['configData' => 'enable_single_store_mode', 'rollback' => true] + )->run(); + } + } } diff --git a/dev/tests/functional/tests/app/Magento/Cms/Test/TestCase/CreateCmsPageEntityTest.xml b/dev/tests/functional/tests/app/Magento/Cms/Test/TestCase/CreateCmsPageEntityTest.xml index f8b6c8c3d9e06da90b122ba39d0c3f01eebc1978..fc024be14c699d1abb07629e701255ca0c6118f0 100644 --- a/dev/tests/functional/tests/app/Magento/Cms/Test/TestCase/CreateCmsPageEntityTest.xml +++ b/dev/tests/functional/tests/app/Magento/Cms/Test/TestCase/CreateCmsPageEntityTest.xml @@ -67,5 +67,17 @@ <constraint name="Magento\Cms\Test\Constraint\AssertCmsPagePreview" /> <constraint name="Magento\Cms\Test\Constraint\AssertCmsPageOnFrontend" /> </variation> + <variation name="CreateCmsPageEntityTestVariation6" summary="Create CMS page with single store mode" ticketId="MAGETWO-59654"> + <data name="tag" xsi:type="string">test_type:acceptance_test, test_type:extended_acceptance_test</data> + <data name="configData" xsi:type="string">enable_single_store_mode</data> + <data name="fixtureType" xsi:type="string">cmsPage</data> + <data name="data/is_active" xsi:type="string">Yes</data> + <data name="data/title" xsi:type="string">NewCmsPage%isolation%</data> + <data name="data/identifier" xsi:type="string">identifier-%isolation%</data> + <data name="data/content/content" xsi:type="string">cms_page_text_content%isolation%</data> + <constraint name="Magento\Cms\Test\Constraint\AssertCmsPageSuccessSaveMessage" /> + <constraint name="Magento\Cms\Test\Constraint\AssertCmsPageFormSingleStoreMode" /> + <constraint name="Magento\Cms\Test\Constraint\AssertCmsPageOnFrontend" /> + </variation> </testCase> </config>