diff --git a/app/models/forms/bulk_upload_lettings/guidance.rb b/app/models/forms/bulk_upload_lettings/guidance.rb index dc0de3271..b2fcf947e 100644 --- a/app/models/forms/bulk_upload_lettings/guidance.rb +++ b/app/models/forms/bulk_upload_lettings/guidance.rb @@ -4,11 +4,18 @@ module Forms include ActiveModel::Model include ActiveModel::Attributes include Rails.application.routes.url_helpers + include CollectionTimeHelper attribute :year, :integer attribute :referrer attribute :organisation_id, :integer + def initialize(params) + super(params) + + self.year = current_collection_start_year if year.nil? + end + def view_path "bulk_upload_shared/guidance" end diff --git a/app/models/forms/bulk_upload_sales/guidance.rb b/app/models/forms/bulk_upload_sales/guidance.rb index be61ef650..80cfc5143 100644 --- a/app/models/forms/bulk_upload_sales/guidance.rb +++ b/app/models/forms/bulk_upload_sales/guidance.rb @@ -4,11 +4,18 @@ module Forms include ActiveModel::Model include ActiveModel::Attributes include Rails.application.routes.url_helpers + include CollectionTimeHelper attribute :year, :integer attribute :referrer attribute :organisation_id, :integer + def initialize(params) + super(params) + + self.year = current_collection_start_year if year.nil? + end + def view_path "bulk_upload_shared/guidance" end diff --git a/spec/models/forms/bulk_upload_lettings/guidance_spec.rb b/spec/models/forms/bulk_upload_lettings/guidance_spec.rb index 271ff8b27..41e74c50c 100644 --- a/spec/models/forms/bulk_upload_lettings/guidance_spec.rb +++ b/spec/models/forms/bulk_upload_lettings/guidance_spec.rb @@ -6,6 +6,7 @@ RSpec.describe Forms::BulkUploadLettings::Guidance do subject(:bu_guidance) { described_class.new(year:, referrer:) } let(:year) { 2024 } + let(:referrer) { nil } describe "#back_path" do context "when referrer is prepare-your-file" do @@ -40,4 +41,20 @@ RSpec.describe Forms::BulkUploadLettings::Guidance do end end end + + describe "year" do + context "when year is not provided" do + let(:year) { nil } + + before do + # rubocop:disable RSpec/AnyInstance + allow_any_instance_of(CollectionTimeHelper).to receive(:current_collection_start_year).and_return(2030) + # rubocop:enable RSpec/AnyInstance + end + + it "is set to the current collection start year" do + expect(bu_guidance.year).to eq(2030) + end + end + end end diff --git a/spec/models/forms/bulk_upload_sales/guidance_spec.rb b/spec/models/forms/bulk_upload_sales/guidance_spec.rb index 6eacf6d0c..f9c986cb2 100644 --- a/spec/models/forms/bulk_upload_sales/guidance_spec.rb +++ b/spec/models/forms/bulk_upload_sales/guidance_spec.rb @@ -6,6 +6,7 @@ RSpec.describe Forms::BulkUploadSales::Guidance do subject(:bu_guidance) { described_class.new(year:, referrer:) } let(:year) { 2024 } + let(:referrer) { nil } describe "#back_path" do context "when referrer is prepare-your-file" do @@ -40,4 +41,20 @@ RSpec.describe Forms::BulkUploadSales::Guidance do end end end + + describe "year" do + context "when year is not provided" do + let(:year) { nil } + + before do + # rubocop:disable RSpec/AnyInstance + allow_any_instance_of(CollectionTimeHelper).to receive(:current_collection_start_year).and_return(2030) + # rubocop:enable RSpec/AnyInstance + end + + it "is set to the current collection start year" do + expect(bu_guidance.year).to eq(2030) + end + end + end end