use of com.b2international.snowowl.fhir.core.model.dt.Parameters.Fhir in project snow-owl by b2ihealthcare.
the class BundleTest method deserializeResponseBundle.
@Test
public void deserializeResponseBundle() throws Exception {
String jsonResponse = "{\"resourceType\":\"Bundle\"," + "\"id\":\"ID\"," + "\"type\":\"batch-response\"," + "\"link\":[" + "{" + "\"relation\":\"self\"," + "\"url\":\"http://b2i.sg\"" + "}" + "]," + "\"entry\":[" + "{" + "\"resource\":{" + "\"resourceType\":\"Parameters\"," + "\"parameter\":[" + "{" + "\"name\":\"name\"," + "\"valueString\":\"LOINC\"" + "}," + "{" + "\"name\":\"version\"," + "\"valueString\":\"2.61\"" + "}," + "{" + "\"name\":\"display\"," + "\"valueString\":\"LOINC code label\"" + "}," + "{" + "\"name\":\"property\"," + "\"part\":[" + "{" + "\"name\":\"code\"," + "\"valueCode\":\"parent\"" + "}," + "{" + "\"name\":\"value\"," + "\"valueCode\":\"Parent code\"" + "}" + "]" + "}," + "{" + "\"name\":\"designation\"," + "\"part\":[" + "{" + "\"name\":\"language\"," + "\"valueCode\":\"en\"" + "}," + "{" + "\"name\":\"use\"," + "\"valueCoding\":{" + "\"system\":\"http://snomed.info/sct\"," + "\"code\":\"900000000000013009\"," + "\"display\":\"Synonym\"" + "}" + "}," + "{" + "\"name\":\"value\"," + "\"valueString\":\"SNOMED CT synonym\"" + "}" + "]" + "}" + "]" + "}," + "\"response\":{" + "\"status\":\"200\"" + "}" + "}" + "]" + "}";
Bundle bundle = objectMapper.readValue(jsonResponse, Bundle.class);
assertEquals(BundleType.BATCH_RESPONSE.getCode(), bundle.getType());
Iterator<Entry> iterator = bundle.getItems().iterator();
Entry bundleEntry = iterator.next();
assertTrue(bundleEntry instanceof ParametersResponseEntry);
ParametersResponseEntry responseEntry = (ParametersResponseEntry) bundleEntry;
Fhir responseResource = responseEntry.getResponseResource();
// Back to Domain JSON...
Json json = new Parameters.Json(responseResource);
LookupResult lookupResult = objectMapper.convertValue(json, LookupResult.class);
assertEquals("LOINC", lookupResult.getName());
}
use of com.b2international.snowowl.fhir.core.model.dt.Parameters.Fhir in project snow-owl by b2ihealthcare.
the class BundleTest method buildRequestBundle.
@Test
public void buildRequestBundle() throws Exception {
LookupRequest lookupRequest = LookupRequest.builder().code("23245-4").system("http://loinc.org").build();
Json json1 = new Parameters.Json(lookupRequest);
ParametersRequestEntry entry = ParametersRequestEntry.builder().request(BatchRequest.createPostRequest("CodeSystem/$lookup")).resource(new Parameters.Fhir(json1.parameters())).build();
Bundle bundle = Bundle.builder().language("en").total(1).type(BundleType.BATCH).addLink("self", "http://localhost:8080/snowowl/CodeSystem").addEntry(entry).build();
assertEquals("en", bundle.getLanguage().getCodeValue());
assertEquals(1, bundle.getTotal());
assertEquals(BundleType.BATCH.getCode(), bundle.getType());
Link link = bundle.getLink().iterator().next();
assertEquals("self", link.getRelation());
assertEquals("http://localhost:8080/snowowl/CodeSystem", link.getUrl().getUriValue());
Entry bundleEntry = bundle.getItems().iterator().next();
assertTrue(bundleEntry instanceof ParametersRequestEntry);
ParametersRequestEntry requestEntry = (ParametersRequestEntry) bundleEntry;
BatchRequest batchRequest = requestEntry.getRequest();
assertEquals(HttpVerb.POST.getCode(), batchRequest.getMethod());
assertEquals("CodeSystem/$lookup", batchRequest.getUrl().getUriValue());
Fhir requestResource = requestEntry.getRequestResource();
// Back to Domain JSON...
Json json = new Parameters.Json(requestResource);
LookupRequest returnedLookupRequest = objectMapper.convertValue(json, LookupRequest.class);
assertEquals("23245-4", returnedLookupRequest.getCode());
assertEquals("http://loinc.org", returnedLookupRequest.getSystem());
}
use of com.b2international.snowowl.fhir.core.model.dt.Parameters.Fhir in project snow-owl by b2ihealthcare.
the class SandBoxRestTest method convertToSubsumptionResult.
private SubsumptionResult convertToSubsumptionResult(String responseString) throws Exception {
Fhir parameters = objectMapper.readValue(responseString, Parameters.Fhir.class);
Json json = new Parameters.Json(parameters);
return objectMapper.convertValue(json, SubsumptionResult.class);
}
use of com.b2international.snowowl.fhir.core.model.dt.Parameters.Fhir in project snow-owl by b2ihealthcare.
the class LookupSnomedRestTest method lookupVersionPostTest.
@Test
public void lookupVersionPostTest() throws Exception {
Coding coding = Coding.builder().system("http://snomed.info/sct/900000000000207008/version/20170131").code(Concepts.IS_A).build();
LookupRequest request = LookupRequest.builder().coding(coding).build();
Fhir fhirParameters = new Parameters.Fhir(request);
givenAuthenticatedRequest(FHIR_ROOT_CONTEXT).contentType(APPLICATION_FHIR_JSON).body(fhirParameters).when().post("/CodeSystem/$lookup").then().statusCode(200).body("resourceType", equalTo("Parameters")).body("parameter.size()", is(2)).body("parameter[0].name", equalTo("name")).body("parameter[0].valueString", equalTo("SNOMED CT")).body("parameter[1].name", equalTo("display")).body("parameter[1].valueString", equalTo("Is a"));
}
use of com.b2international.snowowl.fhir.core.model.dt.Parameters.Fhir in project snow-owl by b2ihealthcare.
the class TranslateSnomedConceptMapRestTest method reverseTranslateSpecificMappingTest.
// From a specific Map type reference set
@Test
public void reverseTranslateSpecificMappingTest() throws Exception {
String mapTypeRefsetUri = "SNOMEDCT/" + FHIR_MAP_TYPE_REFSET_VERSION + "/refset/" + mapTypeRefSetIds.get(0);
String response = givenAuthenticatedRequest(FHIR_ROOT_CONTEXT).pathParam("id", mapTypeRefsetUri).param("code", "MO").param("system", SnomedUri.SNOMED_BASE_URI_STRING).param("targetsystem", SnomedUri.SNOMED_BASE_URI_STRING).param("reverse", true).when().get("/ConceptMap/{id}/$translate").asString();
Fhir parameters = objectMapper.readValue(response, Parameters.Fhir.class);
Json json = new Parameters.Json(parameters);
TranslateResult result = objectMapper.convertValue(json, TranslateResult.class);
assertTrue(result.getResult());
assertTrue(result.getMessage().startsWith("Results for reference set"));
Collection<Match> matches = result.getMatches();
assertEquals(1, matches.size());
Optional<Match> optionalMatch = matches.stream().filter(m -> m.getSource().getUriValue().equals("http://snomed.info/sct/id/" + mapTypeRefSetIds.get(0))).findFirst();
assertTrue(optionalMatch.isPresent());
Match match = optionalMatch.get();
assertEquals("equivalent", match.getEquivalence().getCodeValue());
assertEquals("MO", match.getConcept().getCodeValue());
}
Aggregations