Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
CreateProductUrlRewriteEntityTest.php
Go to the documentation of this file.
1 <?php
8 
11 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteEdit;
12 use Magento\UrlRewrite\Test\Page\Adminhtml\UrlRewriteIndex;
13 use Magento\Mtf\TestCase\Injectable;
14 
33 class CreateProductUrlRewriteEntityTest extends Injectable
34 {
35  /* tags */
36  const MVP = 'yes';
37  const TEST_TYPE = 'acceptance_test, extended_acceptance_test';
38  /* end tags */
39 
45  protected $urlRewriteIndex;
46 
52  protected $urlRewriteEdit;
53 
61  public function __inject(UrlRewriteIndex $urlRewriteIndex, UrlRewriteEdit $urlRewriteEdit)
62  {
63  $this->urlRewriteIndex = $urlRewriteIndex;
64  $this->urlRewriteEdit = $urlRewriteEdit;
65  }
66 
74  public function test(CatalogProductSimple $product, UrlRewrite $urlRewrite)
75  {
76  //Precondition
77  $product->persist();
78  $filter = ['id' => $product->getId()];
79  //Steps
80  $this->urlRewriteIndex->open();
81  $this->urlRewriteIndex->getPageActionsBlock()->addNew();
82  $this->urlRewriteEdit->getFormBlock()->fill($urlRewrite);
83  $this->urlRewriteEdit->getProductGridBlock()->searchAndOpen($filter);
84  $category = $product->hasData('category_ids')
85  ? $product->getDataFieldConfig('category_ids')['source']->getCategories()[0]
86  : null;
87  $this->urlRewriteEdit->getTreeBlock()->selectCategory($category);
88  $this->urlRewriteEdit->getFormBlock()->fill($urlRewrite);
89  $this->urlRewriteEdit->getPageMainActions()->save();
90  }
91 }
__inject(UrlRewriteIndex $urlRewriteIndex, UrlRewriteEdit $urlRewriteEdit)