1
0
mirror of https://github.com/pcvolkmer/mv64e-onkostar-data.git synced 2025-09-14 00:12:52 +00:00

feat: add recommendationsMissingReason and noSequencingPerformedReason

This commit is contained in:
2025-06-28 15:32:40 +02:00
parent c88f36f2ab
commit 111b96ee50
2 changed files with 87 additions and 3 deletions

View File

@@ -1,7 +1,6 @@
package dev.pcvolkmer.onco.datamapper.mapper;
import dev.pcvolkmer.mv64e.mtb.MtbCarePlan;
import dev.pcvolkmer.mv64e.mtb.Reference;
import dev.pcvolkmer.mv64e.mtb.*;
import dev.pcvolkmer.onco.datamapper.PropertyCatalogue;
import dev.pcvolkmer.onco.datamapper.ResultSet;
import dev.pcvolkmer.onco.datamapper.datacatalogues.EinzelempfehlungCatalogue;
@@ -75,4 +74,56 @@ class TherapieplanDataMapperTest {
assertThat(actual.getNotes().get(0)).isEqualTo("Das ist ein Protokollauszug");
}
@Test
void shouldSetRecommendationsMissingReason() {
final Map<String, Object> testData = Map.of(
"id", 1,
"patient_id", 42,
"status_begruendung", "no-target"
);
doAnswer(invocationOnMock -> ResultSet.from(testData))
.when(therapieplanCatalogue)
.getById(anyInt());
var actual = this.dataMapper.getById(1);
assertThat(actual).isInstanceOf(MtbCarePlan.class);
assertThat(actual.getId()).isEqualTo("1");
assertThat(actual.getRecommendationsMissingReason())
.isEqualTo(
MtbCarePlanRecommendationsMissingReasonCoding.builder()
.code(MtbCarePlanRecommendationsMissingReasonCodingCode.NO_TARGET)
.build()
);
assertThat(actual.getNoSequencingPerformedReason()).isNull();
}
@Test
void shouldSetNoSequencingPerformedReason() {
final Map<String, Object> testData = Map.of(
"id", 1,
"patient_id", 42,
"status_begruendung", "non-genetic-cause"
);
doAnswer(invocationOnMock -> ResultSet.from(testData))
.when(therapieplanCatalogue)
.getById(anyInt());
var actual = this.dataMapper.getById(1);
assertThat(actual).isInstanceOf(MtbCarePlan.class);
assertThat(actual.getId()).isEqualTo("1");
assertThat(actual.getRecommendationsMissingReason()).isNull();
assertThat(actual.getNoSequencingPerformedReason()).isEqualTo(
CarePlanNoSequencingPerformedReasonCoding.builder()
.code(NoSequencingPerformedReasonCode.NON_GENETIC_CAUSE)
.build()
);
}
}