/**
  * Runs Test Creation for StoreEntityTest
  *
  * @param Store $store
  * @return void
  */
 public function test(Store $store)
 {
     //Steps:
     $this->storeIndex->open();
     $this->storeIndex->getGridPageActions()->addStoreView();
     $this->storeNew->getStoreForm()->fill($store);
     $this->storeNew->getFormPageActions()->save();
 }
 /**
  * Create New StoreGroup
  *
  * @param StoreGroup $storeGroup
  * @return void
  */
 public function test(StoreGroup $storeGroup)
 {
     //Steps
     $this->storeIndex->open();
     $this->storeIndex->getGridPageActions()->createStoreGroup();
     $this->newGroupIndex->getEditFormGroup()->fill($storeGroup);
     $this->newGroupIndex->getFormPageActions()->save();
 }
 /**
  * Assert that displayed Store Group data on edit page equals passed from fixture
  *
  * @param StoreIndex $storeIndex
  * @param EditGroup $editGroup
  * @param StoreGroup $storeGroup
  * @param StoreGroup $storeGroupOrigin [optional]
  * @return void
  */
 public function processAssert(StoreIndex $storeIndex, EditGroup $editGroup, StoreGroup $storeGroup, StoreGroup $storeGroupOrigin = null)
 {
     $fixtureData = $storeGroupOrigin != null ? array_merge($storeGroupOrigin->getData(), $storeGroup->getData()) : $storeGroup->getData();
     $storeIndex->open()->getStoreGrid()->searchAndOpenStoreGroup($storeGroup);
     $formData = $editGroup->getEditFormGroup()->getData();
     $errors = $this->verifyData($fixtureData, $formData);
     \PHPUnit_Framework_Assert::assertEmpty($errors, $errors);
 }
 /**
  * Create Website
  *
  * @param Website $website
  * @return void
  */
 public function test(Website $website)
 {
     //Steps
     $this->storeIndex->open();
     $this->storeIndex->getGridPageActions()->addNew();
     $this->newWebsiteIndex->getEditWebsiteForm()->fill($website);
     $this->newWebsiteIndex->getFormPageActions()->save();
 }
 /**
  * Assert that displayed Website data on edit page equals passed from fixture
  *
  * @param StoreIndex $storeIndex
  * @param EditWebsite $editWebsite
  * @param Website $website
  * @return void
  */
 public function processAssert(StoreIndex $storeIndex, EditWebsite $editWebsite, Website $website)
 {
     $fixtureData = $website->getData();
     $storeIndex->open()->getStoreGrid()->searchAndOpenWebsite($website);
     $formData = $editWebsite->getEditFormWebsite()->getData();
     $errors = $this->verifyData($fixtureData, $formData);
     \PHPUnit_Framework_Assert::assertEmpty($errors, $errors);
 }
 /**
  * Assert that displayed Store View data on edit page equals passed from fixture
  *
  * @param StoreIndex $storeIndex
  * @param StoreNew $storeNew
  * @param Store $store
  * @return void
  */
 public function processAssert(StoreIndex $storeIndex, StoreNew $storeNew, Store $store)
 {
     $storeIndex->open()->getStoreGrid()->searchAndOpenStore($store);
     $formData = $storeNew->getStoreForm()->getData();
     $fixtureData = $store->getData();
     $errors = $this->verifyData($fixtureData, $formData);
     \PHPUnit_Framework_Assert::assertEmpty($errors, $errors);
 }
 /**
  * Runs Test Creation for StoreEntityTest
  *
  * @param Store $store
  * @return void
  */
 public function test(Store $store)
 {
     $this->markTestIncomplete('MAGETWO-48723');
     //Steps:
     $this->storeIndex->open();
     $this->storeIndex->getGridPageActions()->addStoreView();
     $this->storeNew->getStoreForm()->fill($store);
     $this->storeNew->getFormPageActions()->save();
 }
 /**
  * Runs Update Store Entity test
  *
  * @param Store $storeInitial
  * @param Store $store
  * @return void
  */
 public function test(Store $storeInitial, Store $store)
 {
     // Preconditions:
     $storeInitial->persist();
     // Steps:
     $this->storeIndex->open();
     $this->storeIndex->getStoreGrid()->searchAndOpenStore($storeInitial);
     $this->editStore->getStoreForm()->fill($store);
     $this->editStore->getFormPageActions()->save();
 }
 /**
  * Update New StoreGroup
  *
  * @param StoreGroup $storeGroupOrigin
  * @param StoreGroup $storeGroup
  * @return void
  */
 public function test(StoreGroup $storeGroupOrigin, StoreGroup $storeGroup)
 {
     //Preconditions
     $storeGroupOrigin->persist();
     //Steps
     $this->storeIndex->open();
     $this->storeIndex->getStoreGrid()->searchAndOpenStoreGroup($storeGroupOrigin);
     $this->editGroup->getEditFormGroup()->fill($storeGroup);
     $this->editGroup->getFormPageActions()->save();
 }
 /**
  * Update Website
  *
  * @param Website $websiteOrigin
  * @param Website $website
  * @return array
  */
 public function test(Website $websiteOrigin, Website $website)
 {
     //Preconditions
     $websiteOrigin->persist();
     //Steps
     $this->storeIndex->open();
     $this->storeIndex->getStoreGrid()->searchAndOpenWebsite($websiteOrigin);
     $this->editWebsite->getEditFormWebsite()->fill($website);
     $this->editWebsite->getFormPageActions()->save();
     return ['website' => $this->mergeFixture($website, $websiteOrigin)];
 }
 /**
  * Run Delete Store Entity test
  *
  * @param Store $store
  * @param string $createBackup
  * @return void
  */
 public function test(Store $store, $createBackup)
 {
     // Preconditions:
     $store->persist();
     $this->backupIndex->open()->getBackupGrid()->massaction([], 'Delete', true, 'Select All');
     // Steps:
     $this->storeIndex->open();
     $this->storeIndex->getStoreGrid()->searchAndOpenStore($store);
     $this->editStore->getFormPageActions()->delete();
     $this->storeDelete->getStoreForm()->fillForm(['create_backup' => $createBackup]);
     $this->storeDelete->getFormPageFooterActions()->delete();
 }
 /**
  * Delete Website
  *
  * @param Website $website
  * @param string $createBackup
  * @return void
  */
 public function test(Website $website, $createBackup)
 {
     //Preconditions
     $website->persist();
     $this->backupIndex->open()->getBackupGrid()->massaction([], 'Delete', true, 'Select All');
     //Steps
     $this->storeIndex->open();
     $this->storeIndex->getStoreGrid()->searchAndOpenWebsite($website);
     $this->editWebsite->getFormPageActions()->delete();
     $this->deleteWebsite->getDeleteWebsiteForm()->fillForm(['create_backup' => $createBackup]);
     $this->deleteWebsite->getFormPageActions()->delete();
 }
 /**
  * Delete Store after test.
  *
  * @return void|null
  */
 public function tearDown()
 {
     if (in_array($this->storeName, $this->skippedStores)) {
         return;
     }
     $storeName = explode("/", $this->storeName);
     $filter['store_title'] = end($storeName);
     $this->storeIndex->open();
     $this->storeIndex->getStoreGrid()->searchAndOpen($filter);
     $this->storeNew->getFormPageActions()->delete();
     $this->storeDelete->getStoreForm()->fillForm(['create_backup' => 'No']);
     $this->storeDelete->getFormPageActions()->delete();
 }
 /**
  * Assert that success messages is displayed after deleting website
  *
  * @param StoreIndex $storeIndex
  * @return void
  */
 public function processAssert(StoreIndex $storeIndex)
 {
     $actualMessages = $storeIndex->getMessagesBlock()->getSuccessMessages();
     \PHPUnit_Framework_Assert::assertTrue(in_array(self::SUCCESS_BACKUP_MESSAGE, $actualMessages) && in_array(self::SUCCESS_DELETE_MESSAGE, $actualMessages), 'Wrong success messages are displayed.');
 }
 /**
  * Assert that success message is displayed after Store View has been created
  *
  * @param StoreIndex $storeIndex
  * @return void
  */
 public function processAssert(StoreIndex $storeIndex)
 {
     \PHPUnit_Framework_Assert::assertEquals(self::SUCCESS_MESSAGE, $storeIndex->getMessagesBlock()->getSuccessMessages(), 'Wrong success message is displayed.');
 }
 /**
  * Assert that created Store Group can not be found in Stores grid by name
  *
  * @param StoreIndex $storeIndex
  * @param StoreGroup $storeGroup
  * @return void
  */
 public function processAssert(StoreIndex $storeIndex, StoreGroup $storeGroup)
 {
     $storeGroupName = $storeGroup->getName();
     $storeIndex->open()->getStoreGrid()->search(['group_title' => $storeGroupName]);
     \PHPUnit_Framework_Assert::assertFalse($storeIndex->getStoreGrid()->isStoreExists($storeGroupName), 'Store group \'' . $storeGroupName . '\' is present in grid.');
 }
 /**
  * Assert that created Website can't be found in grid by name
  *
  * @param StoreIndex $storeIndex
  * @param Website $website
  * @return void
  */
 public function processAssert(StoreIndex $storeIndex, Website $website)
 {
     $websiteName = $website->getName();
     $storeIndex->open()->getStoreGrid()->search(['website_title' => $websiteName]);
     \PHPUnit_Framework_Assert::assertFalse($storeIndex->getStoreGrid()->isWebsiteExists($website), 'Website \'' . $websiteName . '\' is present in grid.');
 }
 /**
  * Assert that created Store View can be found in Stores grid by name
  *
  * @param StoreIndex $storeIndex
  * @param Store $store
  * @return void
  */
 public function processAssert(StoreIndex $storeIndex, Store $store)
 {
     $storeName = $store->getName();
     $storeIndex->open()->getStoreGrid()->search(['store_title' => $storeName]);
     \PHPUnit_Framework_Assert::assertTrue($storeIndex->getStoreGrid()->isStoreExists($storeName), 'Store \'' . $storeName . '\' is not present in grid.');
 }
 /**
  * Assert that Website visible on Store Group Form in Website dropdown
  *
  * @param StoreIndex $storeIndex
  * @param NewGroupIndex $newGroupIndex
  * @param Website $website
  * @return void
  */
 public function processAssert(StoreIndex $storeIndex, NewGroupIndex $newGroupIndex, Website $website)
 {
     $websiteName = $website->getName();
     $storeIndex->open()->getGridPageActions()->createStoreGroup();
     \PHPUnit_Framework_Assert::assertTrue($newGroupIndex->getEditFormGroup()->isWebsiteVisible($websiteName), 'Website \'' . $websiteName . '\' is not present on Store Group Form in Website dropdown.');
 }
 /**
  * Assert that New Store Group visible on StoreView Form in Store dropdown
  *
  * @param StoreIndex $storeIndex
  * @param StoreNew $storeNew
  * @param StoreGroup $storeGroup
  * @return void
  */
 public function processAssert(StoreIndex $storeIndex, StoreNew $storeNew, StoreGroup $storeGroup)
 {
     $storeGroupName = $storeGroup->getName();
     $storeIndex->open()->getGridPageActions()->addStoreView();
     \PHPUnit_Framework_Assert::assertTrue($storeNew->getStoreForm()->isStoreVisible($storeGroupName), 'Store Group \'' . $storeGroupName . '\' is not present on StoreView Form in Store dropdown.');
 }