diff --git a/lib/tasks/data_import.rake b/lib/tasks/data_import.rake index 7ac0a7680..b119b735d 100644 --- a/lib/tasks/data_import.rake +++ b/lib/tasks/data_import.rake @@ -12,6 +12,8 @@ namespace :core do Imports::OrganisationImportService.new(storage_service).create_organisations(path) when "user" Imports::UserImportService.new(storage_service).create_users(path) + when "data-protection-confirmation" + Imports::DataProtectionConfirmationImportService.new(storage_service).create_data_protection_confirmations(path) else raise "Type #{type} is not supported by data_import" end diff --git a/spec/lib/tasks/data_import_spec.rb b/spec/lib/tasks/data_import_spec.rb index b99370bb0..0824aa622 100644 --- a/spec/lib/tasks/data_import_spec.rb +++ b/spec/lib/tasks/data_import_spec.rb @@ -54,6 +54,24 @@ describe "rake core:data_import", type: :task do end end + context "when importing data protection confirmation data" do + let(:type) { "data-protection-confirmation" } + let(:import_service) { instance_double(Imports::DataProtectionConfirmationImportService) } + let(:fixture_path) { "spec/fixtures/softwire_imports/data_protection_confirmations" } + + before do + allow(Imports::DataProtectionConfirmationImportService).to receive(:new).and_return(import_service) + end + + it "creates an organisation from the given XML file" do + expect(StorageService).to receive(:new).with(paas_config_service, instance_name) + expect(Imports::DataProtectionConfirmationImportService).to receive(:new).with(storage_service) + expect(import_service).to receive(:create_data_protection_confirmations).with(fixture_path) + + task.invoke(type, fixture_path) + end + end + it "raises an exception if no parameters are provided" do expect { task.invoke }.to raise_error(/Usage/) end