当前位置: 首页>>代码示例>>PHP>>正文


PHP CheckoutCart::getCartBlock方法代码示例

本文整理汇总了PHP中Magento\Checkout\Test\Page\CheckoutCart::getCartBlock方法的典型用法代码示例。如果您正苦于以下问题:PHP CheckoutCart::getCartBlock方法的具体用法?PHP CheckoutCart::getCartBlock怎么用?PHP CheckoutCart::getCartBlock使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Magento\Checkout\Test\Page\CheckoutCart的用法示例。


在下文中一共展示了CheckoutCart::getCartBlock方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: test

 /**
  * Run test add to cart cross-sell products.
  *
  * @param string $products
  * @param string $promotedProducts
  * @param string $navigateProductsOrder
  * @param string $productsToVerify
  * @param CmsIndex $cmsIndex
  * @param CheckoutCart $checkoutCart
  * @return void
  */
 public function test($products, $promotedProducts, $navigateProductsOrder, $productsToVerify, CmsIndex $cmsIndex, CheckoutCart $checkoutCart)
 {
     // Preconditions
     $this->createProducts($products);
     $this->assignPromotedProducts($promotedProducts, 'cross_sell_products');
     // Initialization
     $this->cmsIndex = $cmsIndex;
     $this->checkoutCart = $checkoutCart;
     $navigateProductsOrder = $this->parseNavigateProductsOrder($navigateProductsOrder);
     $productsToVerify = $this->parseProductsToVerify($productsToVerify);
     $initialProductName = array_shift($navigateProductsOrder);
     $initialProduct = $this->products[$initialProductName];
     $initialProductToVerify = $productsToVerify[$initialProductName];
     // Steps
     $this->checkoutCart->open();
     $this->checkoutCart->getCartBlock()->clearShoppingCart();
     $this->browser->open($_ENV['app_frontend_url'] . $initialProduct->getUrlKey() . '.html');
     $this->catalogProductView->getViewBlock()->addToCart($initialProduct);
     $this->catalogProductView->getMessagesBlock()->waitSuccessMessage();
     $this->assertCrossSellSection($initialProductToVerify);
     foreach ($navigateProductsOrder as $productName) {
         $this->addToCart($this->products[$productName]);
         if (empty($productsToVerify[$productName])) {
             $this->assertAbsentCrossSellSection();
         } else {
             $this->assertCrossSellSection($productsToVerify[$productName]);
         }
     }
 }
开发者ID:andrewhowdencom,项目名称:m2onk8s,代码行数:40,代码来源:AddToCartCrossSellTest.php

示例2: run

 /**
  * Checkout with Braintree PayPal from Shopping Cart.
  *
  * @return void
  */
 public function run()
 {
     $this->checkoutCart->open();
     $this->checkoutCart->getTotalsBlock()->waitForShippingPriceBlock();
     $this->checkoutCart->getTotalsBlock()->waitForUpdatedTotals();
     $currentWindow = $this->checkoutCart->getCartBlock()->braintreePaypalCheckout();
     $this->checkoutCart->getBraintreePaypalBlock()->process($currentWindow);
 }
开发者ID:Doability,项目名称:magento2dev,代码行数:13,代码来源:CheckoutWithPaypalFromCartStep.php

示例3: test

 /**
  * Run test add products to shopping cart
  *
  * @param string $products
  * @param int $deletedProductIndex
  * @return array
  */
 public function test($products, $deletedProductIndex)
 {
     // Preconditions
     $products = $this->prepareProducts($products);
     $this->cartPage->open();
     $this->cartPage->getCartBlock()->clearShoppingCart();
     // Steps
     $this->addToCart($products);
     $this->cartPage->getMessagesBlock()->waitSuccessMessage();
     $this->removeProduct($products[$deletedProductIndex]);
     $deletedProduct = $products[$deletedProductIndex];
     unset($products[$deletedProductIndex]);
     return ['products' => $products, 'deletedProduct' => $deletedProduct];
 }
