/**
  * Assert that displayed assigned products on category page equals passed from fixture.
  *
  * @param CatalogCategory $category
  * @param CatalogCategoryView $categoryView
  * @param Browser $browser
  * @return void
  */
 public function processAssert(CatalogCategory $category, CatalogCategoryView $categoryView, Browser $browser)
 {
     $browser->open($_ENV['app_frontend_url'] . strtolower($category->getUrlKey()) . '.html');
     $products = $category->getDataFieldConfig('category_products')['source']->getProducts();
     foreach ($products as $productFixture) {
         \PHPUnit_Framework_Assert::assertTrue($categoryView->getListProductBlock()->isProductVisible($productFixture), "Products '{$productFixture->getName()}' is not find.");
     }
 }
 /**
  * Prepare category path.
  *
  * @param CatalogCategory $category
  * @return array
  */
 protected function prepareFullCategoryPath(CatalogCategory $category)
 {
     $path = [];
     $parentCategory = $category->getDataFieldConfig('parent_id')['source']->getParentCategory();
     if ($parentCategory != null) {
         $path = $this->prepareFullCategoryPath($parentCategory);
     }
     return array_filter(array_merge($path, [$category->getPath(), $category->getName()]));
 }
示例#3
0
 /**
  * Prepare assigned products for category.
  *
  * @param CatalogCategory $category
  * @return string
  */
 protected function prepareCategoryProducts(CatalogCategory $category)
 {
     $products = $category->getDataFieldConfig('category_products')['source']->getProducts();
     $productIds = [];
     foreach ($products as $product) {
         $productIds[] = $product->getId();
     }
     return implode('=&', $productIds);
 }
 /**
  * Get category products.
  *
  * @param CatalogCategory $category
  * @return array
  */
 protected function getCategoryProducts(CatalogCategory $category)
 {
     return $category->hasData('category_products') ? $category->getDataFieldConfig('category_products')['source']->getProducts() : [];
 }