summaryrefslogtreecommitdiff
path: root/qa/qa/page
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2021-02-18 10:34:06 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2021-02-18 10:34:06 +0000
commit859a6fb938bb9ee2a317c46dfa4fcc1af49608f0 (patch)
treed7f2700abe6b4ffcb2dcfc80631b2d87d0609239 /qa/qa/page
parent446d496a6d000c73a304be52587cd9bbc7493136 (diff)
downloadgitlab-ce-859a6fb938bb9ee2a317c46dfa4fcc1af49608f0.tar.gz
Add latest changes from gitlab-org/gitlab@13-9-stable-eev13.9.0-rc42
Diffstat (limited to 'qa/qa/page')
-rw-r--r--qa/qa/page/admin/overview/users/index.rb2
-rw-r--r--qa/qa/page/component/issue_board/show.rb2
-rw-r--r--qa/qa/page/component/note.rb6
-rw-r--r--qa/qa/page/issuable/new.rb11
-rw-r--r--qa/qa/page/main/menu.rb6
-rw-r--r--qa/qa/page/merge_request/show.rb44
-rw-r--r--qa/qa/page/page_concern.rb2
-rw-r--r--qa/qa/page/project/commit/show.rb4
-rw-r--r--qa/qa/page/project/members.rb24
-rw-r--r--qa/qa/page/project/web_ide/edit.rb54
10 files changed, 124 insertions, 31 deletions
diff --git a/qa/qa/page/admin/overview/users/index.rb b/qa/qa/page/admin/overview/users/index.rb
index fea95fdb84a..1885644d226 100644
--- a/qa/qa/page/admin/overview/users/index.rb
+++ b/qa/qa/page/admin/overview/users/index.rb
@@ -6,7 +6,7 @@ module QA
module Overview
module Users
class Index < QA::Page::Base
- view 'app/views/admin/users/index.html.haml' do
+ view 'app/views/admin/users/_users.html.haml' do
element :user_search_field
element :pending_approval_tab
end
diff --git a/qa/qa/page/component/issue_board/show.rb b/qa/qa/page/component/issue_board/show.rb
index 15c1c25cbf9..4c1f03fbe86 100644
--- a/qa/qa/page/component/issue_board/show.rb
+++ b/qa/qa/page/component/issue_board/show.rb
@@ -39,7 +39,7 @@ module QA
element :boards_list
end
- view 'app/assets/javascripts/boards/toggle_focus.js' do
+ view 'app/assets/javascripts/boards/components/toggle_focus.vue' do
element :focus_mode_button
end
diff --git a/qa/qa/page/component/note.rb b/qa/qa/page/component/note.rb
index 0454042289b..50567796bdb 100644
--- a/qa/qa/page/component/note.rb
+++ b/qa/qa/page/component/note.rb
@@ -162,10 +162,6 @@ module QA
fill_element :reply_field, reply_text
end
- def wait_for_loading
- has_no_element?(:skeleton_note_placeholer)
- end
-
private
def select_filter_with_text(text)
@@ -174,7 +170,7 @@ module QA
click_element :discussion_filter_dropdown
find_element(:filter_menu_item, text: text).click
- wait_for_loading
+ wait_for_requests
end
end
end
diff --git a/qa/qa/page/issuable/new.rb b/qa/qa/page/issuable/new.rb
index 7891074092e..c549190c65b 100644
--- a/qa/qa/page/issuable/new.rb
+++ b/qa/qa/page/issuable/new.rb
@@ -28,6 +28,10 @@ module QA
element :assign_to_me_link
end
+ view 'app/views/shared/issuable/form/_template_selector.html.haml' do
+ element :template_dropdown
+ end
+
def fill_title(title)
fill_element :issuable_form_title, title
end
@@ -43,6 +47,13 @@ module QA
end
end
+ def choose_template(template_name)
+ click_element :template_dropdown
+ within_element(:template_dropdown) do
+ click_on template_name
+ end
+ end
+
def select_label(label)
click_element :issuable_label
diff --git a/qa/qa/page/main/menu.rb b/qa/qa/page/main/menu.rb
index 627809dacf2..f0df901a8f0 100644
--- a/qa/qa/page/main/menu.rb
+++ b/qa/qa/page/main/menu.rb
@@ -6,7 +6,7 @@ module QA
class Menu < Page::Base
view 'app/views/layouts/header/_current_user_dropdown.html.haml' do
element :sign_out_link
- element :settings_link
+ element :edit_profile_link
end
view 'app/views/layouts/header/_default.html.haml' do
@@ -115,10 +115,10 @@ module QA
sign_out if signed_in?
end
- def click_settings_link
+ def click_edit_profile_link
retry_until(reload: false) do
within_user_menu do
- click_link 'Settings'
+ click_element(:edit_profile_link)
end
has_text?('User Settings')
diff --git a/qa/qa/page/merge_request/show.rb b/qa/qa/page/merge_request/show.rb
index ac4d38e5918..18676807fd6 100644
--- a/qa/qa/page/merge_request/show.rb
+++ b/qa/qa/page/merge_request/show.rb
@@ -58,6 +58,9 @@ module QA
view 'app/assets/javascripts/diffs/components/diff_file_header.vue' do
element :file_name_content
+ element :file_title_container
+ element :dropdown_button
+ element :edit_in_ide_button
end
view 'app/assets/javascripts/diffs/components/inline_diff_table_row.vue' do
@@ -87,6 +90,15 @@ module QA
element :review_preview_toggle
end
+ view 'app/assets/javascripts/vue_shared/components/markdown/suggestion_diff_header.vue' do
+ element :apply_suggestions_batch_button
+ element :add_suggestion_batch_button
+ end
+
+ view 'app/assets/javascripts/vue_shared/components/markdown/header.vue' do
+ element :suggestion_button
+ end
+
def start_review
click_element(:start_review_button)
@@ -150,15 +162,12 @@ module QA
def click_discussions_tab
click_element(:notes_tab)
- wait_for_loading
+ wait_for_requests
end
def click_diffs_tab
click_element(:diffs_tab)
-
- wait_for_loading
-
- click_element(:dismiss_popover_button) if has_element?(:dismiss_popover_button)
+ click_element(:dismiss_popover_button) if has_element?(:dismiss_popover_button, wait: 1)
end
def click_pipeline_link
@@ -296,6 +305,31 @@ module QA
click_element(:open_in_web_ide_button)
wait_for_requests
end
+
+ def edit_file_in_web_ide(file_name)
+ within_element(:file_title_container, file_name: file_name) do
+ click_element(:dropdown_button)
+ click_element(:edit_in_ide_button)
+ end
+ end
+
+ def add_suggestion_to_diff(suggestion, line)
+ find("a[data-linenumber='#{line}']").hover
+ click_element(:diff_comment)
+ click_element(:suggestion_button)
+ initial_content = find_element(:reply_field).value
+ fill_element(:reply_field, '')
+ fill_element(:reply_field, initial_content.gsub(/(```suggestion:-0\+0\n).*(\n```)/, "\\1#{suggestion}\\2"))
+ click_element(:comment_now_button)
+ end
+
+ def add_suggestion_to_batch
+ all_elements(:add_suggestion_batch_button, minimum: 1).first.click
+ end
+
+ def apply_suggestions_batch
+ all_elements(:apply_suggestions_batch_button, minimum: 1).first.click
+ end
end
end
end
diff --git a/qa/qa/page/page_concern.rb b/qa/qa/page/page_concern.rb
index 6ba2d27f574..cf1153c0ca3 100644
--- a/qa/qa/page/page_concern.rb
+++ b/qa/qa/page/page_concern.rb
@@ -1,3 +1,5 @@
+# frozen_string_literal: true
+
module QA
module Page
module PageConcern
diff --git a/qa/qa/page/project/commit/show.rb b/qa/qa/page/project/commit/show.rb
index ba09dd1b92a..8ece81f7088 100644
--- a/qa/qa/page/project/commit/show.rb
+++ b/qa/qa/page/project/commit/show.rb
@@ -14,12 +14,12 @@ module QA
def select_email_patches
click_element :options_button
- click_element :email_patches
+ visit_link_in_element :email_patches
end
def select_plain_diff
click_element :options_button
- click_element :plain_diff
+ visit_link_in_element :plain_diff
end
def commit_sha
diff --git a/qa/qa/page/project/members.rb b/qa/qa/page/project/members.rb
index 447049ce22a..7e722e02ad0 100644
--- a/qa/qa/page/project/members.rb
+++ b/qa/qa/page/project/members.rb
@@ -11,10 +11,6 @@ module QA
element :invite_member_button
end
- view 'app/views/projects/project_members/_team.html.haml' do
- element :members_list
- end
-
view 'app/views/projects/project_members/index.html.haml' do
element :invite_group_tab
element :groups_list_tab
@@ -25,11 +21,18 @@ module QA
element :invite_group_button
end
- view 'app/views/shared/members/_group.html.haml' do
+ view 'app/assets/javascripts/pages/projects/project_members/index.js' do
element :group_row
+ end
+
+ view 'app/assets/javascripts/members/components/action_buttons/remove_group_link_button.vue' do
element :delete_group_access_link
end
+ view 'app/assets/javascripts/members/components/modals/remove_group_link_modal.vue' do
+ element :remove_group_link_modal_content
+ end
+
def select_group(group_name)
click_element :group_select_field
search_and_select(group_name)
@@ -50,10 +53,13 @@ module QA
def remove_group(group_name)
click_element :invite_group_tab
click_element :groups_list_tab
- page.accept_alert do
- within_element(:group_row, text: group_name) do
- click_element :delete_group_access_link
- end
+
+ within_element(:group_row, text: group_name) do
+ click_element :delete_group_access_link
+ end
+
+ within_element(:remove_group_link_modal_content) do
+ click_button 'Remove group'
end
end
end
diff --git a/qa/qa/page/project/web_ide/edit.rb b/qa/qa/page/project/web_ide/edit.rb
index a8b30922bd2..45c46004790 100644
--- a/qa/qa/page/project/web_ide/edit.rb
+++ b/qa/qa/page/project/web_ide/edit.rb
@@ -18,7 +18,8 @@ module QA
end
view 'app/assets/javascripts/ide/components/ide_tree.vue' do
- element :new_file
+ element :new_file_button
+ element :new_directory_button
end
view 'app/assets/javascripts/ide/components/ide_tree_list.vue' do
@@ -63,6 +64,7 @@ module QA
view 'app/assets/javascripts/ide/components/new_dropdown/index.vue' do
element :dropdown_button
element :rename_move_button
+ element :delete_button
end
view 'app/views/shared/_confirm_fork_modal.html.haml' do
@@ -82,6 +84,10 @@ module QA
element :changed_file_icon_content
end
+ view 'app/assets/javascripts/vue_shared/components/file_icon.vue' do
+ element :folder_icon_content
+ end
+
view 'app/assets/javascripts/vue_shared/components/content_viewer/content_viewer.vue' do
element :preview_container
end
@@ -98,12 +104,20 @@ module QA
element :file_upload_field
end
+ view 'app/assets/javascripts/ide/components/commit_sidebar/list_item.vue' do
+ element :file_to_commit_content
+ end
+
def has_file?(file_name)
within_element(:file_list) do
- has_text?(file_name)
+ has_element?(:file_name_content, file_name: file_name)
end
end
+ def has_file_to_commit?(file_name)
+ has_element?(:file_to_commit_content, file_name: file_name)
+ end
+
def has_project_path?(project_path)
has_element?(:project_path_content, project_path: project_path)
end
@@ -114,6 +128,12 @@ module QA
end
end
+ def has_folder_icon?(file_name)
+ within_element(:file_row_container, file_name: file_name) do
+ has_element?(:folder_icon_content)
+ end
+ end
+
def has_download_button?(file_name)
click_element(:file_row_container, file_name: file_name)
within_element(:preview_container) do
@@ -128,12 +148,19 @@ module QA
end
end
+ def has_file_content?(file_name, file_content)
+ click_element(:file_row_container, file_name: file_name)
+ within_element(:editor_container) do
+ has_text?(file_content)
+ end
+ end
+
def go_to_project
click_element(:project_path_content, Page::Project::Show)
end
def create_new_file_from_template(file_name, template)
- click_element(:new_file, Page::Component::WebIDE::Modal::CreateNewFile)
+ click_element(:new_file_button, Page::Component::WebIDE::Modal::CreateNewFile)
within_element(:template_list) do
click_on file_name
@@ -226,7 +253,7 @@ module QA
end
def add_file(file_name, file_text)
- click_element(:new_file, Page::Component::WebIDE::Modal::CreateNewFile)
+ click_element(:new_file_button, Page::Component::WebIDE::Modal::CreateNewFile)
fill_element(:file_name_field, file_name)
click_button('Create file')
wait_until(reload: false) { has_file?(file_name) }
@@ -235,8 +262,15 @@ module QA
end
end
+ def add_directory(directory_name)
+ click_element(:new_directory_button, Page::Component::WebIDE::Modal::CreateNewFile)
+ fill_element(:file_name_field, directory_name)
+ click_button('Create directory')
+ wait_until(reload: false) { has_file?(directory_name) }
+ end
+
def rename_file(file_name, new_file_name)
- click_element(:file_name_content, text: file_name)
+ click_element(:file_name_content, file_name: file_name)
click_element(:dropdown_button)
click_element(:rename_move_button, Page::Component::WebIDE::Modal::CreateNewFile)
fill_element(:file_name_field, new_file_name)
@@ -259,6 +293,16 @@ module QA
find_element(:file_upload_field, visible: false).send_keys(file_path)
end
end
+
+ def delete_file(file_name)
+ click_element(:file_name_content, file_name: file_name)
+ click_element(:dropdown_button)
+ click_element(:delete_button)
+ end
+
+ def switch_to_commit_tab
+ click_element(:commit_mode_tab)
+ end
end
end
end