开发者ID:kidaa30,项目名称:magento2-platformsh,代码行数:21,代码来源:DeleteProductFromMiniShoppingCartTest.php

示例4: assertOnShoppingCart

 /**
  * Assert prices on the shopping cart
  *
  * @param FixtureInterface $product
  * @param CheckoutCart $checkoutCart
  * @return void
  */
 protected function assertOnShoppingCart(FixtureInterface $product, CheckoutCart $checkoutCart)
 {
     $cartBlock = $checkoutCart->getCartBlock();
     $productName = $product->getName();
     $productOptions = $product->getCustomOptions();
     $priceComparing = $product->getPrice();
     if ($groupPrice = $product->getGroupPrice()) {
         $groupPrice = reset($groupPrice);
         $priceComparing = $groupPrice['price'];
     }
     if ($specialPrice = $product->getSpecialPrice()) {
         $priceComparing = $specialPrice;
     }
     if (!empty($productOptions)) {
         $productOption = reset($productOptions);
         $optionsData = reset($productOption['options']);
         $optionName = $cartBlock->getCartItemOptionsNameByProductName($productName);
         $optionValue = $cartBlock->getCartItemOptionsValueByProductName($productName);
         \PHPUnit_Framework_Assert::assertTrue(trim($optionName) === $productOption['title'] && trim($optionValue) === $optionsData['title'], 'In the cart wrong option product.');
         if ($optionsData['price_type'] === 'Percent') {
             $priceComparing = $priceComparing * (1 + $optionsData['price'] / 100);
         } else {
             $priceComparing += $optionsData['price'];
         }
     }
     $price = $checkoutCart->getCartBlock()->getProductPriceByName($productName);
     \PHPUnit_Framework_Assert::assertEquals(number_format($priceComparing, 2), $price, 'Product price in shopping cart is not correct.');
 }
开发者ID:aiesh,项目名称:magento2,代码行数:35,代码来源:AssertProductInCart.php

示例5: assertOnShoppingCart

 /**
  * Assert prices on the shopping cart
  *
  * @param FixtureInterface $product
  * @param CheckoutCart $checkoutCart
  * @return void
  *
  * @SuppressWarnings(PHPMD.NPathComplexity)
  */
 protected function assertOnShoppingCart(FixtureInterface $product, CheckoutCart $checkoutCart)
 {
     $checkoutCart->open();
     /** @var CatalogProductSimple $product */
     $customOptions = $product->getCustomOptions();
     $checkoutData = $product->getCheckoutData();
     $checkoutCartItem = isset($checkoutData['cartItem']) ? $checkoutData['cartItem'] : [];
     $checkoutCustomOptions = isset($checkoutData['options']['custom_options']) ? $checkoutData['options']['custom_options'] : [];
     $fixturePrice = $product->getPrice();
     $specialPrice = $product->getSpecialPrice();
     $cartItem = $checkoutCart->getCartBlock()->getCartItem($product);
     $formPrice = $cartItem->getPrice();
     if ($specialPrice) {
         $fixturePrice = $specialPrice;
     }
     if (isset($checkoutCartItem['price'])) {
         $fixturePrice = $checkoutCartItem['price'];
     }
     $fixtureActualPrice = $fixturePrice;
     foreach ($checkoutCustomOptions as $checkoutOption) {
         $attributeKey = str_replace('attribute_key_', '', $checkoutOption['title']);
         $optionKey = str_replace('option_key_', '', $checkoutOption['value']);
         $option = $customOptions[$attributeKey]['options'][$optionKey];
         if ('Fixed' == $option['price_type']) {
             $fixtureActualPrice += $option['price'];
         } else {
             $fixtureActualPrice += $fixturePrice / 100 * $option['price'];
         }
     }
     \PHPUnit_Framework_Assert::assertEquals($fixtureActualPrice, $formPrice, 'Product price in shopping cart is not correct.');
 }
开发者ID:andrewhowdencom,项目名称:m2onk8s,代码行数:40,代码来源:AssertProductInCart.php

