Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
UpdateBundleOptionsShoppingCartTest.php
Go to the documentation of this file.
1 <?php
8 
10 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductEdit;
11 use Magento\Catalog\Test\Page\Adminhtml\CatalogProductIndex;
12 use Magento\Mtf\TestStep\TestStepFactory;
13 use Magento\Mtf\TestCase\Injectable;
14 
29 class UpdateBundleOptionsShoppingCartTest extends Injectable
30 {
31  /* tags */
32  const MVP = 'yes';
33  /* end tags */
34 
40  private $catalogProductIndex;
41 
47  private $catalogProductEdit;
48 
54  private $testStepFactory;
55 
63  public function __inject(
64  CatalogProductIndex $catalogProductIndexNewPage,
65  CatalogProductEdit $catalogProductEditPage,
66  TestStepFactory $testStepFactory
67  ) {
68  $this->catalogProductIndex = $catalogProductIndexNewPage;
69  $this->catalogProductEdit = $catalogProductEditPage;
70  $this->testStepFactory = $testStepFactory;
71  }
72 
81  public function test(BundleProduct $originalProduct, $optionTitle, $optionNumber)
82  {
83  // Create product
84  $originalProduct->persist();
85  // Add product to the shopping cart
86  $productData = ['products' => $originalProduct];
87  $addToCartStep = $this->testStepFactory->create(
88  \Magento\Checkout\Test\TestStep\AddProductsToTheCartStep::class,
89  ['products' => $productData]
90  );
91  $addToCartStep->run();
92  // Change bundle option title
93  $filter = ['sku' => $originalProduct->getSku()];
94  $this->catalogProductIndex->open();
95  $this->catalogProductIndex->getProductGrid()->searchAndOpen($filter);
96  $form = $this->catalogProductEdit->getProductForm();
97  $form->openSection('bundle');
99  $container = $form->getSection('bundle');
100  $container->changeOptionTitle($optionTitle, $optionNumber);
101  $this->catalogProductEdit->getFormPageActions()->save();
102  }
103 }
__inject(CatalogProductIndex $catalogProductIndexNewPage, CatalogProductEdit $catalogProductEditPage, TestStepFactory $testStepFactory)
$productData