fix up NativeHostServive and add tests for it
This commit is contained in:
parent
ba3e270c6c
commit
48473f3b5c
|
@ -550,7 +550,7 @@ public class ValidationEngine {
|
|||
version = src.substring(src.indexOf("#")+1);
|
||||
}
|
||||
if (pcm == null) {
|
||||
log("Creating Package manager?");
|
||||
// native host services...
|
||||
pcm = new PackageCacheManager(true, ToolsVersion.TOOLS_VERSION);
|
||||
}
|
||||
NpmPackage pi = null;
|
||||
|
|
|
@ -50,6 +50,7 @@ import org.hl7.fhir.exceptions.FHIRException;
|
|||
*/
|
||||
|
||||
import org.hl7.fhir.r5.elementmodel.Manager.FhirFormat;
|
||||
import org.hl7.fhir.r5.formats.JsonParser;
|
||||
import org.hl7.fhir.r5.formats.XmlParser;
|
||||
import org.hl7.fhir.r5.model.Bundle.BundleEntryComponent;
|
||||
import org.hl7.fhir.r5.model.CodeSystem;
|
||||
|
@ -219,9 +220,16 @@ public class NativeHostServices {
|
|||
* @param source
|
||||
* @throws Exception
|
||||
*/
|
||||
public void seeResource(byte[] source) throws Exception {
|
||||
public void seeResource(byte[] source, FhirFormat fmt) throws Exception {
|
||||
try {
|
||||
Resource r = new XmlParser().parse(source);
|
||||
Resource r;
|
||||
if (fmt == FhirFormat.JSON) {
|
||||
r = new JsonParser().parse(source);
|
||||
} else if (fmt == FhirFormat.JSON) {
|
||||
r = new XmlParser().parse(source);
|
||||
} else {
|
||||
throw new Exception("Unsupported format "+fmt.name());
|
||||
}
|
||||
validator.seeResource(r);
|
||||
resourceCount++;
|
||||
} catch (Exception e) {
|
||||
|
|
|
@ -9,7 +9,8 @@ import org.junit.runners.Suite.SuiteClasses;
|
|||
ValidationTestSuite.class,
|
||||
ValidationEngineTests.class,
|
||||
JsonSchemaTests.class,
|
||||
// CDAValidationTestCase.class,
|
||||
NativeHostServiceTester.class,
|
||||
// CDAValidationTestCase.class,
|
||||
ProfileComparisonTests.class})
|
||||
public class AllR5ValidationTests {
|
||||
|
||||
|
|
|
@ -1,21 +1,24 @@
|
|||
package org.hl7.fhir.validation.tests;
|
||||
|
||||
import org.hl7.fhir.r5.elementmodel.Manager.FhirFormat;
|
||||
import org.hl7.fhir.r5.test.utils.TestingUtilities;
|
||||
import org.hl7.fhir.r5.validation.NativeHostServices;
|
||||
import org.hl7.fhir.utilities.TextFile;
|
||||
import org.hl7.fhir.validation.tests.utilities.TestUtilities;
|
||||
import org.junit.Test;
|
||||
|
||||
public class NativeHostServiceTester {
|
||||
|
||||
public static void main(String[] args) throws Exception {
|
||||
@Test
|
||||
public void test() throws Exception {
|
||||
System.out.println("starting...");
|
||||
|
||||
NativeHostServices svc = new NativeHostServices();
|
||||
svc.init("hl7.fhir.core#4.0.0");
|
||||
svc.init("hl7.fhir.r4.core#4.0.1");
|
||||
svc.connectToTxSvc("http://tx.fhir.org/r4", null);
|
||||
System.out.println("base: "+svc.status());
|
||||
|
||||
svc.seeResource(TestingUtilities.loadTestResourceBytes("validator", "misc", "ValueSet-dicm-2-AnatomicModifier.json"));
|
||||
svc.seeResource(TestingUtilities.loadTestResourceBytes("validator", "misc", "ValueSet-dicm-2-AnatomicModifier.json"), FhirFormat.JSON);
|
||||
System.out.println("added: "+svc.status());
|
||||
|
||||
svc.dropResource("ValueSet", "dicm-2-AnatomicModifier");
|
||||
|
@ -26,11 +29,11 @@ public class NativeHostServiceTester {
|
|||
System.out.println(new String(res));
|
||||
|
||||
System.out.println("convert:");
|
||||
byte[] r4 = svc.convertResource(TestingUtilities.loadTestResourceBytes("validator", "patient-example.xml"), "xml", "r2");
|
||||
byte[] r4 = svc.convertResource(TestingUtilities.loadTestResourceBytes("validator", "patient-example.xml"), "xml", "4.0");
|
||||
System.out.println(new String(r4));
|
||||
|
||||
System.out.println("unconvert:");
|
||||
byte[] r2 = svc.convertResource(TestingUtilities.loadTestResourceBytes("validator", "patient-example.xml"), "xml", "r2");
|
||||
byte[] r2 = svc.convertResource(TestingUtilities.loadTestResourceBytes("validator", "patient-example.xml"), "xml", "1.0");
|
||||
System.out.println(new String(r2));
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue