Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
All Data Structures Namespaces Files Functions Variables Pages
AssertBundlePriceCalculatedOnProductPage.php
Go to the documentation of this file.
1 <?php
8 
10 use Magento\Catalog\Test\Page\Product\CatalogProductView;
12 use Magento\Mtf\Constraint\AbstractConstraint;
13 use Magento\Mtf\TestStep\TestStepFactory;
14 
18 class AssertBundlePriceCalculatedOnProductPage extends AbstractConstraint
19 {
27  public function processAssert(
28  TestStepFactory $stepFactory,
29  BundleProduct $product,
30  CatalogProductView $catalogProductView
31  ) {
32  $stepFactory->create(ConfigureProductOnProductPageStep::class, ['product' => $product])->run();
33 
34  //Process assertions
35  $this->assertPrice($product, $catalogProductView);
36  }
37 
45  protected function assertPrice(BundleProduct $product, CatalogProductView $productView)
46  {
47  $checkoutData = $product->getCheckoutData();
48  \PHPUnit\Framework\Assert::assertEquals(
49  $checkoutData['cartItem']['configuredPrice'],
50  $productView->getBundleViewBlock()->getBundleSummaryBlock()->getConfiguredPriceBlock()->getPrice(),
51  'Bundle price calculated is not correct.'
52  );
53  }
54 
60  public function toString()
61  {
62  return 'Bundle price calculates right on product view page.';
63  }
64 }
processAssert(TestStepFactory $stepFactory, BundleProduct $product, CatalogProductView $catalogProductView)