summaryrefslogtreecommitdiff
path: root/src/test/java/dev/dnpm/oshelper/services/systemtherapie
diff options
context:
space:
mode:
authorPaul-Christian Volkmer2026-09-03 14:35:10 +0200
committerGitHub2026-09-03 14:35:10 +0200
commitfb91356b7777dfa5b6088bcc3a48b43924c1c0fd (patch)
treea3d384390e388395953865a286f15292aaa04a86 /src/test/java/dev/dnpm/oshelper/services/systemtherapie
parent59daf77a63bd17bb14248cf9881046dd6b331e2a (diff)
build: apply Spotless plugin (#293)
Diffstat (limited to 'src/test/java/dev/dnpm/oshelper/services/systemtherapie')
-rw-r--r--src/test/java/dev/dnpm/oshelper/services/systemtherapie/DefaultSystemtherapieServiceTest.java240
-rw-r--r--src/test/java/dev/dnpm/oshelper/services/systemtherapie/ProzedurToProzedurwerteMapperTest.java98
2 files changed, 174 insertions, 164 deletions
diff --git a/src/test/java/dev/dnpm/oshelper/services/systemtherapie/DefaultSystemtherapieServiceTest.java b/src/test/java/dev/dnpm/oshelper/services/systemtherapie/DefaultSystemtherapieServiceTest.java
index e8d474b..05cd535 100644
--- a/src/test/java/dev/dnpm/oshelper/services/systemtherapie/DefaultSystemtherapieServiceTest.java
+++ b/src/test/java/dev/dnpm/oshelper/services/systemtherapie/DefaultSystemtherapieServiceTest.java
@@ -19,8 +19,13 @@
package dev.dnpm.oshelper.services.systemtherapie;
-import dev.dnpm.oshelper.services.SettingsService;
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.mockito.Mockito.*;
+
import de.itc.onkostar.api.*;
+import dev.dnpm.oshelper.services.SettingsService;
+import java.time.Instant;
+import java.util.*;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
@@ -30,121 +35,126 @@ import org.mockito.ArgumentCaptor;
import org.mockito.Mock;
import org.mockito.junit.jupiter.MockitoExtension;
-import java.time.Instant;
-import java.util.*;
-
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.mockito.Mockito.*;
-
@ExtendWith(MockitoExtension.class)
class DefaultSystemtherapieServiceTest {
- private IOnkostarApi onkostarApi;
-
- private SettingsService settingsService;
-
- private DefaultSystemtherapieService service;
-
- @BeforeEach
- void setup(@Mock IOnkostarApi onkostarApi, @Mock SettingsService settingsService) {
- this.onkostarApi = onkostarApi;
- this.settingsService = settingsService;
- this.service = new DefaultSystemtherapieService(onkostarApi, settingsService);
- }
-
- private static Set<Map.Entry<String, Class<OsSystemischeTherapieToProzedurwerteMapper>>> expectedMapperMappings() {
- return Map.ofEntries(Map.entry("OS.Systemische Therapie", OsSystemischeTherapieToProzedurwerteMapper.class), Map.entry("OS.Systemische Therapie.VarianteUKW", OsSystemischeTherapieToProzedurwerteMapper.class)).entrySet();
- }
-
- @ParameterizedTest
- @MethodSource("expectedMapperMappings")
- void testShouldMapFormNameToMapper(Map.Entry<String, Class<?>> expectedMapping) {
- var procedure = new Procedure(onkostarApi);
- procedure.setFormName(expectedMapping.getKey());
-
- var actual = service.prozedurToProzedurwerteMapper(procedure);
-
- assertThat(actual).isExactlyInstanceOf(expectedMapping.getValue());
- }
-
- private static List<String> formnameSetting() {
- return List.of("OS.Systemische Therapie", "OS.Systemische Therapie.VarianteUKW");
- }
-
- @ParameterizedTest
- @MethodSource("formnameSetting")
- void testShouldRequestProceduresWithExpectedFormName(String expectedFormName) {
- when(this.settingsService.getSetting(anyString())).thenReturn(Optional.of(expectedFormName));
- when(this.onkostarApi.getProceduresForDiseaseByForm(anyInt(), anyString())).thenReturn(List.of());
-
- service.getSystemischeTherapienFromDiagnose(123);
-
- var argumentCaptor = ArgumentCaptor.forClass(String.class);
- verify(onkostarApi, times(1)).getProceduresForDiseaseByForm(anyInt(), argumentCaptor.capture());
- assertThat(argumentCaptor.getValue()).isEqualTo(expectedFormName);
- }
-
- @Test
- void testShouldRequestProceduresWithDefaultFormName() {
- when(this.settingsService.getSetting(anyString())).thenReturn(Optional.empty());
- when(this.onkostarApi.getProceduresForDiseaseByForm(anyInt(), anyString())).thenReturn(List.of());
-
- service.getSystemischeTherapienFromDiagnose(123);
-
- var argumentCaptor = ArgumentCaptor.forClass(String.class);
- verify(onkostarApi, times(1)).getProceduresForDiseaseByForm(anyInt(), argumentCaptor.capture());
- assertThat(argumentCaptor.getValue()).isEqualTo("OS.Systemische Therapie");
- }
-
- @Test
- void testShouldReturnSystemischeTherapienFromDiagnose() {
- doAnswer(invocationOnMock -> {
- var procedure = new Procedure(onkostarApi);
- procedure.setFormName("OS.Systemische Therapie");
- return List.of(procedure);
- }).when(this.onkostarApi).getProceduresForDiseaseByForm(anyInt(), anyString());
-
- var actual = service.getSystemischeTherapienFromDiagnose(1);
-
- assertThat(actual)
- .isNotNull()
- .isExactlyInstanceOf(ArrayList.class)
- .hasSize(1);
- }
-
- @Test
- void testShouldReturnListOfEcogStatusWithDate() {
- doAnswer(invocationOnMock -> {
- var disease = new Disease(onkostarApi);
- disease.setId(1);
- return List.of(disease);
- }).when(this.onkostarApi).getDiseasesByPatientId(anyInt());
-
- doAnswer(invocationOnMock -> {
- var procedure1 = new Procedure(onkostarApi);
- procedure1.setId(1);
- procedure1.setFormName("OS.Systemische Therapie");
- procedure1.setStartDate(Date.from(Instant.parse("2023-07-01T06:00:00Z")));
- procedure1.setEditState(ProcedureEditStateType.COMPLETED);
- procedure1.setValue("ECOGvorTherapie", new Item("ECOGvorTherapie", 1));
-
- var procedure2 = new Procedure(onkostarApi);
- procedure2.setId(2);
- procedure2.setFormName("OS.Systemische Therapie");
- procedure2.setStartDate(Date.from(Instant.parse("2023-07-12T06:00:00Z")));
- procedure2.setEditState(ProcedureEditStateType.COMPLETED);
- procedure2.setValue("ECOGvorTherapie", new Item("ECOGvorTherapie", 2));
- return List.of(procedure1, procedure2);
- }).when(this.onkostarApi).getProceduresForDiseaseByForm(anyInt(), anyString());
-
- var patient = new Patient(onkostarApi);
- patient.setId(1);
-
- var actual = service.ecogStatus(patient);
-
- assertThat(actual)
- .isNotNull()
- .isExactlyInstanceOf(ArrayList.class)
- .hasSize(2);
- }
+ private IOnkostarApi onkostarApi;
+
+ private SettingsService settingsService;
+
+ private DefaultSystemtherapieService service;
+
+ @BeforeEach
+ void setup(@Mock IOnkostarApi onkostarApi, @Mock SettingsService settingsService) {
+ this.onkostarApi = onkostarApi;
+ this.settingsService = settingsService;
+ this.service = new DefaultSystemtherapieService(onkostarApi, settingsService);
+ }
+
+ private static Set<Map.Entry<String, Class<OsSystemischeTherapieToProzedurwerteMapper>>>
+ expectedMapperMappings() {
+ return Map.ofEntries(
+ Map.entry("OS.Systemische Therapie", OsSystemischeTherapieToProzedurwerteMapper.class),
+ Map.entry(
+ "OS.Systemische Therapie.VarianteUKW",
+ OsSystemischeTherapieToProzedurwerteMapper.class))
+ .entrySet();
+ }
+
+ @ParameterizedTest
+ @MethodSource("expectedMapperMappings")
+ void testShouldMapFormNameToMapper(Map.Entry<String, Class<?>> expectedMapping) {
+ var procedure = new Procedure(onkostarApi);
+ procedure.setFormName(expectedMapping.getKey());
+
+ var actual = service.prozedurToProzedurwerteMapper(procedure);
+
+ assertThat(actual).isExactlyInstanceOf(expectedMapping.getValue());
+ }
+
+ private static List<String> formnameSetting() {
+ return List.of("OS.Systemische Therapie", "OS.Systemische Therapie.VarianteUKW");
+ }
+
+ @ParameterizedTest
+ @MethodSource("formnameSetting")
+ void testShouldRequestProceduresWithExpectedFormName(String expectedFormName) {
+ when(this.settingsService.getSetting(anyString())).thenReturn(Optional.of(expectedFormName));
+ when(this.onkostarApi.getProceduresForDiseaseByForm(anyInt(), anyString()))
+ .thenReturn(List.of());
+
+ service.getSystemischeTherapienFromDiagnose(123);
+
+ var argumentCaptor = ArgumentCaptor.forClass(String.class);
+ verify(onkostarApi, times(1)).getProceduresForDiseaseByForm(anyInt(), argumentCaptor.capture());
+ assertThat(argumentCaptor.getValue()).isEqualTo(expectedFormName);
+ }
+
+ @Test
+ void testShouldRequestProceduresWithDefaultFormName() {
+ when(this.settingsService.getSetting(anyString())).thenReturn(Optional.empty());
+ when(this.onkostarApi.getProceduresForDiseaseByForm(anyInt(), anyString()))
+ .thenReturn(List.of());
+
+ service.getSystemischeTherapienFromDiagnose(123);
+
+ var argumentCaptor = ArgumentCaptor.forClass(String.class);
+ verify(onkostarApi, times(1)).getProceduresForDiseaseByForm(anyInt(), argumentCaptor.capture());
+ assertThat(argumentCaptor.getValue()).isEqualTo("OS.Systemische Therapie");
+ }
+
+ @Test
+ void testShouldReturnSystemischeTherapienFromDiagnose() {
+ doAnswer(
+ invocationOnMock -> {
+ var procedure = new Procedure(onkostarApi);
+ procedure.setFormName("OS.Systemische Therapie");
+ return List.of(procedure);
+ })
+ .when(this.onkostarApi)
+ .getProceduresForDiseaseByForm(anyInt(), anyString());
+
+ var actual = service.getSystemischeTherapienFromDiagnose(1);
+
+ assertThat(actual).isNotNull().isExactlyInstanceOf(ArrayList.class).hasSize(1);
+ }
+
+ @Test
+ void testShouldReturnListOfEcogStatusWithDate() {
+ doAnswer(
+ invocationOnMock -> {
+ var disease = new Disease(onkostarApi);
+ disease.setId(1);
+ return List.of(disease);
+ })
+ .when(this.onkostarApi)
+ .getDiseasesByPatientId(anyInt());
+
+ doAnswer(
+ invocationOnMock -> {
+ var procedure1 = new Procedure(onkostarApi);
+ procedure1.setId(1);
+ procedure1.setFormName("OS.Systemische Therapie");
+ procedure1.setStartDate(Date.from(Instant.parse("2023-07-01T06:00:00Z")));
+ procedure1.setEditState(ProcedureEditStateType.COMPLETED);
+ procedure1.setValue("ECOGvorTherapie", new Item("ECOGvorTherapie", 1));
+
+ var procedure2 = new Procedure(onkostarApi);
+ procedure2.setId(2);
+ procedure2.setFormName("OS.Systemische Therapie");
+ procedure2.setStartDate(Date.from(Instant.parse("2023-07-12T06:00:00Z")));
+ procedure2.setEditState(ProcedureEditStateType.COMPLETED);
+ procedure2.setValue("ECOGvorTherapie", new Item("ECOGvorTherapie", 2));
+ return List.of(procedure1, procedure2);
+ })
+ .when(this.onkostarApi)
+ .getProceduresForDiseaseByForm(anyInt(), anyString());
+
+ var patient = new Patient(onkostarApi);
+ patient.setId(1);
+
+ var actual = service.ecogStatus(patient);
+
+ assertThat(actual).isNotNull().isExactlyInstanceOf(ArrayList.class).hasSize(2);
+ }
}
diff --git a/src/test/java/dev/dnpm/oshelper/services/systemtherapie/ProzedurToProzedurwerteMapperTest.java b/src/test/java/dev/dnpm/oshelper/services/systemtherapie/ProzedurToProzedurwerteMapperTest.java
index 6c7c532..085834f 100644
--- a/src/test/java/dev/dnpm/oshelper/services/systemtherapie/ProzedurToProzedurwerteMapperTest.java
+++ b/src/test/java/dev/dnpm/oshelper/services/systemtherapie/ProzedurToProzedurwerteMapperTest.java
@@ -19,72 +19,72 @@
package dev.dnpm.oshelper.services.systemtherapie;
+import static org.assertj.core.api.Assertions.assertThat;
+
import de.itc.onkostar.api.IOnkostarApi;
import de.itc.onkostar.api.Item;
import de.itc.onkostar.api.Procedure;
+import java.sql.Date;
+import java.time.Instant;
+import java.util.ArrayList;
+import java.util.Map;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
import org.mockito.junit.jupiter.MockitoExtension;
-import java.sql.Date;
-import java.time.Instant;
-import java.util.ArrayList;
-import java.util.Map;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
@ExtendWith(MockitoExtension.class)
class ProzedurToProzedurwerteMapperTest {
- private IOnkostarApi onkostarApi;
-
- private OsSystemischeTherapieToProzedurwerteMapper mapper;
+ private IOnkostarApi onkostarApi;
- @BeforeEach
- void setup(
- @Mock IOnkostarApi onkostarApi
- ) {
- this.onkostarApi = onkostarApi;
- this.mapper = new OsSystemischeTherapieToProzedurwerteMapper();
- }
+ private OsSystemischeTherapieToProzedurwerteMapper mapper;
- @Test
- void testShouldReturnSystemischeTherapienFromDiagnose() {
- var procedure = new Procedure(onkostarApi);
- procedure.setFormName("OS.Systemische Therapie");
- procedure.setValue("Beginn", new Item("Beginn", Date.from(Instant.parse("2023-01-01T00:00:00Z"))));
- procedure.setValue("Ende", new Item("Ende", Date.from(Instant.parse("2023-01-31T00:00:00Z"))));
- procedure.setValue("Beendigung", new Item("Beendigungsstatus", "E"));
- procedure.setValue("Ergebnis", new Item("Ergebnis", "T"));
+ @BeforeEach
+ void setup(@Mock IOnkostarApi onkostarApi) {
+ this.onkostarApi = onkostarApi;
+ this.mapper = new OsSystemischeTherapieToProzedurwerteMapper();
+ }
- var substanzen = new ArrayList<>();
- substanzen.add(Map.of(
- "Substanz", "Testsubstanz",
- "Substanz_shortDescription", "Testsubstanz"
- ));
- substanzen.add(Map.of(
- "Substanz", "L01AA01",
- "Substanz_shortDescription", "cyclophosphamide"
- ));
- procedure.setValue("SubstanzenList", new Item("SubstanzenList", substanzen));
+ @Test
+ void testShouldReturnSystemischeTherapienFromDiagnose() {
+ var procedure = new Procedure(onkostarApi);
+ procedure.setFormName("OS.Systemische Therapie");
+ procedure.setValue(
+ "Beginn", new Item("Beginn", Date.from(Instant.parse("2023-01-01T00:00:00Z"))));
+ procedure.setValue("Ende", new Item("Ende", Date.from(Instant.parse("2023-01-31T00:00:00Z"))));
+ procedure.setValue("Beendigung", new Item("Beendigungsstatus", "E"));
+ procedure.setValue("Ergebnis", new Item("Ergebnis", "T"));
- var actual = mapper.apply(procedure);
+ var substanzen = new ArrayList<>();
+ substanzen.add(
+ Map.of(
+ "Substanz", "Testsubstanz",
+ "Substanz_shortDescription", "Testsubstanz"));
+ substanzen.add(
+ Map.of(
+ "Substanz", "L01AA01",
+ "Substanz_shortDescription", "cyclophosphamide"));
+ procedure.setValue("SubstanzenList", new Item("SubstanzenList", substanzen));
- assertThat(actual).isPresent();
+ var actual = mapper.apply(procedure);
- assertThat(actual.get()).containsEntry("Beginn", Date.from(Instant.parse("2023-01-01T00:00:00Z")).toString());
- assertThat(actual.get()).containsEntry("Ende", Date.from(Instant.parse("2023-01-31T00:00:00Z")).toString());
- assertThat(actual.get()).containsEntry("Beendigung", "E");
- assertThat(actual.get()).containsEntry("Ergebnis", "T");
- assertThat(actual.get()).containsEntry("Wirkstoffe", "Testsubstanz, cyclophosphamide");
- assertThat(actual.get()).containsEntry("WirkstoffCodes",
- "[" +
- "{\"system\":\"other\",\"code\":\"Testsubstanz\",\"substance\":\"Testsubstanz\"}," +
- "{\"system\":\"ATC\",\"code\":\"L01AA01\",\"substance\":\"cyclophosphamide\"}" +
- "]"
- );
- }
+ assertThat(actual).isPresent();
+ assertThat(actual.get())
+ .containsEntry("Beginn", Date.from(Instant.parse("2023-01-01T00:00:00Z")).toString());
+ assertThat(actual.get())
+ .containsEntry("Ende", Date.from(Instant.parse("2023-01-31T00:00:00Z")).toString());
+ assertThat(actual.get()).containsEntry("Beendigung", "E");
+ assertThat(actual.get()).containsEntry("Ergebnis", "T");
+ assertThat(actual.get()).containsEntry("Wirkstoffe", "Testsubstanz, cyclophosphamide");
+ assertThat(actual.get())
+ .containsEntry(
+ "WirkstoffCodes",
+ "["
+ + "{\"system\":\"other\",\"code\":\"Testsubstanz\",\"substance\":\"Testsubstanz\"},"
+ + "{\"system\":\"ATC\",\"code\":\"L01AA01\",\"substance\":\"cyclophosphamide\"}"
+ + "]");
+ }
}