Welcome to mirror list, hosted at ThFree Co, Russian Federation.

project_variables_spec.rb « features « spec - gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: d3bedbf3a75574da2bcaa1daac0f8cb4f32404e6 (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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# frozen_string_literal: true

require 'spec_helper'

RSpec.describe 'Project variables', :js do
  let(:user)     { create(:user) }
  let(:project)  { create(:project) }
  let(:variable) { create(:ci_variable, key: 'test_key', value: 'test_value', masked: true) }
  let(:page_path) { project_settings_ci_cd_path(project) }

  before do
    sign_in(user)
    project.add_maintainer(user)
    project.variables << variable
  end

  context 'with disabled ff `ci_variable_settings_graphql' do
    before do
      stub_feature_flags(ci_variable_settings_graphql: false)
      visit page_path
    end

    it_behaves_like 'variable list'

    it 'adds a new variable with an environment scope' do
      click_button('Add variable')

      page.within('#add-ci-variable') do
        fill_in 'Key', with: 'akey'
        find('#ci-variable-value').set('akey_value')
        find('[data-testid="environment-scope"]').click
        find('[data-testid="ci-environment-search"]').set('review/*')
        find('[data-testid="create-wildcard-button"]').click

        click_button('Add variable')
      end

      wait_for_requests

      page.within('[data-testid="ci-variable-table"]') do
        expect(find('.js-ci-variable-row:first-child [data-label="Environments"]').text).to eq('review/*')
      end
    end
  end

  context 'with enabled ff `ci_variable_settings_graphql' do
    before do
      visit page_path
    end

    it_behaves_like 'variable list'

    it 'adds a new variable with an environment scope' do
      click_button('Add variable')

      page.within('#add-ci-variable') do
        fill_in 'Key', with: 'akey'
        find('#ci-variable-value').set('akey_value')
        find('[data-testid="environment-scope"]').click
        find('[data-testid="ci-environment-search"]').set('review/*')
        find('[data-testid="create-wildcard-button"]').click

        click_button('Add variable')
      end

      wait_for_requests

      page.within('[data-testid="ci-variable-table"]') do
        expect(find('.js-ci-variable-row:first-child [data-label="Environments"]').text).to eq('review/*')
      end
    end
  end
end