/** * Assert that default qty for sub products in grouped product displays according to dataset on product page. * * @param CatalogProductView $groupedProductView * @param GroupedProduct $product * @param Browser $browser * @return void */ public function processAssert(CatalogProductView $groupedProductView, GroupedProduct $product, Browser $browser) { $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html'); $pageOptions = $groupedProductView->getViewBlock()->getOptions($product); $fixtureQtyData = $this->prepareFixtureQtyData($product); $pageQtyData = $this->prepareFormQtyData($pageOptions); $error = $this->verifyData($fixtureQtyData, $pageQtyData); \PHPUnit_Framework_Assert::assertEmpty($error, $error); }
/** * Verify product price on grouped product view page. * * @param GroupedProduct $product * @param CatalogProductView $catalogProductView * @param AssertPriceOnProductPageInterface $object * @param Browser $browser * @param string $typePrice [optional] * @return void */ protected function processAssertPrice(GroupedProduct $product, CatalogProductView $catalogProductView, AssertPriceOnProductPageInterface $object, Browser $browser, $typePrice = '') { $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html'); $groupedData = $product->getDataFieldConfig('associated')['source']->getProducts(); foreach ($groupedData as $key => $subProduct) { $catalogProductView->getGroupedProductViewBlock()->{'item' . $typePrice . 'PriceProductBlock'}(++$key); $object->setErrorMessage(sprintf($this->errorMessage, $subProduct->getName())); $object->assertPrice($subProduct, $catalogProductView->getGroupedProductViewBlock(), 'Grouped'); } }