/** * Assert that configurable options available on configurable product Edit form on backend. * * @param CatalogProduct $catalogProductIndex * @param CatalogProductEdit $catalogProductEdit * @param CatalogProductAttribute $attribute * @param InjectableFixture $product * @return void */ public function processAssert(CatalogProduct $catalogProductIndex, CatalogProductEdit $catalogProductEdit, CatalogProductAttribute $attribute, InjectableFixture $product) { $options = $attribute->getOptions(); $attributeOptionsFromFixture = []; foreach ($options as $option) { $attributeOptionsFromFixture[] = $option['admin']; } $catalogProductIndex->open()->getProductGrid()->searchAndOpen(['sku' => $product->getSku()]); $productForm = $catalogProductEdit->getProductForm(); $attributeOptions = $productForm->getAttributeElement($attribute)->getValues(); \PHPUnit_Framework_Assert::assertEquals($attributeOptionsFromFixture, $attributeOptions); }
/** * Prepare filter for search. * * @param InjectableFixture $product * @param CatalogProductAttribute $attribute * @return string */ protected function prepareFilter(InjectableFixture $product, CatalogProductAttribute $attribute) { $filter = ''; $attributesFillData = $product->getAttributes(); $attributeOptions = $attribute->getOptions(); foreach ($attributesFillData['preset'] as $optionsFillData) { foreach ($optionsFillData as $optionKey) { $optionKey = str_replace('option_key_', '', $optionKey); $filter .= isset($attributeOptions[$optionKey]['view']) ? $attributeOptions[$optionKey]['view'] : $attributeOptions[$optionKey]['admin']; } } return $filter; }