diff options
Diffstat (limited to 'spec/services/bulk_create_integration_service_spec.rb')
-rw-r--r-- | spec/services/bulk_create_integration_service_spec.rb | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/spec/services/bulk_create_integration_service_spec.rb b/spec/services/bulk_create_integration_service_spec.rb index 517222c0e69..63bdc39857c 100644 --- a/spec/services/bulk_create_integration_service_spec.rb +++ b/spec/services/bulk_create_integration_service_spec.rb @@ -25,7 +25,7 @@ RSpec.describe BulkCreateIntegrationService do end context 'integration with data fields' do - let(:excluded_attributes) { %w[id service_id created_at updated_at] } + let(:excluded_attributes) { %w[id service_id integration_id created_at updated_at] } it 'updates the data fields from inherited integrations' do described_class.new(integration, batch, association).execute @@ -74,7 +74,7 @@ RSpec.describe BulkCreateIntegrationService do context 'with a project association' do let!(:project) { create(:project, group: group) } - let(:integration) { create(:jira_integration, group: group, project: nil) } + let(:integration) { create(:jira_integration, :group, group: group) } let(:created_integration) { project.jira_integration } let(:batch) { Project.where(id: Project.minimum(:id)..Project.maximum(:id)).without_integration(integration).in_namespace(integration.group.self_and_descendants) } let(:association) { 'project' } @@ -82,11 +82,19 @@ RSpec.describe BulkCreateIntegrationService do it_behaves_like 'creates integration from batch ids' it_behaves_like 'updates inherit_from_id' + + context 'with different foreign key of data_fields' do + let(:integration) { create(:zentao_integration, :group, group: group) } + let(:created_integration) { project.zentao_integration } + + it_behaves_like 'creates integration from batch ids' + it_behaves_like 'updates inherit_from_id' + end end context 'with a group association' do let!(:subgroup) { create(:group, parent: group) } - let(:integration) { create(:jira_integration, group: group, project: nil, inherit_from_id: instance_integration.id) } + let(:integration) { create(:jira_integration, :group, group: group, inherit_from_id: instance_integration.id) } let(:created_integration) { Integration.find_by(group: subgroup) } let(:batch) { Group.where(id: subgroup.id) } let(:association) { 'group' } @@ -94,6 +102,13 @@ RSpec.describe BulkCreateIntegrationService do it_behaves_like 'creates integration from batch ids' it_behaves_like 'updates inherit_from_id' + + context 'with different foreign key of data_fields' do + let(:integration) { create(:zentao_integration, :group, group: group, inherit_from_id: instance_integration.id) } + + it_behaves_like 'creates integration from batch ids' + it_behaves_like 'updates inherit_from_id' + end end end end |