/** * Assert that gift card account present in grid. * * @param GiftCardAccount $giftCardAccount * @param GiftCardAccountIndex $giftCardAccountIndex * @param string $code * @return void */ public function processAssert(GiftCardAccount $giftCardAccount, GiftCardAccountIndex $giftCardAccountIndex, $code) { $giftCardAccountIndex->open(); $dateExpires = $giftCardAccount->hasData('date_expires') ? date("M j, Y", strtotime($giftCardAccount->getDateExpires())) : '--'; $balance = $giftCardAccount->getBalance(); \PHPUnit_Framework_Assert::assertTrue($giftCardAccountIndex->getGiftCardAccountGrid()->isRowVisible(['code' => $code], false), "Gift card with balance = '{$balance}', '{$code}' and expiration date = '{$dateExpires}' is absent in " . "gift card account grid."); }
/** * Assert that displayed gift card account data on edit page equals passed from fixture. * * @param GiftCardAccount $giftCardAccount * @param GiftCardAccountNew $giftCardAccountNew * @param GiftCardAccountIndex $giftCardAccountIndex * @param string $code * @return void */ public function processAssert(GiftCardAccount $giftCardAccount, GiftCardAccountNew $giftCardAccountNew, GiftCardAccountIndex $giftCardAccountIndex, $code) { $giftCardAccountIndex->open(); $giftCardAccountIndex->getGiftCardAccountGrid()->searchAndOpen(['code' => $code], false); $formData = $giftCardAccountNew->getGiftCardAccountForm()->getData(); $dataDiff = $this->verifyData($giftCardAccount->getData(), $formData); \PHPUnit_Framework_Assert::assertEmpty($dataDiff, "Gift card account form data does not equal to passed from fixture. \n" . $dataDiff); }
/** * Assert that created gift card account can be verified on the frontend on My Account page. * * @param Customer $customer * @param CustomerAccountIndex $customerAccountIndex * @param GiftCardAccount $giftCardAccount * @param string $code * @return void */ public function processAssert(Customer $customer, CustomerAccountIndex $customerAccountIndex, GiftCardAccount $giftCardAccount, $code) { $this->objectManager->create('Mage\\Customer\\Test\\TestStep\\LoginCustomerOnFrontendStep', ['customer' => $customer])->run(); $customerAccountIndex->getAccountNavigationBlock()->openNavigationItem('Gift Card'); $data = $giftCardAccount->getData(); $customerAccountIndex->getRedeemBlock()->checkStatusAndBalance($code); $fixtureData = ['code' => $code, 'balance' => $data['balance'], 'date_expires' => $data['date_expires']]; \PHPUnit_Framework_Assert::assertEquals($fixtureData, $customerAccountIndex->getCheckBlock()->getGiftCardAccountData($fixtureData)); }
/** * Assert that created gift card account can be verified on the frontend in Shopping Cart. * * @param Customer $customer * @param Browser $browser * @param CatalogProductSimple $product * @param CatalogProductView $catalogProductView * @param GiftCardAccount $giftCardAccount * @param CheckoutCart $checkoutCart * @param string $code * @return void */ public function processAssert(Customer $customer, Browser $browser, CatalogProductSimple $product, CatalogProductView $catalogProductView, GiftCardAccount $giftCardAccount, CheckoutCart $checkoutCart, $code) { $this->objectManager->create('Mage\\Customer\\Test\\TestStep\\LoginCustomerOnFrontendStep', ['customer' => $customer])->run(); $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html'); $catalogProductView->getViewBlock()->clickAddToCart(); $data = $giftCardAccount->getData(); $checkoutCart->getGiftCardAccountBlock()->checkStatusAndBalance($code); $fixtureData = ['code' => $code, 'balance' => $data['balance'], 'date_expires' => $data['date_expires']]; \PHPUnit_Framework_Assert::assertEquals($fixtureData, $checkoutCart->getCheckBlock()->getGiftCardAccountData($fixtureData)); }
/** * Assert that success apply gift card message is displayed on shopping cart page. * * @param CheckoutCart $checkoutCart * @param GiftCardAccount $giftCardAccount * @return void */ public function processAssert(CheckoutCart $checkoutCart, GiftCardAccount $giftCardAccount) { \PHPUnit_Framework_Assert::assertEquals(sprintf(self::SUCCESS_APPLY_MESSAGE, $giftCardAccount->getCode()), $checkoutCart->getMessagesBlock()->getSuccessMessages(), 'Wrong success message is displayed.'); }
/** * Get giftCard discount price. * * @param GiftCardAccountFixture $giftCardAccount * @return string|null */ public function getGiftCardDiscount(GiftCardAccountFixture $giftCardAccount) { $selector = sprintf($this->giftCardDiscount, $giftCardAccount->getCode()); return $this->escapeCurrency($this->_rootElement->find($selector, Locator::SELECTOR_XPATH)->getText()); }
/** * Add GiftCard in ShoppingCart. * * @param Customer $customerFixture * @param GiftCardAccount $giftCardAccount * @param BrowserInterface $browser * @param string $product * @param string|null $customer * @return array */ public function test(Customer $customerFixture, GiftCardAccount $giftCardAccount, BrowserInterface $browser, $product, $customer = null) { // Preconditions $product = $this->createProduct($product); // Steps if ($customer !== null) { $this->loginCustomer($customerFixture); } $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html'); $this->catalogProductView->getViewBlock()->addToCart($product); $this->checkoutCart->getGiftCardAccountBlock()->addGiftCard($giftCardAccount->getCode()); return ['giftCardAccount' => $giftCardAccount]; }