1414import org .springframework .http .HttpStatus ;
1515import org .springframework .test .annotation .DirtiesContext ;
1616import org .springframework .test .context .junit .jupiter .SpringExtension ;
17+ import uk .nhs .adaptors .gp2gp .common .service .RandomIdGeneratorService ;
1718import uk .nhs .adaptors .gp2gp .common .task .TaskDispatcher ;
1819import uk .nhs .adaptors .gp2gp .ehr .model .EhrExtractStatus ;
1920import uk .nhs .adaptors .gp2gp .gpc .GetGpcStructuredTaskDefinition ;
@@ -42,13 +43,17 @@ public class EhrResendControllerTest {
4243 private static final Instant FIVE_DAYS_AGO = NOW .minus (Duration .ofDays (5 ));
4344 private static final String URI_TYPE = "https://fhir.nhs.uk/STU3/StructureDefinition/GPConnect-OperationOutcome-1" ;
4445 private static final String CONVERSATION_ID = "123-456" ;
46+ public static final String NHS_NUMBER = "12345" ;
4547
4648 @ Autowired
4749 private EhrExtractStatusRepository ehrExtractStatusRepository ;
4850
4951 @ Autowired
5052 private EhrResendController ehrResendController ;
5153
54+ @ MockBean
55+ private RandomIdGeneratorService randomIdGeneratorService ;
56+
5257 @ MockBean
5358 private TaskDispatcher taskDispatcher ;
5459
@@ -70,6 +75,7 @@ public void When_AnEhrExtractHasFailed_Expect_RespondsWith202() {
7075 .received (FIVE_DAYS_AGO )
7176 .rootId (generateRandomUppercaseUUID ())
7277 .build ());
78+ ehrExtractStatus .setEhrRequest (EhrExtractStatus .EhrRequest .builder ().nhsNumber (NHS_NUMBER ).build ());
7379
7480 ehrExtractStatusRepository .save (ehrExtractStatus );
7581
@@ -97,12 +103,14 @@ public void When_AnEhrExtractHasFailed_Expect_GetGpcStructuredTaskScheduled() {
97103 .received (FIVE_DAYS_AGO )
98104 .rootId (generateRandomUppercaseUUID ())
99105 .build ());
106+ ehrExtractStatus .setEhrRequest (EhrExtractStatus .EhrRequest .builder ().nhsNumber (NHS_NUMBER ).build ());
100107
101108 ehrExtractStatusRepository .save (ehrExtractStatus );
102109
103110 ehrResendController .scheduleEhrExtractResend (CONVERSATION_ID );
104111
105- var taskDefinition = GetGpcStructuredTaskDefinition .builder ().build ();
112+ var taskDefinition = GetGpcStructuredTaskDefinition .getGetGpcStructuredTaskDefinition (randomIdGeneratorService ,
113+ ehrExtractStatus );
106114 verify (taskDispatcher , times (1 )).createTask (taskDefinition );
107115
108116 }
0 commit comments