Skip to content

Commit 0374cd7

Browse files
VIA-539 SB Pharmacy booking info differs for older adults.
1 parent ad60c10 commit 0374cd7

File tree

4 files changed

+32
-4
lines changed

4 files changed

+32
-4
lines changed

src/app/_components/content/HowToGetVaccineFallback.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ const HowToGetVaccineFallback = (props: { vaccineType: VaccineTypes }): JSX.Elem
1010
<a href={vaccineInfo.nhsHowToGetWebpageLink.href} target="_blank" rel="noopener">
1111
how to get
1212
</a>{" "}
13-
{`an ${vaccineInfo.displayName.midSentenceCase} vaccination`}
13+
{`${vaccineInfo.displayName.indefiniteArticle} ${vaccineInfo.displayName.midSentenceCase} vaccination`}
1414
</p>
1515
);
1616
};

src/app/_components/nbs/PharmacyBookingInfo.test.tsx

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,4 +26,24 @@ describe("PharmacyBookingInfo", () => {
2626
undefined,
2727
);
2828
});
29+
30+
it("should contain include correct text for older adults", () => {
31+
render(<PharmacyBookingInfo vaccineType={VaccineTypes.RSV} />);
32+
33+
const pharmacyBookingInfo: HTMLElement | null = screen.queryByText(
34+
/This pharmacy service is only for adults aged 75 to 79./,
35+
);
36+
37+
expect(pharmacyBookingInfo).toBeInTheDocument();
38+
});
39+
40+
it("should contain include correct text for younger adults", () => {
41+
render(<PharmacyBookingInfo vaccineType={VaccineTypes.RSV_PREGNANCY} />);
42+
43+
const pharmacyBookingInfo: HTMLElement | null = screen.queryByText(
44+
/This pharmacy service is only for adults aged 75 to 79./,
45+
);
46+
47+
expect(pharmacyBookingInfo).not.toBeInTheDocument();
48+
});
2949
});

src/app/_components/nbs/PharmacyBookingInfo.tsx

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,18 @@ type PharmacyBookingProps = {
77
};
88

99
const PharmacyBookingInfo = ({ vaccineType }: PharmacyBookingProps): JSX.Element => {
10+
const vaccineInfo = VaccineInfo[vaccineType];
11+
1012
return (
1113
<p data-testid="pharmacy-booking-info">
12-
{"In some areas you can "}
14+
{vaccineInfo.forOlderAdults ? "In some areas you can " : "In some areas you can also "}
1315
<NBSBookingActionForVaccine
14-
displayText={`book an ${VaccineInfo[vaccineType].displayName.midSentenceCase} vaccination in a pharmacy`}
16+
displayText={`book ${vaccineInfo.displayName.indefiniteArticle} ${vaccineInfo.displayName.midSentenceCase} vaccination in a pharmacy`}
1517
vaccineType={vaccineType}
1618
renderAs={"anchor"}
1719
reduceBottomPadding={false}
1820
/>
19-
{". This pharmacy service is only for adults aged 75 to 79."}
21+
{vaccineInfo.forOlderAdults ? ". This pharmacy service is only for adults aged 75 to 79." : "."}
2022
</p>
2123
);
2224
};

src/models/vaccine.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,33 +28,39 @@ export type VaccineDetails = {
2828
nhsWebpageLink: URL;
2929
nhsHowToGetWebpageLink: URL;
3030
personalisedEligibilityStatusRequired: boolean;
31+
forOlderAdults: boolean;
3132
};
3233

3334
type displayName = {
3435
titleCase: string;
3536
midSentenceCase: string;
37+
indefiniteArticle: string;
3638
};
3739

3840
const VaccineInfo: Record<VaccineTypes, VaccineDetails> = {
3941
[VaccineTypes.RSV]: {
4042
displayName: {
4143
titleCase: "RSV",
4244
midSentenceCase: "RSV",
45+
indefiniteArticle: "an",
4346
},
4447
heading: "RSV vaccine for older adults",
4548
nhsWebpageLink: new URL("https://www.nhs.uk/vaccinations/rsv-vaccine/"),
4649
nhsHowToGetWebpageLink: new URL("https://www.nhs.uk/vaccinations/rsv-vaccine/#how-to-get-it"),
4750
personalisedEligibilityStatusRequired: true,
51+
forOlderAdults: true,
4852
},
4953
[VaccineTypes.RSV_PREGNANCY]: {
5054
displayName: {
5155
titleCase: "RSV",
5256
midSentenceCase: "RSV",
57+
indefiniteArticle: "an",
5358
},
5459
heading: "RSV vaccine in pregnancy",
5560
nhsWebpageLink: new URL("https://www.nhs.uk/vaccinations/rsv-vaccine/"),
5661
nhsHowToGetWebpageLink: new URL("https://www.nhs.uk/vaccinations/rsv-vaccine/#how-to-get-it"),
5762
personalisedEligibilityStatusRequired: false,
63+
forOlderAdults: false,
5864
},
5965
};
6066

0 commit comments

Comments
 (0)