mirror of
https://github.com/pcvolkmer/mv64e-onkostar-data.git
synced 2025-09-14 00:12:52 +00:00
refactor: use custum type to wrap raw map
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
package dev.pcvolkmer.onco.datamapper;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import java.time.Instant;
|
||||
import java.sql.Date;
|
||||
import java.util.Map;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
class ResultSetTest {
|
||||
|
||||
@Test
|
||||
void shouldReturnStringValues() {
|
||||
var data = getTestData();
|
||||
|
||||
assertThat(data.getString("null")).isNull();
|
||||
assertThat(data.getString("string")).isEqualTo("TestString");
|
||||
assertThat(data.getString("int")).isEqualTo("42");
|
||||
}
|
||||
|
||||
@Test
|
||||
void shouldReturnIntegerValues() {
|
||||
var data = getTestData();
|
||||
|
||||
assertThat(data.getInteger("int")).isEqualTo(42);
|
||||
}
|
||||
|
||||
@Test
|
||||
void shouldReturnDateValues() {
|
||||
var data = getTestData();
|
||||
|
||||
assertThat(data.getDate("date")).isEqualTo(new Date(Date.from(Instant.parse("2025-06-21T12:00:00Z")).getTime()));
|
||||
}
|
||||
|
||||
static ResultSet getTestData() {
|
||||
return ResultSet.from(
|
||||
Map.of(
|
||||
"string", "TestString",
|
||||
"int", 42,
|
||||
"date", new Date(Date.from(Instant.parse("2025-06-21T12:00:00Z")).getTime())
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
}
|
@@ -1,6 +1,7 @@
|
||||
package dev.pcvolkmer.onco.datamapper.mapper;
|
||||
|
||||
import dev.pcvolkmer.mv64e.mtb.MtbDiagnosis;
|
||||
import dev.pcvolkmer.onco.datamapper.ResultSet;
|
||||
import dev.pcvolkmer.onco.datamapper.datacatalogues.KpaCatalogue;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
@@ -35,11 +36,11 @@ class KpaDiagnosisDataMapperTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
void shouldCreateDiagnosis(@Mock Map<String, Object> resultSet) {
|
||||
void shouldCreateDiagnosis(@Mock ResultSet resultSet) {
|
||||
doAnswer(invocationOnMock -> {
|
||||
var columnName = invocationOnMock.getArgument(0, String.class);
|
||||
return testData().get(columnName);
|
||||
}).when(resultSet).get(anyString());
|
||||
}).when(resultSet).getString(anyString());
|
||||
|
||||
doAnswer(invocationOnMock -> resultSet)
|
||||
.when(kpaCatalogue)
|
||||
|
@@ -1,6 +1,7 @@
|
||||
package dev.pcvolkmer.onco.datamapper.mapper;
|
||||
|
||||
import dev.pcvolkmer.mv64e.mtb.*;
|
||||
import dev.pcvolkmer.onco.datamapper.ResultSet;
|
||||
import dev.pcvolkmer.onco.datamapper.datacatalogues.KpaCatalogue;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
@@ -37,7 +38,7 @@ class KpaPatientDataMapperTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
void shouldCreatePatientAlive(@Mock Map<String, Object> resultSet) {
|
||||
void shouldCreatePatientAlive(@Mock ResultSet resultSet) {
|
||||
var testData = Map.of(
|
||||
"patient_id", "1",
|
||||
"geschlecht", "m",
|
||||
@@ -49,7 +50,12 @@ class KpaPatientDataMapperTest {
|
||||
doAnswer(invocationOnMock -> {
|
||||
var columnName = invocationOnMock.getArgument(0, String.class);
|
||||
return testData.get(columnName);
|
||||
}).when(resultSet).get(anyString());
|
||||
}).when(resultSet).getString(anyString());
|
||||
|
||||
doAnswer(invocationOnMock -> {
|
||||
var columnName = invocationOnMock.getArgument(0, String.class);
|
||||
return testData.get(columnName);
|
||||
}).when(resultSet).getDate(anyString());
|
||||
|
||||
doAnswer(invocationOnMock -> resultSet)
|
||||
.when(kpaCatalogue)
|
||||
@@ -67,7 +73,7 @@ class KpaPatientDataMapperTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
void shouldCreatePatientDead(@Mock Map<String, Object> resultSet) {
|
||||
void shouldCreatePatientDead(@Mock ResultSet resultSet) {
|
||||
var testData = Map.of(
|
||||
"patient_id", "1",
|
||||
"geschlecht", "w",
|
||||
@@ -78,7 +84,12 @@ class KpaPatientDataMapperTest {
|
||||
doAnswer(invocationOnMock -> {
|
||||
var columnName = invocationOnMock.getArgument(0, String.class);
|
||||
return testData.get(columnName);
|
||||
}).when(resultSet).get(anyString());
|
||||
}).when(resultSet).getString(anyString());
|
||||
|
||||
doAnswer(invocationOnMock -> {
|
||||
var columnName = invocationOnMock.getArgument(0, String.class);
|
||||
return testData.get(columnName);
|
||||
}).when(resultSet).getDate(anyString());
|
||||
|
||||
doAnswer(invocationOnMock -> resultSet)
|
||||
.when(kpaCatalogue)
|
||||
|
@@ -3,6 +3,7 @@ package dev.pcvolkmer.onco.datamapper.mapper;
|
||||
import dev.pcvolkmer.mv64e.mtb.Address;
|
||||
import dev.pcvolkmer.mv64e.mtb.GenderCodingCode;
|
||||
import dev.pcvolkmer.mv64e.mtb.Patient;
|
||||
import dev.pcvolkmer.onco.datamapper.ResultSet;
|
||||
import dev.pcvolkmer.onco.datamapper.datacatalogues.PatientCatalogue;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
@@ -39,7 +40,7 @@ class PatientDataMapperTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
void shouldCreatePatientAlive(@Mock Map<String, Object> resultSet) {
|
||||
void shouldCreatePatientAlive(@Mock ResultSet resultSet) {
|
||||
var testData = Map.of(
|
||||
"id", "1",
|
||||
"geschlecht", "M",
|
||||
@@ -51,7 +52,12 @@ class PatientDataMapperTest {
|
||||
doAnswer(invocationOnMock -> {
|
||||
var columnName = invocationOnMock.getArgument(0, String.class);
|
||||
return testData.get(columnName);
|
||||
}).when(resultSet).get(anyString());
|
||||
}).when(resultSet).getString(anyString());
|
||||
|
||||
doAnswer(invocationOnMock -> {
|
||||
var columnName = invocationOnMock.getArgument(0, String.class);
|
||||
return testData.get(columnName);
|
||||
}).when(resultSet).getDate(anyString());
|
||||
|
||||
doAnswer(invocationOnMock -> resultSet)
|
||||
.when(patientCatalogue)
|
||||
@@ -67,7 +73,7 @@ class PatientDataMapperTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
void shouldCreatePatientDead(@Mock Map<String, Object> resultSet) {
|
||||
void shouldCreatePatientDead(@Mock ResultSet resultSet) {
|
||||
var testData = Map.of(
|
||||
"id", "1",
|
||||
"geschlecht", "M",
|
||||
@@ -78,7 +84,12 @@ class PatientDataMapperTest {
|
||||
doAnswer(invocationOnMock -> {
|
||||
var columnName = invocationOnMock.getArgument(0, String.class);
|
||||
return testData.get(columnName);
|
||||
}).when(resultSet).get(anyString());
|
||||
}).when(resultSet).getString(anyString());
|
||||
|
||||
doAnswer(invocationOnMock -> {
|
||||
var columnName = invocationOnMock.getArgument(0, String.class);
|
||||
return testData.get(columnName);
|
||||
}).when(resultSet).getDate(anyString());
|
||||
|
||||
doAnswer(invocationOnMock -> resultSet)
|
||||
.when(patientCatalogue)
|
||||
|
Reference in New Issue
Block a user