/**
  * Assert that filtered product is present on category page by attribute and another products are absent.
  *
  * @param CatalogCategoryView $catalogCategoryView
  * @param ProcessList $processList
  * @param Browser $browser
  * @param CatalogCategory $category
  * @param InjectableFixture[] $products
  * @param string $searchProductsIndexes
  * @param string $filterLink
  * @return void
  */
 public function processAssert(CatalogCategoryView $catalogCategoryView, ProcessList $processList, Browser $browser, CatalogCategory $category, array $products, $searchProductsIndexes, $filterLink)
 {
     $processList->open()->getIndexManagementGrid()->massactionForAll('Reindex Data');
     $browser->open($_ENV['app_frontend_url'] . strtolower($category->getUrlKey()) . '.html');
     $filter = $this->prepareFilter($products[$searchProductsIndexes], $filterLink);
     $catalogCategoryView->getLayeredNavigationBlock()->selectAttribute($filter);
     $this->verify($catalogCategoryView, $products, $searchProductsIndexes);
 }
 /**
  * Check whether the attribute filter is displayed on the frontend in Layered navigation.
  *
  * @param CatalogCategoryView $catalogCategoryView
  * @param InjectableFixture $product
  * @param CatalogProductAttribute $attribute
  * @param CmsIndex $cmsIndex
  * @return void
  */
 public function processAssert(CatalogCategoryView $catalogCategoryView, InjectableFixture $product, CatalogProductAttribute $attribute, CmsIndex $cmsIndex)
 {
     $cmsIndex->open()->getTopmenu()->selectCategory($product->getCategoryIds()[0]);
     $label = $attribute->hasData('manage_frontend_label') ? $attribute->getManageFrontendLabel() : $attribute->getFrontendLabel();
     \PHPUnit_Framework_Assert::assertTrue(in_array(strtoupper($label), $catalogCategoryView->getLayeredNavigationBlock()->getFilters()), 'Attribute is absent in layered navigation on category page.');
 }
 /**
  * Assert that filtered product is present on category page by price and another products are absent.
  *
  * @param CatalogCategoryView $catalogCategoryView
  * @param Browser $browser
  * @param CatalogCategory $category
  * @param InjectableFixture[] $products
  * @param string $searchProductsIndexes
  * @param string $filterLink
  * @return void
  */
 public function processAssert(CatalogCategoryView $catalogCategoryView, Browser $browser, CatalogCategory $category, array $products, $searchProductsIndexes, $filterLink)
 {
     $browser->open($_ENV['app_frontend_url'] . strtolower($category->getUrlKey()) . '.html');
     $catalogCategoryView->getLayeredNavigationBlock()->selectPrice($filterLink);
     $this->verify($catalogCategoryView, $products, $searchProductsIndexes);
 }