diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2023-02-01 03:07:51 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2023-02-01 03:07:51 +0300 |
commit | 4aaadcc49070b085d63377c004c5632b6d1b2b4c (patch) | |
tree | 0d8c890fd1ce0ca22ec579a91fcd84f92c50404f /qa | |
parent | 9e83d078577a9c066f21fcef1355f800ad895c9c (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'qa')
-rw-r--r-- | qa/Gemfile | 2 | ||||
-rw-r--r-- | qa/Gemfile.lock | 6 | ||||
-rw-r--r-- | qa/lib/gitlab/page/trials/new.rb (renamed from qa/qa/page/trials/new.rb) | 2 | ||||
-rw-r--r-- | qa/lib/gitlab/page/trials/select.rb (renamed from qa/qa/page/trials/select.rb) | 11 | ||||
-rw-r--r-- | qa/qa/flow/trial.rb | 10 | ||||
-rw-r--r-- | qa/qa/page/group/menu.rb | 16 | ||||
-rw-r--r-- | qa/qa/specs/features/browser_ui/4_verify/runner/register_group_runner_spec.rb | 32 |
7 files changed, 67 insertions, 12 deletions
diff --git a/qa/Gemfile b/qa/Gemfile index af48b27f9eb..06bb6f6e6a1 100644 --- a/qa/Gemfile +++ b/qa/Gemfile @@ -38,7 +38,7 @@ gem 'chemlab', '~> 0.10' gem 'chemlab-library-www-gitlab-com', '~> 0.1', '>= 0.1.1' # dependencies for jenkins client -gem 'nokogiri', '~> 1.14' +gem 'nokogiri', '~> 1.14', '>= 1.14.1' gem 'deprecation_toolkit', '~> 2.0.1', require: false diff --git a/qa/Gemfile.lock b/qa/Gemfile.lock index 717fbc4c133..ae98caecee6 100644 --- a/qa/Gemfile.lock +++ b/qa/Gemfile.lock @@ -180,7 +180,7 @@ GEM multi_json (1.15.0) multi_xml (0.6.0) netrc (0.11.0) - nokogiri (1.14.0) + nokogiri (1.14.1) mini_portile2 (~> 2.8.0) racc (~> 1.4) octokit (6.0.1) @@ -320,7 +320,7 @@ DEPENDENCIES gitlab-qa (~> 8, >= 8.15.2) influxdb-client (~> 2.9) knapsack (~> 4.0) - nokogiri (~> 1.14) + nokogiri (~> 1.14, >= 1.14.1) octokit (~> 6.0.1) parallel (~> 1.22, >= 1.22.1) parallel_tests (~> 4.1) @@ -342,4 +342,4 @@ DEPENDENCIES zeitwerk (~> 2.6, >= 2.6.6) BUNDLED WITH - 2.4.5 + 2.4.4 diff --git a/qa/qa/page/trials/new.rb b/qa/lib/gitlab/page/trials/new.rb index 40f593a7aa7..b2e6cbdb682 100644 --- a/qa/qa/page/trials/new.rb +++ b/qa/lib/gitlab/page/trials/new.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -module QA +module Gitlab module Page module Trials class New < Chemlab::Page diff --git a/qa/qa/page/trials/select.rb b/qa/lib/gitlab/page/trials/select.rb index 39ef604a781..6eaf6003837 100644 --- a/qa/qa/page/trials/select.rb +++ b/qa/lib/gitlab/page/trials/select.rb @@ -1,16 +1,23 @@ # frozen_string_literal: true -module QA +module Gitlab module Page module Trials class Select < Chemlab::Page path '/-/trials/select' - select :subscription_for + button :select_group, 'data-testid': 'base-dropdown-toggle' + div :group_dropdown, 'data-testid': 'base-dropdown-menu' text_field :new_group_name button :start_your_free_trial radio :trial_company radio :trial_individual + + def subscription_for=(group_name) + select_group + + group_dropdown_element.span(text: /#{group_name}/).click + end end end end diff --git a/qa/qa/flow/trial.rb b/qa/qa/flow/trial.rb index 2fdd09d0d2d..109afeffaa3 100644 --- a/qa/qa/flow/trial.rb +++ b/qa/qa/flow/trial.rb @@ -13,8 +13,8 @@ module QA state: 'CA' }.freeze - def register_for_trial(skip_select: false) - Page::Trials::New.perform do |new| + def register_for_trial(group: nil) + Gitlab::Page::Trials::New.perform do |new| new.company_name = CUSTOMER_TRIAL_INFO[:company_name] new.number_of_employees = CUSTOMER_TRIAL_INFO[:number_of_employees] new.country = CUSTOMER_TRIAL_INFO[:country] @@ -24,10 +24,10 @@ module QA new.continue end - return if skip_select + return unless group - Page::Trials::Select.perform do |select| - select.subscription_for = group_for_trial.path + Gitlab::Page::Trials::Select.perform do |select| + select.subscription_for = group.path select.trial_company select.start_your_free_trial end diff --git a/qa/qa/page/group/menu.rb b/qa/qa/page/group/menu.rb index de065ca187d..9418593133e 100644 --- a/qa/qa/page/group/menu.rb +++ b/qa/qa/page/group/menu.rb @@ -44,6 +44,14 @@ module QA end end + def go_to_runners + hover_group_ci_cd do + within_submenu do + click_element(:sidebar_menu_item_link, menu_item: 'Runners') + end + end + end + def go_to_package_settings hover_group_settings do within_submenu do @@ -120,6 +128,14 @@ module QA end end + def hover_group_ci_cd + within_sidebar do + find_element(:sidebar_menu_link, menu_item: 'CI/CD').hover + + yield + end + end + def hover_group_packages within_sidebar do scroll_to_element(:sidebar_menu_link, menu_item: 'Packages and registries') diff --git a/qa/qa/specs/features/browser_ui/4_verify/runner/register_group_runner_spec.rb b/qa/qa/specs/features/browser_ui/4_verify/runner/register_group_runner_spec.rb new file mode 100644 index 00000000000..fba2f22b3e5 --- /dev/null +++ b/qa/qa/specs/features/browser_ui/4_verify/runner/register_group_runner_spec.rb @@ -0,0 +1,32 @@ +# frozen_string_literal: true + +module QA + RSpec.describe 'Verify', :runner, product_group: :runner do + describe 'Group runner registration' do + let(:executor) { "qa-runner-#{Time.now.to_i}" } + + let!(:runner) do + Resource::GroupRunner.fabricate! do |runner| + runner.name = executor + end + end + + after do + runner.remove_via_api! + end + + it( + 'user registers a new group runner', + testcase: 'https://gitlab.com/gitlab-org/gitlab/-/quality/test_cases/388740' + ) do + Flow::Login.sign_in + + runner.group.visit! + + Page::Group::Menu.perform(&:go_to_runners) + + expect(page).to have_content(executor) + end + end + end +end |