diff options
Diffstat (limited to 'qa/qa/page')
-rw-r--r-- | qa/qa/page/admin/menu.rb | 11 | ||||
-rw-r--r-- | qa/qa/page/dashboard/groups.rb | 23 | ||||
-rw-r--r-- | qa/qa/page/group/new.rb | 23 | ||||
-rw-r--r-- | qa/qa/page/group/show.rb | 22 | ||||
-rw-r--r-- | qa/qa/page/mattermost/login.rb | 19 | ||||
-rw-r--r-- | qa/qa/page/mattermost/main.rb | 11 | ||||
-rw-r--r-- | qa/qa/page/project/show.rb | 4 |
7 files changed, 91 insertions, 22 deletions
diff --git a/qa/qa/page/admin/menu.rb b/qa/qa/page/admin/menu.rb index b01a4e10f93..baa06b1c75e 100644 --- a/qa/qa/page/admin/menu.rb +++ b/qa/qa/page/admin/menu.rb @@ -3,15 +3,8 @@ module QA module Admin class Menu < Page::Base def go_to_license - within_middle_menu { click_link 'License' } - end - - private - - def within_middle_menu - page.within('.nav-control') do - yield - end + link = find_link 'License' + link.click end end end diff --git a/qa/qa/page/dashboard/groups.rb b/qa/qa/page/dashboard/groups.rb index 3690f40dcfe..083d2e1ab16 100644 --- a/qa/qa/page/dashboard/groups.rb +++ b/qa/qa/page/dashboard/groups.rb @@ -2,19 +2,22 @@ module QA module Page module Dashboard class Groups < Page::Base - def prepare_test_namespace - if page.has_content?(Runtime::Namespace.name) - return click_link(Runtime::Namespace.name) - end + def filter_by_name(name) + fill_in 'Filter by name...', with: name + end - click_on 'New group' + def has_group?(name) + filter_by_name(name) + + page.has_link?(name) + end - fill_in 'group_path', with: Runtime::Namespace.name - fill_in 'group_description', - with: "QA test run at #{Runtime::Namespace.time}" - choose 'Private' + def go_to_group(name) + click_link name + end - click_button 'Create group' + def go_to_new_group + click_on 'New group' end end end diff --git a/qa/qa/page/group/new.rb b/qa/qa/page/group/new.rb new file mode 100644 index 00000000000..cb743a7bf11 --- /dev/null +++ b/qa/qa/page/group/new.rb @@ -0,0 +1,23 @@ +module QA + module Page + module Group + class New < Page::Base + def set_path(path) + fill_in 'group_path', with: path + end + + def set_description(description) + fill_in 'group_description', with: description + end + + def set_visibility(visibility) + choose visibility + end + + def create + click_button 'Create group' + end + end + end + end +end diff --git a/qa/qa/page/group/show.rb b/qa/qa/page/group/show.rb index 296c311d7c6..8080deda675 100644 --- a/qa/qa/page/group/show.rb +++ b/qa/qa/page/group/show.rb @@ -2,8 +2,28 @@ module QA module Page module Group class Show < Page::Base + def go_to_subgroup(name) + click_link name + end + + def has_subgroup?(name) + page.has_link?(name) + end + + def go_to_new_subgroup + within '.new-project-subgroup' do + find('.dropdown-toggle').click + find("li[data-value='new-subgroup']").click + end + find("input[data-action='new-subgroup']").click + end + def go_to_new_project - click_link 'New Project' + within '.new-project-subgroup' do + find('.dropdown-toggle').click + find("li[data-value='new-project']").click + end + find("input[data-action='new-project']").click end end end diff --git a/qa/qa/page/mattermost/login.rb b/qa/qa/page/mattermost/login.rb new file mode 100644 index 00000000000..2001dc5b230 --- /dev/null +++ b/qa/qa/page/mattermost/login.rb @@ -0,0 +1,19 @@ +module QA + module Page + module Mattermost + class Login < Page::Base + def initialize + visit(Runtime::Scenario.mattermost + '/login') + end + + def sign_in_using_oauth + click_link class: 'btn btn-custom-login gitlab' + + if page.has_content?('Authorize GitLab Mattermost to use your account?') + click_button 'Authorize' + end + end + end + end + end +end diff --git a/qa/qa/page/mattermost/main.rb b/qa/qa/page/mattermost/main.rb new file mode 100644 index 00000000000..e636d7676f4 --- /dev/null +++ b/qa/qa/page/mattermost/main.rb @@ -0,0 +1,11 @@ +module QA + module Page + module Mattermost + class Main < Page::Base + def initialize + visit(Runtime::Scenario.mattermost) + end + end + end + end +end diff --git a/qa/qa/page/project/show.rb b/qa/qa/page/project/show.rb index 56a270d8fcc..68d9597c4d2 100644 --- a/qa/qa/page/project/show.rb +++ b/qa/qa/page/project/show.rb @@ -5,8 +5,8 @@ module QA def choose_repository_clone_http find('#clone-dropdown').click - page.within('#clone-dropdown') do - find('span', text: 'HTTP').click + page.within('.clone-options-dropdown') do + click_link('HTTP') end end |