示例6: assertPrice

 /**
  * Assert prices on the product view page and shopping cart page.
  *
  * @param BundleProduct $product
  * @param CatalogProductView $catalogProductView
  * @param CheckoutCart $checkoutCartView
  * @param BundleProduct $originalProduct [optional]
  * @return void
  *
  * @SuppressWarnings(PHPMD.NPathComplexity)
  */
 protected function assertPrice(BundleProduct $product, CatalogProductView $catalogProductView, CheckoutCart $checkoutCartView, BundleProduct $originalProduct = null)
 {
     $customerGroup = 'NOT LOGGED IN';
     $bundleData = $product->getData();
     $this->productPriceType = $originalProduct !== null ? $originalProduct->getPriceType() : $product->getPriceType();
     $catalogProductView->getViewBlock()->addToCart($product);
     $catalogProductView->getMessagesBlock()->waitSuccessMessage();
     $checkoutCartView->open();
     $cartItem = $checkoutCartView->getCartBlock()->getCartItem($product);
     $specialPrice = 0;
     if (isset($bundleData['group_price'])) {
         $specialPrice = $bundleData['group_price'][array_search($customerGroup, $bundleData['group_price'])]['price'] / 100;
     }
     $optionPrice = [];
     $fillData = $product->getCheckoutData();
     foreach ($fillData['options']['bundle_options'] as $key => $data) {
         $subProductPrice = 0;
         foreach ($bundleData['bundle_selections']['products'][$key] as $productKey => $itemProduct) {
             if (strpos($itemProduct->getName(), $data['value']['name']) !== false) {
                 $data['value']['key'] = $productKey;
                 $subProductPrice = $itemProduct->getPrice();
             }
         }
         $optionPrice[$key]['price'] = $this->productPriceType == 'Fixed' ? number_format($bundleData['bundle_selections']['bundle_options'][$key]['assigned_products'][$data['value']['key']]['data']['selection_price_value'], 2) : number_format($subProductPrice, 2);
     }
     foreach ($optionPrice as $index => $item) {
         $item['price'] -= $item['price'] * $specialPrice;
         \PHPUnit_Framework_Assert::assertEquals(number_format($item['price'], 2), $cartItem->getPriceBundleOptions($index + 1), 'Bundle item ' . ($index + 1) . ' options on frontend don\'t equal to fixture.');
     }
     $sumOptionsPrice = $product->getDataFieldConfig('price')['source']->getPriceData()['cart_price'];
     $subTotal = number_format($cartItem->getPrice(), 2);
     \PHPUnit_Framework_Assert::assertEquals($sumOptionsPrice, $subTotal, 'Bundle unit price on frontend doesn\'t equal to fixture.');
 }
开发者ID:nja78,项目名称:magento2,代码行数:44,代码来源:AssertBundlePriceType.php

示例7: removeProducts

 /**
  * Remove products form cart
  *
  * @param array $products
  * @return void
  */
 protected function removeProducts(array $products)
 {
     $this->cartPage->open();
     foreach ($products as $product) {
         $this->cartPage->getCartBlock()->getCartItem($product)->removeItem();
     }
 }
开发者ID:andrewhowdencom,项目名称:m2onk8s,代码行数:13,代码来源:DeleteProductsFromShoppingCartTest.php

示例8: assertCheckoutCart

 /**
  * Verify checkout cart.
  *
  * @param array $checkoutProducts
  * @return void
  */
 protected function assertCheckoutCart(array $checkoutProducts)
 {
     $this->checkoutCart->open();
     foreach ($checkoutProducts as $product) {
         \PHPUnit_Framework_Assert::assertTrue($this->checkoutCart->getCartBlock()->getCartItem($product)->isVisible(), "Product {$product->getName()} absent in cart.");
     }
 }
开发者ID:andrewhowdencom,项目名称:m2onk8s,代码行数:13,代码来源:NavigateRelatedProductsTest.php

