/** * Apply gift card before one page checkout. * * @return void */ public function run() { foreach ($this->giftCardAccounts as $giftCardAccount) { if ($giftCardAccount !== null) { $this->checkoutCart->getGiftCardAccountBlock()->addGiftCard($giftCardAccount->getCode()); } } }
/** * Assert that gift card usable in frontend. * * @param CatalogProductView $catalogProductView * @param CheckoutCart $checkoutCart * @param CatalogProductSimple $product * @param Browser $browser * @param string $code * @return void */ public function processAssert(CatalogProductView $catalogProductView, CheckoutCart $checkoutCart, CatalogProductSimple $product, Browser $browser, $code) { $this->checkoutCart = $checkoutCart; $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html'); $catalogProductView->getViewBlock()->clickAddToCart(); $checkoutCart->getGiftCardAccountBlock()->addGiftCard($code); $this->assert(); }
/** * 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)); }
/** * 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]; }