/** * Delete Custom System Variable Entity test. * * @param SystemVariable $systemVariable * @return void */ public function test(SystemVariable $systemVariable) { // Precondition $systemVariable->persist(); // Steps $filter = ['code' => $systemVariable->getCode(), 'name' => $systemVariable->getName()]; $this->systemVariableIndexPage->open(); $this->systemVariableIndexPage->getSystemVariableGrid()->searchAndOpen($filter); $this->systemVariableNewPage->getFormPageActions()->delete(); }
/** * Update Custom System Variable Entity test. * * @param FixtureFactory $fixtureFactory * @param SystemVariable $customVariable * @param SystemVariable $customVariableOrigin * @param string $saveAction * @return array */ public function test(FixtureFactory $fixtureFactory, SystemVariable $customVariable, SystemVariable $customVariableOrigin, $saveAction) { $this->store = $fixtureFactory->createByCode('store', ['dataset' => 'custom']); $this->store->persist(); $customVariableOrigin->persist(); $filter = ['code' => $customVariableOrigin->getCode()]; // Steps $this->systemVariableIndexPage->open(); $this->systemVariableIndexPage->getSystemVariableGrid()->searchAndOpen($filter); $this->systemVariableNewPage->getFormPageActions()->selectStoreView($this->store->getData('name')); $this->systemVariableNewPage->getSystemVariableForm()->fill($customVariable); $this->systemVariableNewPage->getFormPageActions()->{$saveAction}(); return ['storeOrigin' => $this->store, 'customVariableOrigin' => $customVariableOrigin]; }
/** * Add created variable to page and assert that Custom Variable is displayed on frontend page and has * correct data according to dataset. * * @param SystemVariable $customVariable * @param CmsIndex $cmsIndex * @param SystemVariable $variable * @param FixtureFactory $fixtureFactory * @param BrowserInterface $browser * @param Store $storeOrigin * @param SystemVariable $customVariableOrigin * @return void */ public function processAssert(SystemVariable $customVariable, CmsIndex $cmsIndex, SystemVariable $variable, FixtureFactory $fixtureFactory, BrowserInterface $browser, Store $storeOrigin = null, SystemVariable $customVariableOrigin = null) { $cmsPage = $fixtureFactory->createByCode('cmsPage', ['dataset' => 'default', 'data' => ['content' => ['content' => '{{customVar code=' . $customVariable->getCode() . '}}']]]); $cmsPage->persist(); $browser->open($_ENV['app_frontend_url'] . $cmsPage->getIdentifier()); $cmsIndex->getStoreSwitcherBlock()->selectStoreView('Default Store View'); $htmlValue = $customVariableOrigin ? $this->getHtmlValue($customVariable, $customVariableOrigin) : strip_tags($customVariable->getHtmlValue()); $pageContent = $cmsIndex->getCmsPageBlock()->getPageContent(); $this->checkVariable($htmlValue, $pageContent); if ($storeOrigin !== null) { $cmsIndex->getStoreSwitcherBlock()->selectStoreView($storeOrigin->getName()); $htmlValue = strip_tags($customVariable->getHtmlValue()); if ($htmlValue === '') { $htmlValue = strip_tags($variable->getHtmlValue()); } $pageContent = $cmsIndex->getCmsPageBlock()->getPageContent(); $this->checkVariable($htmlValue, $pageContent); } }
/** * Update Custom System Variable Entity test. * * @param SystemVariable $customVariable * @param SystemVariable $customVariableOrigin * @param Store $storeOrigin * @param string $saveAction * @return void */ public function test(SystemVariable $customVariable, SystemVariable $customVariableOrigin, Store $storeOrigin, $saveAction) { $filter = ['code' => $customVariableOrigin->getCode()]; // Steps $this->systemVariableIndexPage->open(); $this->systemVariableIndexPage->getSystemVariableGrid()->searchAndOpen($filter); $this->systemVariableNewPage->getFormPageActions()->selectStoreView($storeOrigin->getData('name')); $this->systemVariableNewPage->getSystemVariableForm()->fill($customVariable); $this->systemVariableNewPage->getFormPageActions()->{$saveAction}(); }
/** * Assert Custom System Variable not available in System Variable grid * * @param SystemVariableIndex $systemVariableIndexNew * @param SystemVariable $systemVariable * @return void */ public function processAssert(SystemVariableIndex $systemVariableIndexNew, SystemVariable $systemVariable) { $filter = ['code' => $systemVariable->getCode(), 'name' => $systemVariable->getName()]; $systemVariableIndexNew->open(); \PHPUnit_Framework_Assert::assertFalse($systemVariableIndexNew->getSystemVariableGrid()->isRowVisible($filter), 'Custom System Variable with code \'' . $filter['code'] . '\' is present in System Variable grid.'); }