diff options
Diffstat (limited to 'spec/support/services')
-rw-r--r-- | spec/support/services/clusters/create_service_shared.rb | 9 | ||||
-rw-r--r-- | spec/support/services/issuable_description_quick_actions_shared_examples.rb (renamed from spec/support/services/issuable_create_service_slash_commands_shared_examples.rb) | 37 |
2 files changed, 20 insertions, 26 deletions
diff --git a/spec/support/services/clusters/create_service_shared.rb b/spec/support/services/clusters/create_service_shared.rb index 31aee08baec..f8a58a828ce 100644 --- a/spec/support/services/clusters/create_service_shared.rb +++ b/spec/support/services/clusters/create_service_shared.rb @@ -1,6 +1,7 @@ # frozen_string_literal: true RSpec.shared_context 'valid cluster create params' do + let(:clusterable) { Clusters::Instance.new } let(:params) do { name: 'test-cluster', @@ -11,12 +12,14 @@ RSpec.shared_context 'valid cluster create params' do num_nodes: 1, machine_type: 'machine_type-a', legacy_abac: 'true' - } + }, + clusterable: clusterable } end end RSpec.shared_context 'invalid cluster create params' do + let(:clusterable) { Clusters::Instance.new } let(:params) do { name: 'test-cluster', @@ -26,7 +29,9 @@ RSpec.shared_context 'invalid cluster create params' do zone: 'us-central1-a', num_nodes: 1, machine_type: 'machine_type-a' - } + }, + clusterable: clusterable + } end end diff --git a/spec/support/services/issuable_create_service_slash_commands_shared_examples.rb b/spec/support/services/issuable_description_quick_actions_shared_examples.rb index 3d45fe06134..1970301e4c9 100644 --- a/spec/support/services/issuable_create_service_slash_commands_shared_examples.rb +++ b/spec/support/services/issuable_description_quick_actions_shared_examples.rb @@ -3,20 +3,25 @@ # Specifications for behavior common to all objects with executable attributes. # It can take a `default_params`. -RSpec.shared_examples 'new issuable record that supports quick actions' do - let!(:project) { create(:project, :repository) } - let(:user) { create(:user).tap { |u| project.add_maintainer(u) } } - let(:assignee) { create(:user) } - let!(:milestone) { create(:milestone, project: project) } - let!(:labels) { create_list(:label, 3, project: project) } +RSpec.shared_examples 'issuable record that supports quick actions' do + let_it_be(:project) { create(:project, :repository) } + let_it_be(:user) { create(:user) } + let_it_be(:assignee) { create(:user) } + let_it_be(:milestone) { create(:milestone, project: project) } + let_it_be(:labels) { create_list(:label, 3, project: project) } + let(:base_params) { { title: 'My issuable title' } } let(:params) { base_params.merge(defined?(default_params) ? default_params : {}).merge(example_params) } - let(:issuable) { described_class.new(project, user, params).execute } - before do + before_all do + project.add_maintainer(user) project.add_maintainer(assignee) end + before do + issuable.reload + end + context 'with labels in command only' do let(:example_params) do { @@ -25,7 +30,6 @@ RSpec.shared_examples 'new issuable record that supports quick actions' do end it 'attaches labels to issuable' do - expect(issuable).to be_persisted expect(issuable.label_ids).to match_array([labels.first.id, labels.second.id]) end end @@ -39,7 +43,6 @@ RSpec.shared_examples 'new issuable record that supports quick actions' do end it 'attaches all labels to issuable' do - expect(issuable).to be_persisted expect(issuable.label_ids).to match_array([labels.first.id, labels.second.id]) end end @@ -52,22 +55,8 @@ RSpec.shared_examples 'new issuable record that supports quick actions' do end it 'assigns and sets milestone to issuable' do - expect(issuable).to be_persisted expect(issuable.assignees).to eq([assignee]) expect(issuable.milestone).to eq(milestone) end end - - describe '/close' do - let(:example_params) do - { - description: '/close' - } - end - - it 'returns an open issue' do - expect(issuable).to be_persisted - expect(issuable).to be_open - end - end end |