From 5eb5406278365c04adc5986ddaeee66a3467ef1e Mon Sep 17 00:00:00 2001 From: Derek Kniffin Date: Wed, 28 Oct 2015 07:33:44 -0400 Subject: [PATCH 1/4] Wrap setup_ready functionality in a document ready function --- lib/capybara/angular/waiter.rb | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/lib/capybara/angular/waiter.rb b/lib/capybara/angular/waiter.rb index 392a12e..473eb8e 100644 --- a/lib/capybara/angular/waiter.rb +++ b/lib/capybara/angular/waiter.rb @@ -51,14 +51,30 @@ def setup_ready var el = document.querySelector('body') window.angularReady = false; - if (angular.getTestability) { - angular.getTestability(el).whenStable(function() { window.angularReady = true; }); - } else { - var $browser = angular.element(el).injector().get('$browser'); - - if ($browser.outstandingRequestCount > 0) { window.angularReady = false; } - $browser.notifyWhenNoOutstandingRequests(function() { window.angularReady = true; }); + function ready(fn) { + if (document.readyState != 'loading'){ + fn(); + } else if (document.addEventListener) { + document.addEventListener('DOMContentLoaded', fn); + } else { + document.attachEvent('onreadystatechange', function() { + if (document.readyState != 'loading') + fn(); + }); + } } + + ready(function () { + if (angular.getTestability) { + angular.getTestability(el).whenStable(function() { window.angularReady = true; }); + } else { + var $browser = angular.element(el).injector().get('$browser'); + + if ($browser.outstandingRequestCount > 0) { window.angularReady = false; } + $browser.notifyWhenNoOutstandingRequests(function() { window.angularReady = true; }); + } + }); + JS end From f40f5c86c51a81eadc9c6c0d90d844341d7e5d55 Mon Sep 17 00:00:00 2001 From: Derek Kniffin Date: Wed, 28 Oct 2015 09:07:13 -0400 Subject: [PATCH 2/4] Testing something --- meh.txt | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 meh.txt diff --git a/meh.txt b/meh.txt new file mode 100644 index 0000000..e69de29 From 7f6677566be98b1d35a55299660bd4db63a68bc5 Mon Sep 17 00:00:00 2001 From: Derek Kniffin Date: Wed, 28 Oct 2015 09:07:59 -0400 Subject: [PATCH 3/4] Revert "Testing something" This reverts commit f40f5c86c51a81eadc9c6c0d90d844341d7e5d55. --- meh.txt | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 meh.txt diff --git a/meh.txt b/meh.txt deleted file mode 100644 index e69de29..0000000 From a9f475780bced75bb76780e6f4074ae828660837 Mon Sep 17 00:00:00 2001 From: Derek Kniffin Date: Thu, 29 Oct 2015 08:43:40 -0400 Subject: [PATCH 4/4] Change != to !== --- lib/capybara/angular/waiter.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/capybara/angular/waiter.rb b/lib/capybara/angular/waiter.rb index 473eb8e..2f25c67 100644 --- a/lib/capybara/angular/waiter.rb +++ b/lib/capybara/angular/waiter.rb @@ -52,13 +52,13 @@ def setup_ready window.angularReady = false; function ready(fn) { - if (document.readyState != 'loading'){ + if (document.readyState !== 'loading'){ fn(); } else if (document.addEventListener) { document.addEventListener('DOMContentLoaded', fn); } else { document.attachEvent('onreadystatechange', function() { - if (document.readyState != 'loading') + if (document.readyState !== 'loading') fn(); }); }