示例9: processAssert

 /**
  * Assert that products are present in shopping cart
  *
  * @param CheckoutCart $checkoutCart
  * @param array $products
  * @return void
  */
 public function processAssert(CheckoutCart $checkoutCart, array $products)
 {
     $checkoutCart->open();
     foreach ($products as $product) {
         \PHPUnit_Framework_Assert::assertTrue($checkoutCart->getCartBlock()->getCartItem($product)->isVisible(), 'Product ' . $product->getName() . ' is absent in shopping cart.');
     }
 }
开发者ID:kidaa30,项目名称:magento2-platformsh,代码行数:14,代码来源:AssertProductPresentInShoppingCart.php

示例10: assertOnShoppingCart

 /**
  * Assert prices on the shopping cart
  *
  * @param FixtureInterface $product
  * @param CheckoutCart $checkoutCart
  * @return void
  */
 protected function assertOnShoppingCart(FixtureInterface $product, CheckoutCart $checkoutCart)
 {
     $customOptions = $product->getCustomOptions();
     $checkoutData = $product->getCheckoutData();
     $checkoutCustomOptions = isset($checkoutData['custom_options']) ? $checkoutData['custom_options'] : [];
     $fixturePrice = $product->getPrice();
     $groupPrice = $product->getGroupPrice();
     $specialPrice = $product->getSpecialPrice();
     $cartItem = $checkoutCart->getCartBlock()->getCartItem($product);
     $formPrice = $cartItem->getPrice();
     if ($groupPrice) {
         $groupPrice = reset($groupPrice);
         $fixturePrice = $groupPrice['price'];
     }
     if ($specialPrice) {
         $fixturePrice = $specialPrice;
     }
     $fixtureActualPrice = $fixturePrice;
     foreach ($checkoutCustomOptions as $checkoutOption) {
         $attributeKey = $checkoutOption['title'];
         $optionKey = $checkoutOption['value'];
         $option = $customOptions[$attributeKey]['options'][$optionKey];
         if ('Fixed' == $option['price_type']) {
             $fixtureActualPrice += $option['price'];
         } else {
             $fixtureActualPrice += $fixturePrice / 100 * $option['price'];
         }
     }
     \PHPUnit_Framework_Assert::assertEquals(number_format($fixtureActualPrice, 2), $formPrice, 'Product price in shopping cart is not correct.');
 }
开发者ID:buskamuza,项目名称:magento2-skeleton,代码行数:37,代码来源:AssertProductInCart.php

示例11: processAssert

 /**
  * Assertion that the product is correctly displayed in cart
  *
  * @param Browser $browser
  * @param CatalogProductView $catalogProductView
  * @param CheckoutCart $checkoutCart
  * @param ConfigurableProductInjectable $product
  * @return void
  */
 public function processAssert(Browser $browser, CatalogProductView $catalogProductView, CheckoutCart $checkoutCart, ConfigurableProductInjectable $product)
 {
     $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
     $catalogProductView->getViewBlock()->addToCart($product);
     $checkoutData = $product->getCheckoutData();
     $price = $checkoutCart->getCartBlock()->getCartItem($product)->getPrice();
     \PHPUnit_Framework_Assert::assertEquals($checkoutData['cartItem']['price'], $price, 'Product price in shopping cart is not correct.');
 }
开发者ID:zhangjiachao,项目名称:magento2,代码行数:17,代码来源:AssertConfigurableProductInCart.php

示例12: assertOnShoppingCart

 /**
  * Assert prices on the shopping Cart
  *
  * @param CatalogProductConfigurable $configurable
  * @param CheckoutCart $checkoutCart
  * @return void
  */
 protected function assertOnShoppingCart(CatalogProductConfigurable $configurable, CheckoutCart $checkoutCart)
 {
     /** @var \Magento\ConfigurableProduct\Test\Fixture\CatalogProductConfigurable\Price $priceFixture */
     $priceFixture = $configurable->getDataFieldConfig('price')['source'];
     $pricePresetData = $priceFixture->getPreset();
     $price = $checkoutCart->getCartBlock()->getProductPriceByName($configurable->getName());
     \PHPUnit_Framework_Assert::assertEquals($pricePresetData['cart_price'], $price, 'Product price in shopping cart is not correct.');
 }
