Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'qa/qa/support/repeater.rb')
-rw-r--r--qa/qa/support/repeater.rb26
1 files changed, 18 insertions, 8 deletions
diff --git a/qa/qa/support/repeater.rb b/qa/qa/support/repeater.rb
index 6f8c4a59566..b3a2472d702 100644
--- a/qa/qa/support/repeater.rb
+++ b/qa/qa/support/repeater.rb
@@ -11,7 +11,15 @@ module QA
RetriesExceededError = Class.new(RepeaterConditionExceededError)
WaitExceededError = Class.new(RepeaterConditionExceededError)
- def repeat_until(max_attempts: nil, max_duration: nil, reload_page: nil, sleep_interval: 0, raise_on_failure: true, retry_on_exception: false, log: true)
+ def repeat_until(
+ max_attempts: nil,
+ max_duration: nil,
+ reload_page: nil,
+ sleep_interval: 0,
+ raise_on_failure: true,
+ retry_on_exception: false,
+ log: true
+ )
attempts = 0
start = Time.now
@@ -29,17 +37,19 @@ module QA
raise unless retry_on_exception
attempts += 1
- if remaining_attempts?(attempts, max_attempts) && remaining_time?(start, max_duration)
- sleep_and_reload_if_needed(sleep_interval, reload_page)
+ raise unless remaining_attempts?(attempts, max_attempts) && remaining_time?(start, max_duration)
- retry
- else
- raise
- end
+ sleep_and_reload_if_needed(sleep_interval, reload_page)
+ retry
end
if raise_on_failure
- raise RetriesExceededError, "Retry condition not met after #{max_attempts} #{'attempt'.pluralize(max_attempts)}" unless remaining_attempts?(attempts, max_attempts)
+ unless remaining_attempts?(attempts, max_attempts)
+ raise(
+ RetriesExceededError,
+ "Retry condition not met after #{max_attempts} #{'attempt'.pluralize(max_attempts)}"
+ )
+ end
raise WaitExceededError, "Wait condition not met after #{max_duration} #{'second'.pluralize(max_duration)}"
end