From ee4625f55fe1d89c1ec675c5be21dc34232e1f61 Mon Sep 17 00:00:00 2001 From: Paul-Christian Volkmer Date: Tue, 21 Mar 2023 21:51:31 +0100 Subject: [PATCH] =?UTF-8?q?Weitere=20Unittests=20zum=20Mapping=20"MR.MTB?= =?UTF-8?q?=5FAnmeldung"=20zu=20Protokollauszug=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MrMtbAnmeldungToProtocolMapperTest.java | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/src/test/java/DNPM/services/mtb/MrMtbAnmeldungToProtocolMapperTest.java b/src/test/java/DNPM/services/mtb/MrMtbAnmeldungToProtocolMapperTest.java index 479549c..3f2857b 100644 --- a/src/test/java/DNPM/services/mtb/MrMtbAnmeldungToProtocolMapperTest.java +++ b/src/test/java/DNPM/services/mtb/MrMtbAnmeldungToProtocolMapperTest.java @@ -84,4 +84,53 @@ public class MrMtbAnmeldungToProtocolMapperTest { ); } + @Test + void testShouldMapFormWithMissingEinzelempfehlungen() { + var anmeldung = new Procedure(onkostarApi); + anmeldung.setId(1); + anmeldung.setFormName("MR.MTB_Anmeldung"); + anmeldung.setValue("Fragestellung", new Item("Fragestellung", "Frage?")); + anmeldung.setValue("Empfehlung", new Item("Empfehlung", 2)); + + var empfehlung = new Procedure(onkostarApi); + empfehlung.setId(2); + empfehlung.setFormName("MR.MTB_Empfehlung"); + + doAnswer(invocationOnMock -> { + var procedureId = invocationOnMock.getArgument(0, Integer.class); + if (2 == procedureId) { + return empfehlung; + } + return null; + }).when(onkostarApi).getProcedure(anyInt()); + + var actual = this.mapper.apply(anmeldung); + + assertThat(actual).isPresent(); + assertThat(actual.get()).isEqualTo("Fragestellung:\nFrage?"); + } + + @Test + void testShouldMapFormWithMissingEmpfehlung() { + var anmeldung = new Procedure(onkostarApi); + anmeldung.setId(1); + anmeldung.setFormName("MR.MTB_Anmeldung"); + anmeldung.setValue("Fragestellung", new Item("Fragestellung", "Frage?")); + + var actual = this.mapper.apply(anmeldung); + + assertThat(actual).isPresent(); + assertThat(actual.get()).isEqualTo("Fragestellung:\nFrage?"); + } + + @Test + void testShouldMapFormWithMissingFragestellungAndEmpfehlung() { + var anmeldung = new Procedure(onkostarApi); + anmeldung.setId(1); + anmeldung.setFormName("MR.MTB_Anmeldung"); + + var actual = this.mapper.apply(anmeldung); + + assertThat(actual).isEmpty(); + } }