/** * Assert that created entity was found on search page * * @param UrlRewrite $initialRewrite * @param UrlRewrite $urlRewrite * @param Browser $browser * @param CatalogCategoryView $categoryView * @return void */ public function processAssert(UrlRewrite $initialRewrite, UrlRewrite $urlRewrite, Browser $browser, CatalogCategoryView $categoryView) { $urlRequestPath = $urlRewrite->hasData('request_path') ? $urlRewrite->getRequestPath() : $initialRewrite->getRequestPath(); $browser->open($_ENV['app_frontend_url'] . $urlRequestPath); $entity = $initialRewrite->getDataFieldConfig('id_path')['source']->getEntity()->getName(); \PHPUnit_Framework_Assert::assertTrue($categoryView->getListProductBlock()->isProductVisible($entity), "Created entity '{$entity}' isn't found."); }
/** * Check that product available by new URL on the front * * @param UrlRewrite $urlRewrite * @param CatalogProductView $catalogProductView * @param BrowserInterface $browser * @param InjectableFixture $product * @return void */ public function processAssert(UrlRewrite $urlRewrite, CatalogProductView $catalogProductView, BrowserInterface $browser, InjectableFixture $product = null) { $browser->open($_ENV['app_frontend_url'] . $urlRewrite->getRequestPath()); if ($product === null) { $product = $urlRewrite->getDataFieldConfig('target_path')['source']->getEntity(); } \PHPUnit_Framework_Assert::assertEquals($catalogProductView->getTitleBlock()->getTitle(), $product->getName(), 'URL rewrite product redirect false.' . "\nExpected: " . $product->getName() . "\nActual: " . $catalogProductView->getTitleBlock()->getTitle()); }
/** * Assert check URL rewrite custom redirect * * @param UrlRewrite $urlRewrite * @param BrowserInterface $browser * @param CmsIndex $cmsIndex * @return void */ public function processAssert(UrlRewrite $urlRewrite, BrowserInterface $browser, CmsIndex $cmsIndex) { $browser->open($_ENV['app_frontend_url'] . $urlRewrite->getRequestPath()); $entity = $urlRewrite->getDataFieldConfig('target_path')['source']->getEntity(); $title = $entity->hasData('name') ? $entity->getName() : $entity->getContentHeading(); $pageTitle = $cmsIndex->getTitleBlock()->getTitle(); \PHPUnit_Framework_Assert::assertEquals($pageTitle, $title, 'URL rewrite product redirect false.' . "\nExpected: " . $title . "\nActual: " . $pageTitle); }
/** * Create CMS page rewrites. * * @param UrlRewrite $urlRewrite * @return array */ public function test(UrlRewrite $urlRewrite) { //Steps $this->urlRewriteIndex->open(); $this->urlRewriteIndex->getPageActionsBlock()->addNew(); $this->urlRewriteEdit->getUrlRewriteTypeSelectorBlock()->selectType($urlRewrite->getEntityType()); $cmsPage = $urlRewrite->getDataFieldConfig('target_path')['source']->getEntity(); $filter = ['title' => $cmsPage->getTitle()]; $this->urlRewriteEdit->getCmsGridBlock()->searchAndOpen($filter); $this->urlRewriteEdit->getFormBlock()->fill($urlRewrite); $this->urlRewriteEdit->getPageMainActions()->save(); return ['cmsPage' => $cmsPage]; }
/** * Update CMS page rewrites. * * @param UrlRewrite $urlRewrite * @param UrlRewrite $cmsPageRewrite * @return array */ public function test(UrlRewrite $urlRewrite, UrlRewrite $cmsPageRewrite) { // Preconditions $cmsPageRewrite->persist(); // Steps $this->urlRewriteIndex->open(); $this->storeName = $urlRewrite->getStoreId(); $filter = ['request_path' => $cmsPageRewrite->getRequestPath()]; $this->urlRewriteIndex->getUrlRedirectGrid()->searchAndOpen($filter); $this->urlRewriteEdit->getFormBlock()->fill($urlRewrite); $this->urlRewriteEdit->getPageMainActions()->save(); return ['cmsPage' => $cmsPageRewrite->getDataFieldConfig('target_path')['source']->getEntity()]; }
/** * Prepare data for replace. * * @param UrlRewrite $initialRewrite * @return array */ protected function getReplaceData(UrlRewrite $initialRewrite) { $replaceData = []; $entity = $initialRewrite->getDataFieldConfig('target_path')['source']->getEntity(); if ($entity) { $replaceData['target_path'] = ['name' => 'sku', 'value' => $entity->getSku()]; } return $replaceData; }
/** * Prepare data for replace * * @param UrlRewrite $initialRewrite * @return array */ protected function getReplaceData(UrlRewrite $initialRewrite) { $replaceData = []; $entity = $initialRewrite->getDataFieldConfig('id_path')['source']->getEntity(); if ($entity) { $replaceData['target_path'] = ['%name%' => $entity->getName()]; } return $replaceData; }