@@ -67,7 +67,7 @@ describe("PatientDetailsBanner", () => {
6767 expect ( screen . getByTestId ( "patient-details-banner" ) . className ) . not . toMatch ( / p a t i e n t - d e t a i l s - p a r t i a l - d a t a / )
6868 } )
6969
70- it ( "renders partial patient details with missing data message" , async ( ) => {
70+ it ( "renders partial patient details with missing data message when pds call fails " , async ( ) => {
7171 render (
7272 < MockPatientDetailsProvider patientDetails = { { nhsNumber : "5900009890" } } patientFallback = { true } >
7373 < PatientDetailsBanner />
@@ -79,22 +79,44 @@ describe("PatientDetailsBanner", () => {
7979 } )
8080
8181 // Minimum details returned is just NHS Number
82- expect ( screen . getByTestId ( "patient-details-banner-name" ) ) . toHaveTextContent ( STRINGS . UNKNOWN )
83- expect (
84- screen . getByTestId ( "patient-details-banner-gender" ) ) . toHaveTextContent ( `${ STRINGS . GENDER } : ${ STRINGS . UNKNOWN } ` )
85- expect (
86- screen . getByTestId ( "patient-details-banner-nhsNumber" ) ) . toHaveTextContent ( `${ STRINGS . NHS_NUMBER } : 590 000 9890` )
87- expect (
88- screen . getByTestId ( "patient-details-banner-dob" ) ) . toHaveTextContent ( `${ STRINGS . DOB } : ${ STRINGS . UNKNOWN } ` )
89- expect (
90- screen . getByTestId ( "patient-details-banner-address" ) ) . toHaveTextContent ( `${ STRINGS . ADDRESS } : ${ STRINGS . UNKNOWN } ` )
82+ expect ( screen . getByTestId ( "patient-details-banner-name" ) ) . toHaveTextContent ( STRINGS . NOT_AVAILABLE )
83+ expect ( screen . getByTestId ( "patient-details-banner-gender" ) ) . toHaveTextContent (
84+ `${ STRINGS . GENDER } : ${ STRINGS . NOT_AVAILABLE } ` )
85+ expect ( screen . getByTestId ( "patient-details-banner-nhsNumber" ) ) . toHaveTextContent (
86+ `${ STRINGS . NHS_NUMBER } : 590 000 9890` )
87+ expect ( screen . getByTestId ( "patient-details-banner-dob" ) ) . toHaveTextContent (
88+ `${ STRINGS . DOB } : ${ STRINGS . NOT_AVAILABLE } ` )
89+ expect ( screen . getByTestId ( "patient-details-banner-address" ) ) . toHaveTextContent (
90+ `${ STRINGS . ADDRESS } : ${ STRINGS . NOT_AVAILABLE } ` )
9191
9292 // The missing data message should be rendered.
9393 expect ( screen . getByTestId ( "patient-detail-banner-incomplete" ) ) . toBeInTheDocument ( )
9494 expect ( screen . getByTestId ( "patient-detail-banner-incomplete" ) ) . toHaveTextContent ( STRINGS . MISSING_DATA )
95+ } )
9596
96- // The banner should now have the class for partial data.
97- expect ( screen . getByTestId ( "patient-details-banner" ) . className ) . toMatch ( / p a t i e n t - d e t a i l s - p a r t i a l - d a t a / )
97+ // eslint-disable-next-line max-len
98+ it ( "does not render the missing data message when details are completed from prescription details after a pds failure" , async ( ) => {
99+ render (
100+ < MockPatientDetailsProvider
101+ patientDetails = { {
102+ nhsNumber : "5900009890" ,
103+ givenName : [ "William" ] ,
104+ familyName : "Wolderton" ,
105+ gender : "male" ,
106+ dateOfBirth : "1988-11-01" ,
107+ address : [ "55 Oak Street" , "OAK LANE" , "Leeds" ] ,
108+ postcode : "LS1 1XX"
109+ } }
110+ patientFallback = { true } >
111+ < PatientDetailsBanner />
112+ </ MockPatientDetailsProvider >
113+ )
114+
115+ await waitFor ( ( ) => {
116+ expect ( screen . getByTestId ( "patient-details-banner" ) ) . toBeInTheDocument ( )
117+ } )
118+
119+ expect ( screen . queryByTestId ( "patient-detail-banner-incomplete" ) ) . not . toBeInTheDocument ( )
98120 } )
99121
100122 it ( "renders not available content for fields when pds record has missing data" , async ( ) => {
@@ -116,15 +138,15 @@ describe("PatientDetailsBanner", () => {
116138 expect ( screen . getByTestId ( "patient-details-banner" ) ) . toBeInTheDocument ( )
117139 } )
118140
119- expect ( screen . getByTestId ( "patient-details-banner-name" ) ) . toHaveTextContent ( STRINGS . NAME_NOT_AVAILABLE )
141+ expect ( screen . getByTestId ( "patient-details-banner-name" ) ) . toHaveTextContent ( STRINGS . NAME_NOT_ON_RECORD )
120142 expect ( screen . getByTestId ( "patient-details-banner-gender" ) ) . toHaveTextContent (
121- `${ STRINGS . GENDER } : ${ STRINGS . NOT_AVAILABLE } ` )
143+ `${ STRINGS . GENDER } : ${ STRINGS . NOT_ON_RECORD } ` )
122144 expect ( screen . getByTestId ( "patient-details-banner-nhsNumber" ) ) . toHaveTextContent (
123145 `${ STRINGS . NHS_NUMBER } : 590 000 9890` )
124146 expect ( screen . getByTestId ( "patient-details-banner-dob" ) ) . toHaveTextContent (
125- `${ STRINGS . DOB } : ${ STRINGS . NOT_AVAILABLE } ` )
147+ `${ STRINGS . DOB } : ${ STRINGS . NOT_ON_RECORD } ` )
126148 expect ( screen . getByTestId ( "patient-details-banner-address" ) ) . toHaveTextContent (
127- `${ STRINGS . ADDRESS } : ${ STRINGS . NOT_AVAILABLE } ` )
149+ `${ STRINGS . ADDRESS } : ${ STRINGS . NOT_ON_RECORD } ` )
128150
129151 // // Verify that the missing data message is not rendered
130152 expect ( screen . queryByTestId ( "patient-detail-banner-incomplete" ) ) . not . toBeInTheDocument ( )
@@ -152,7 +174,7 @@ describe("PatientDetailsBanner", () => {
152174 expect ( screen . getByTestId ( "patient-details-banner" ) ) . toBeInTheDocument ( )
153175 } )
154176
155- expect ( screen . getByTestId ( "patient-details-banner-name" ) ) . toHaveTextContent ( STRINGS . NAME_NOT_AVAILABLE )
177+ expect ( screen . getByTestId ( "patient-details-banner-name" ) ) . toHaveTextContent ( STRINGS . NAME_NOT_ON_RECORD )
156178 } )
157179
158180 it ( "renders patient details correctly when family name is missing from the pds record" , async ( ) => {
@@ -174,7 +196,7 @@ describe("PatientDetailsBanner", () => {
174196 expect ( screen . getByTestId ( "patient-details-banner" ) ) . toBeInTheDocument ( )
175197 } )
176198
177- expect ( screen . getByTestId ( "patient-details-banner-name" ) ) . toHaveTextContent ( STRINGS . NAME_NOT_AVAILABLE )
199+ expect ( screen . getByTestId ( "patient-details-banner-name" ) ) . toHaveTextContent ( STRINGS . NAME_NOT_ON_RECORD )
178200 } )
179201
180202 it ( "renders patient details correctly when name is temporary" , async ( ) => {
0 commit comments