From c6850256dda889f9295dbbeefcaf6383552ee167 Mon Sep 17 00:00:00 2001
From: Maksym Aposov <maposov@ebay.com>
Date: Tue, 20 Oct 2015 12:34:36 +0300
Subject: [PATCH] MAGETWO-43861:
 Magento\CatalogRule\Test\TestCase\CreateCatalogRuleTest fails

---
 .../Catalog/Test/Repository/CatalogProductSimple.xml   |  1 +
 .../AssertCatalogPriceRuleAppliedShoppingCart.php      |  1 +
 .../app/Magento/Checkout/Test/Block/Cart/Totals.php    | 10 ++++++++++
 3 files changed, 12 insertions(+)

diff --git a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogProductSimple.xml b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogProductSimple.xml
index 6be4a2275e3..979d6e78acc 100644
--- a/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogProductSimple.xml
+++ b/dev/tests/functional/tests/app/Magento/Catalog/Test/Repository/CatalogProductSimple.xml
@@ -73,6 +73,7 @@
                 <item name="qty" xsi:type="string">25</item>
                 <item name="is_in_stock" xsi:type="string">In Stock</item>
             </field>
+            <field name="product_has_weight" xsi:type="string">Yes</field>
             <field name="weight" xsi:type="string">1</field>
             <field name="price" xsi:type="array">
                 <item name="value" xsi:type="string">560</item>
diff --git a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleAppliedShoppingCart.php b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleAppliedShoppingCart.php
index 7a4e4b605ef..252a96620ec 100644
--- a/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleAppliedShoppingCart.php
+++ b/dev/tests/functional/tests/app/Magento/CatalogRule/Test/Constraint/AssertCatalogPriceRuleAppliedShoppingCart.php
@@ -58,6 +58,7 @@ class AssertCatalogPriceRuleAppliedShoppingCart extends AbstractConstraint
                 . "\nActual: " . $actualPrice . "\n"
             );
         }
+        $checkoutCartPage->getTotalsBlock()->waitForShippingPriceBlock();
         $actualPrices['sub_total'] = $checkoutCartPage->getTotalsBlock()->getSubtotal();
         $actualPrices['grand_total'] = $checkoutCartPage->getTotalsBlock()->getGrandTotal();
         $expectedPrices['sub_total'] = $cartPrice['sub_total'];
diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Totals.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Totals.php
index 663a88d34b6..d24b3c3e7cf 100644
--- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Totals.php
+++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Block/Cart/Totals.php
@@ -252,4 +252,14 @@ class Totals extends Block
         sleep(1);
         $this->waitForElementNotVisible($this->blockWaitElement);
     }
+
+    /**
+     * Wait for shipping block to appear
+     *
+     * @return bool|null
+     */
+    public function waitForShippingPriceBlock()
+    {
+        $this->waitForElementVisible($this->shippingPriceBlockSelector, Locator::SELECTOR_CSS);
+    }
 }
-- 
GitLab