コード例 #1
0
 /**
  * Create Integration Entity test.
  *
  * @param Integration $integration
  * @return void
  */
 public function test(Integration $integration)
 {
     // Steps
     $this->integrationIndexPage->open();
     $this->integrationIndexPage->getGridPageActions()->addNew();
     $this->integrationNewPage->getIntegrationForm()->fill($integration);
     $this->integrationNewPage->getFormPageActions()->saveNew();
 }
コード例 #2
0
 /**
  * Assert no alert when saving an integration.
  *
  * @param IntegrationNew $integrationNew
  * @return void
  */
 public function processAssert(IntegrationNew $integrationNew)
 {
     $isAlertPresent = $integrationNew->getFormPageActions()->isAlertPresent();
     if ($isAlertPresent) {
         $integrationNew->getFormPageActions()->acceptAlert();
     }
     \PHPUnit_Framework_Assert::assertFalse($isAlertPresent, 'Saving an integration should not cause alert.');
 }
 /**
  * Assert that Access tokens was changed correctly after Reauthorize.
  * Checking fields:
  * - Consumer Key;
  * - Consumer Secret;
  * - Access Token;
  * - Access Token Secret.
  *
  * @param IntegrationIndex $integrationIndex
  * @param IntegrationNew $integrationNew
  * @param Integration $integration
  * @return void
  */
 public function processAssert(IntegrationIndex $integrationIndex, IntegrationNew $integrationNew, Integration $integration)
 {
     $filter = ['name' => $integration->getName()];
     $integrationIndex->open();
     $integrationIndex->getIntegrationGrid()->searchAndOpen($filter);
     $actualData = $integrationNew->getIntegrationForm()->getData();
     $errors = $this->checkTokens($actualData, $integration->getData());
     \PHPUnit_Framework_Assert::assertEmpty($errors, "Integration tokens was changed incorrectly.\nLog:\n" . implode(";\n", $errors));
 }
コード例 #4
0
 /**
  * Assert that integration form filled correctly
  *
  * @param IntegrationIndex $integrationIndexPage
  * @param IntegrationNew $integrationNewPage
  * @param Integration $integration
  * @param Integration|null $initialIntegration
  * @return void
  */
 public function processAssert(IntegrationIndex $integrationIndexPage, IntegrationNew $integrationNewPage, Integration $integration, Integration $initialIntegration = null)
 {
     $data = $initialIntegration === null ? $integration->getData() : array_merge($initialIntegration->getData(), $integration->getData());
     $filter = ['name' => $data['name']];
     $integrationIndexPage->open();
     $integrationIndexPage->getIntegrationGrid()->searchAndOpen($filter);
     $formData = $integrationNewPage->getIntegrationForm()->getData();
     $dataDiff = $this->verifyForm($formData, $data);
     \PHPUnit_Framework_Assert::assertEmpty($dataDiff, 'Integration form was filled incorrectly.' . "\nLog:\n" . implode(";\n", $dataDiff));
 }
 /**
  * Create Integration Entity with existing name test.
  *
  * @param Integration $integration
  * @return array
  */
 public function test(Integration $integration)
 {
     // Precondition
     $integration->persist();
     // Steps
     $this->integrationIndexPage->open();
     $this->integrationIndexPage->getGridPageActions()->addNew();
     $this->integrationNewPage->getIntegrationForm()->fill($integration);
     $this->integrationNewPage->getFormPageActions()->saveNew();
     return ['integration' => $integration];
 }
コード例 #6
0
 /**
  * Update Integration Entity test.
  *
  * @param Integration $initialIntegration
  * @param Integration $integration
  * @return void
  */
 public function test(Integration $initialIntegration, Integration $integration)
 {
     // Precondition
     $initialIntegration->persist();
     // Steps
     $filter = ['name' => $initialIntegration->getName()];
     $this->integrationIndexPage->open();
     $this->integrationIndexPage->getIntegrationGrid()->searchAndOpen($filter);
     $this->integrationNewPage->getIntegrationForm()->fill($integration);
     $this->integrationNewPage->getFormPageActions()->save();
 }
コード例 #7
0
 /**
  * Assert validation error generated when saving integration with invalid email.
  *
  * @param IntegrationNew $integrationNew
  * @param Integration $integration
  * @return void
  */
 public function processAssert(IntegrationNew $integrationNew, Integration $integration)
 {
     $errors = $integrationNew->getIntegrationForm()->getJsErrors("integration_info");
     $emailJsError = false;
     foreach ($errors as $error) {
         if (strpos($error, 'Please enter a valid email address') !== false) {
             $emailJsError = true;
             break;
         }
     }
     \PHPUnit_Framework_Assert::assertTrue($emailJsError, 'Failed to validate email address (' . $integration->getEmail() . ') when saving integration.');
 }
 /**
  * Run Lock user when creating new integration test.
  *
  * @param Integration $integration
  * @param int $attempts
  * @param User $customAdmin
  * @param string $configData
  * @return void
  */
 public function test(Integration $integration, $attempts, User $customAdmin, $configData = null)
 {
     $this->configData = $configData;
     // Preconditions
     $this->objectManager->create('Magento\\Config\\Test\\TestStep\\SetupConfigurationStep', ['configData' => $this->configData])->run();
     $customAdmin->persist();
     $this->adminAuthLogin->open();
     $this->adminAuthLogin->getLoginBlock()->fill($customAdmin);
     $this->adminAuthLogin->getLoginBlock()->submit();
     // Steps
     $this->integrationIndexPage->open();
     $this->integrationIndexPage->getGridPageActions()->addNew();
     for ($i = 0; $i < $attempts; $i++) {
         $this->integrationNewPage->getIntegrationForm()->fill($integration);
         $this->integrationNewPage->getFormPageActions()->saveNew();
     }
     // Reload page
     $this->adminAuthLogin->open();
     $this->adminAuthLogin->getLoginBlock()->fill($customAdmin);
     $this->adminAuthLogin->getLoginBlock()->submit();
 }