summaryrefslogtreecommitdiff
path: root/qa/qa/page/project/settings/ci_cd.rb
blob: cc5fc370a5a9dbf65d2d2e07dc81fe09f42d3c58 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
module QA # rubocop:disable Naming/FileName
  module Page
    module Project
      module Settings
        class CICD < Page::Base
          include Common

          view 'app/views/projects/settings/ci_cd/show.html.haml' do
            element :autodevops_settings
            element :runners_settings
            element :variables_settings
          end

          view 'app/views/projects/settings/ci_cd/_autodevops_form.html.haml' do
            element :enable_auto_devops_field, 'check_box :enabled' # rubocop:disable QA/ElementWithPattern
            element :domain_field, 'text_field :domain' # rubocop:disable QA/ElementWithPattern
            element :enable_auto_devops_button, "%strong= s_('CICD|Default to Auto DevOps pipeline')" # rubocop:disable QA/ElementWithPattern
            element :domain_input, "%strong= _('Domain')" # rubocop:disable QA/ElementWithPattern
            element :save_changes_button, "submit _('Save changes')" # rubocop:disable QA/ElementWithPattern
          end

          def expand_runners_settings(&block)
            expand_section(:runners_settings) do
              Settings::Runners.perform(&block)
            end
          end

          def expand_secret_variables(&block)
            expand_section(:variables_settings) do
              Settings::SecretVariables.perform(&block)
            end
          end

          def enable_auto_devops_with_domain(domain)
            expand_section(:autodevops_settings) do
              check 'Default to Auto DevOps pipeline'
              fill_in 'Domain', with: domain
              click_on 'Save changes'
            end
          end
        end
      end
    end
  end
end