diff options
Diffstat (limited to 'qa/qa/page/main/login.rb')
-rw-r--r-- | qa/qa/page/main/login.rb | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/qa/qa/page/main/login.rb b/qa/qa/page/main/login.rb index c34b8f33a5d..d8b7bb90437 100644 --- a/qa/qa/page/main/login.rb +++ b/qa/qa/page/main/login.rb @@ -130,6 +130,10 @@ module QA has_css?(".active", text: 'Standard') end + def has_arkose_labs_token? + has_css?('[name="arkose_labs_token"][value]', visible: false) + end + def switch_to_sign_in_tab click_element :sign_in_tab end @@ -174,6 +178,17 @@ module QA fill_element :login_field, user.username fill_element :password_field, user.password + + if Runtime::Env.running_on_dot_com? + # Arkose only appears in staging.gitlab.com, gitlab.com, etc... + + # Wait until the ArkoseLabs challenge has initialized + Support::WaitForRequests.wait_for_requests + Support::Waiter.wait_until(max_duration: 5, reload_page: false, raise_on_failure: false) do + has_arkose_labs_token? + end + end + click_element :sign_in_button Support::WaitForRequests.wait_for_requests |