/** * Assert that pop-up with resources, that were specified for integration are shown * after starting activation of integration * * @param IntegrationIndex $integrationIndex * @param Integration $integration * @return void */ public function processAssert(IntegrationIndex $integrationIndex, Integration $integration) { $fixtureResources = is_array($integration->getResources()) ? $integration->getResources() : [$integration->getResources()]; $formResources = $integrationIndex->getIntegrationGrid()->getResourcesPopup()->getData(); $result = $this->verifyResources($formResources['resources'], $fixtureResources); \PHPUnit_Framework_Assert::assertEmpty($result, "Integration resources is not correct.\nLog:\n" . $result); $integrationIndex->getIntegrationGrid()->getResourcesPopup()->clickAllowButton(); }
/** * Activate Integration Entity Test. * * @param Integration $integration * @return void */ public function test(Integration $integration) { // Preconditions $integration->persist(); // Steps $filter = ['name' => $integration->getName()]; $this->integrationIndexPage->open(); $this->integrationIndexPage->getIntegrationGrid()->searchAndActivate($filter); }
/** * 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(); }
/** * Assert that pop-up with tokens is shown after clicking on "Allow" button on Resources popup. * It contains: * - Consumer Key; * - Consumer Secret; * - Access Token; * - Access Token Secret; * All fields contain generated values. * * @param IntegrationIndex $integrationIndex * @return void */ public function processAssert(IntegrationIndex $integrationIndex) { $errors = []; $tokensData = $integrationIndex->getIntegrationGrid()->getTokensPopup()->getData(); $tokensKeys = array_keys($tokensData); $diff = array_diff($this->fields, $tokensKeys); if (!empty($diff)) { $errors[] = 'Field(s) "' . implode(', ', $diff) . '" is absent in integration tokens.'; } foreach ($tokensData as $key => $value) { if (empty($value)) { $errors[] = 'Field with key: ' . $key . '" is empty in integration tokens.'; } } \PHPUnit_Framework_Assert::assertEmpty($errors, "Integration tokens is not correct.\nLog:\n" . implode(";\n", $errors)); $integrationIndex->getIntegrationGrid()->getTokensPopup()->clickDoneButton(); }
/** * 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)); }
/** * 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)); }
/** * Test for Reauthorize tokens for the Integration Entity. * * @param Integration $integration * @return array */ public function test(Integration $integration) { // Precondition $integration->persist(); $filter = ['name' => $integration->getName()]; $this->integrationIndex->open(); $this->integrationIndex->getIntegrationGrid()->searchAndActivate($filter); $this->integrationIndex->getIntegrationGrid()->getResourcesPopup()->clickAllowButton(); $tokens = $this->integrationIndex->getIntegrationGrid()->getTokensPopup()->getData(); $this->integrationIndex->getIntegrationGrid()->getTokensPopup()->clickDoneButton(); $integration = $this->fixtureFactory->createByCode('integration', ['data' => array_merge($integration->getData(), $tokens)]); // Steps $this->integrationIndex->getIntegrationGrid()->searchAndReauthorize($filter); $this->integrationIndex->getIntegrationGrid()->getResourcesPopup()->clickReauthorizeButton(); $this->integrationIndex->getIntegrationGrid()->getTokensPopup()->clickDoneButton(); return ['integration' => $integration]; }
/** * Assert that Integration is not presented in grid and cannot be found using name * * @param IntegrationIndex $integrationIndexPage * @param Integration $integration * @return void */ public function processAssert(IntegrationIndex $integrationIndexPage, Integration $integration) { $filter = ['name' => $integration->getName()]; $integrationIndexPage->open(); \PHPUnit_Framework_Assert::assertFalse($integrationIndexPage->getIntegrationGrid()->isRowVisible($filter), 'Integration \'' . $filter['name'] . '\' is present in Integration grid.'); }
/** * Assert that data in grid on Integrations page according to fixture by name field * * @param IntegrationIndex $integrationIndexPage * @param Integration $integration * @param Integration|null $initialIntegration * @return void */ public function processAssert(IntegrationIndex $integrationIndexPage, Integration $integration, Integration $initialIntegration = null) { $filter = ['name' => $initialIntegration !== null && !$integration->hasData('name') ? $initialIntegration->getName() : $integration->getName()]; $integrationIndexPage->open(); \PHPUnit_Framework_Assert::assertTrue($integrationIndexPage->getIntegrationGrid()->isRowVisible($filter), 'Integration \'' . $filter['name'] . '\' is absent in Integration grid.'); }