diff options
Diffstat (limited to 'spec/services/bulk_update_integration_service_spec.rb')
-rw-r--r-- | spec/services/bulk_update_integration_service_spec.rb | 41 |
1 files changed, 23 insertions, 18 deletions
diff --git a/spec/services/bulk_update_integration_service_spec.rb b/spec/services/bulk_update_integration_service_spec.rb index c10a9b75648..5e521b98482 100644 --- a/spec/services/bulk_update_integration_service_spec.rb +++ b/spec/services/bulk_update_integration_service_spec.rb @@ -16,32 +16,19 @@ RSpec.describe BulkUpdateIntegrationService do let_it_be(:group) { create(:group) } let_it_be(:subgroup) { create(:group, parent: group) } - let_it_be(:group_integration) do - Integrations::Jira.create!( - group: group, - url: 'http://group.jira.com' - ) - end - + let_it_be(:group_integration) { create(:jira_integration, :group, group: group, url: 'http://group.jira.com') } + let_it_be(:excluded_integration) { create(:jira_integration, :group, group: create(:group), url: 'http://another.jira.com', push_events: false) } let_it_be(:subgroup_integration) do - Integrations::Jira.create!( - inherit_from_id: group_integration.id, + create(:jira_integration, :group, group: subgroup, + inherit_from_id: group_integration.id, url: 'http://subgroup.jira.com', push_events: true ) end - let_it_be(:excluded_integration) do - Integrations::Jira.create!( - group: create(:group), - url: 'http://another.jira.com', - push_events: false - ) - end - let_it_be(:integration) do - Integrations::Jira.create!( + create(:jira_integration, project: create(:project, group: subgroup), inherit_from_id: subgroup_integration.id, url: 'http://project.jira.com', @@ -88,4 +75,22 @@ RSpec.describe BulkUpdateIntegrationService do described_class.new(group_integration, [integration]).execute end.to change { integration.reload.url }.to(group_integration.url) end + + context 'with different foreign key of data_fields' do + let(:integration) { create(:zentao_integration, project: create(:project, group: group)) } + let(:group_integration) do + create(:zentao_integration, :group, + group: group, + url: 'https://group.zentao.net', + api_token: 'GROUP_TOKEN', + zentao_product_xid: '1' + ) + end + + it 'works with batch as an array of ActiveRecord objects' do + expect do + described_class.new(group_integration, [integration]).execute + end.to change { integration.reload.url }.to(group_integration.url) + end + end end |