Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -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:) }
Expand All @@ -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
Expand Down
6 changes: 3 additions & 3 deletions spec/mailers/cms_mailer_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -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" }
Expand Down Expand Up @@ -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")
])
]
}
Expand Down Expand Up @@ -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
Expand Down