/** * Assert that Compare Products block is presented on CMS pages. * Block contains information about compared products. * * @param CmsIndex $cmsIndex * @param FixtureFactory $fixtureFactory * @param Browser $browser * @param array $products * @return void */ public function processAssert(CmsIndex $cmsIndex, FixtureFactory $fixtureFactory, Browser $browser, array $products) { $newCmsPage = $fixtureFactory->createByCode('cmsPage', ['dataSet' => '3_column_template']); $newCmsPage->persist(); $browser->open($_ENV['app_frontend_url'] . $newCmsPage->getIdentifier()); foreach ($products as &$product) { $product = strtolower($product->getName()); } \PHPUnit_Framework_Assert::assertEquals($products, $cmsIndex->getCompareBlock()->getProducts(), 'Compare product block contains NOT valid information about compared products.'); }
/** * Assert that link "Compare Products..." is present on top menu of page. * * @param CmsIndex $cmsIndex * @param array $products * @return void */ public function processAssert(CmsIndex $cmsIndex, array $products) { $cmsIndex->open(); \PHPUnit_Framework_Assert::assertEquals(count($products), $cmsIndex->getCompareBlock()->getQtyInCompareList(), 'Qty is not correct in "Compare Products" link.'); \PHPUnit_Framework_Assert::assertTrue(strpos($cmsIndex->getCompareBlock()->getCompareLinkUrl(), $this->compareProductUrl) !== false, 'Compare product link isn\'t lead to Compare Product Page.'); }