diff options
Diffstat (limited to 'qa/qa/page/project/import/github.rb')
-rw-r--r-- | qa/qa/page/project/import/github.rb | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/qa/qa/page/project/import/github.rb b/qa/qa/page/project/import/github.rb index 488157d9878..5973a5a958e 100644 --- a/qa/qa/page/project/import/github.rb +++ b/qa/qa/page/project/import/github.rb @@ -1,3 +1,5 @@ +# frozen_string_literal: true + module QA module Page module Project @@ -29,12 +31,19 @@ module QA choose_test_namespace(full_path) set_path(full_path, name) import_project(full_path) + wait_for_success end private def within_repo_path(full_path) - page.within(%Q(tr[data-qa-repo-path="#{full_path}"])) do + wait(reload: false) do + has_element?(:project_import_row, text: full_path) + end + + project_import_row = find_element(:project_import_row, text: full_path) + + within(project_import_row) do yield end end @@ -44,18 +53,24 @@ module QA click_element :project_namespace_select end - select_item(Runtime::Namespace.path) + search_and_select(Runtime::Namespace.path) end def set_path(full_path, name) within_repo_path(full_path) do - fill_in 'path', with: name + fill_element(:project_path_field, name) end end def import_project(full_path) within_repo_path(full_path) do - click_button 'Import' + click_element(:import_button) + end + end + + def wait_for_success + wait(max: 60, interval: 1.0, reload: false) do + page.has_content?('Done', wait: 1.0) end end end |