Skip to content

Commit f7ebc3c

Browse files
fixed broken tests
1 parent 75055b3 commit f7ebc3c

File tree

1 file changed

+53
-2
lines changed

1 file changed

+53
-2
lines changed

packages/cpt-ui/__tests__/EpsSearchForAPrescription.test.tsx

Lines changed: 53 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,25 @@ import SearchForAPrescription from "@/pages/SearchPrescriptionPage"
88
import {HERO_TEXT} from "@/constants/ui-strings/SearchForAPrescriptionStrings"
99
import {AuthContext, AuthContextType} from "@/context/AuthProvider"
1010
import {AccessContext} from "@/context/AccessProvider"
11+
import {SearchContext, SearchProviderContextType} from "@/context/SearchProvider"
12+
import {NavigationProvider} from "@/context/NavigationProvider"
13+
14+
// Mock the NavigationProvider's useNavigationContext hook
15+
const mockNavigationContext = {
16+
pushNavigation: jest.fn(),
17+
goBack: jest.fn(),
18+
getBackPath: jest.fn(),
19+
setOriginalSearchPage: jest.fn(),
20+
captureOriginalSearchParameters: jest.fn(),
21+
getOriginalSearchParameters: jest.fn(),
22+
getRelevantSearchParameters: jest.fn(),
23+
startNewNavigationSession: jest.fn()
24+
}
25+
26+
jest.mock("@/context/NavigationProvider", () => ({
27+
...jest.requireActual("@/context/NavigationProvider"),
28+
useNavigationContext: () => mockNavigationContext
29+
}))
1130

1231
// Default mock values for contexts
1332
const defaultAuthContext: AuthContextType = {
@@ -34,19 +53,51 @@ const defaultAuthContext: AuthContextType = {
3453
setIsSigningOut: jest.fn()
3554
}
3655

56+
// Default mock values for SearchProvider
57+
const defaultSearchContext: SearchProviderContextType = {
58+
prescriptionId: undefined,
59+
issueNumber: undefined,
60+
firstName: undefined,
61+
lastName: undefined,
62+
dobDay: undefined,
63+
dobMonth: undefined,
64+
dobYear: undefined,
65+
postcode: undefined,
66+
nhsNumber: undefined,
67+
searchType: undefined,
68+
clearSearchParameters: jest.fn(),
69+
setPrescriptionId: jest.fn(),
70+
setIssueNumber: jest.fn(),
71+
setFirstName: jest.fn(),
72+
setLastName: jest.fn(),
73+
setDobDay: jest.fn(),
74+
setDobMonth: jest.fn(),
75+
setDobYear: jest.fn(),
76+
setPostcode: jest.fn(),
77+
setNhsNumber: jest.fn(),
78+
getAllSearchParameters: jest.fn(),
79+
setAllSearchParameters: jest.fn(),
80+
setSearchType: jest.fn()
81+
}
82+
3783
// Utility function to render with all required providers
3884
const renderWithProviders = (
3985
ui: React.ReactElement,
4086
{
4187
authContext = defaultAuthContext,
42-
accessContext = null
88+
accessContext = null,
89+
searchContext = defaultSearchContext
4390
} = {}
4491
) => {
4592
return render(
4693
<MemoryRouter>
4794
<AuthContext.Provider value={authContext}>
4895
<AccessContext.Provider value={accessContext}>
49-
{ui}
96+
<SearchContext.Provider value={searchContext}>
97+
<NavigationProvider>
98+
{ui}
99+
</NavigationProvider>
100+
</SearchContext.Provider>
50101
</AccessContext.Provider>
51102
</AuthContext.Provider>
52103
</MemoryRouter>

0 commit comments

Comments
 (0)