diff options
| author | Rémy Coutable <remy@rymai.me> | 2017-04-13 18:31:33 +0200 |
|---|---|---|
| committer | Rémy Coutable <remy@rymai.me> | 2017-04-26 12:08:53 +0200 |
| commit | 60a5273d7d49f074a75312642bcf2159b8a30ff6 (patch) | |
| tree | 07cfa1b58c702316e58c19448514da63d095ffe1 /spec/support | |
| parent | 3ff8d8020e495df319f0b0921bc94b1c3470f6f0 (diff) | |
| download | gitlab-ce-60a5273d7d49f074a75312642bcf2159b8a30ff6.tar.gz | |
Wait for AJAX requests at the JS level in addition to wait for requests at the middleware level
Hopefully, this can solve transient failures such as
https://gitlab.com/gitlab-org/gitlab-ce/issues/29836.
Signed-off-by: Rémy Coutable <remy@rymai.me>
Diffstat (limited to 'spec/support')
| -rw-r--r-- | spec/support/wait_for_requests.rb | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/spec/support/wait_for_requests.rb b/spec/support/wait_for_requests.rb index 0bfa7f72ff8..73da23391ee 100644 --- a/spec/support/wait_for_requests.rb +++ b/spec/support/wait_for_requests.rb @@ -1,11 +1,15 @@ +require_relative './wait_for_ajax' + module WaitForRequests extend self + include WaitForAjax # This is inspired by http://www.salsify.com/blog/engineering/tearing-capybara-ajax-tests def wait_for_requests_complete Gitlab::Testing::RequestBlockerMiddleware.block_requests! wait_for('pending AJAX requests complete') do - Gitlab::Testing::RequestBlockerMiddleware.num_active_requests.zero? + Gitlab::Testing::RequestBlockerMiddleware.num_active_requests.zero? && + finished_all_ajax_requests? end ensure Gitlab::Testing::RequestBlockerMiddleware.allow_requests! |
