diff options
| author | Paul-Christian Volkmer | 2023-03-28 14:30:36 +0200 |
|---|---|---|
| committer | Paul-Christian Volkmer | 2023-03-28 14:30:36 +0200 |
| commit | 2402a1ff018f0ce762ac17cdc4114f8e3bec6f7f (patch) | |
| tree | f1e7c0e8ed534b30e0fb49b23b45491ade314b4a /src/test/java | |
| parent | 4c0d94f28ef576e57e03bcb37e94816b71aa6508 (diff) | |
Verwende konkrete Rückgabetypen und füge weitere Prüfungen für InputMap hinzu
Diffstat (limited to 'src/test/java')
| -rw-r--r-- | src/test/java/DNPM/DNPMHelperTest.java | 140 |
1 files changed, 103 insertions, 37 deletions
diff --git a/src/test/java/DNPM/DNPMHelperTest.java b/src/test/java/DNPM/DNPMHelperTest.java index 4c0bb1b..51f91ff 100644 --- a/src/test/java/DNPM/DNPMHelperTest.java +++ b/src/test/java/DNPM/DNPMHelperTest.java @@ -6,6 +6,7 @@ import org.hibernate.SQLQuery; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.ArgumentCaptor; @@ -60,57 +61,122 @@ class DNPMHelperTest { assertThat(actual).isNull(); } - @Test - void testShouldReturnFalseIfNoRidAndNoBdCallingUpdateEmpfehlungPrio() { - var actual = dnpmHelper.updateEmpfehlungPrio(new HashMap<>()); + @Nested + class UpdateEmpfehlungPrioTests { - assertThat(actual).isEqualTo(false); - } + @Test + void testShouldReturnFalseIfNoRidAndNoBdCallingUpdateEmpfehlungPrio() { + var actual = dnpmHelper.updateEmpfehlungPrio(new HashMap<>()); - @Test - void testShouldReturnFalseIfNoRidCallingUpdateEmpfehlungPrio() { - var actual = dnpmHelper.updateEmpfehlungPrio(Map.of("bd", "2023-01-01")); + assertThat(actual).isEqualTo(false); + } - assertThat(actual).isEqualTo(false); - } + @Test + void testShouldReturnFalseIfNoRidCallingUpdateEmpfehlungPrio() { + var actual = dnpmHelper.updateEmpfehlungPrio(Map.of("bd", "2023-01-01")); - @Test - void testShouldReturnFalseIfNoBdCallingUpdateEmpfehlungPrio() { - var actual = dnpmHelper.updateEmpfehlungPrio(Map.of("rid", 1234)); + assertThat(actual).isEqualTo(false); + } - assertThat(actual).isEqualTo(false); - } + @Test + void testShouldReturnFalseIfNoBdCallingUpdateEmpfehlungPrio() { + var actual = dnpmHelper.updateEmpfehlungPrio(Map.of("rid", 1234)); - @Test - void testShouldReturnTrueIfRidAndBdPresentCallingUpdateEmpfehlungPrio() { - var sessionFactory = mock(SessionFactory.class); - var session = mock(Session.class); - var query = mock(SQLQuery.class); + assertThat(actual).isEqualTo(false); + } + + @Test + void testShouldReturnTrueIfRidAndBdPresentCallingUpdateEmpfehlungPrio() { + var sessionFactory = mock(SessionFactory.class); + var session = mock(Session.class); + var query = mock(SQLQuery.class); + + when(onkostarApi.getSessionFactory()).thenReturn(sessionFactory); + when(sessionFactory.getCurrentSession()).thenReturn(session); + when(session.createSQLQuery(anyString())).thenReturn(query); + + var actual = dnpmHelper.updateEmpfehlungPrio(Map.of("rid", 1234, "bd", "2023-01-01")); - when(onkostarApi.getSessionFactory()).thenReturn(sessionFactory); - when(sessionFactory.getCurrentSession()).thenReturn(session); - when(session.createSQLQuery(anyString())).thenReturn(query); + assertThat(actual).isEqualTo(true); + } - var actual = dnpmHelper.updateEmpfehlungPrio(Map.of("rid", 1234, "bd", "2023-01-01")); + @Test + void testShouldCreateSqlQueryWithRidAndBdCallingUpdateEmpfehlungPrio() { + var sessionFactory = mock(SessionFactory.class); + var session = mock(Session.class); + var query = mock(SQLQuery.class); + + when(onkostarApi.getSessionFactory()).thenReturn(sessionFactory); + when(sessionFactory.getCurrentSession()).thenReturn(session); + when(session.createSQLQuery(anyString())).thenReturn(query); + + dnpmHelper.updateEmpfehlungPrio(Map.of("rid", 1234, "bd", "2023-01-01")); + + var argumentCaptor = ArgumentCaptor.forClass(String.class); + verify(session, times(1)).createSQLQuery(argumentCaptor.capture()); + assertThat(argumentCaptor.getValue()).isEqualTo("UPDATE prozedur SET beginndatum = '2023-01-01' WHERE id = '1234' "); + } - assertThat(actual).isEqualTo(true); } - @Test - void testShouldCreateSqlQueryWithRidAndBdCallingUpdateEmpfehlungPrio() { - var sessionFactory = mock(SessionFactory.class); - var session = mock(Session.class); - var query = mock(SQLQuery.class); + @Nested + class GetProzedurenFromDiagnoseTests { + @Test + void testShouldReturnEmptyStringOnParamCheckIfNoDataFormParamGiven() { + var actual = dnpmHelper.getProzedurenFromDiagnose(Map.of("DiagnoseId", 1, "PatientId", 2)); + assertThat(actual).isEqualTo(""); + + verify(onkostarApi, times(0)).getProceduresByPatientId(anyInt()); + } + + @Test + void testShouldReturnEmptyStringOnParamCheckIfNoDiagnoseIdParamGiven() { + var actual = dnpmHelper.getProzedurenFromDiagnose(Map.of("dataForm", "OS.Example", "PatientId", 2)); + assertThat(actual).isEqualTo(""); + + verify(onkostarApi, times(0)).getProceduresByPatientId(anyInt()); + } + + @Test + void testShouldReturnEmptyStringOnParamCheckIfNoPatientIdParamGiven() { + var actual = dnpmHelper.getProzedurenFromDiagnose(Map.of("dataForm", "OS.Example", "DiagnoseId", 1)); + assertThat(actual).isEqualTo(""); + + verify(onkostarApi, times(0)).getProceduresByPatientId(anyInt()); + } + + @Test + void testShouldRequestProceduresIfRequiredParamsGiven() { + dnpmHelper.getProzedurenFromDiagnose(Map.of("dataForm", "OS.Example", "DiagnoseId", 1, "PatientId", 2)); + verify(onkostarApi, times(1)).getProceduresByPatientId(anyInt()); + } + } + + @Nested + class GetVerweiseTests { + + @Test + void testShouldReturnEmptyArrayIfNoProcedureIdParamGiven() { + var actual = dnpmHelper.getVerweise(Map.of("PatientId", 2)); + assertThat(actual).isNull(); + + verify(onkostarApi, times(0)).getSessionFactory(); + } + + @Test + void testShouldReturnEmptyArrayIfNoPatientIdParamGiven() { + var actual = dnpmHelper.getVerweise(Map.of("ProcedureId", 1)); + assertThat(actual).isNull(); - when(onkostarApi.getSessionFactory()).thenReturn(sessionFactory); - when(sessionFactory.getCurrentSession()).thenReturn(session); - when(session.createSQLQuery(anyString())).thenReturn(query); + verify(onkostarApi, times(0)).getSessionFactory(); + } - dnpmHelper.updateEmpfehlungPrio(Map.of("rid", 1234, "bd", "2023-01-01")); + @Test + void testShouldRequestSessionFactoryIfRequiredParamsGiven() { + dnpmHelper.getVerweise(Map.of("ProcedureId", 1, "PatientId", 2)); + verify(onkostarApi, times(1)).getSessionFactory(); + } - var argumentCaptor = ArgumentCaptor.forClass(String.class); - verify(session, times(1)).createSQLQuery(argumentCaptor.capture()); - assertThat(argumentCaptor.getValue()).isEqualTo("UPDATE prozedur SET beginndatum = '2023-01-01' WHERE id = '1234' "); } } |
