9 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
10 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
11 use Magento\Catalog\Test\Page\Product\CatalogProductView;
12 use Magento\Mtf\Client\BrowserInterface;
13 use Magento\Mtf\Fixture\FixtureFactory;
14 use Magento\Mtf\Fixture\InjectableFixture;
15 use Magento\Mtf\TestCase\Injectable;
103 $list = array_map(
'trim', explode(
',',
$products));
105 foreach ($list as
$item) {
106 list($productName, $fixtureCode, $dataset) = array_map(
'trim', explode(
'::',
$item));
107 $product = $this->fixtureFactory->createByCode($fixtureCode, [
'dataset' => $dataset]);
110 $this->products[$productName] =
$product;
125 foreach ($promotedProducts as $productName => $assignedNames) {
126 $initialProduct = $this->products[$productName];
127 $filter = [
'sku' => $initialProduct->getSku()];
128 $assignedProducts = [];
130 foreach ($assignedNames as $assignedName) {
131 $assignedProducts[] = $this->products[$assignedName];
134 $product = $this->fixtureFactory->create(
135 get_class($initialProduct),
139 'products' => $assignedProducts
144 $this->catalogProductIndex->open();
145 $this->catalogProductIndex->getProductGrid()->searchAndOpen($filter);
146 $this->catalogProductEdit->getProductForm()->fill(
$product);
147 $this->catalogProductEdit->getFormPageActions()->save();
148 $this->catalogProductEdit->getMessagesBlock()->waitSuccessMessage();
160 $list = array_map(
'trim', explode(
';', $promotedProducts));
163 foreach ($list as
$item) {
164 list($productName, $promotedNames) = array_map(
'trim', explode(
':',
$item));
165 $result[$productName] = array_map(
'trim', explode(
',', $promotedNames));
179 return array_map(
'trim', explode(
',', $navigateProductsOrder));
191 $list = array_map(
'trim', explode(
';', $productsToVerify));
193 foreach ($list as
$item) {
197 : array_map(
'trim', explode(
',',
$products));