Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
AssertCurrencySymbolOnProductPage.php
Go to the documentation of this file.
1 <?php
8 
10 use Magento\Catalog\Test\Page\Product\CatalogProductView;
11 use Magento\Cms\Test\Page\CmsIndex;
12 use Magento\CurrencySymbol\Test\Fixture\CurrencySymbolEntity;
13 use Magento\Mtf\Client\BrowserInterface;
14 use Magento\Mtf\Constraint\AbstractConstraint;
15 
19 class AssertCurrencySymbolOnProductPage extends AbstractConstraint
20 {
31  public function processAssert(
32  CatalogProductSimple $product,
33  BrowserInterface $browser,
34  CmsIndex $cmsIndex,
35  CatalogProductView $catalogProductView,
36  CurrencySymbolEntity $currencySymbol
37  ) {
38  $cmsIndex->open();
39  $cmsIndex->getCurrencyBlock()->switchCurrency($currencySymbol);
40  $browser->open($_ENV['app_frontend_url'] . $product->getUrlKey() . '.html');
41  $price = $catalogProductView->getViewBlock()->getPriceBlock()->getPrice();
42  preg_match('`(.*?)\d`', $price, $matches);
43 
44  $symbolOnPage = isset($matches[1]) ? $matches[1] : null;
45  \PHPUnit\Framework\Assert::assertEquals(
46  $currencySymbol->getCustomCurrencySymbol(),
47  $symbolOnPage,
48  'Wrong Currency Symbol is displayed on Product page.'
49  );
50  }
51 
57  public function toString()
58  {
59  return "Currency Symbol has been changed on Product Details page.";
60  }
61 }
$price
$currencySymbol
Definition: matrix.phtml:14
processAssert(CatalogProductSimple $product, BrowserInterface $browser, CmsIndex $cmsIndex, CatalogProductView $catalogProductView, CurrencySymbolEntity $currencySymbol)