diff options
| author | Paul-Christian Volkmer | 2026-04-07 10:15:30 +0200 |
|---|---|---|
| committer | GitHub | 2026-04-07 08:15:30 +0000 |
| commit | 9afb438eeae0f5a5d6cf63afdaf4b5df8b06a895 (patch) | |
| tree | 48fec966a5e2f65fbcc2d1e69cc97f8f79ca7cc9 /src/test/java/dev/dnpm/oshelper | |
| parent | 149b33a18dcdfa7500e7d66b5774b2dca14b6f9c (diff) | |
refactor: remove deprecated MtbService (#260)
Diffstat (limited to 'src/test/java/dev/dnpm/oshelper')
| -rw-r--r-- | src/test/java/dev/dnpm/oshelper/analyzer/TherapieplanAnalyzerTest.java | 61 | ||||
| -rw-r--r-- | src/test/java/dev/dnpm/oshelper/services/mtb/DefaultMtbServiceTest.java | 204 |
2 files changed, 5 insertions, 260 deletions
diff --git a/src/test/java/dev/dnpm/oshelper/analyzer/TherapieplanAnalyzerTest.java b/src/test/java/dev/dnpm/oshelper/analyzer/TherapieplanAnalyzerTest.java index d822f89..0ee1ef8 100644 --- a/src/test/java/dev/dnpm/oshelper/analyzer/TherapieplanAnalyzerTest.java +++ b/src/test/java/dev/dnpm/oshelper/analyzer/TherapieplanAnalyzerTest.java @@ -19,27 +19,17 @@ package dev.dnpm.oshelper.analyzer; -import dev.dnpm.oshelper.security.DelegatingDataBasedPermissionEvaluator; -import dev.dnpm.oshelper.security.PermissionType; -import dev.dnpm.oshelper.services.FormService; -import dev.dnpm.oshelper.services.mtb.MtbService; -import dev.dnpm.oshelper.services.therapieplan.MultipleMtbTherapieplanService; -import dev.dnpm.oshelper.services.therapieplan.TherapieplanService; -import dev.dnpm.oshelper.services.therapieplan.TherapieplanServiceFactory; import de.itc.onkostar.api.IOnkostarApi; -import de.itc.onkostar.api.Item; import de.itc.onkostar.api.Procedure; +import dev.dnpm.oshelper.services.FormService; +import dev.dnpm.oshelper.services.therapieplan.DefaultTherapieplanService; +import dev.dnpm.oshelper.services.therapieplan.TherapieplanServiceFactory; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; -import org.mockito.ArgumentCaptor; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; -import java.util.List; -import java.util.Map; - -import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.*; @ExtendWith(MockitoExtension.class) @@ -54,62 +44,21 @@ class TherapieplanAnalyzerTest { @Mock private TherapieplanServiceFactory therapieplanServiceFactory; - @Mock - private TherapieplanService therapieplanService; - - @Mock - private MtbService mtbService; - - @Mock - private DelegatingDataBasedPermissionEvaluator permissionEvaluator; - private TherapieplanAnalyzer therapieplanAnalyzer; @BeforeEach void setUp() { - this.therapieplanAnalyzer = new TherapieplanAnalyzer(therapieplanServiceFactory, mtbService, permissionEvaluator); + this.therapieplanAnalyzer = new TherapieplanAnalyzer(therapieplanServiceFactory); } @Test void shouldRunServiceMethodsOnAnalyzeCalled() { when(this.therapieplanServiceFactory.currentUsableInstance()) - .thenReturn(new MultipleMtbTherapieplanService(onkostarApi, formService)); + .thenReturn(new DefaultTherapieplanService(onkostarApi, formService)); this.therapieplanAnalyzer.analyze(new Procedure(onkostarApi), null); verify(this.therapieplanServiceFactory, times(1)).currentUsableInstance(); } - @Test - void shouldRequestProtokollauszug() { - doAnswer(invocationOnMock -> { - var procedure = new Procedure(onkostarApi); - procedure.setValue("referstemtb", new Item("referstemtb", 2345)); - return List.of(procedure); - }).when(this.therapieplanService).findReferencedMtbs(anyInt()); - - when(this.therapieplanServiceFactory.currentUsableInstance()) - .thenReturn(therapieplanService); - - when(this.permissionEvaluator.hasPermission(any(), anyInt(), anyString(), any(PermissionType.class))).thenReturn(true); - - var input = Map.of("id", (Object) 1234); - this.therapieplanAnalyzer.getProtokollauszug(input); - - var captor = ArgumentCaptor.forClass(List.class); - verify(mtbService, times(1)).getProtocol(captor.capture()); - assertThat(captor.getValue()).hasSize(1); - } - - @Test - void shouldNotRequestProtokollauszugDueToNoPermission() { - when(this.permissionEvaluator.hasPermission(any(), anyInt(), anyString(), any(PermissionType.class))) - .thenReturn(false); - - var input = Map.of("id", (Object) 1234); - this.therapieplanAnalyzer.getProtokollauszug(input); - - verify(mtbService, times(0)).getProtocol(anyList()); - } - } diff --git a/src/test/java/dev/dnpm/oshelper/services/mtb/DefaultMtbServiceTest.java b/src/test/java/dev/dnpm/oshelper/services/mtb/DefaultMtbServiceTest.java deleted file mode 100644 index 9796a73..0000000 --- a/src/test/java/dev/dnpm/oshelper/services/mtb/DefaultMtbServiceTest.java +++ /dev/null @@ -1,204 +0,0 @@ -/* - * This file is part of onkostar-plugin-dnpm - * - * Copyright (C) 2023-2026 the original author or authors. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -package dev.dnpm.oshelper.services.mtb; - -import de.itc.onkostar.api.IOnkostarApi; -import de.itc.onkostar.api.Item; -import de.itc.onkostar.api.Procedure; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import org.junit.jupiter.api.extension.ExtendWith; -import org.junit.jupiter.params.ParameterizedTest; -import org.junit.jupiter.params.provider.MethodSource; -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; - -@ExtendWith(MockitoExtension.class) -class DefaultMtbServiceTest { - - private IOnkostarApi onkostarApi; - - private DefaultMtbService service; - - @BeforeEach - void setup( - @Mock IOnkostarApi onkostarApi - ) { - this.onkostarApi = onkostarApi; - this.service = new DefaultMtbService(onkostarApi); - } - - private static Set<Map.Entry<String, Class<? extends ProcedureToProtocolMapper>>> expectedMappings() { - return Map.ofEntries( - Map.entry("OS.Tumorkonferenz", OsTumorkonferenzToProtocolMapper.class), - Map.entry("OS.Tumorkonferenz.VarianteUKW", OsTumorkonferenzVarianteUkwToProtocolMapper.class), - Map.entry("MR.MTB_Anmeldung", MrMtbAnmeldungToProtocolMapper.class) - ).entrySet(); - } - - @ParameterizedTest - @MethodSource("expectedMappings") - void testShouldMapFormNameToMapper(Map.Entry<String, Class<?>> expectedMapping) { - var procedure = new Procedure(onkostarApi); - procedure.setFormName(expectedMapping.getKey()); - - var actual = service.procedureToProtocolMapper(procedure); - - assertThat(actual).isExactlyInstanceOf(expectedMapping.getValue()); - } - - @Test - void testShouldReturnMtbProtocolForDefaultImplementation() { - var procedure1 = new Procedure(onkostarApi); - procedure1.setFormName("OS.Tumorkonferenz"); - procedure1.setStartDate(Date.from(Instant.parse("2023-01-01T00:00:00Z"))); - procedure1.setValue("Fragestellung", new Item("Fragestellung", "Test ok?")); - procedure1.setValue("Empfehlung", new Item("Empfehlung", "Rerun Test if not ok!")); - - var procedures = List.of( - procedure1 - ); - - var actual = service.getProtocol(procedures); - - assertThat(actual).isEqualTo("Fragestellung:\nTest ok?\n\nEmpfehlung:\nRerun Test if not ok!"); - } - - @Test - void testShouldReturnMtbProtocolForMultipleTK() { - var procedure1 = new Procedure(onkostarApi); - procedure1.setFormName("OS.Tumorkonferenz"); - procedure1.setStartDate(Date.from(Instant.parse("2023-02-01T00:00:00Z"))); - procedure1.setValue("Fragestellung", new Item("Fragestellung", "Test immer noch ok?")); - procedure1.setValue("Empfehlung", new Item("Empfehlung", "Do not rerun Test if ok!")); - - var procedure2 = new Procedure(onkostarApi); - procedure2.setFormName("OS.Tumorkonferenz"); - procedure2.setStartDate(Date.from(Instant.parse("2023-01-01T00:00:00Z"))); - procedure2.setValue("Fragestellung", new Item("Fragestellung", "Test ok?")); - procedure2.setValue("Empfehlung", new Item("Empfehlung", "Rerun Test if not ok!")); - - var procedures = List.of( - procedure1, - procedure2 - ); - - var actual = service.getProtocol(procedures); - - assertThat(actual).isEqualTo( - "Fragestellung:\nTest ok?\n\nEmpfehlung:\nRerun Test if not ok!\n\n" + - "Fragestellung:\nTest immer noch ok?\n\nEmpfehlung:\nDo not rerun Test if ok!" - ); - } - - @Test - void testShouldReturnMtbProtocolForMultipleTKVarianteUKW() { - var procedure1 = new Procedure(onkostarApi); - procedure1.setFormName("OS.Tumorkonferenz.VarianteUKW"); - procedure1.setStartDate(Date.from(Instant.parse("2023-02-01T00:00:00Z"))); - procedure1.setValue("Fragestellung", new Item("Fragestellung", "Test immer noch ok?")); - procedure1.setValue("Empfehlung", new Item("Empfehlung", "Do not rerun Test if ok!")); - - var procedure2 = new Procedure(onkostarApi); - procedure2.setFormName("OS.Tumorkonferenz.VarianteUKW"); - procedure2.setStartDate(Date.from(Instant.parse("2023-01-01T00:00:00Z"))); - procedure2.setValue("Fragestellung", new Item("Fragestellung", "Test ok?")); - procedure2.setValue("Empfehlung", new Item("Empfehlung", "Rerun Test if not ok!")); - - - var procedures = Arrays.asList( - procedure1, - procedure2 - ); - - var actual = service.getProtocol(procedures); - - assertThat(actual).isEqualTo( - "Fragestellung:\nTest ok?\n\nEmpfehlung:\nRerun Test if not ok!\n\n" + - "Fragestellung:\nTest immer noch ok?\n\nEmpfehlung:\nDo not rerun Test if ok!" - ); - } - - @Test - void testShouldReturnDistinctProtocolEntries() { - var procedure1 = new Procedure(onkostarApi); - procedure1.setFormName("OS.Tumorkonferenz.VarianteUKW"); - procedure1.setStartDate(Date.from(Instant.parse("2023-02-01T00:00:00Z"))); - procedure1.setValue("Fragestellung", new Item("Fragestellung", "Test immer noch ok?")); - procedure1.setValue("Empfehlung", new Item("Empfehlung", "Do not rerun Test if ok!")); - - var procedure2 = new Procedure(onkostarApi); - procedure2.setFormName("OS.Tumorkonferenz.VarianteUKW"); - procedure2.setStartDate(Date.from(Instant.parse("2023-02-01T00:00:00Z"))); - procedure2.setValue("Fragestellung", new Item("Fragestellung", "Test immer noch ok?")); - procedure2.setValue("Empfehlung", new Item("Empfehlung", "Do not rerun Test if ok!")); - - var procedure3 = new Procedure(onkostarApi); - procedure3.setFormName("OS.Tumorkonferenz.VarianteUKW"); - procedure3.setStartDate(Date.from(Instant.parse("2023-01-01T00:00:00Z"))); - procedure3.setValue("Fragestellung", new Item("Fragestellung", "Test ok?")); - procedure3.setValue("Empfehlung", new Item("Empfehlung", "Rerun Test if not ok!")); - - - var procedures = Arrays.asList( - procedure1, - procedure2, - procedure3 - ); - - var actual = service.getProtocol(procedures); - - assertThat(actual).isEqualTo( - "Fragestellung:\nTest ok?\n\nEmpfehlung:\nRerun Test if not ok!\n\n" + - "Fragestellung:\nTest immer noch ok?\n\nEmpfehlung:\nDo not rerun Test if ok!" - ); - } - - @Test - void testShouldReturnEmptyMtbProtocolForUnknownForm() { - var procedure1 = new Procedure(onkostarApi); - procedure1.setFormName("OS.Tumorkonferenz.Unbekannt"); - procedure1.setStartDate(Date.from(Instant.parse("2023-02-01T00:00:00Z"))); - procedure1.setValue("Fragestellung", new Item("Fragestellung", "Test immer noch ok?")); - procedure1.setValue("Empfehlung", new Item("Empfehlung", "Do not rerun Test if ok!")); - - var procedure2 = new Procedure(onkostarApi); - procedure2.setFormName("OS.Tumorkonferenz.Unbekannt"); - procedure2.setStartDate(Date.from(Instant.parse("2023-01-01T00:00:00Z"))); - procedure2.setValue("Fragestellung", new Item("Fragestellung", "Test ok?")); - procedure2.setValue("Empfehlung", new Item("Empfehlung", "Rerun Test if not ok!")); - - - var procedures = Arrays.asList( - procedure1, - procedure2 - ); - - var actual = service.getProtocol(procedures); - - assertThat(actual).isEmpty(); - } - -} |
