diff options
author | Walmyr Lima <walmyr@gitlab.com> | 2019-08-01 20:11:39 +0200 |
---|---|---|
committer | Walmyr Lima <walmyr@gitlab.com> | 2019-08-06 11:22:08 +0200 |
commit | 938e81f10c34afe119dbd379c38f42cd1ad2fc06 (patch) | |
tree | 2b0ea00fa9eb5389f23888f5aef14b2b6c616470 /qa | |
parent | 638b86e466e25a9fe843df4a88573704cc1afe0e (diff) | |
download | gitlab-ce-938e81f10c34afe119dbd379c38f42cd1ad2fc06.tar.gz |
Update test to cover another scenario
The idea is to increase the test coverage of enterprise features.
Diffstat (limited to 'qa')
-rw-r--r-- | qa/qa/specs/features/ee/browser_ui/2_plan/scoped_labels/editing_scoped_labels_spec.rb | 47 |
1 files changed, 33 insertions, 14 deletions
diff --git a/qa/qa/specs/features/ee/browser_ui/2_plan/scoped_labels/editing_scoped_labels_spec.rb b/qa/qa/specs/features/ee/browser_ui/2_plan/scoped_labels/editing_scoped_labels_spec.rb index d21f4d7bc68..92c5783aa01 100644 --- a/qa/qa/specs/features/ee/browser_ui/2_plan/scoped_labels/editing_scoped_labels_spec.rb +++ b/qa/qa/specs/features/ee/browser_ui/2_plan/scoped_labels/editing_scoped_labels_spec.rb @@ -1,20 +1,29 @@ module QA context 'Plan' do describe 'Editing scoped labels on issues' do + let(:initial_label) { 'animal::fox' } + let(:new_label_same_scope) { 'animal::dolphin' } + let(:new_label_different_scope) { 'plant::orchid' } + + let(:initial_label_multi_colon) { 'group::car::ferrari' } + let(:new_label_same_scope_multi_colon) { 'group::car::porsche' } + let(:new_label_different_scope_multi_colon) { 'group::truck::mercedes-bens' } + before do Runtime::Browser.visit(:gitlab, Page::Main::Login) Page::Main::Login.perform(&:sign_in_using_credentials) - @initial_label = 'animal::fox' - @new_label_same_scope = 'animal::dolphin' - @new_label_different_scope = 'plant::orchid' - issue = Resource::Issue.fabricate_via_api! do |issue| - issue.title = 'Issue to test the scoped labels' - issue.labels = [@initial_label] + issue.title = 'Issue to test scoped labels' + issue.labels = [initial_label, initial_label_multi_colon] end - [@new_label_same_scope, @new_label_different_scope].each do |label| + [ + new_label_same_scope, + new_label_different_scope, + new_label_same_scope_multi_colon, + new_label_different_scope_multi_colon + ].each do |label| Resource::Label.fabricate_via_api! do |l| l.project = issue.project l.title = label @@ -24,15 +33,25 @@ module QA issue.visit! end - it 'correctly applies scoped labels depending on if they are from the same or a different scope' do + it 'correctly applies simple and multiple colon scoped pairs labels' do Page::Project::Issue::Show.perform do |show| - show.select_labels_and_refresh [@new_label_same_scope, @new_label_different_scope] + show.select_labels_and_refresh([ + new_label_same_scope, + new_label_different_scope, + new_label_same_scope_multi_colon, + new_label_different_scope_multi_colon + ]) - expect(page).to have_content("added #{@initial_label}") - expect(page).to have_content("added #{@new_label_same_scope} #{@new_label_different_scope} scoped labels and automatically removed #{@initial_label}") - expect(show.text_of_labels_block).to have_content(@new_label_same_scope) - expect(show.text_of_labels_block).to have_content(@new_label_different_scope) - expect(show.text_of_labels_block).not_to have_content(@initial_label) + expect(page).to have_content("added #{initial_label} #{initial_label_multi_colon}") + expect(page).to have_content( + "added #{new_label_same_scope} #{new_label_same_scope_multi_colon} #{new_label_different_scope_multi_colon} #{new_label_different_scope} scoped labels and automatically removed #{initial_label} #{initial_label_multi_colon}" + ) + expect(show.text_of_labels_block).to have_content(new_label_same_scope) + expect(show.text_of_labels_block).to have_content(new_label_different_scope) + expect(show.text_of_labels_block).not_to have_content(initial_label) + expect(show.text_of_labels_block).to have_content(new_label_same_scope_multi_colon) + expect(show.text_of_labels_block).to have_content(new_label_different_scope_multi_colon) + expect(show.text_of_labels_block).not_to have_content(initial_label_multi_colon) end end end |