Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
MergeSynonymGroupEntityTest.php
Go to the documentation of this file.
1 <?php
8 
9 use Magento\Search\Test\Page\Adminhtml\SynonymGroupIndex;
10 use Magento\Search\Test\Page\Adminhtml\SynonymGroupNew;
11 use Magento\Mtf\TestCase\Injectable;
12 use Magento\Mtf\Fixture\FixtureFactory;
14 
29 class MergeSynonymGroupEntityTest extends Injectable
30 {
31  /* tags */
32  const MVP = 'yes';
33  const TEST_TYPE = 'extended_acceptance_test';
34  /* end tags */
35 
41  protected $synonymGroupIndex;
42 
48  protected $synonymGroupNew;
49 
55  protected $factory;
56 
65  public function __inject(
66  SynonymGroupIndex $synonymGroupIndex,
67  SynonymGroupNew $synonymGroupNew,
68  FixtureFactory $factory
69  ) {
70  $this->synonymGroupIndex = $synonymGroupIndex;
71  $this->synonymGroupNew = $synonymGroupNew;
72  $this->factory = $factory;
73  }
74 
82  public function test(SynonymGroup $initialSynonymGroup, SynonymGroup $synonymGroup)
83  {
84  //precondition
85  $initialSynonymGroup->persist();
86 
87  $initialData = ($initialSynonymGroup->getData());
88  $synonyms = $initialData['synonyms'];
89  $synonyms = explode(',', $synonyms);
90  $data = $synonymGroup->getData();
91  $data['synonyms'] = $synonyms[0] . ',' . $data['synonyms'];
92  $data['scope_id'] = [
93  'dataset' => 'default_store_view'
94  ];
95 
96  $synonymGroup = $this->factory->createByCode('synonymGroup', ['data' => $data]);
97 
98  // Steps
99  $this->synonymGroupIndex->open();
100  $this->synonymGroupIndex->getGridPageActions()->addNew();
101  $this->synonymGroupNew->getSynonymGroupForm()->fill($synonymGroup);
102  $this->synonymGroupNew->getFormPageActions()->save();
103  }
104 }
test(SynonymGroup $initialSynonymGroup, SynonymGroup $synonymGroup)
__inject(SynonymGroupIndex $synonymGroupIndex, SynonymGroupNew $synonymGroupNew, FixtureFactory $factory)