From 1dbc25e88642d0f1a6d688ff9aec2747c6c63264 Mon Sep 17 00:00:00 2001 From: Mark Lapierre Date: Tue, 11 Jun 2019 08:46:57 +1000 Subject: [PATCH] DRY exception handling Use `retry_on_exception` instead of duplicating code --- qa/qa/ce/strategy.rb | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/qa/qa/ce/strategy.rb b/qa/qa/ce/strategy.rb index 6c1820ffdc8..018a1eb1bfc 100644 --- a/qa/qa/ce/strategy.rb +++ b/qa/qa/ce/strategy.rb @@ -10,18 +10,11 @@ module QA end def perform_before_hooks - retries ||= 0 - # The login page could take some time to load the first time it is visited. # We visit the login page and wait for it to properly load only once before the tests. - QA::Runtime::Browser.visit(:gitlab, QA::Page::Main::Login) - rescue QA::Page::Validatable::PageValidationError - if (retries += 1) < 3 - Runtime::Logger.warn("The login page did not appear as expected. Retrying... (attempt ##{retries})") - retry + QA::Support::Retrier.retry_on_exception do + QA::Runtime::Browser.visit(:gitlab, QA::Page::Main::Login) end - - raise end end end