From 11dc2bfa4aafee476a49cf5ab2076832bb82267f Mon Sep 17 00:00:00 2001 From: Mooktakim Ahmed Date: Thu, 16 Jan 2025 14:40:57 +0000 Subject: [PATCH] [CPDLP-3933] Updated CreateNewECFCohort with CreateMentorCallOffContract --- app/services/importers/create_new_ecf_cohort.rb | 8 ++++++-- .../fixtures/files/importers/mentor_contract_csv_data.csv | 2 ++ spec/services/importers/create_new_ecf_cohort_spec.rb | 5 ++++- 3 files changed, 12 insertions(+), 3 deletions(-) create mode 100644 spec/fixtures/files/importers/mentor_contract_csv_data.csv diff --git a/app/services/importers/create_new_ecf_cohort.rb b/app/services/importers/create_new_ecf_cohort.rb index b1438e05d7..e4549fb712 100644 --- a/app/services/importers/create_new_ecf_cohort.rb +++ b/app/services/importers/create_new_ecf_cohort.rb @@ -12,12 +12,13 @@ def call private - attr_reader :cohort_csv, :cohort_lead_provider_csv, :contract_csv, :schedule_csv, :statement_csv, :logger + attr_reader :cohort_csv, :cohort_lead_provider_csv, :contract_csv, :mentor_contract_csv, :schedule_csv, :statement_csv, :logger - def initialize(cohort_csv:, cohort_lead_provider_csv:, contract_csv:, schedule_csv:, statement_csv:, logger: Rails.logger) + def initialize(cohort_csv:, cohort_lead_provider_csv:, contract_csv:, mentor_contract_csv:, schedule_csv:, statement_csv:, logger: Rails.logger) @cohort_csv = cohort_csv @cohort_lead_provider_csv = cohort_lead_provider_csv @contract_csv = contract_csv + @mentor_contract_csv = mentor_contract_csv @schedule_csv = schedule_csv @statement_csv = statement_csv @logger = logger @@ -39,6 +40,9 @@ def run_ecf_cohort_scripts logger.info "CreateNewECFCohort: Running CreateCallOffContract with: '#{contract_csv}'" CreateCallOffContract.new(path_to_csv: contract_csv).call + logger.info "CreateNewECFCohort: Running CreateMentorCallOffContract with: '#{mentor_contract_csv}'" + CreateMentorCallOffContract.new(path_to_csv: mentor_contract_csv).call + logger.info "CreateNewECFCohort: Running CreateSchedule with: '#{schedule_csv}'" CreateSchedule.new(path_to_csv: schedule_csv).call diff --git a/spec/fixtures/files/importers/mentor_contract_csv_data.csv b/spec/fixtures/files/importers/mentor_contract_csv_data.csv new file mode 100644 index 0000000000..73114d3c9e --- /dev/null +++ b/spec/fixtures/files/importers/mentor_contract_csv_data.csv @@ -0,0 +1,2 @@ +lead-provider-name,cohort-start-year,recruitment-target,payment-per-participant +Ambition Institute,2026,4600,1000.0 diff --git a/spec/services/importers/create_new_ecf_cohort_spec.rb b/spec/services/importers/create_new_ecf_cohort_spec.rb index 349838e1a2..ac378b7ea2 100644 --- a/spec/services/importers/create_new_ecf_cohort_spec.rb +++ b/spec/services/importers/create_new_ecf_cohort_spec.rb @@ -10,13 +10,14 @@ let(:cohort_csv) { "spec/fixtures/files/importers/cohort_csv_data.csv" } let(:cohort_lead_provider_csv) { "spec/fixtures/files/importers/cohort_lead_provider_csv_data.csv" } let(:contract_csv) { "spec/fixtures/files/importers/contract_csv_data.csv" } + let(:mentor_contract_csv) { "spec/fixtures/files/importers/mentor_contract_csv_data.csv" } let(:schedule_csv) { "spec/fixtures/files/importers/schedule_csv_data.csv" } let(:statement_csv) { "spec/fixtures/files/importers/statement_csv_data.csv" } let(:lead_provider) { create(:lead_provider, name: "Ambition Institute", cohorts: []) } let!(:cpd_lead_provider) { create(:cpd_lead_provider, name: "Ambition Institute", lead_provider:) } subject do - described_class.new(cohort_csv:, cohort_lead_provider_csv:, contract_csv:, schedule_csv:, statement_csv:) + described_class.new(cohort_csv:, cohort_lead_provider_csv:, contract_csv:, mentor_contract_csv:, schedule_csv:, statement_csv:) end context "with missing csvs" do @@ -40,9 +41,11 @@ it "creates Call off Contract and bands" do expect(CallOffContract.count).to eql(0) + expect(MentorCallOffContract.count).to eql(0) expect(ParticipantBand.count).to eql(0) subject.call expect(CallOffContract.count).to eql(1) + expect(MentorCallOffContract.count).to eql(1) expect(ParticipantBand.count).to eql(4) end