开发者ID:Atlis,项目名称:docker-magento2,代码行数:15,代码来源:AssertConfigurableInCart.php

示例13: getCartPrices

 /**
  * Get cart prices.
  *
  * @param InjectableFixture $product
  * @param $actualPrices
  * @return array
  */
 public function getCartPrices(InjectableFixture $product, $actualPrices)
 {
     $actualPrices['cart_item_price_excl_tax'] = $this->checkoutCart->getCartBlock()->getCartItem($product)->getPriceExclTax();
     $actualPrices['cart_item_price_incl_tax'] = $this->checkoutCart->getCartBlock()->getCartItem($product)->getPriceInclTax();
     $actualPrices['cart_item_subtotal_excl_tax'] = $this->checkoutCart->getCartBlock()->getCartItem($product)->getSubtotalPriceExclTax();
     $actualPrices['cart_item_subtotal_incl_tax'] = $this->checkoutCart->getCartBlock()->getCartItem($product)->getSubtotalPriceInclTax();
     return $actualPrices;
 }
开发者ID:kidaa30,项目名称:magento2-platformsh,代码行数:15,代码来源:AbstractAssertTaxRuleIsAppliedToAllPrices.php

示例14: processAssert

 /**
  * Assert that Catalog Price Rule is not applied for product(s) in Shopping Cart.
  *
  * @param CheckoutCart $checkoutCartPage
  * @param array $products
  * @param array $productPrice
  * @return void
  */
 public function processAssert(CheckoutCart $checkoutCartPage, array $products, array $productPrice)
 {
     $this->objectManager->create('\\Magento\\Checkout\\Test\\TestStep\\AddProductsToTheCartStep', ['products' => $products])->run();
     $checkoutCartPage->open();
     foreach ($products as $key => $product) {
         $actualPrice = $checkoutCartPage->getCartBlock()->getCartItem($product)->getSubtotalPrice();
         \PHPUnit_Framework_Assert::assertEquals($productPrice[$key]['regular'], $actualPrice, 'Wrong product price is displayed.' . "\nExpected: " . $productPrice[$key]['regular'] . "\nActual: " . $actualPrice . "\n");
     }
 }
开发者ID:pradeep-wagento,项目名称:magento2,代码行数:17,代码来源:AssertCatalogPriceRuleNotAppliedShoppingCart.php

示例15: processAssert

 /**
  * Assert that product is displayed in cross-sell section
  *
  * @param CatalogProductSimple $product1
  * @param CatalogProductSimple $product2
  * @param CmsIndex $cmsIndex
  * @param CatalogCategoryView $catalogCategoryView
  * @param CatalogProductView $catalogProductView
  * @param CheckoutCart $checkoutCart
  * @return void
  */
 public function processAssert(CatalogProductSimple $product1, CatalogProductSimple $product2, CmsIndex $cmsIndex, CatalogCategoryView $catalogCategoryView, CatalogProductView $catalogProductView, CheckoutCart $checkoutCart)
 {
     $categoryName = $product1->getCategoryIds()[0];
     $checkoutCart->open();
     $checkoutCart->getCartBlock()->clearShoppingCart();
     $cmsIndex->getTopmenu()->selectCategoryByName($categoryName);
     $catalogCategoryView->getListProductBlock()->openProductViewPage($product1->getName());
     $catalogProductView->getViewBlock()->addToCart($product1);
     \PHPUnit_Framework_Assert::assertTrue($checkoutCart->getCrosssellBlock()->verifyProductCrosssell($product2), 'Product \'' . $product2->getName() . '\' is absent in cross-sell section.');
 }
开发者ID:aiesh,项目名称:magento2,代码行数:21,代码来源:AssertCrossSellsProductsSection.php


注:本文中的Magento\Checkout\Test\Page\CheckoutCart::getCartBlock方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。