diff --git a/spec/components/user_programme_course_bookings_with_asides_component_spec.rb b/spec/components/user_programme_course_bookings_with_asides_component_spec.rb index 77ef79bd92..8b02920e2d 100644 --- a/spec/components/user_programme_course_bookings_with_asides_component_spec.rb +++ b/spec/components/user_programme_course_bookings_with_asides_component_spec.rb @@ -2,12 +2,9 @@ RSpec.describe UserProgrammeCourseBookingsWithAsidesComponent, type: :component do let(:user) { create(:user) } - let(:activity) { - activity = Activity.find_by(stem_activity_code: "CP199") - activity || create(:activity, stem_activity_code: "CP199", category: :online) - } - let(:activity_two) { create(:activity, stem_activity_code: "CP228") } - let(:activity_three) { create(:activity, stem_activity_code: "CS101", remote_delivered_cpd: true) } + let(:activity) { find_or_create_activity("CP199", category: :online) } + let(:activity_two) { find_or_create_activity("CP228") } + let(:activity_three) { find_or_create_activity("CS101", remote_delivered_cpd: true) } let(:programme) { create(:primary_certificate) } let(:achievement) { create(:achievement, user:) } let!(:courses) { create_list(:programme_activity_grouping, 2, :with_activities, sort_key: 2, community: false, programme:) } @@ -18,6 +15,11 @@ let(:remote_achievement) { create(:achievement, user:, activity: activity_three) } let(:completed_user_achievement) { create(:completed_achievement, user:, activity: activity_two) } + def find_or_create_activity(stem_activity_code, **) + activity = Activity.find_by(stem_activity_code:) + activity || create(:activity, stem_activity_code:, **) + end + describe "when primary certificate" do context "with no user courses" do before do diff --git a/spec/mailers/cms_mailer_spec.rb b/spec/mailers/cms_mailer_spec.rb index beaf0fe713..b70e261145 100644 --- a/spec/mailers/cms_mailer_spec.rb +++ b/spec/mailers/cms_mailer_spec.rb @@ -5,7 +5,7 @@ let(:user) { create(:user) } let(:activity) { create(:activity, programmes: [programme], title: "Test activity") } let!(:second_activity) { create(:activity, programmes: [programme], title: "Test activity second") } - let!(:other_activity) { create(:activity, programmes: [programme], title: "Other activity", stem_activity_code: "CP423") } + let!(:other_activity) { create(:activity, programmes: [programme], title: "Other activity", stem_activity_code: "CP823") } let!(:achievement) { create(:completed_achievement, activity:, user:) } let(:subject) { "I am a test email" } let(:slug) { "test-email-slug" } @@ -46,7 +46,7 @@ Cms::Mocks::EmailComponents::Cta.generate_raw_data(text: "CTA 1", link: "https://teachcomputing.org/cta1"), Cms::Mocks::EmailComponents::Cta.generate_raw_data(text: "CTA 2", link: "https://teachcomputing.org/cta2"), Cms::Mocks::EmailComponents::CourseList.generate_raw_data(section_title: nil, courses: [ - Cms::Mocks::EmailComponents::Course.generate_data(activity_code: "CP423") + Cms::Mocks::EmailComponents::Course.generate_data(activity_code: "CP823") ]) ] } @@ -124,7 +124,7 @@ end it "renders course link in text part" do - expect(@mail.text_part.body).to include("#{other_activity.title} (http://teachcomputing.test/courses/CP423/#{other_activity.title.parameterize})") + expect(@mail.text_part.body).to include("#{other_activity.title} (http://teachcomputing.test/courses/CP823/#{other_activity.title.parameterize})") end describe "Newer achievement" do