From c4b646c5839bef241477bc153b154d06b18064c7 Mon Sep 17 00:00:00 2001 From: Matt-Yorkley <9029026+Matt-Yorkley@users.noreply.github.com> Date: Fri, 22 Feb 2019 23:01:01 +0000 Subject: [PATCH] Wait for angular to load in BOM spec --- spec/features/admin/bulk_order_management_spec.rb | 2 ++ spec/support/request/web_helper.rb | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/spec/features/admin/bulk_order_management_spec.rb b/spec/features/admin/bulk_order_management_spec.rb index 26dbc2aab0..7e11b329c2 100644 --- a/spec/features/admin/bulk_order_management_spec.rb +++ b/spec/features/admin/bulk_order_management_spec.rb @@ -45,6 +45,7 @@ feature %q{ before :each do visit '/admin/orders/bulk_management' + wait_for_angular_requests end it "displays a column for user's full name" do @@ -456,6 +457,7 @@ feature %q{ before :each do visit '/admin/orders/bulk_management' + wait_for_angular_requests end it "displays date fields for filtering orders, with default values set" do diff --git a/spec/support/request/web_helper.rb b/spec/support/request/web_helper.rb index 912c19e445..19f503d837 100644 --- a/spec/support/request/web_helper.rb +++ b/spec/support/request/web_helper.rb @@ -152,8 +152,16 @@ module WebHelper page.driver.browser.switch_to.alert.accept end + def wait_for_angular_requests + wait_until { angular_requests_finished } + end + private + def angular_requests_finished + page.evaluate_script('angular.element(".ng-scope").injector().get("$http").pendingRequests.length === 0') + end + def wait_for_ajax wait_until { page.evaluate_script("$.active") == 0 } end