Skip to content

Commit 43ed893

Browse files
NIAD-1456: started implementing new exception when ehr is unextractable
1 parent 89b5e99 commit 43ed893

File tree

3 files changed

+22
-0
lines changed

3 files changed

+22
-0
lines changed

service/src/main/java/uk/nhs/adaptors/gp2gp/common/task/TaskErrorHandler.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
import uk.nhs.adaptors.gp2gp.ehr.SendAcknowledgementTaskDefinition;
1616
import uk.nhs.adaptors.gp2gp.ehr.exception.EhrExtractException;
1717
import uk.nhs.adaptors.gp2gp.ehr.exception.EhrMapperException;
18+
import uk.nhs.adaptors.gp2gp.ehr.exception.EhrValidationException;
1819
import uk.nhs.adaptors.gp2gp.gpc.exception.EhrRequestException;
1920
import uk.nhs.adaptors.gp2gp.gpc.exception.GpConnectException;
2021
import uk.nhs.adaptors.gp2gp.gpc.exception.GpConnectInvalidException;
@@ -30,6 +31,7 @@ public class TaskErrorHandler {
3031
EhrRequestException.class, this::handleRequestError,
3132
EhrExtractException.class, this::handleTranslationError,
3233
EhrMapperException.class, this::handleTranslationError,
34+
EhrValidationException.class, this::handleTranslationError,
3335
FhirValidationException.class, this::handleTranslationError,
3436
GpConnectException.class, this::handleGpConnectError,
3537
GpConnectInvalidException.class, this::handleInvalidNotAuthError,
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package uk.nhs.adaptors.gp2gp.ehr.exception;
2+
3+
public class EhrValidationException extends RuntimeException {
4+
5+
public EhrValidationException(String message) {
6+
super(message);
7+
}
8+
}

service/src/test/java/uk/nhs/adaptors/gp2gp/common/task/TaskErrorHandlerTest.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
import uk.nhs.adaptors.gp2gp.common.service.ProcessFailureHandlingService;
3131
import uk.nhs.adaptors.gp2gp.ehr.exception.EhrExtractException;
3232
import uk.nhs.adaptors.gp2gp.ehr.exception.EhrMapperException;
33+
import uk.nhs.adaptors.gp2gp.ehr.exception.EhrValidationException;
3334
import uk.nhs.adaptors.gp2gp.gpc.exception.EhrRequestException;
3435
import uk.nhs.adaptors.gp2gp.gpc.exception.GpConnectException;
3536
import uk.nhs.adaptors.gp2gp.gpc.exception.GpConnectInvalidException;
@@ -65,6 +66,17 @@ void When_HandleProcessingError_WithEhrRequestException_Expect_ProcessToBeFailed
6566
any());
6667
}
6768

69+
@Test
70+
void When_HandleProcessingError_WithEhrValidationException_Expect_ProcessToBeFailedWithCorrectCode() {
71+
taskErrorHandler.handleProcessingError(new EhrValidationException(TEST_EXCEPTION_MESSAGE), taskDefinition);
72+
73+
verify(processFailureHandlingService).failProcess(
74+
any(),
75+
eq("10"),
76+
eq("Failed to successfully generate EHR Extract."),
77+
any());
78+
}
79+
6880
@Test
6981
void When_HandleProcessingError_WithEhrRequestException_Expect_ReturnValueOfFailService() {
7082
when(processFailureHandlingService.failProcess(any(), any(), any(), any()))

0 commit comments

Comments
 (0)