summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSanad Liaquat <sliaquat@gitlab.com>2019-02-08 16:20:31 +0500
committerSanad Liaquat <sliaquat@gitlab.com>2019-02-08 16:20:31 +0500
commitb4c2dd73875aa50d2a72e694203388446599d8eb (patch)
tree7e5b035b37e555d2d55ce52b08d5f966c08bbb6d
parent724e904c3d4562bf3f1cee6abae1370e20e5ff58 (diff)
downloadgitlab-ce-qa-staging-33-wait-for-viewers-to-load.tar.gz
Adds qa-spinner class and wait for it to go away before making assertions.
-rw-r--r--app/views/projects/blob/viewers/_loading.html.haml2
-rw-r--r--qa/qa/page/project/show.rb10
-rw-r--r--qa/qa/specs/features/browser_ui/3_create/repository/push_http_private_token_spec.rb6
3 files changed, 16 insertions, 2 deletions
diff --git a/app/views/projects/blob/viewers/_loading.html.haml b/app/views/projects/blob/viewers/_loading.html.haml
index 120c0540335..df1f3e4e01b 100644
--- a/app/views/projects/blob/viewers/_loading.html.haml
+++ b/app/views/projects/blob/viewers/_loading.html.haml
@@ -1,2 +1,2 @@
.text-center.prepend-top-default.append-bottom-default
- = icon('spinner spin 2x', 'aria-hidden' => 'true', 'aria-label' => 'Loading content…')
+ = icon('spinner spin 2x', 'aria-hidden' => 'true', 'aria-label' => 'Loading content…', class: 'qa-spinner')
diff --git a/qa/qa/page/project/show.rb b/qa/qa/page/project/show.rb
index 945b244df15..9c21d9ddbfa 100644
--- a/qa/qa/page/project/show.rb
+++ b/qa/qa/page/project/show.rb
@@ -51,6 +51,16 @@ module QA
element :branches_dropdown
end
+ view 'app/views/projects/blob/viewers/_loading.html.haml' do
+ element :spinner
+ end
+
+ def wait_for_viewers_to_load
+ wait(reload: false) do
+ has_no_element?(:spinner)
+ end
+ end
+
def create_first_new_file!
within_element(:quick_actions) do
click_link_with_text 'New file'
diff --git a/qa/qa/specs/features/browser_ui/3_create/repository/push_http_private_token_spec.rb b/qa/qa/specs/features/browser_ui/3_create/repository/push_http_private_token_spec.rb
index 3310a873a60..73f020e7d05 100644
--- a/qa/qa/specs/features/browser_ui/3_create/repository/push_http_private_token_spec.rb
+++ b/qa/qa/specs/features/browser_ui/3_create/repository/push_http_private_token_spec.rb
@@ -22,7 +22,11 @@ module QA
end
push.project.visit!
- Page::Project::Show.perform(&:wait_for_push)
+
+ Page::Project::Show.perform do |page|
+ page.wait_for_push
+ page.wait_for_viewers_to_load
+ end
expect(page).to have_content('README.md')
expect(page).to have_content('This is a test project')