Work on getting java9 building
This commit is contained in:
parent
f66e6d055e
commit
7688be1231
|
@ -80,23 +80,13 @@
|
||||||
<scope>test</scope>
|
<scope>test</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.glassfish.jersey.core</groupId>
|
<groupId>org.jboss.resteasy</groupId>
|
||||||
<artifactId>jersey-server</artifactId>
|
<artifactId>resteasy-jaxrs</artifactId>
|
||||||
<scope>test</scope>
|
<scope>test</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.glassfish.jersey.containers</groupId>
|
<groupId>org.jboss.resteasy</groupId>
|
||||||
<artifactId>jersey-container-servlet-core</artifactId>
|
<artifactId>resteasy-client</artifactId>
|
||||||
<scope>test</scope>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.glassfish.jersey.containers</groupId>
|
|
||||||
<artifactId>jersey-container-jetty-http</artifactId>
|
|
||||||
<scope>test</scope>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.glassfish.jersey.media</groupId>
|
|
||||||
<artifactId>jersey-media-moxy</artifactId>
|
|
||||||
<scope>test</scope>
|
<scope>test</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
|
|
@ -88,6 +88,11 @@
|
||||||
<scope>provided</scope>
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>javax.annotation</groupId>
|
||||||
|
<artifactId>javax.annotation-api</artifactId>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
<!-- Unit test dependencies -->
|
<!-- Unit test dependencies -->
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.codehaus.woodstox</groupId>
|
<groupId>org.codehaus.woodstox</groupId>
|
||||||
|
@ -109,6 +114,20 @@
|
||||||
<artifactId>jetty-servlet</artifactId>
|
<artifactId>jetty-servlet</artifactId>
|
||||||
<scope>test</scope>
|
<scope>test</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.jboss.resteasy</groupId>
|
||||||
|
<artifactId>resteasy-jaxrs</artifactId>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.jboss.resteasy</groupId>
|
||||||
|
<artifactId>resteasy-client</artifactId>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<!--
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.glassfish.jersey.core</groupId>
|
<groupId>org.glassfish.jersey.core</groupId>
|
||||||
<artifactId>jersey-server</artifactId>
|
<artifactId>jersey-server</artifactId>
|
||||||
|
@ -129,6 +148,8 @@
|
||||||
<artifactId>jersey-media-moxy</artifactId>
|
<artifactId>jersey-media-moxy</artifactId>
|
||||||
<scope>test</scope>
|
<scope>test</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
-->
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>ch.qos.logback</groupId>
|
<groupId>ch.qos.logback</groupId>
|
||||||
<artifactId>logback-classic</artifactId>
|
<artifactId>logback-classic</artifactId>
|
||||||
|
|
|
@ -69,6 +69,7 @@ public abstract class AbstractJaxRsConformanceProvider extends AbstractJaxRsProv
|
||||||
private org.hl7.fhir.dstu2016may.model.Conformance myDstu2_1Conformance;
|
private org.hl7.fhir.dstu2016may.model.Conformance myDstu2_1Conformance;
|
||||||
private org.hl7.fhir.instance.model.Conformance myDstu2Hl7OrgConformance;
|
private org.hl7.fhir.instance.model.Conformance myDstu2Hl7OrgConformance;
|
||||||
private ca.uhn.fhir.model.dstu2.resource.Conformance myDstu2Conformance;
|
private ca.uhn.fhir.model.dstu2.resource.Conformance myDstu2Conformance;
|
||||||
|
private boolean myInitialized;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructor allowing the description, servername and server to be set
|
* Constructor allowing the description, servername and server to be set
|
||||||
|
@ -112,7 +113,11 @@ public abstract class AbstractJaxRsConformanceProvider extends AbstractJaxRsProv
|
||||||
* conformance
|
* conformance
|
||||||
*/
|
*/
|
||||||
@PostConstruct
|
@PostConstruct
|
||||||
protected void setUpPostConstruct() {
|
protected synchronized void setUpPostConstruct() {
|
||||||
|
if (myInitialized) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
for (Entry<Class<? extends IResourceProvider>, IResourceProvider> provider : getProviders().entrySet()) {
|
for (Entry<Class<? extends IResourceProvider>, IResourceProvider> provider : getProviders().entrySet()) {
|
||||||
addProvider(provider.getValue(), provider.getKey());
|
addProvider(provider.getValue(), provider.getKey());
|
||||||
}
|
}
|
||||||
|
@ -155,6 +160,8 @@ public abstract class AbstractJaxRsConformanceProvider extends AbstractJaxRsProv
|
||||||
default:
|
default:
|
||||||
throw new ConfigurationException("Unsupported Fhir version: " + fhirContextVersion);
|
throw new ConfigurationException("Unsupported Fhir version: " + fhirContextVersion);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
myInitialized = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -184,6 +191,8 @@ public abstract class AbstractJaxRsConformanceProvider extends AbstractJaxRsProv
|
||||||
@GET
|
@GET
|
||||||
@Path("/metadata")
|
@Path("/metadata")
|
||||||
public Response conformance() throws IOException {
|
public Response conformance() throws IOException {
|
||||||
|
setUpPostConstruct();
|
||||||
|
|
||||||
Builder request = getRequest(RequestTypeEnum.OPTIONS, RestOperationTypeEnum.METADATA);
|
Builder request = getRequest(RequestTypeEnum.OPTIONS, RestOperationTypeEnum.METADATA);
|
||||||
IRestfulResponse response = request.build().getResponse();
|
IRestfulResponse response = request.build().getResponse();
|
||||||
response.addHeader(Constants.HEADER_CORS_ALLOW_ORIGIN, "*");
|
response.addHeader(Constants.HEADER_CORS_ALLOW_ORIGIN, "*");
|
||||||
|
|
|
@ -47,8 +47,8 @@ import ca.uhn.fhir.rest.server.method.BaseMethodBinding;
|
||||||
* a large amount of the fhir api functionality using JAXRS
|
* a large amount of the fhir api functionality using JAXRS
|
||||||
* @author Peter Van Houte | peter.vanhoute@agfa.com | Agfa Healthcare
|
* @author Peter Van Houte | peter.vanhoute@agfa.com | Agfa Healthcare
|
||||||
*/
|
*/
|
||||||
@Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN })
|
@Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN, Constants.CT_FHIR_JSON, Constants.CT_FHIR_XML })
|
||||||
@Consumes({ MediaType.APPLICATION_FORM_URLENCODED, MediaType.APPLICATION_JSON, Constants.CT_FHIR_JSON, Constants.CT_FHIR_XML, Constants.CT_FHIR_JSON_NEW, Constants.CT_FHIR_XML_NEW })
|
@Consumes({ MediaType.APPLICATION_FORM_URLENCODED, MediaType.APPLICATION_JSON, Constants.CT_FHIR_JSON, Constants.CT_FHIR_XML, Constants.CT_FHIR_JSON_NEW, Constants.CT_FHIR_XML_NEW, "application/octet-stream" })
|
||||||
@Interceptors(JaxRsExceptionInterceptor.class)
|
@Interceptors(JaxRsExceptionInterceptor.class)
|
||||||
public abstract class AbstractJaxRsResourceProvider<R extends IBaseResource> extends AbstractJaxRsProvider
|
public abstract class AbstractJaxRsResourceProvider<R extends IBaseResource> extends AbstractJaxRsProvider
|
||||||
|
|
||||||
|
|
|
@ -118,7 +118,7 @@ public class JaxRsMethodBindings {
|
||||||
*/
|
*/
|
||||||
public BaseMethodBinding<?> getBinding(RestOperationTypeEnum operationType, String theBindingKey) {
|
public BaseMethodBinding<?> getBinding(RestOperationTypeEnum operationType, String theBindingKey) {
|
||||||
String bindingKey = StringUtils.defaultIfBlank(theBindingKey, DEFAULT_METHOD_KEY);
|
String bindingKey = StringUtils.defaultIfBlank(theBindingKey, DEFAULT_METHOD_KEY);
|
||||||
ConcurrentHashMap<String, BaseMethodBinding<?>> map = operationBindings.get(operationType);
|
ConcurrentHashMap<String, BaseMethodBinding<?>> map = getMapForOperation(operationType);
|
||||||
if(map == null || !map.containsKey(bindingKey)) {
|
if(map == null || !map.containsKey(bindingKey)) {
|
||||||
throw new NotImplementedOperationException("Operation not implemented");
|
throw new NotImplementedOperationException("Operation not implemented");
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -6,6 +6,7 @@ import static org.junit.Assert.*;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
|
import javax.annotation.Priority;
|
||||||
import javax.servlet.ServletException;
|
import javax.servlet.ServletException;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
@ -81,7 +82,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testAcceptHeaderFetchConformance() throws Exception {
|
public void testAcceptHeaderFetchConformance() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Conformance conf = new Conformance();
|
Conformance conf = new Conformance();
|
||||||
|
@ -115,7 +116,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testAcceptHeaderPreflightConformance() throws Exception {
|
public void testAcceptHeaderPreflightConformance() {
|
||||||
final IParser p = ourCtx.newXmlParser();
|
final IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
final Conformance conf = new Conformance();
|
final Conformance conf = new Conformance();
|
||||||
|
@ -145,7 +146,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testAcceptHeaderPreflightConformancePreferJson() throws Exception {
|
public void testAcceptHeaderPreflightConformancePreferJson() {
|
||||||
final IParser p = ourCtx.newXmlParser();
|
final IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
final Conformance conf = new Conformance();
|
final Conformance conf = new Conformance();
|
||||||
|
@ -175,7 +176,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@SuppressWarnings("deprecation")
|
@SuppressWarnings("deprecation")
|
||||||
public void testConformance() throws Exception {
|
public void testConformance() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Conformance conf = new Conformance();
|
Conformance conf = new Conformance();
|
||||||
|
@ -198,7 +199,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testProviderWhereWeForgotToSetTheContext() throws Exception {
|
public void testProviderWhereWeForgotToSetTheContext() {
|
||||||
JaxRsRestfulClientFactory clientFactory = new JaxRsRestfulClientFactory(); // no ctx
|
JaxRsRestfulClientFactory clientFactory = new JaxRsRestfulClientFactory(); // no ctx
|
||||||
clientFactory.setServerValidationMode(ServerValidationModeEnum.NEVER);
|
clientFactory.setServerValidationMode(ServerValidationModeEnum.NEVER);
|
||||||
|
|
||||||
|
@ -214,7 +215,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testCreate() throws Exception {
|
public void testCreate() {
|
||||||
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
||||||
|
|
||||||
|
|
||||||
|
@ -246,7 +247,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testCreateConditional() throws Exception {
|
public void testCreateConditional() {
|
||||||
|
|
||||||
|
|
||||||
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
||||||
|
@ -290,7 +291,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testCreatePrefer() throws Exception {
|
public void testCreatePrefer() {
|
||||||
|
|
||||||
|
|
||||||
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
||||||
|
@ -315,7 +316,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testCreateReturningResourceBody() throws Exception {
|
public void testCreateReturningResourceBody() {
|
||||||
Patient p = new Patient();
|
Patient p = new Patient();
|
||||||
p.setId("123");
|
p.setId("123");
|
||||||
final String formatted = ourCtx.newXmlParser().encodeResourceToString(p);
|
final String formatted = ourCtx.newXmlParser().encodeResourceToString(p);
|
||||||
|
@ -338,7 +339,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testDeleteConditional() throws Exception {
|
public void testDeleteConditional() {
|
||||||
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
||||||
|
|
||||||
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
||||||
|
@ -363,7 +364,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testDelete() throws Exception {
|
public void testDelete() {
|
||||||
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
||||||
|
|
||||||
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
||||||
|
@ -377,7 +378,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testHistory() throws Exception {
|
public void testHistory() {
|
||||||
|
|
||||||
final String msg = getPatientFeedWithOneResult();
|
final String msg = getPatientFeedWithOneResult();
|
||||||
|
|
||||||
|
@ -474,7 +475,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testMetaAdd() throws Exception {
|
public void testMetaAdd() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
MetaDt inMeta = new MetaDt().addProfile("urn:profile:in");
|
MetaDt inMeta = new MetaDt().addProfile("urn:profile:in");
|
||||||
|
@ -507,7 +508,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testMetaGet() throws Exception {
|
public void testMetaGet() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Parameters inParams = new Parameters();
|
Parameters inParams = new Parameters();
|
||||||
|
@ -563,7 +564,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testOperationAsGetWithInParameters() throws Exception {
|
public void testOperationAsGetWithInParameters() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Parameters inParams = new Parameters();
|
Parameters inParams = new Parameters();
|
||||||
|
@ -642,7 +643,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testOperationAsGetWithNoInParameters() throws Exception {
|
public void testOperationAsGetWithNoInParameters() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Parameters outParams = new Parameters();
|
Parameters outParams = new Parameters();
|
||||||
|
@ -713,7 +714,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testOperationWithBundleResponseJson() throws Exception {
|
public void testOperationWithBundleResponseJson() {
|
||||||
|
|
||||||
ourResponseContentType = Constants.CT_FHIR_JSON;
|
ourResponseContentType = Constants.CT_FHIR_JSON;
|
||||||
final String respString = "{\n" + " \"resourceType\":\"Bundle\",\n" + " \"id\":\"8cef5f2a-0ba9-43a5-be26-c8dde9ff0e19\",\n" + " \"base\":\"http://localhost:" + ourPort + "/fhir\"\n" + "}";
|
final String respString = "{\n" + " \"resourceType\":\"Bundle\",\n" + " \"id\":\"8cef5f2a-0ba9-43a5-be26-c8dde9ff0e19\",\n" + " \"base\":\"http://localhost:" + ourPort + "/fhir\"\n" + "}";
|
||||||
|
@ -743,7 +744,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testOperationWithBundleResponseXml() throws Exception {
|
public void testOperationWithBundleResponseXml() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Parameters inParams = new Parameters();
|
Parameters inParams = new Parameters();
|
||||||
|
@ -780,7 +781,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testOperationWithInlineParams() throws Exception {
|
public void testOperationWithInlineParams() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Parameters outParams = new Parameters();
|
Parameters outParams = new Parameters();
|
||||||
|
@ -899,7 +900,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testOperationWithProfiledDatatypeParam() throws IOException, Exception {
|
public void testOperationWithProfiledDatatypeParam() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Parameters outParams = new Parameters();
|
Parameters outParams = new Parameters();
|
||||||
|
@ -948,7 +949,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testOperationWithListOfParameterResponse() throws Exception {
|
public void testOperationWithListOfParameterResponse() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Parameters inParams = new Parameters();
|
Parameters inParams = new Parameters();
|
||||||
|
@ -1023,7 +1024,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testOperationWithNoInParameters() throws Exception {
|
public void testOperationWithNoInParameters() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Parameters inParams = new Parameters();
|
Parameters inParams = new Parameters();
|
||||||
|
@ -1102,7 +1103,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testPageNext() throws Exception {
|
public void testPageNext() {
|
||||||
|
|
||||||
ourResponseContentType = Constants.CT_FHIR_XML + "; charset=UTF-8";
|
ourResponseContentType = Constants.CT_FHIR_XML + "; charset=UTF-8";
|
||||||
ourResponseBody = getPatientFeedWithOneResult();
|
ourResponseBody = getPatientFeedWithOneResult();
|
||||||
|
@ -1129,7 +1130,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testPageNextNoLink() throws Exception {
|
public void testPageNextNoLink() {
|
||||||
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
||||||
|
|
||||||
ca.uhn.fhir.model.dstu2.resource.Bundle sourceBundle = new ca.uhn.fhir.model.dstu2.resource.Bundle();
|
ca.uhn.fhir.model.dstu2.resource.Bundle sourceBundle = new ca.uhn.fhir.model.dstu2.resource.Bundle();
|
||||||
|
@ -1141,7 +1142,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testPagePrev() throws Exception {
|
public void testPagePrev() {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -1187,7 +1188,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testReadByUri() throws Exception {
|
public void testReadByUri() {
|
||||||
|
|
||||||
Patient patient = new Patient();
|
Patient patient = new Patient();
|
||||||
patient.addName().addFamily("FAM");
|
patient.addName().addFamily("FAM");
|
||||||
|
@ -1207,7 +1208,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testReadFluentByUri() throws Exception {
|
public void testReadFluentByUri() {
|
||||||
|
|
||||||
Patient patient = new Patient();
|
Patient patient = new Patient();
|
||||||
patient.addName().addFamily("FAM");
|
patient.addName().addFamily("FAM");
|
||||||
|
@ -1220,13 +1221,13 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
|
|
||||||
Patient response;
|
Patient response;
|
||||||
|
|
||||||
response = (Patient) client.read().resource(Patient.class).withUrl(new IdDt("http://localhost:" + ourPort + "/AAA/Patient/123")).execute();
|
response = client.read().resource(Patient.class).withUrl(new IdDt("http://localhost:" + ourPort + "/AAA/Patient/123")).execute();
|
||||||
assertEquals("http://localhost:" + ourPort + "/AAA/Patient/123", ourRequestUri);
|
assertEquals("http://localhost:" + ourPort + "/AAA/Patient/123", ourRequestUri);
|
||||||
assertEquals("FAM", response.getName().get(0).getFamily().get(0).getValue());
|
assertEquals("FAM", response.getName().get(0).getFamily().get(0).getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testReadUpdatedHeaderDoesntOverwriteResourceValue() throws Exception {
|
public void testReadUpdatedHeaderDoesntOverwriteResourceValue() {
|
||||||
|
|
||||||
|
|
||||||
final String input = "<Bundle xmlns=\"http://hl7.org/fhir\">\n" +
|
final String input = "<Bundle xmlns=\"http://hl7.org/fhir\">\n" +
|
||||||
|
@ -1264,7 +1265,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testReadWithElementsParam() throws Exception {
|
public void testReadWithElementsParam() {
|
||||||
String msg = "{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}";
|
String msg = "{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1287,7 +1288,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testReadWithSummaryInvalid() throws Exception {
|
public void testReadWithSummaryInvalid() {
|
||||||
String msg = "<>>>><<<<>";
|
String msg = "<>>>><<<<>";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1313,7 +1314,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testReadWithSummaryParamHtml() throws Exception {
|
public void testReadWithSummaryParamHtml() {
|
||||||
String msg = "<div>HELP IM A DIV</div>";
|
String msg = "<div>HELP IM A DIV</div>";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1338,7 +1339,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSearchByString() throws Exception {
|
public void testSearchByString() {
|
||||||
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1362,7 +1363,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSearchByUrl() throws Exception {
|
public void testSearchByUrl() {
|
||||||
|
|
||||||
final String msg = getPatientFeedWithOneResult();
|
final String msg = getPatientFeedWithOneResult();
|
||||||
|
|
||||||
|
@ -1469,7 +1470,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSearchWithElementsParam() throws Exception {
|
public void testSearchWithElementsParam() {
|
||||||
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1496,7 +1497,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSearchByPost() throws Exception {
|
public void testSearchByPost() {
|
||||||
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1533,7 +1534,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSearchByPostUseJson() throws Exception {
|
public void testSearchByPostUseJson() {
|
||||||
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1571,7 +1572,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSearchWithLastUpdated() throws Exception {
|
public void testSearchWithLastUpdated() {
|
||||||
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1598,7 +1599,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSearchWithProfileAndSecurity() throws Exception {
|
public void testSearchWithProfileAndSecurity() {
|
||||||
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1628,7 +1629,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
|
|
||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
@Test
|
@Test
|
||||||
public void testSearchWithReverseInclude() throws Exception {
|
public void testSearchWithReverseInclude() {
|
||||||
|
|
||||||
String msg = getPatientFeedWithOneResult();
|
String msg = getPatientFeedWithOneResult();
|
||||||
|
|
||||||
|
@ -1655,7 +1656,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSearchWithSummaryParam() throws Exception {
|
public void testSearchWithSummaryParam() {
|
||||||
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1682,7 +1683,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testTransactionWithListOfResources() throws Exception {
|
public void testTransactionWithListOfResources() {
|
||||||
|
|
||||||
ca.uhn.fhir.model.dstu2.resource.Bundle resp = new ca.uhn.fhir.model.dstu2.resource.Bundle();
|
ca.uhn.fhir.model.dstu2.resource.Bundle resp = new ca.uhn.fhir.model.dstu2.resource.Bundle();
|
||||||
resp.addEntry().getResponse().setLocation("Patient/1/_history/1");
|
resp.addEntry().getResponse().setLocation("Patient/1/_history/1");
|
||||||
|
@ -1735,7 +1736,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testTransactionWithString() throws Exception {
|
public void testTransactionWithString() {
|
||||||
|
|
||||||
ca.uhn.fhir.model.dstu2.resource.Bundle req = new ca.uhn.fhir.model.dstu2.resource.Bundle();
|
ca.uhn.fhir.model.dstu2.resource.Bundle req = new ca.uhn.fhir.model.dstu2.resource.Bundle();
|
||||||
Patient patient = new Patient();
|
Patient patient = new Patient();
|
||||||
|
@ -1781,7 +1782,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testTransactionWithTransactionResource() throws Exception {
|
public void testTransactionWithTransactionResource() {
|
||||||
|
|
||||||
ca.uhn.fhir.model.dstu2.resource.Bundle resp = new ca.uhn.fhir.model.dstu2.resource.Bundle();
|
ca.uhn.fhir.model.dstu2.resource.Bundle resp = new ca.uhn.fhir.model.dstu2.resource.Bundle();
|
||||||
resp.addEntry().getResponse().setLocation("Patient/1/_history/1");
|
resp.addEntry().getResponse().setLocation("Patient/1/_history/1");
|
||||||
|
@ -1822,7 +1823,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testUpdateConditional() throws Exception {
|
public void testUpdateConditional() {
|
||||||
|
|
||||||
|
|
||||||
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
||||||
|
@ -1877,7 +1878,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testUpdateNonFluent() throws Exception {
|
public void testUpdateNonFluent() {
|
||||||
|
|
||||||
|
|
||||||
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
||||||
|
@ -1907,7 +1908,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testUpdatePrefer() throws Exception {
|
public void testUpdatePrefer() {
|
||||||
|
|
||||||
|
|
||||||
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
||||||
|
@ -1933,7 +1934,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testUpdateReturningResourceBody() throws Exception {
|
public void testUpdateReturningResourceBody() {
|
||||||
Patient p = new Patient();
|
Patient p = new Patient();
|
||||||
p.setId("123");
|
p.setId("123");
|
||||||
final String formatted = ourCtx.newXmlParser().encodeResourceToString(p);
|
final String formatted = ourCtx.newXmlParser().encodeResourceToString(p);
|
||||||
|
@ -1956,7 +1957,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testValidateFluent() throws Exception {
|
public void testValidateFluent() {
|
||||||
|
|
||||||
OperationOutcome oo = new OperationOutcome();
|
OperationOutcome oo = new OperationOutcome();
|
||||||
oo.addIssue().setDiagnostics("FOOBAR");
|
oo.addIssue().setDiagnostics("FOOBAR");
|
||||||
|
@ -2010,7 +2011,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testValidateNonFluent() throws Exception {
|
public void testValidateNonFluent() {
|
||||||
OperationOutcome oo = new OperationOutcome();
|
OperationOutcome oo = new OperationOutcome();
|
||||||
oo.addIssue().setDiagnostics("FOOBAR");
|
oo.addIssue().setDiagnostics("FOOBAR");
|
||||||
final String msg = ourCtx.newXmlParser().encodeResourceToString(oo);
|
final String msg = ourCtx.newXmlParser().encodeResourceToString(oo);
|
||||||
|
@ -2080,7 +2081,7 @@ public class GenericJaxRsClientDstu2Test {
|
||||||
ourServer.setHandler(new AbstractHandler() {
|
ourServer.setHandler(new AbstractHandler() {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void handle(String theArg0, Request theRequest, HttpServletRequest theServletRequest, HttpServletResponse theResp) throws IOException, ServletException {
|
public void handle(String theArg0, Request theRequest, HttpServletRequest theServletRequest, HttpServletResponse theResp) throws IOException {
|
||||||
theRequest.setHandled(true);
|
theRequest.setHandled(true);
|
||||||
ourRequestUri = "http:" + theRequest.getHttpURI().toString();
|
ourRequestUri = "http:" + theRequest.getHttpURI().toString();
|
||||||
ourRequestUriAll.add(ourRequestUri);
|
ourRequestUriAll.add(ourRequestUri);
|
||||||
|
|
|
@ -79,7 +79,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testAcceptHeaderFetchConformance() throws Exception {
|
public void testAcceptHeaderFetchConformance() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
CapabilityStatement conf = new CapabilityStatement();
|
CapabilityStatement conf = new CapabilityStatement();
|
||||||
|
@ -113,7 +113,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testAcceptHeaderPreflightConformance() throws Exception {
|
public void testAcceptHeaderPreflightConformance() {
|
||||||
final IParser p = ourCtx.newXmlParser();
|
final IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
final CapabilityStatement conf = new CapabilityStatement();
|
final CapabilityStatement conf = new CapabilityStatement();
|
||||||
|
@ -143,7 +143,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testAcceptHeaderPreflightConformancePreferJson() throws Exception {
|
public void testAcceptHeaderPreflightConformancePreferJson() {
|
||||||
final IParser p = ourCtx.newXmlParser();
|
final IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
final CapabilityStatement conf = new CapabilityStatement();
|
final CapabilityStatement conf = new CapabilityStatement();
|
||||||
|
@ -172,7 +172,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testConformance() throws Exception {
|
public void testConformance() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
CapabilityStatement conf = new CapabilityStatement();
|
CapabilityStatement conf = new CapabilityStatement();
|
||||||
|
@ -188,7 +188,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
|
|
||||||
|
|
||||||
//@formatter:off
|
//@formatter:off
|
||||||
CapabilityStatement resp = (CapabilityStatement)client.fetchConformance().ofType(CapabilityStatement.class).execute();
|
CapabilityStatement resp = client.fetchConformance().ofType(CapabilityStatement.class).execute();
|
||||||
|
|
||||||
//@formatter:on
|
//@formatter:on
|
||||||
assertEquals("http://localhost:" + ourPort + "/fhir/metadata", ourRequestUri);
|
assertEquals("http://localhost:" + ourPort + "/fhir/metadata", ourRequestUri);
|
||||||
|
@ -199,7 +199,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testProviderWhereWeForgotToSetTheContext() throws Exception {
|
public void testProviderWhereWeForgotToSetTheContext() {
|
||||||
JaxRsRestfulClientFactory clientFactory = new JaxRsRestfulClientFactory(); // no ctx
|
JaxRsRestfulClientFactory clientFactory = new JaxRsRestfulClientFactory(); // no ctx
|
||||||
clientFactory.setServerValidationMode(ServerValidationModeEnum.NEVER);
|
clientFactory.setServerValidationMode(ServerValidationModeEnum.NEVER);
|
||||||
|
|
||||||
|
@ -215,7 +215,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testCreate() throws Exception {
|
public void testCreate() {
|
||||||
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
||||||
|
|
||||||
|
|
||||||
|
@ -247,7 +247,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testCreateConditional() throws Exception {
|
public void testCreateConditional() {
|
||||||
|
|
||||||
|
|
||||||
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
||||||
|
@ -289,7 +289,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testCreate2() throws Exception {
|
public void testCreate2() {
|
||||||
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
||||||
|
|
||||||
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
||||||
|
@ -310,7 +310,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testCreatePrefer() throws Exception {
|
public void testCreatePrefer() {
|
||||||
|
|
||||||
|
|
||||||
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
||||||
|
@ -335,7 +335,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testCreateReturningResourceBody() throws Exception {
|
public void testCreateReturningResourceBody() {
|
||||||
Patient p = new Patient();
|
Patient p = new Patient();
|
||||||
p.setId("123");
|
p.setId("123");
|
||||||
final String formatted = ourCtx.newXmlParser().encodeResourceToString(p);
|
final String formatted = ourCtx.newXmlParser().encodeResourceToString(p);
|
||||||
|
@ -358,7 +358,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testDeleteConditional() throws Exception {
|
public void testDeleteConditional() {
|
||||||
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
||||||
|
|
||||||
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
||||||
|
@ -384,7 +384,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
|
|
||||||
@SuppressWarnings("deprecation")
|
@SuppressWarnings("deprecation")
|
||||||
@Test
|
@Test
|
||||||
public void testDeleteNonFluent() throws Exception {
|
public void testDeleteNonFluent() {
|
||||||
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
||||||
|
|
||||||
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
||||||
|
@ -398,7 +398,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testHistory() throws Exception {
|
public void testHistory() {
|
||||||
|
|
||||||
final String msg = getPatientFeedWithOneResult();
|
final String msg = getPatientFeedWithOneResult();
|
||||||
|
|
||||||
|
@ -494,7 +494,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testMetaAdd() throws Exception {
|
public void testMetaAdd() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Meta inMeta = new Meta().addProfile("urn:profile:in");
|
Meta inMeta = new Meta().addProfile("urn:profile:in");
|
||||||
|
@ -527,7 +527,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testMetaGet() throws Exception {
|
public void testMetaGet() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Parameters inParams = new Parameters();
|
Parameters inParams = new Parameters();
|
||||||
|
@ -583,7 +583,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testOperationAsGetWithInParameters() throws Exception {
|
public void testOperationAsGetWithInParameters() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Parameters inParams = new Parameters();
|
Parameters inParams = new Parameters();
|
||||||
|
@ -662,7 +662,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testOperationAsGetWithNoInParameters() throws Exception {
|
public void testOperationAsGetWithNoInParameters() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Parameters outParams = new Parameters();
|
Parameters outParams = new Parameters();
|
||||||
|
@ -733,7 +733,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testOperationWithBundleResponseJson() throws Exception {
|
public void testOperationWithBundleResponseJson() {
|
||||||
|
|
||||||
ourResponseContentType = Constants.CT_FHIR_JSON;
|
ourResponseContentType = Constants.CT_FHIR_JSON;
|
||||||
final String respString = "{\n" + " \"resourceType\":\"Bundle\",\n" + " \"id\":\"8cef5f2a-0ba9-43a5-be26-c8dde9ff0e19\",\n" + " \"base\":\"http://localhost:" + ourPort + "/fhir\"\n" + "}";
|
final String respString = "{\n" + " \"resourceType\":\"Bundle\",\n" + " \"id\":\"8cef5f2a-0ba9-43a5-be26-c8dde9ff0e19\",\n" + " \"base\":\"http://localhost:" + ourPort + "/fhir\"\n" + "}";
|
||||||
|
@ -763,7 +763,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testOperationWithBundleResponseXml() throws Exception {
|
public void testOperationWithBundleResponseXml() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Parameters inParams = new Parameters();
|
Parameters inParams = new Parameters();
|
||||||
|
@ -800,7 +800,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testOperationWithInlineParams() throws Exception {
|
public void testOperationWithInlineParams() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Parameters outParams = new Parameters();
|
Parameters outParams = new Parameters();
|
||||||
|
@ -919,7 +919,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testOperationWithProfiledDatatypeParam() throws IOException, Exception {
|
public void testOperationWithProfiledDatatypeParam() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Parameters outParams = new Parameters();
|
Parameters outParams = new Parameters();
|
||||||
|
@ -968,7 +968,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testOperationWithListOfParameterResponse() throws Exception {
|
public void testOperationWithListOfParameterResponse() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Parameters inParams = new Parameters();
|
Parameters inParams = new Parameters();
|
||||||
|
@ -1043,7 +1043,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testOperationWithNoInParameters() throws Exception {
|
public void testOperationWithNoInParameters() {
|
||||||
IParser p = ourCtx.newXmlParser();
|
IParser p = ourCtx.newXmlParser();
|
||||||
|
|
||||||
Parameters inParams = new Parameters();
|
Parameters inParams = new Parameters();
|
||||||
|
@ -1122,7 +1122,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testPageNext() throws Exception {
|
public void testPageNext() {
|
||||||
|
|
||||||
ourResponseContentType = Constants.CT_FHIR_XML + "; charset=UTF-8";
|
ourResponseContentType = Constants.CT_FHIR_XML + "; charset=UTF-8";
|
||||||
ourResponseBody = getPatientFeedWithOneResult();
|
ourResponseBody = getPatientFeedWithOneResult();
|
||||||
|
@ -1149,7 +1149,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testPageNextNoLink() throws Exception {
|
public void testPageNextNoLink() {
|
||||||
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
IGenericClient client = ourCtx.newRestfulGenericClient("http://localhost:" + ourPort + "/fhir");
|
||||||
|
|
||||||
org.hl7.fhir.dstu3.model.Bundle sourceBundle = new org.hl7.fhir.dstu3.model.Bundle();
|
org.hl7.fhir.dstu3.model.Bundle sourceBundle = new org.hl7.fhir.dstu3.model.Bundle();
|
||||||
|
@ -1161,7 +1161,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testPagePrev() throws Exception {
|
public void testPagePrev() {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -1207,7 +1207,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testReadByUri() throws Exception {
|
public void testReadByUri() {
|
||||||
|
|
||||||
Patient patient = new Patient();
|
Patient patient = new Patient();
|
||||||
patient.addName().setFamily("FAM");
|
patient.addName().setFamily("FAM");
|
||||||
|
@ -1227,7 +1227,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testReadFluentByUri() throws Exception {
|
public void testReadFluentByUri() {
|
||||||
|
|
||||||
Patient patient = new Patient();
|
Patient patient = new Patient();
|
||||||
patient.addName().setFamily("FAM");
|
patient.addName().setFamily("FAM");
|
||||||
|
@ -1240,13 +1240,13 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
|
|
||||||
Patient response;
|
Patient response;
|
||||||
|
|
||||||
response = (Patient) client.read().resource(Patient.class).withUrl(new IdType("http://localhost:" + ourPort + "/AAA/Patient/123")).execute();
|
response = client.read().resource(Patient.class).withUrl(new IdType("http://localhost:" + ourPort + "/AAA/Patient/123")).execute();
|
||||||
assertEquals("http://localhost:" + ourPort + "/AAA/Patient/123", ourRequestUri);
|
assertEquals("http://localhost:" + ourPort + "/AAA/Patient/123", ourRequestUri);
|
||||||
assertEquals("FAM", response.getName().get(0).getFamily());
|
assertEquals("FAM", response.getName().get(0).getFamily());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testReadUpdatedHeaderDoesntOverwriteResourceValue() throws Exception {
|
public void testReadUpdatedHeaderDoesntOverwriteResourceValue() {
|
||||||
|
|
||||||
//@formatter:off
|
//@formatter:off
|
||||||
final String input = "<Bundle xmlns=\"http://hl7.org/fhir\">\n" +
|
final String input = "<Bundle xmlns=\"http://hl7.org/fhir\">\n" +
|
||||||
|
@ -1286,7 +1286,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testReadWithElementsParam() throws Exception {
|
public void testReadWithElementsParam() {
|
||||||
String msg = "{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}";
|
String msg = "{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1311,7 +1311,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testReadWithSummaryInvalid() throws Exception {
|
public void testReadWithSummaryInvalid() {
|
||||||
String msg = "<>>>><<<<>";
|
String msg = "<>>>><<<<>";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1338,7 +1338,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testReadWithSummaryParamHtml() throws Exception {
|
public void testReadWithSummaryParamHtml() {
|
||||||
String msg = "<div>HELP IM A DIV</div>";
|
String msg = "<div>HELP IM A DIV</div>";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1365,7 +1365,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSearchByString() throws Exception {
|
public void testSearchByString() {
|
||||||
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1391,7 +1391,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSearchByUrl() throws Exception {
|
public void testSearchByUrl() {
|
||||||
|
|
||||||
final String msg = getPatientFeedWithOneResult();
|
final String msg = getPatientFeedWithOneResult();
|
||||||
|
|
||||||
|
@ -1498,7 +1498,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSearchWithElementsParam() throws Exception {
|
public void testSearchWithElementsParam() {
|
||||||
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1525,7 +1525,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSearchByPost() throws Exception {
|
public void testSearchByPost() {
|
||||||
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1562,7 +1562,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSearchByPostUseJson() throws Exception {
|
public void testSearchByPostUseJson() {
|
||||||
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1600,7 +1600,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSearchWithLastUpdated() throws Exception {
|
public void testSearchWithLastUpdated() {
|
||||||
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1627,7 +1627,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSearchWithProfileAndSecurity() throws Exception {
|
public void testSearchWithProfileAndSecurity() {
|
||||||
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1657,7 +1657,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
|
|
||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
@Test
|
@Test
|
||||||
public void testSearchWithReverseInclude() throws Exception {
|
public void testSearchWithReverseInclude() {
|
||||||
|
|
||||||
String msg = getPatientFeedWithOneResult();
|
String msg = getPatientFeedWithOneResult();
|
||||||
|
|
||||||
|
@ -1684,7 +1684,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSearchWithSummaryParam() throws Exception {
|
public void testSearchWithSummaryParam() {
|
||||||
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
String msg = "{\"resourceType\":\"Bundle\",\"id\":null,\"base\":\"http://localhost:57931/fhir/contextDev\",\"total\":1,\"link\":[{\"relation\":\"self\",\"url\":\"http://localhost:57931/fhir/contextDev/Patient?identifier=urn%3AMultiFhirVersionTest%7CtestSubmitPatient01&_format=json\"}],\"entry\":[{\"resource\":{\"resourceType\":\"Patient\",\"id\":\"1\",\"meta\":{\"versionId\":\"1\",\"lastUpdated\":\"2014-12-20T18:41:29.706-05:00\"},\"identifier\":[{\"system\":\"urn:MultiFhirVersionTest\",\"value\":\"testSubmitPatient01\"}]}}]}";
|
||||||
|
|
||||||
|
|
||||||
|
@ -1711,7 +1711,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testTransactionWithListOfResources() throws Exception {
|
public void testTransactionWithListOfResources() {
|
||||||
|
|
||||||
org.hl7.fhir.dstu3.model.Bundle resp = new org.hl7.fhir.dstu3.model.Bundle();
|
org.hl7.fhir.dstu3.model.Bundle resp = new org.hl7.fhir.dstu3.model.Bundle();
|
||||||
resp.addEntry().getResponse().setLocation("Patient/1/_history/1");
|
resp.addEntry().getResponse().setLocation("Patient/1/_history/1");
|
||||||
|
@ -1764,7 +1764,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testTransactionWithString() throws Exception {
|
public void testTransactionWithString() {
|
||||||
|
|
||||||
org.hl7.fhir.dstu3.model.Bundle req = new org.hl7.fhir.dstu3.model.Bundle();
|
org.hl7.fhir.dstu3.model.Bundle req = new org.hl7.fhir.dstu3.model.Bundle();
|
||||||
Patient patient = new Patient();
|
Patient patient = new Patient();
|
||||||
|
@ -1810,7 +1810,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testTransactionWithTransactionResource() throws Exception {
|
public void testTransactionWithTransactionResource() {
|
||||||
|
|
||||||
org.hl7.fhir.dstu3.model.Bundle resp = new org.hl7.fhir.dstu3.model.Bundle();
|
org.hl7.fhir.dstu3.model.Bundle resp = new org.hl7.fhir.dstu3.model.Bundle();
|
||||||
resp.addEntry().getResponse().setLocation("Patient/1/_history/1");
|
resp.addEntry().getResponse().setLocation("Patient/1/_history/1");
|
||||||
|
@ -1851,7 +1851,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testUpdateConditional() throws Exception {
|
public void testUpdateConditional() {
|
||||||
|
|
||||||
|
|
||||||
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
||||||
|
@ -1906,7 +1906,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testUpdateNonFluent() throws Exception {
|
public void testUpdateNonFluent() {
|
||||||
|
|
||||||
|
|
||||||
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
||||||
|
@ -1936,7 +1936,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testUpdatePrefer() throws Exception {
|
public void testUpdatePrefer() {
|
||||||
|
|
||||||
|
|
||||||
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
ourResponseStatus = Constants.STATUS_HTTP_204_NO_CONTENT;
|
||||||
|
@ -1962,7 +1962,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testUpdateReturningResourceBody() throws Exception {
|
public void testUpdateReturningResourceBody() {
|
||||||
Patient p = new Patient();
|
Patient p = new Patient();
|
||||||
p.setId("123");
|
p.setId("123");
|
||||||
final String formatted = ourCtx.newXmlParser().encodeResourceToString(p);
|
final String formatted = ourCtx.newXmlParser().encodeResourceToString(p);
|
||||||
|
@ -1985,7 +1985,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testValidateFluent() throws Exception {
|
public void testValidateFluent() {
|
||||||
|
|
||||||
OperationOutcome oo = new OperationOutcome();
|
OperationOutcome oo = new OperationOutcome();
|
||||||
oo.addIssue().setDiagnostics("FOOBAR");
|
oo.addIssue().setDiagnostics("FOOBAR");
|
||||||
|
@ -2039,7 +2039,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testValidateNonFluent() throws Exception {
|
public void testValidateNonFluent() {
|
||||||
OperationOutcome oo = new OperationOutcome();
|
OperationOutcome oo = new OperationOutcome();
|
||||||
oo.addIssue().setDiagnostics("FOOBAR");
|
oo.addIssue().setDiagnostics("FOOBAR");
|
||||||
final String msg = ourCtx.newXmlParser().encodeResourceToString(oo);
|
final String msg = ourCtx.newXmlParser().encodeResourceToString(oo);
|
||||||
|
@ -2109,7 +2109,7 @@ public class GenericJaxRsClientDstu3Test {
|
||||||
ourServer.setHandler(new AbstractHandler() {
|
ourServer.setHandler(new AbstractHandler() {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void handle(String theArg0, Request theRequest, HttpServletRequest theServletRequest, HttpServletResponse theResp) throws IOException, ServletException {
|
public void handle(String theArg0, Request theRequest, HttpServletRequest theServletRequest, HttpServletResponse theResp) throws IOException {
|
||||||
theRequest.setHandled(true);
|
theRequest.setHandled(true);
|
||||||
ourRequestUri = "http:" + theRequest.getHttpURI().toString();
|
ourRequestUri = "http:" + theRequest.getHttpURI().toString();
|
||||||
ourRequestUriAll.add(ourRequestUri);
|
ourRequestUriAll.add(ourRequestUri);
|
||||||
|
|
|
@ -3,51 +3,56 @@ package ca.uhn.fhir.jaxrs.client;
|
||||||
import ca.uhn.fhir.context.FhirContext;
|
import ca.uhn.fhir.context.FhirContext;
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
import javax.ws.rs.client.Client;
|
import javax.ws.rs.client.Client;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
|
||||||
import static org.junit.Assert.assertEquals;
|
import static org.hamcrest.CoreMatchers.hasItem;
|
||||||
import static org.junit.Assert.assertNotNull;
|
import static org.hamcrest.core.IsNot.not;
|
||||||
import static org.junit.Assert.assertTrue;
|
import static org.junit.Assert.*;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Created by Sebastien Riviere on 31/07/2017.
|
* Created by Sebastien Riviere on 31/07/2017.
|
||||||
*/
|
*/
|
||||||
public class JaxRsRestfulClientFactoryTest {
|
public class JaxRsRestfulClientFactoryTest {
|
||||||
|
|
||||||
private final FhirContext context = FhirContext.forDstu2();
|
private static final Logger ourLog = LoggerFactory.getLogger(JaxRsRestfulClientFactoryTest.class);
|
||||||
private JaxRsRestfulClientFactory factory;
|
private final FhirContext context = FhirContext.forDstu2();
|
||||||
|
private JaxRsRestfulClientFactory factory;
|
||||||
|
|
||||||
@Before
|
@Test
|
||||||
public void setUp() {
|
public void emptyConstructorTest() {
|
||||||
factory = new JaxRsRestfulClientFactory(context);
|
assertNotNull(new JaxRsRestfulClientFactory());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void emptyConstructorTest() {
|
public void getDefaultNativeClientTest() {
|
||||||
assertNotNull(new JaxRsRestfulClientFactory());
|
assertNotNull(factory.getNativeClientClient());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void getDefaultNativeClientTest() {
|
public void getNativeClientEmptyRegisteredComponentListTest() {
|
||||||
assertNotNull(factory.getNativeClientClient());
|
factory.register(new ArrayList<>());
|
||||||
}
|
final Client result = factory.getNativeClientClient();
|
||||||
|
assertNotNull(result);
|
||||||
|
ourLog.info("Classes: {}", result.getConfiguration().getClasses());
|
||||||
|
assertThat(result.getConfiguration().getClasses(), not(hasItem(ca.uhn.fhir.jaxrs.client.MyFilter.class)));
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void getNativeClientEmptyRegisteredComponentListTest() {
|
public void getNativeClientRegisteredComponentListTest() {
|
||||||
factory.register(new ArrayList<Class<?>>());
|
factory.register(Arrays.asList(MyFilter.class, String.class));
|
||||||
final Client result = factory.getNativeClientClient();
|
final Client result = factory.getNativeClientClient();
|
||||||
assertNotNull(result);
|
assertNotNull(result);
|
||||||
assertTrue(result.getConfiguration().getClasses().isEmpty());
|
ourLog.info("Classes: {}", result.getConfiguration().getClasses());
|
||||||
}
|
assertThat(result.getConfiguration().getClasses(), hasItem(ca.uhn.fhir.jaxrs.client.MyFilter.class));
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Before
|
||||||
public void getNativeClientRegisteredComponentListTest() {
|
public void setUp() {
|
||||||
factory.register(Arrays.asList(MyFilter.class, String.class));
|
factory = new JaxRsRestfulClientFactory(context);
|
||||||
final Client result = factory.getNativeClientClient();
|
}
|
||||||
assertNotNull(result);
|
|
||||||
assertEquals(1, result.getConfiguration().getClasses().size());
|
|
||||||
}
|
|
||||||
}
|
}
|
|
@ -1,27 +1,24 @@
|
||||||
package ca.uhn.fhir.jaxrs.server;
|
package ca.uhn.fhir.jaxrs.server;
|
||||||
|
|
||||||
import static org.junit.Assert.assertEquals;
|
import ca.uhn.fhir.context.FhirContext;
|
||||||
import static org.junit.Assert.assertTrue;
|
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsDummyPatientProviderDstu2Hl7Org;
|
||||||
import static org.mockito.Mockito.mock;
|
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsMockPatientRestProviderDstu2Hl7Org;
|
||||||
import static org.mockito.Mockito.when;
|
import ca.uhn.fhir.rest.api.Constants;
|
||||||
|
import ca.uhn.fhir.rest.server.IResourceProvider;
|
||||||
|
import org.jboss.resteasy.specimpl.ResteasyHttpHeaders;
|
||||||
|
import org.junit.Before;
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
|
import javax.ws.rs.core.MultivaluedHashMap;
|
||||||
|
import javax.ws.rs.core.Response;
|
||||||
|
import javax.ws.rs.core.UriInfo;
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
|
||||||
import javax.ws.rs.HttpMethod;
|
import static org.junit.Assert.*;
|
||||||
import javax.ws.rs.core.*;
|
import static org.mockito.Mockito.mock;
|
||||||
|
import static org.mockito.Mockito.when;
|
||||||
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsDummyPatientProviderDstu2Hl7Org;
|
|
||||||
import org.glassfish.jersey.internal.MapPropertiesDelegate;
|
|
||||||
import org.glassfish.jersey.server.ContainerRequest;
|
|
||||||
import org.junit.Before;
|
|
||||||
import org.junit.Test;
|
|
||||||
|
|
||||||
import ca.uhn.fhir.context.FhirContext;
|
|
||||||
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsMockPatientRestProviderDstu2Hl7Org;
|
|
||||||
import ca.uhn.fhir.rest.api.Constants;
|
|
||||||
import ca.uhn.fhir.rest.server.IResourceProvider;
|
|
||||||
|
|
||||||
public class AbstractJaxRsConformanceProviderDstu2Hl7OrgTest {
|
public class AbstractJaxRsConformanceProviderDstu2Hl7OrgTest {
|
||||||
|
|
||||||
|
@ -29,16 +26,17 @@ public class AbstractJaxRsConformanceProviderDstu2Hl7OrgTest {
|
||||||
private static final String REQUESTURI = BASEURI + "/metadata";
|
private static final String REQUESTURI = BASEURI + "/metadata";
|
||||||
AbstractJaxRsConformanceProvider provider;
|
AbstractJaxRsConformanceProvider provider;
|
||||||
private ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider> providers;
|
private ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider> providers;
|
||||||
private ContainerRequest headers;
|
private ResteasyHttpHeaders headers;
|
||||||
private MultivaluedHashMap<String, String> queryParameters;
|
private MultivaluedHashMap<String, String> queryParameters;
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setUp() throws Exception {
|
public void setUp() throws Exception {
|
||||||
// headers
|
|
||||||
headers = new ContainerRequest(new URI(BASEURI), new URI(REQUESTURI), HttpMethod.GET, null,
|
|
||||||
new MapPropertiesDelegate());
|
|
||||||
// uri info
|
// uri info
|
||||||
queryParameters = new MultivaluedHashMap<String, String>();
|
queryParameters = new MultivaluedHashMap<>();
|
||||||
|
// headers
|
||||||
|
// headers = new ContainerRequest(new URI(BASEURI), new URI(REQUESTURI), HttpMethod.GET, null,
|
||||||
|
// new MapPropertiesDelegate());
|
||||||
|
headers = new ResteasyHttpHeaders(queryParameters);
|
||||||
|
|
||||||
|
|
||||||
providers = new ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider>();
|
providers = new ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider>();
|
||||||
|
|
|
@ -1,27 +1,24 @@
|
||||||
package ca.uhn.fhir.jaxrs.server;
|
package ca.uhn.fhir.jaxrs.server;
|
||||||
|
|
||||||
import static org.junit.Assert.assertEquals;
|
import ca.uhn.fhir.context.FhirContext;
|
||||||
import static org.junit.Assert.assertTrue;
|
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsDummyPatientProviderDstu2_1;
|
||||||
import static org.mockito.Mockito.mock;
|
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsMockPatientRestProviderDstu2_1;
|
||||||
import static org.mockito.Mockito.when;
|
import ca.uhn.fhir.rest.api.Constants;
|
||||||
|
import ca.uhn.fhir.rest.server.IResourceProvider;
|
||||||
|
import org.jboss.resteasy.specimpl.ResteasyHttpHeaders;
|
||||||
|
import org.junit.Before;
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
|
import javax.ws.rs.core.MultivaluedHashMap;
|
||||||
|
import javax.ws.rs.core.Response;
|
||||||
|
import javax.ws.rs.core.UriInfo;
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
|
||||||
import javax.ws.rs.HttpMethod;
|
import static org.junit.Assert.*;
|
||||||
import javax.ws.rs.core.*;
|
import static org.mockito.Mockito.mock;
|
||||||
|
import static org.mockito.Mockito.when;
|
||||||
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsDummyPatientProviderDstu2_1;
|
|
||||||
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsMockPatientRestProviderDstu2_1;
|
|
||||||
import org.glassfish.jersey.internal.MapPropertiesDelegate;
|
|
||||||
import org.glassfish.jersey.server.ContainerRequest;
|
|
||||||
import org.junit.Before;
|
|
||||||
import org.junit.Test;
|
|
||||||
|
|
||||||
import ca.uhn.fhir.context.FhirContext;
|
|
||||||
import ca.uhn.fhir.rest.api.Constants;
|
|
||||||
import ca.uhn.fhir.rest.server.IResourceProvider;
|
|
||||||
|
|
||||||
public class AbstractJaxRsConformanceProviderDstu2_1Test {
|
public class AbstractJaxRsConformanceProviderDstu2_1Test {
|
||||||
|
|
||||||
|
@ -29,19 +26,20 @@ public class AbstractJaxRsConformanceProviderDstu2_1Test {
|
||||||
private static final String REQUESTURI = BASEURI + "/metadata";
|
private static final String REQUESTURI = BASEURI + "/metadata";
|
||||||
AbstractJaxRsConformanceProvider provider;
|
AbstractJaxRsConformanceProvider provider;
|
||||||
private ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider> providers;
|
private ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider> providers;
|
||||||
private ContainerRequest headers;
|
private ResteasyHttpHeaders headers;
|
||||||
private MultivaluedHashMap<String, String> queryParameters;
|
private MultivaluedHashMap<String, String> queryParameters;
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setUp() throws Exception {
|
public void setUp() throws Exception {
|
||||||
// headers
|
|
||||||
headers = new ContainerRequest(new URI(BASEURI), new URI(REQUESTURI), HttpMethod.GET, null,
|
|
||||||
new MapPropertiesDelegate());
|
|
||||||
// uri info
|
// uri info
|
||||||
queryParameters = new MultivaluedHashMap<String, String>();
|
queryParameters = new MultivaluedHashMap<>();
|
||||||
|
// headers
|
||||||
|
// headers = new ContainerRequest(new URI(BASEURI), new URI(REQUESTURI), HttpMethod.GET, null,
|
||||||
|
// new MapPropertiesDelegate());
|
||||||
|
headers = new ResteasyHttpHeaders(queryParameters);
|
||||||
|
|
||||||
|
|
||||||
providers = new ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider>();
|
providers = new ConcurrentHashMap<>();
|
||||||
provider = createConformanceProvider(providers);
|
provider = createConformanceProvider(providers);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,27 +1,24 @@
|
||||||
package ca.uhn.fhir.jaxrs.server;
|
package ca.uhn.fhir.jaxrs.server;
|
||||||
|
|
||||||
import static org.junit.Assert.assertEquals;
|
|
||||||
import static org.junit.Assert.assertTrue;
|
|
||||||
import static org.mockito.Mockito.mock;
|
|
||||||
import static org.mockito.Mockito.when;
|
|
||||||
|
|
||||||
import java.net.URI;
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
|
||||||
|
|
||||||
import javax.ws.rs.HttpMethod;
|
|
||||||
import javax.ws.rs.core.*;
|
|
||||||
|
|
||||||
import org.glassfish.jersey.internal.MapPropertiesDelegate;
|
|
||||||
import org.glassfish.jersey.server.ContainerRequest;
|
|
||||||
import org.junit.Before;
|
|
||||||
import org.junit.Test;
|
|
||||||
|
|
||||||
import ca.uhn.fhir.context.FhirContext;
|
import ca.uhn.fhir.context.FhirContext;
|
||||||
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsDummyPatientProvider;
|
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsDummyPatientProvider;
|
||||||
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsMockPatientRestProviderDstu3;
|
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsMockPatientRestProviderDstu3;
|
||||||
import ca.uhn.fhir.rest.api.Constants;
|
import ca.uhn.fhir.rest.api.Constants;
|
||||||
import ca.uhn.fhir.rest.server.IResourceProvider;
|
import ca.uhn.fhir.rest.server.IResourceProvider;
|
||||||
|
import org.jboss.resteasy.specimpl.ResteasyHttpHeaders;
|
||||||
|
import org.junit.Before;
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
|
import javax.ws.rs.core.MultivaluedHashMap;
|
||||||
|
import javax.ws.rs.core.Response;
|
||||||
|
import javax.ws.rs.core.UriInfo;
|
||||||
|
import java.net.URI;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
|
||||||
|
import static org.junit.Assert.*;
|
||||||
|
import static org.mockito.Mockito.mock;
|
||||||
|
import static org.mockito.Mockito.when;
|
||||||
|
|
||||||
public class AbstractJaxRsConformanceProviderDstu3Test {
|
public class AbstractJaxRsConformanceProviderDstu3Test {
|
||||||
|
|
||||||
|
@ -29,16 +26,17 @@ public class AbstractJaxRsConformanceProviderDstu3Test {
|
||||||
private static final String REQUESTURI = BASEURI + "/metadata";
|
private static final String REQUESTURI = BASEURI + "/metadata";
|
||||||
AbstractJaxRsConformanceProvider provider;
|
AbstractJaxRsConformanceProvider provider;
|
||||||
private ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider> providers;
|
private ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider> providers;
|
||||||
private ContainerRequest headers;
|
private ResteasyHttpHeaders headers;
|
||||||
private MultivaluedHashMap<String, String> queryParameters;
|
private MultivaluedHashMap<String, String> queryParameters;
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setUp() throws Exception {
|
public void setUp() throws Exception {
|
||||||
// headers
|
|
||||||
headers = new ContainerRequest(new URI(BASEURI), new URI(REQUESTURI), HttpMethod.GET, null,
|
|
||||||
new MapPropertiesDelegate());
|
|
||||||
// uri info
|
// uri info
|
||||||
queryParameters = new MultivaluedHashMap<String, String>();
|
queryParameters = new MultivaluedHashMap<>();
|
||||||
|
// headers
|
||||||
|
// headers = new ContainerRequest(new URI(BASEURI), new URI(REQUESTURI), HttpMethod.GET, null,
|
||||||
|
// new MapPropertiesDelegate());
|
||||||
|
headers = new ResteasyHttpHeaders(queryParameters);
|
||||||
|
|
||||||
|
|
||||||
providers = new ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider>();
|
providers = new ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider>();
|
||||||
|
|
|
@ -1,27 +1,24 @@
|
||||||
package ca.uhn.fhir.jaxrs.server;
|
package ca.uhn.fhir.jaxrs.server;
|
||||||
|
|
||||||
import static org.junit.Assert.assertEquals;
|
import ca.uhn.fhir.context.FhirContext;
|
||||||
import static org.junit.Assert.assertTrue;
|
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsDummyPatientProviderR4;
|
||||||
import static org.mockito.Mockito.mock;
|
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsMockPatientRestProviderR4;
|
||||||
import static org.mockito.Mockito.when;
|
import ca.uhn.fhir.rest.api.Constants;
|
||||||
|
import ca.uhn.fhir.rest.server.IResourceProvider;
|
||||||
|
import org.jboss.resteasy.specimpl.ResteasyHttpHeaders;
|
||||||
|
import org.junit.Before;
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
|
import javax.ws.rs.core.MultivaluedHashMap;
|
||||||
|
import javax.ws.rs.core.Response;
|
||||||
|
import javax.ws.rs.core.UriInfo;
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
|
||||||
import javax.ws.rs.HttpMethod;
|
import static org.junit.Assert.*;
|
||||||
import javax.ws.rs.core.*;
|
import static org.mockito.Mockito.mock;
|
||||||
|
import static org.mockito.Mockito.when;
|
||||||
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsDummyPatientProviderR4;
|
|
||||||
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsMockPatientRestProviderR4;
|
|
||||||
import org.glassfish.jersey.internal.MapPropertiesDelegate;
|
|
||||||
import org.glassfish.jersey.server.ContainerRequest;
|
|
||||||
import org.junit.Before;
|
|
||||||
import org.junit.Test;
|
|
||||||
|
|
||||||
import ca.uhn.fhir.context.FhirContext;
|
|
||||||
import ca.uhn.fhir.rest.api.Constants;
|
|
||||||
import ca.uhn.fhir.rest.server.IResourceProvider;
|
|
||||||
|
|
||||||
public class AbstractJaxRsConformanceProviderR4Test {
|
public class AbstractJaxRsConformanceProviderR4Test {
|
||||||
|
|
||||||
|
@ -29,16 +26,17 @@ public class AbstractJaxRsConformanceProviderR4Test {
|
||||||
private static final String REQUESTURI = BASEURI + "/metadata";
|
private static final String REQUESTURI = BASEURI + "/metadata";
|
||||||
AbstractJaxRsConformanceProvider provider;
|
AbstractJaxRsConformanceProvider provider;
|
||||||
private ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider> providers;
|
private ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider> providers;
|
||||||
private ContainerRequest headers;
|
private ResteasyHttpHeaders headers;
|
||||||
private MultivaluedHashMap<String, String> queryParameters;
|
private MultivaluedHashMap<String, String> queryParameters;
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setUp() throws Exception {
|
public void setUp() throws Exception {
|
||||||
// headers
|
|
||||||
headers = new ContainerRequest(new URI(BASEURI), new URI(REQUESTURI), HttpMethod.GET, null,
|
|
||||||
new MapPropertiesDelegate());
|
|
||||||
// uri info
|
// uri info
|
||||||
queryParameters = new MultivaluedHashMap<String, String>();
|
queryParameters = new MultivaluedHashMap<>();
|
||||||
|
// headers
|
||||||
|
// headers = new ContainerRequest(new URI(BASEURI), new URI(REQUESTURI), HttpMethod.GET, null,
|
||||||
|
// new MapPropertiesDelegate());
|
||||||
|
headers = new ResteasyHttpHeaders(queryParameters);
|
||||||
|
|
||||||
|
|
||||||
providers = new ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider>();
|
providers = new ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider>();
|
||||||
|
|
|
@ -1,26 +1,23 @@
|
||||||
package ca.uhn.fhir.jaxrs.server;
|
package ca.uhn.fhir.jaxrs.server;
|
||||||
|
|
||||||
import static org.junit.Assert.assertEquals;
|
|
||||||
import static org.junit.Assert.assertTrue;
|
|
||||||
import static org.mockito.Mockito.mock;
|
|
||||||
import static org.mockito.Mockito.when;
|
|
||||||
|
|
||||||
import java.net.URI;
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
|
||||||
|
|
||||||
import javax.ws.rs.HttpMethod;
|
|
||||||
import javax.ws.rs.core.*;
|
|
||||||
|
|
||||||
import org.glassfish.jersey.internal.MapPropertiesDelegate;
|
|
||||||
import org.glassfish.jersey.server.ContainerRequest;
|
|
||||||
import org.junit.Before;
|
|
||||||
import org.junit.Test;
|
|
||||||
|
|
||||||
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsDummyPatientProvider;
|
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsDummyPatientProvider;
|
||||||
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsMockPatientRestProvider;
|
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsMockPatientRestProvider;
|
||||||
import ca.uhn.fhir.rest.api.Constants;
|
import ca.uhn.fhir.rest.api.Constants;
|
||||||
import ca.uhn.fhir.rest.server.IResourceProvider;
|
import ca.uhn.fhir.rest.server.IResourceProvider;
|
||||||
|
import org.jboss.resteasy.specimpl.ResteasyHttpHeaders;
|
||||||
|
import org.junit.Before;
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
|
import javax.ws.rs.core.MultivaluedHashMap;
|
||||||
|
import javax.ws.rs.core.Response;
|
||||||
|
import javax.ws.rs.core.UriInfo;
|
||||||
|
import java.net.URI;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
|
||||||
|
import static org.junit.Assert.*;
|
||||||
|
import static org.mockito.Mockito.mock;
|
||||||
|
import static org.mockito.Mockito.when;
|
||||||
|
|
||||||
public class AbstractJaxRsConformanceProviderTest {
|
public class AbstractJaxRsConformanceProviderTest {
|
||||||
|
|
||||||
|
@ -28,16 +25,17 @@ public class AbstractJaxRsConformanceProviderTest {
|
||||||
private static final String REQUESTURI = BASEURI + "/metadata";
|
private static final String REQUESTURI = BASEURI + "/metadata";
|
||||||
AbstractJaxRsConformanceProvider provider;
|
AbstractJaxRsConformanceProvider provider;
|
||||||
private ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider> providers;
|
private ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider> providers;
|
||||||
private ContainerRequest headers;
|
private ResteasyHttpHeaders headers;
|
||||||
private MultivaluedHashMap<String, String> queryParameters;
|
private MultivaluedHashMap<String, String> queryParameters;
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setUp() throws Exception {
|
public void setUp() throws Exception {
|
||||||
// headers
|
|
||||||
headers = new ContainerRequest(new URI(BASEURI), new URI(REQUESTURI), HttpMethod.GET, null,
|
|
||||||
new MapPropertiesDelegate());
|
|
||||||
// uri info
|
// uri info
|
||||||
queryParameters = new MultivaluedHashMap<String, String>();
|
queryParameters = new MultivaluedHashMap<>();
|
||||||
|
// headers
|
||||||
|
// headers = new ContainerRequest(new URI(BASEURI), new URI(REQUESTURI), HttpMethod.GET, null,
|
||||||
|
// new MapPropertiesDelegate());
|
||||||
|
headers = new ResteasyHttpHeaders(queryParameters);
|
||||||
|
|
||||||
|
|
||||||
providers = new ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider>();
|
providers = new ConcurrentHashMap<Class<? extends IResourceProvider>, IResourceProvider>();
|
||||||
|
|
|
@ -135,7 +135,7 @@ public class AbstractJaxRsResourceProviderDstu3Test {
|
||||||
@Test
|
@Test
|
||||||
public void testConformance() {
|
public void testConformance() {
|
||||||
final CapabilityStatement conf = client.fetchConformance().ofType(CapabilityStatement.class).execute();
|
final CapabilityStatement conf = client.fetchConformance().ofType(CapabilityStatement.class).execute();
|
||||||
assertEquals(conf.getRest().get(0).getResource().get(0).getType().toString(), "Patient");
|
assertEquals(conf.getRest().get(0).getResource().get(0).getType(), "Patient");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
@ -149,7 +149,7 @@ public class AbstractJaxRsResourceProviderDstu3Test {
|
||||||
client.setEncoding(EncodingEnum.JSON);
|
client.setEncoding(EncodingEnum.JSON);
|
||||||
final MethodOutcome response = client.create().resource(toCreate).prefer(PreferReturnEnum.REPRESENTATION)
|
final MethodOutcome response = client.create().resource(toCreate).prefer(PreferReturnEnum.REPRESENTATION)
|
||||||
.execute();
|
.execute();
|
||||||
IBaseResource resource = (IBaseResource) response.getResource();
|
IBaseResource resource = response.getResource();
|
||||||
compareResultId(1, resource);
|
compareResultId(1, resource);
|
||||||
assertEquals("myIdentifier", patientCaptor.getValue().getIdentifier().get(0).getValue());
|
assertEquals("myIdentifier", patientCaptor.getValue().getIdentifier().get(0).getValue());
|
||||||
}
|
}
|
||||||
|
@ -162,7 +162,7 @@ public class AbstractJaxRsResourceProviderDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testConditionalDelete() throws Exception {
|
public void testConditionalDelete() {
|
||||||
when(mock.delete(idCaptor.capture(), conditionalCaptor.capture())).thenReturn(new MethodOutcome());
|
when(mock.delete(idCaptor.capture(), conditionalCaptor.capture())).thenReturn(new MethodOutcome());
|
||||||
client.delete().resourceConditionalByType("Patient").where(Patient.IDENTIFIER.exactly().identifier("2")).execute();
|
client.delete().resourceConditionalByType("Patient").where(Patient.IDENTIFIER.exactly().identifier("2")).execute();
|
||||||
assertEquals("Patient?identifier=2&_format=json", conditionalCaptor.getValue());
|
assertEquals("Patient?identifier=2&_format=json", conditionalCaptor.getValue());
|
||||||
|
@ -187,7 +187,7 @@ public class AbstractJaxRsResourceProviderDstu3Test {
|
||||||
assertEquals("outputValue", ((StringType)outParams.getParameter().get(0).getValue()).getValueAsString());
|
assertEquals("outputValue", ((StringType)outParams.getParameter().get(0).getValue()).getValueAsString());
|
||||||
}
|
}
|
||||||
|
|
||||||
class StringTypeMatcher extends ArgumentMatcher<StringType> {
|
class StringTypeMatcher implements ArgumentMatcher<StringType> {
|
||||||
private StringType myStringType;
|
private StringType myStringType;
|
||||||
|
|
||||||
public StringTypeMatcher(StringType stringType) {
|
public StringTypeMatcher(StringType stringType) {
|
||||||
|
@ -195,8 +195,8 @@ public class AbstractJaxRsResourceProviderDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean matches(Object argument) {
|
public boolean matches(StringType argument) {
|
||||||
return myStringType.getValue().equals(((StringType)argument).getValue());
|
return myStringType.getValue().equals(argument.getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -214,8 +214,14 @@ public class AbstractJaxRsResourceProviderDstu3Test {
|
||||||
inParams.addParameter().setName("dummy").setValue(new StringType("myAwesomeDummyValue"));
|
inParams.addParameter().setName("dummy").setValue(new StringType("myAwesomeDummyValue"));
|
||||||
|
|
||||||
// invoke
|
// invoke
|
||||||
Parameters outParams = client.operation().onInstance(new IdType("Patient", "1")).named("$someCustomOperation")
|
Parameters outParams = client
|
||||||
.withParameters(inParams).useHttpGet().execute();
|
.operation()
|
||||||
|
.onInstance(new IdType("Patient", "1"))
|
||||||
|
.named("$someCustomOperation")
|
||||||
|
.withParameters(inParams)
|
||||||
|
.useHttpGet()
|
||||||
|
.execute();
|
||||||
|
|
||||||
// verify
|
// verify
|
||||||
assertEquals("outputValue", ((StringType)outParams.getParameter().get(0).getValue()).getValueAsString());
|
assertEquals("outputValue", ((StringType)outParams.getParameter().get(0).getValue()).getValueAsString());
|
||||||
}
|
}
|
||||||
|
@ -248,7 +254,7 @@ public class AbstractJaxRsResourceProviderDstu3Test {
|
||||||
/** */
|
/** */
|
||||||
@Test
|
@Test
|
||||||
public void testSearchPost() {
|
public void testSearchPost() {
|
||||||
when(mock.search(any(StringParam.class), Matchers.isNull(StringAndListParam.class)))
|
when(mock.search(ArgumentMatchers.isNull(), ArgumentMatchers.isNull()))
|
||||||
.thenReturn(createPatients(1, 13));
|
.thenReturn(createPatients(1, 13));
|
||||||
org.hl7.fhir.dstu3.model.Bundle result = client.search().forResource("Patient").usingStyle(SearchStyleEnum.POST)
|
org.hl7.fhir.dstu3.model.Bundle result = client.search().forResource("Patient").usingStyle(SearchStyleEnum.POST)
|
||||||
.returnBundle(org.hl7.fhir.dstu3.model.Bundle.class).execute();
|
.returnBundle(org.hl7.fhir.dstu3.model.Bundle.class).execute();
|
||||||
|
@ -275,12 +281,12 @@ public class AbstractJaxRsResourceProviderDstu3Test {
|
||||||
/** Search - Multi-valued Parameters (ANY/OR) */
|
/** Search - Multi-valued Parameters (ANY/OR) */
|
||||||
@Test
|
@Test
|
||||||
public void testSearchUsingGenericClientBySearchWithMultiValues() {
|
public void testSearchUsingGenericClientBySearchWithMultiValues() {
|
||||||
when(mock.search(any(StringParam.class), Matchers.isNotNull(StringAndListParam.class)))
|
when(mock.search(any(StringParam.class), ArgumentMatchers.notNull()))
|
||||||
.thenReturn(Arrays.asList(createPatient(1)));
|
.thenReturn(Arrays.asList(createPatient(1)));
|
||||||
final Bundle results = client.search().forResource(Patient.class)
|
final Bundle results = client.search().forResource(Patient.class)
|
||||||
.where(Patient.ADDRESS.matches().values("Toronto")).and(Patient.ADDRESS.matches().values("Ontario"))
|
.where(Patient.ADDRESS.matches().values("Toronto")).and(Patient.ADDRESS.matches().values("Ontario"))
|
||||||
.and(Patient.ADDRESS.matches().values("Canada"))
|
.and(Patient.ADDRESS.matches().values("Canada"))
|
||||||
.where(Patient.IDENTIFIER.exactly().systemAndIdentifier("SHORTNAME", "TOYS")).returnBundle(Bundle.class).execute();
|
.where(Patient.NAME.matches().value("SHORTNAME")).returnBundle(Bundle.class).execute();
|
||||||
IBaseResource resource = results.getEntry().get(0).getResource();
|
IBaseResource resource = results.getEntry().get(0).getResource();
|
||||||
|
|
||||||
compareResultId(1, resource);
|
compareResultId(1, resource);
|
||||||
|
@ -291,7 +297,7 @@ public class AbstractJaxRsResourceProviderDstu3Test {
|
||||||
@Test
|
@Test
|
||||||
public void testSearchWithPaging() {
|
public void testSearchWithPaging() {
|
||||||
// Perform a search
|
// Perform a search
|
||||||
when(mock.search(any(StringParam.class), Matchers.isNull(StringAndListParam.class)))
|
when(mock.search(ArgumentMatchers.isNull(), ArgumentMatchers.isNull()))
|
||||||
.thenReturn(createPatients(1, 13));
|
.thenReturn(createPatients(1, 13));
|
||||||
final org.hl7.fhir.dstu3.model.Bundle results = client.search().forResource(Patient.class).count(8).returnBundle(org.hl7.fhir.dstu3.model.Bundle.class)
|
final org.hl7.fhir.dstu3.model.Bundle results = client.search().forResource(Patient.class).count(8).returnBundle(org.hl7.fhir.dstu3.model.Bundle.class)
|
||||||
.execute();
|
.execute();
|
||||||
|
@ -416,17 +422,17 @@ public class AbstractJaxRsResourceProviderDstu3Test {
|
||||||
System.out.println(ourPort);
|
System.out.println(ourPort);
|
||||||
jettyServer = new Server(ourPort);
|
jettyServer = new Server(ourPort);
|
||||||
jettyServer.setHandler(context);
|
jettyServer.setHandler(context);
|
||||||
ServletHolder jerseyServlet = context.addServlet(org.glassfish.jersey.servlet.ServletContainer.class, "/*");
|
ServletHolder jerseyServlet = context.addServlet(org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.class, "/*");
|
||||||
jerseyServlet.setInitOrder(0);
|
jerseyServlet.setInitOrder(0);
|
||||||
|
|
||||||
//@formatter:off
|
//@formatter:off
|
||||||
jerseyServlet.setInitParameter("jersey.config.server.provider.classnames",
|
jerseyServlet.setInitParameter("resteasy.resources",
|
||||||
StringUtils.join(Arrays.asList(
|
StringUtils.join(Arrays.asList(
|
||||||
TestJaxRsMockPatientRestProviderDstu3.class.getCanonicalName(),
|
TestJaxRsMockPatientRestProviderDstu3.class.getCanonicalName(),
|
||||||
JaxRsExceptionInterceptor.class.getCanonicalName(),
|
// JaxRsExceptionInterceptor.class.getCanonicalName(),
|
||||||
TestJaxRsConformanceRestProviderDstu3.class.getCanonicalName(),
|
TestJaxRsConformanceRestProviderDstu3.class.getCanonicalName(),
|
||||||
TestJaxRsMockPageProviderDstu3.class.getCanonicalName()
|
TestJaxRsMockPageProviderDstu3.class.getCanonicalName()
|
||||||
), ";"));
|
), ","));
|
||||||
//@formatter:on
|
//@formatter:on
|
||||||
|
|
||||||
jettyServer.start();
|
jettyServer.start();
|
||||||
|
@ -441,7 +447,7 @@ public class AbstractJaxRsResourceProviderDstu3Test {
|
||||||
}
|
}
|
||||||
|
|
||||||
@AfterClass
|
@AfterClass
|
||||||
public static void tearDownClass() throws Exception {
|
public static void tearDownClass() {
|
||||||
try {
|
try {
|
||||||
jettyServer.destroy();
|
jettyServer.destroy();
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
|
|
@ -17,6 +17,7 @@ import org.junit.*;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runners.MethodSorters;
|
import org.junit.runners.MethodSorters;
|
||||||
import org.mockito.ArgumentCaptor;
|
import org.mockito.ArgumentCaptor;
|
||||||
|
import org.mockito.ArgumentMatcher;
|
||||||
import org.mockito.Matchers;
|
import org.mockito.Matchers;
|
||||||
|
|
||||||
import ca.uhn.fhir.context.FhirContext;
|
import ca.uhn.fhir.context.FhirContext;
|
||||||
|
@ -127,7 +128,7 @@ public class AbstractJaxRsResourceProviderTest {
|
||||||
@Test
|
@Test
|
||||||
public void testConformance() {
|
public void testConformance() {
|
||||||
final Conformance conf = client.fetchConformance().ofType(Conformance.class).execute();
|
final Conformance conf = client.fetchConformance().ofType(Conformance.class).execute();
|
||||||
assertEquals(conf.getRest().get(0).getResource().get(0).getType().toString(), "Patient");
|
assertEquals(conf.getRest().get(0).getResource().get(0).getType(), "Patient");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
@ -154,7 +155,7 @@ public class AbstractJaxRsResourceProviderTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testConditionalDelete() throws Exception {
|
public void testConditionalDelete() {
|
||||||
when(mock.delete(idCaptor.capture(), conditionalCaptor.capture())).thenReturn(new MethodOutcome());
|
when(mock.delete(idCaptor.capture(), conditionalCaptor.capture())).thenReturn(new MethodOutcome());
|
||||||
client.delete().resourceConditionalByType("Patient").where(Patient.IDENTIFIER.exactly().identifier("2")).execute();
|
client.delete().resourceConditionalByType("Patient").where(Patient.IDENTIFIER.exactly().identifier("2")).execute();
|
||||||
assertEquals("Patient?identifier=2&_format=json", conditionalCaptor.getValue());
|
assertEquals("Patient?identifier=2&_format=json", conditionalCaptor.getValue());
|
||||||
|
@ -226,9 +227,12 @@ public class AbstractJaxRsResourceProviderTest {
|
||||||
/** */
|
/** */
|
||||||
@Test
|
@Test
|
||||||
public void testSearchPost() {
|
public void testSearchPost() {
|
||||||
when(mock.search(any(StringParam.class), Matchers.isNull(StringAndListParam.class)))
|
when(mock.search(isNull(), isNull()))
|
||||||
.thenReturn(createPatients(1, 13));
|
.thenReturn(createPatients(1, 13));
|
||||||
Bundle result = client.search().forResource("Patient").usingStyle(SearchStyleEnum.POST)
|
Bundle result = client
|
||||||
|
.search()
|
||||||
|
.forResource("Patient")
|
||||||
|
.usingStyle(SearchStyleEnum.POST)
|
||||||
.returnBundle(Bundle.class).execute();
|
.returnBundle(Bundle.class).execute();
|
||||||
IResource resource = result.getEntry().get(0).getResource();
|
IResource resource = result.getEntry().get(0).getResource();
|
||||||
compareResultId(1, resource);
|
compareResultId(1, resource);
|
||||||
|
@ -253,12 +257,12 @@ public class AbstractJaxRsResourceProviderTest {
|
||||||
/** Search - Multi-valued Parameters (ANY/OR) */
|
/** Search - Multi-valued Parameters (ANY/OR) */
|
||||||
@Test
|
@Test
|
||||||
public void testSearchUsingGenericClientBySearchWithMultiValues() {
|
public void testSearchUsingGenericClientBySearchWithMultiValues() {
|
||||||
when(mock.search(any(StringParam.class), Matchers.isNotNull(StringAndListParam.class)))
|
when(mock.search(any(StringParam.class), any(StringAndListParam.class)))
|
||||||
.thenReturn(Arrays.asList(createPatient(1)));
|
.thenReturn(Arrays.asList(createPatient(1)));
|
||||||
Bundle results = client.search().forResource(Patient.class)
|
Bundle results = client.search().forResource(Patient.class)
|
||||||
.where(Patient.ADDRESS.matches().values("Toronto")).and(Patient.ADDRESS.matches().values("Ontario"))
|
.where(Patient.ADDRESS.matches().values("Toronto")).and(Patient.ADDRESS.matches().values("Ontario"))
|
||||||
.and(Patient.ADDRESS.matches().values("Canada"))
|
.and(Patient.ADDRESS.matches().values("Canada"))
|
||||||
.where(Patient.IDENTIFIER.exactly().systemAndIdentifier("SHORTNAME", "TOYS")).returnBundle(Bundle.class).execute();
|
.where(Patient.NAME.matches().value("SHORTNAME")).returnBundle(Bundle.class).execute();
|
||||||
IResource resource = results.getEntry().get(0).getResource();
|
IResource resource = results.getEntry().get(0).getResource();
|
||||||
|
|
||||||
compareResultId(1, resource);
|
compareResultId(1, resource);
|
||||||
|
@ -269,7 +273,7 @@ public class AbstractJaxRsResourceProviderTest {
|
||||||
@Test
|
@Test
|
||||||
public void testSearchWithPaging() {
|
public void testSearchWithPaging() {
|
||||||
// Perform a search
|
// Perform a search
|
||||||
when(mock.search(any(StringParam.class), Matchers.isNull(StringAndListParam.class)))
|
when(mock.search(isNull(), isNull()))
|
||||||
.thenReturn(createPatients(1, 13));
|
.thenReturn(createPatients(1, 13));
|
||||||
final Bundle results = client.search().forResource(Patient.class).limitTo(8).returnBundle(Bundle.class)
|
final Bundle results = client.search().forResource(Patient.class).limitTo(8).returnBundle(Bundle.class)
|
||||||
.execute();
|
.execute();
|
||||||
|
@ -370,24 +374,17 @@ public class AbstractJaxRsResourceProviderTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
private <T> T withId(final T id) {
|
private <T> T withId(final T id) {
|
||||||
return argThat(new BaseMatcher<T>() {
|
return argThat(other -> {
|
||||||
@Override
|
IdDt thisId;
|
||||||
public void describeTo(Description arg0) {
|
IdDt otherId;
|
||||||
}
|
if (id instanceof IdDt) {
|
||||||
|
thisId = (IdDt) id;
|
||||||
@Override
|
otherId = (IdDt) other;
|
||||||
public boolean matches(Object other) {
|
} else {
|
||||||
IdDt thisId;
|
thisId = ((IResource) id).getId();
|
||||||
IdDt otherId;
|
otherId = ((IResource) other).getId();
|
||||||
if (id instanceof IdDt) {
|
|
||||||
thisId = (IdDt) id;
|
|
||||||
otherId = (IdDt) other;
|
|
||||||
} else {
|
|
||||||
thisId = ((IResource) id).getId();
|
|
||||||
otherId = ((IResource) other).getId();
|
|
||||||
}
|
|
||||||
return thisId.getIdPartAsLong().equals(otherId.getIdPartAsLong());
|
|
||||||
}
|
}
|
||||||
|
return thisId.getIdPartAsLong().equals(otherId.getIdPartAsLong());
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -399,17 +396,16 @@ public class AbstractJaxRsResourceProviderTest {
|
||||||
System.out.println(ourPort);
|
System.out.println(ourPort);
|
||||||
jettyServer = new Server(ourPort);
|
jettyServer = new Server(ourPort);
|
||||||
jettyServer.setHandler(context);
|
jettyServer.setHandler(context);
|
||||||
ServletHolder jerseyServlet = context.addServlet(org.glassfish.jersey.servlet.ServletContainer.class, "/*");
|
ServletHolder jerseyServlet = context.addServlet(org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.class, "/*");
|
||||||
jerseyServlet.setInitOrder(0);
|
jerseyServlet.setInitOrder(0);
|
||||||
|
|
||||||
//@formatter:off
|
//@formatter:off
|
||||||
jerseyServlet.setInitParameter("jersey.config.server.provider.classnames",
|
jerseyServlet.setInitParameter("resteasy.resources",
|
||||||
StringUtils.join(Arrays.asList(
|
StringUtils.join(Arrays.asList(
|
||||||
TestJaxRsMockPatientRestProvider.class.getCanonicalName(),
|
TestJaxRsMockPatientRestProvider.class.getCanonicalName(),
|
||||||
JaxRsExceptionInterceptor.class.getCanonicalName(),
|
|
||||||
TestJaxRsConformanceRestProvider.class.getCanonicalName(),
|
TestJaxRsConformanceRestProvider.class.getCanonicalName(),
|
||||||
TestJaxRsMockPageProvider.class.getCanonicalName()
|
TestJaxRsMockPageProvider.class.getCanonicalName()
|
||||||
), ";"));
|
), ","));
|
||||||
//@formatter:on
|
//@formatter:on
|
||||||
|
|
||||||
jettyServer.start();
|
jettyServer.start();
|
||||||
|
@ -424,7 +420,7 @@ public class AbstractJaxRsResourceProviderTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
@AfterClass
|
@AfterClass
|
||||||
public static void tearDownClass() throws Exception {
|
public static void tearDownClass() {
|
||||||
try {
|
try {
|
||||||
jettyServer.destroy();
|
jettyServer.destroy();
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
|
|
@ -1,34 +1,22 @@
|
||||||
package ca.uhn.fhir.jaxrs.server.util;
|
package ca.uhn.fhir.jaxrs.server.util;
|
||||||
|
|
||||||
import static org.junit.Assert.assertEquals;
|
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsDummyPatientProviderDstu3;
|
||||||
import static org.junit.Assert.assertTrue;
|
import ca.uhn.fhir.rest.api.RequestTypeEnum;
|
||||||
import static org.mockito.Mockito.doReturn;
|
import ca.uhn.fhir.rest.api.RestOperationTypeEnum;
|
||||||
import static org.mockito.Mockito.mock;
|
|
||||||
import static org.mockito.Mockito.spy;
|
|
||||||
import static org.mockito.Mockito.when;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.net.URI;
|
|
||||||
import java.net.URISyntaxException;
|
|
||||||
import java.util.Arrays;
|
|
||||||
|
|
||||||
import javax.ws.rs.HttpMethod;
|
|
||||||
import javax.ws.rs.core.MultivaluedHashMap;
|
|
||||||
import javax.ws.rs.core.MultivaluedMap;
|
|
||||||
import javax.ws.rs.core.UriInfo;
|
|
||||||
|
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.glassfish.jersey.internal.MapPropertiesDelegate;
|
import org.jboss.resteasy.specimpl.ResteasyHttpHeaders;
|
||||||
import org.glassfish.jersey.server.ContainerRequest;
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
|
||||||
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsDummyPatientProvider;
|
import javax.ws.rs.core.MultivaluedHashMap;
|
||||||
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsDummyPatientProviderDstu3;
|
import javax.ws.rs.core.MultivaluedMap;
|
||||||
import ca.uhn.fhir.jaxrs.server.util.JaxRsRequest;
|
import javax.ws.rs.core.UriInfo;
|
||||||
import ca.uhn.fhir.jaxrs.server.util.JaxRsResponse;
|
import java.io.IOException;
|
||||||
import ca.uhn.fhir.rest.api.RequestTypeEnum;
|
import java.net.URISyntaxException;
|
||||||
import ca.uhn.fhir.rest.api.RestOperationTypeEnum;
|
import java.util.Arrays;
|
||||||
|
|
||||||
|
import static org.junit.Assert.*;
|
||||||
|
import static org.mockito.Mockito.*;
|
||||||
|
|
||||||
public class JaxRsRequestDstu3Test {
|
public class JaxRsRequestDstu3Test {
|
||||||
|
|
||||||
|
@ -38,7 +26,7 @@ public class JaxRsRequestDstu3Test {
|
||||||
|
|
||||||
private JaxRsRequest details;
|
private JaxRsRequest details;
|
||||||
private MultivaluedMap<String, String> queryParameters = new MultivaluedHashMap<String, String>();
|
private MultivaluedMap<String, String> queryParameters = new MultivaluedHashMap<String, String>();
|
||||||
private ContainerRequest headers;
|
private ResteasyHttpHeaders headers;
|
||||||
private TestJaxRsDummyPatientProviderDstu3 provider;
|
private TestJaxRsDummyPatientProviderDstu3 provider;
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
|
@ -52,11 +40,11 @@ public class JaxRsRequestDstu3Test {
|
||||||
String headerValue = "location_value";
|
String headerValue = "location_value";
|
||||||
String headerValue2 = "location_value_2";
|
String headerValue2 = "location_value_2";
|
||||||
assertTrue(StringUtils.isBlank(details.getHeader(headerKey)));
|
assertTrue(StringUtils.isBlank(details.getHeader(headerKey)));
|
||||||
headers.header(headerKey, headerValue);
|
queryParameters.add(headerKey, headerValue);
|
||||||
assertEquals(headerValue, details.getHeader(headerKey));
|
assertEquals(headerValue, details.getHeader(headerKey));
|
||||||
assertEquals(Arrays.asList(headerValue), details.getHeaders(headerKey));
|
assertEquals(Arrays.asList(headerValue), details.getHeaders(headerKey));
|
||||||
|
|
||||||
headers.header(headerKey, headerValue2);
|
queryParameters.add(headerKey, headerValue2);
|
||||||
assertEquals(headerValue, details.getHeader(headerKey));
|
assertEquals(headerValue, details.getHeader(headerKey));
|
||||||
assertEquals(Arrays.asList(headerValue, headerValue2), details.getHeaders(headerKey));
|
assertEquals(Arrays.asList(headerValue, headerValue2), details.getHeaders(headerKey));
|
||||||
}
|
}
|
||||||
|
@ -98,9 +86,9 @@ public class JaxRsRequestDstu3Test {
|
||||||
assertEquals(this.provider, details.getServer());
|
assertEquals(this.provider, details.getServer());
|
||||||
}
|
}
|
||||||
|
|
||||||
public JaxRsRequest createRequestDetails() throws URISyntaxException {
|
public JaxRsRequest createRequestDetails() {
|
||||||
//headers
|
// headers
|
||||||
headers = new ContainerRequest(new URI(BASEURI), new URI(REQUESTURI), HttpMethod.GET, null, new MapPropertiesDelegate());
|
headers = new ResteasyHttpHeaders(queryParameters);
|
||||||
|
|
||||||
//uri info
|
//uri info
|
||||||
UriInfo uriInfo = mock(UriInfo.class);
|
UriInfo uriInfo = mock(UriInfo.class);
|
||||||
|
|
|
@ -1,31 +1,22 @@
|
||||||
package ca.uhn.fhir.jaxrs.server.util;
|
package ca.uhn.fhir.jaxrs.server.util;
|
||||||
|
|
||||||
import static org.junit.Assert.assertEquals;
|
|
||||||
import static org.junit.Assert.assertTrue;
|
|
||||||
import static org.mockito.Mockito.doReturn;
|
|
||||||
import static org.mockito.Mockito.mock;
|
|
||||||
import static org.mockito.Mockito.spy;
|
|
||||||
import static org.mockito.Mockito.when;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.net.URI;
|
|
||||||
import java.net.URISyntaxException;
|
|
||||||
import java.util.Arrays;
|
|
||||||
|
|
||||||
import javax.ws.rs.HttpMethod;
|
|
||||||
import javax.ws.rs.core.MultivaluedHashMap;
|
|
||||||
import javax.ws.rs.core.MultivaluedMap;
|
|
||||||
import javax.ws.rs.core.UriInfo;
|
|
||||||
|
|
||||||
import org.apache.commons.lang3.StringUtils;
|
|
||||||
import org.glassfish.jersey.internal.MapPropertiesDelegate;
|
|
||||||
import org.glassfish.jersey.server.ContainerRequest;
|
|
||||||
import org.junit.Before;
|
|
||||||
import org.junit.Test;
|
|
||||||
|
|
||||||
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsDummyPatientProvider;
|
import ca.uhn.fhir.jaxrs.server.test.TestJaxRsDummyPatientProvider;
|
||||||
import ca.uhn.fhir.rest.api.RequestTypeEnum;
|
import ca.uhn.fhir.rest.api.RequestTypeEnum;
|
||||||
import ca.uhn.fhir.rest.api.RestOperationTypeEnum;
|
import ca.uhn.fhir.rest.api.RestOperationTypeEnum;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.jboss.resteasy.specimpl.ResteasyHttpHeaders;
|
||||||
|
import org.junit.Before;
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
|
import javax.ws.rs.core.MultivaluedHashMap;
|
||||||
|
import javax.ws.rs.core.MultivaluedMap;
|
||||||
|
import javax.ws.rs.core.UriInfo;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.net.URISyntaxException;
|
||||||
|
import java.util.Arrays;
|
||||||
|
|
||||||
|
import static org.junit.Assert.*;
|
||||||
|
import static org.mockito.Mockito.*;
|
||||||
|
|
||||||
public class JaxRsRequestTest {
|
public class JaxRsRequestTest {
|
||||||
|
|
||||||
|
@ -35,7 +26,7 @@ public class JaxRsRequestTest {
|
||||||
|
|
||||||
private JaxRsRequest details;
|
private JaxRsRequest details;
|
||||||
private MultivaluedMap<String, String> queryParameters = new MultivaluedHashMap<String, String>();
|
private MultivaluedMap<String, String> queryParameters = new MultivaluedHashMap<String, String>();
|
||||||
private ContainerRequest headers;
|
private ResteasyHttpHeaders headers;
|
||||||
private TestJaxRsDummyPatientProvider provider;
|
private TestJaxRsDummyPatientProvider provider;
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
|
@ -49,11 +40,11 @@ public class JaxRsRequestTest {
|
||||||
String headerValue = "location_value";
|
String headerValue = "location_value";
|
||||||
String headerValue2 = "location_value_2";
|
String headerValue2 = "location_value_2";
|
||||||
assertTrue(StringUtils.isBlank(details.getHeader(headerKey)));
|
assertTrue(StringUtils.isBlank(details.getHeader(headerKey)));
|
||||||
headers.header(headerKey, headerValue);
|
queryParameters.add(headerKey, headerValue);
|
||||||
assertEquals(headerValue, details.getHeader(headerKey));
|
assertEquals(headerValue, details.getHeader(headerKey));
|
||||||
assertEquals(Arrays.asList(headerValue), details.getHeaders(headerKey));
|
assertEquals(Arrays.asList(headerValue), details.getHeaders(headerKey));
|
||||||
|
|
||||||
headers.header(headerKey, headerValue2);
|
queryParameters.add(headerKey, headerValue2);
|
||||||
assertEquals(headerValue, details.getHeader(headerKey));
|
assertEquals(headerValue, details.getHeader(headerKey));
|
||||||
assertEquals(Arrays.asList(headerValue, headerValue2), details.getHeaders(headerKey));
|
assertEquals(Arrays.asList(headerValue, headerValue2), details.getHeaders(headerKey));
|
||||||
}
|
}
|
||||||
|
@ -96,8 +87,10 @@ public class JaxRsRequestTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
public JaxRsRequest createRequestDetails() throws URISyntaxException {
|
public JaxRsRequest createRequestDetails() throws URISyntaxException {
|
||||||
//headers
|
// headers
|
||||||
headers = new ContainerRequest(new URI(BASEURI), new URI(REQUESTURI), HttpMethod.GET, null, new MapPropertiesDelegate());
|
// headers = new ContainerRequest(new URI(BASEURI), new URI(REQUESTURI), HttpMethod.GET, null,
|
||||||
|
// new MapPropertiesDelegate());
|
||||||
|
headers = new ResteasyHttpHeaders(queryParameters);
|
||||||
|
|
||||||
//uri info
|
//uri info
|
||||||
UriInfo uriInfo = mock(UriInfo.class);
|
UriInfo uriInfo = mock(UriInfo.class);
|
||||||
|
|
|
@ -58,24 +58,12 @@
|
||||||
<version>${jetty_version}</version>
|
<version>${jetty_version}</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.glassfish.jersey.core</groupId>
|
<groupId>org.jboss.resteasy</groupId>
|
||||||
<artifactId>jersey-server</artifactId>
|
<artifactId>resteasy-jaxrs</artifactId>
|
||||||
<version>${jersey_version}</version>
|
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.glassfish.jersey.containers</groupId>
|
<groupId>org.jboss.resteasy</groupId>
|
||||||
<artifactId>jersey-container-servlet-core</artifactId>
|
<artifactId>resteasy-client</artifactId>
|
||||||
<version>${jersey_version}</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.glassfish.jersey.containers</groupId>
|
|
||||||
<artifactId>jersey-container-jetty-http</artifactId>
|
|
||||||
<version>${jersey_version}</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.glassfish.jersey.media</groupId>
|
|
||||||
<artifactId>jersey-media-moxy</artifactId>
|
|
||||||
<version>${jersey_version}</version>
|
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>ch.qos.logback</groupId>
|
<groupId>ch.qos.logback</groupId>
|
||||||
|
|
|
@ -43,15 +43,15 @@ public class JaxRsPatientProviderDstu3Test {
|
||||||
System.out.println(ourPort);
|
System.out.println(ourPort);
|
||||||
jettyServer = new Server(ourPort);
|
jettyServer = new Server(ourPort);
|
||||||
jettyServer.setHandler(context);
|
jettyServer.setHandler(context);
|
||||||
ServletHolder jerseyServlet = context.addServlet(org.glassfish.jersey.servlet.ServletContainer.class, "/*");
|
ServletHolder jerseyServlet = context.addServlet(org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.class, "/*");
|
||||||
jerseyServlet.setInitOrder(0);
|
jerseyServlet.setInitOrder(0);
|
||||||
//@formatter:off
|
//@formatter:off
|
||||||
jerseyServlet.setInitParameter("jersey.config.server.provider.classnames",
|
jerseyServlet.setInitParameter("resteasy.resources",
|
||||||
StringUtils.join(Arrays.asList(
|
StringUtils.join(Arrays.asList(
|
||||||
JaxRsConformanceProviderDstu3.class.getCanonicalName(),
|
JaxRsConformanceProviderDstu3.class.getCanonicalName(),
|
||||||
JaxRsPatientRestProviderDstu3.class.getCanonicalName(),
|
JaxRsPatientRestProviderDstu3.class.getCanonicalName(),
|
||||||
JaxRsPageProviderDstu3.class.getCanonicalName()
|
JaxRsPageProviderDstu3.class.getCanonicalName()
|
||||||
), ";"));
|
), ","));
|
||||||
//@formatter:on
|
//@formatter:on
|
||||||
jettyServer.start();
|
jettyServer.start();
|
||||||
|
|
||||||
|
|
|
@ -47,15 +47,15 @@ public class JaxRsPatientProviderTest {
|
||||||
System.out.println(ourPort);
|
System.out.println(ourPort);
|
||||||
jettyServer = new Server(ourPort);
|
jettyServer = new Server(ourPort);
|
||||||
jettyServer.setHandler(context);
|
jettyServer.setHandler(context);
|
||||||
ServletHolder jerseyServlet = context.addServlet(org.glassfish.jersey.servlet.ServletContainer.class, "/*");
|
ServletHolder jerseyServlet = context.addServlet(org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.class, "/*");
|
||||||
jerseyServlet.setInitOrder(0);
|
jerseyServlet.setInitOrder(0);
|
||||||
//@formatter:off
|
//@formatter:off
|
||||||
jerseyServlet.setInitParameter("jersey.config.server.provider.classnames",
|
jerseyServlet.setInitParameter("resteasy.resources",
|
||||||
StringUtils.join(Arrays.asList(
|
StringUtils.join(Arrays.asList(
|
||||||
JaxRsConformanceProvider.class.getCanonicalName(),
|
JaxRsConformanceProvider.class.getCanonicalName(),
|
||||||
JaxRsPatientRestProvider.class.getCanonicalName(),
|
JaxRsPatientRestProvider.class.getCanonicalName(),
|
||||||
JaxRsPageProvider.class.getCanonicalName()
|
JaxRsPageProvider.class.getCanonicalName()
|
||||||
), ";"));
|
), ","));
|
||||||
//@formatter:on
|
//@formatter:on
|
||||||
jettyServer.start();
|
jettyServer.start();
|
||||||
|
|
||||||
|
|
|
@ -210,7 +210,17 @@
|
||||||
<scope>provided</scope>
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Dependencies that need to be added since JDK9
|
||||||
|
-->
|
||||||
|
<dependency>
|
||||||
|
<groupId>javax.annotation</groupId>
|
||||||
|
<artifactId>javax.annotation-api</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>javax.xml.bind</groupId>
|
||||||
|
<artifactId>jaxb-api</artifactId>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
<!-- Test Database -->
|
<!-- Test Database -->
|
||||||
<dependency>
|
<dependency>
|
||||||
|
|
|
@ -1,21 +1,31 @@
|
||||||
package ca.uhn.fhir.rest.server;
|
package ca.uhn.fhir.rest.server;
|
||||||
|
|
||||||
import static org.hamcrest.Matchers.containsString;
|
import ca.uhn.fhir.context.FhirContext;
|
||||||
import static org.hamcrest.Matchers.not;
|
import ca.uhn.fhir.model.api.IResource;
|
||||||
import static org.hamcrest.Matchers.startsWith;
|
import ca.uhn.fhir.model.dstu2.composite.IdentifierDt;
|
||||||
import static org.hamcrest.Matchers.stringContainsInOrder;
|
import ca.uhn.fhir.model.dstu2.resource.Bundle;
|
||||||
import static org.junit.Assert.assertEquals;
|
import ca.uhn.fhir.model.dstu2.resource.Bundle.Link;
|
||||||
import static org.junit.Assert.assertNull;
|
import ca.uhn.fhir.model.dstu2.resource.Patient;
|
||||||
import static org.junit.Assert.assertThat;
|
import ca.uhn.fhir.model.primitive.InstantDt;
|
||||||
|
import ca.uhn.fhir.rest.annotation.Create;
|
||||||
import java.util.*;
|
import ca.uhn.fhir.rest.annotation.RequiredParam;
|
||||||
import java.util.concurrent.TimeUnit;
|
import ca.uhn.fhir.rest.annotation.ResourceParam;
|
||||||
|
import ca.uhn.fhir.rest.annotation.Search;
|
||||||
|
import ca.uhn.fhir.rest.api.Constants;
|
||||||
|
import ca.uhn.fhir.rest.api.MethodOutcome;
|
||||||
|
import ca.uhn.fhir.rest.api.server.IBundleProvider;
|
||||||
|
import ca.uhn.fhir.rest.param.*;
|
||||||
|
import ca.uhn.fhir.util.PortUtil;
|
||||||
|
import ca.uhn.fhir.util.TestUtil;
|
||||||
|
import com.google.common.base.Charsets;
|
||||||
import org.apache.commons.io.IOUtils;
|
import org.apache.commons.io.IOUtils;
|
||||||
import org.apache.http.HttpResponse;
|
import org.apache.http.HttpResponse;
|
||||||
import org.apache.http.NameValuePair;
|
import org.apache.http.NameValuePair;
|
||||||
import org.apache.http.client.entity.UrlEncodedFormEntity;
|
import org.apache.http.client.entity.UrlEncodedFormEntity;
|
||||||
import org.apache.http.client.methods.*;
|
import org.apache.http.client.methods.CloseableHttpResponse;
|
||||||
|
import org.apache.http.client.methods.HttpGet;
|
||||||
|
import org.apache.http.client.methods.HttpPost;
|
||||||
|
import org.apache.http.client.methods.HttpPut;
|
||||||
import org.apache.http.entity.ContentType;
|
import org.apache.http.entity.ContentType;
|
||||||
import org.apache.http.entity.StringEntity;
|
import org.apache.http.entity.StringEntity;
|
||||||
import org.apache.http.impl.client.CloseableHttpClient;
|
import org.apache.http.impl.client.CloseableHttpClient;
|
||||||
|
@ -26,21 +36,18 @@ import org.eclipse.jetty.server.Server;
|
||||||
import org.eclipse.jetty.servlet.ServletHandler;
|
import org.eclipse.jetty.servlet.ServletHandler;
|
||||||
import org.eclipse.jetty.servlet.ServletHolder;
|
import org.eclipse.jetty.servlet.ServletHolder;
|
||||||
import org.hl7.fhir.instance.model.api.IBaseResource;
|
import org.hl7.fhir.instance.model.api.IBaseResource;
|
||||||
import org.junit.*;
|
import org.junit.AfterClass;
|
||||||
|
import org.junit.Before;
|
||||||
|
import org.junit.BeforeClass;
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
import ca.uhn.fhir.context.FhirContext;
|
import java.util.ArrayList;
|
||||||
import ca.uhn.fhir.model.api.IResource;
|
import java.util.Collections;
|
||||||
import ca.uhn.fhir.model.dstu2.composite.IdentifierDt;
|
import java.util.List;
|
||||||
import ca.uhn.fhir.model.dstu2.resource.Bundle;
|
import java.util.concurrent.TimeUnit;
|
||||||
import ca.uhn.fhir.model.dstu2.resource.Bundle.Link;
|
|
||||||
import ca.uhn.fhir.model.dstu2.resource.Patient;
|
import static org.hamcrest.Matchers.*;
|
||||||
import ca.uhn.fhir.model.primitive.InstantDt;
|
import static org.junit.Assert.*;
|
||||||
import ca.uhn.fhir.rest.annotation.*;
|
|
||||||
import ca.uhn.fhir.rest.api.Constants;
|
|
||||||
import ca.uhn.fhir.rest.api.MethodOutcome;
|
|
||||||
import ca.uhn.fhir.rest.api.server.IBundleProvider;
|
|
||||||
import ca.uhn.fhir.rest.param.*;
|
|
||||||
import ca.uhn.fhir.util.*;
|
|
||||||
|
|
||||||
public class SearchDstu2Test {
|
public class SearchDstu2Test {
|
||||||
|
|
||||||
|
@ -142,14 +149,14 @@ public class SearchDstu2Test {
|
||||||
ourLog.info(responseContent);
|
ourLog.info(responseContent);
|
||||||
|
|
||||||
assertEquals(200, status.getStatusLine().getStatusCode());
|
assertEquals(200, status.getStatusLine().getStatusCode());
|
||||||
assertThat(responseContent, PatternMatcher.pattern("id value..[0-9a-f-]+\\\""));
|
assertThat(responseContent, matchesPattern("id value..[0-9a-f-]+\\\""));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSearchBlacklist01Failing() throws Exception {
|
public void testSearchBlacklist01Failing() throws Exception {
|
||||||
HttpGet httpGet = new HttpGet("http://localhost:" + ourPort + "/Patient?_query=searchBlacklist01&ref.black1=value");
|
HttpGet httpGet = new HttpGet("http://localhost:" + ourPort + "/Patient?_query=searchBlacklist01&ref.black1=value");
|
||||||
HttpResponse status = ourClient.execute(httpGet);
|
HttpResponse status = ourClient.execute(httpGet);
|
||||||
String responseContent = IOUtils.toString(status.getEntity().getContent());
|
String responseContent = IOUtils.toString(status.getEntity().getContent(), Charsets.UTF_8);
|
||||||
IOUtils.closeQuietly(status.getEntity().getContent());
|
IOUtils.closeQuietly(status.getEntity().getContent());
|
||||||
ourLog.info(responseContent);
|
ourLog.info(responseContent);
|
||||||
assertEquals(400, status.getStatusLine().getStatusCode());
|
assertEquals(400, status.getStatusLine().getStatusCode());
|
||||||
|
@ -159,7 +166,7 @@ public class SearchDstu2Test {
|
||||||
public void testSearchBlacklist01Passing() throws Exception {
|
public void testSearchBlacklist01Passing() throws Exception {
|
||||||
HttpGet httpGet = new HttpGet("http://localhost:" + ourPort + "/Patient?_query=searchBlacklist01&ref.white1=value");
|
HttpGet httpGet = new HttpGet("http://localhost:" + ourPort + "/Patient?_query=searchBlacklist01&ref.white1=value");
|
||||||
HttpResponse status = ourClient.execute(httpGet);
|
HttpResponse status = ourClient.execute(httpGet);
|
||||||
String responseContent = IOUtils.toString(status.getEntity().getContent());
|
String responseContent = IOUtils.toString(status.getEntity().getContent(), Charsets.UTF_8);
|
||||||
IOUtils.closeQuietly(status.getEntity().getContent());
|
IOUtils.closeQuietly(status.getEntity().getContent());
|
||||||
ourLog.info(responseContent);
|
ourLog.info(responseContent);
|
||||||
assertEquals(200, status.getStatusLine().getStatusCode());
|
assertEquals(200, status.getStatusLine().getStatusCode());
|
||||||
|
|
|
@ -1,68 +0,0 @@
|
||||||
package ca.uhn.fhir.util;
|
|
||||||
|
|
||||||
import java.util.regex.Pattern;
|
|
||||||
|
|
||||||
import org.hamcrest.Factory;
|
|
||||||
import org.hamcrest.Matcher;
|
|
||||||
import org.hamcrest.TypeSafeMatcher;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Tests if the argument is a {@link CharSequence} that matches a regular expression.
|
|
||||||
*/
|
|
||||||
public class PatternMatcher extends TypeSafeMatcher<CharSequence> {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Creates a matcher that matches if the examined {@link CharSequence} matches the specified regular expression.
|
|
||||||
* <p/>
|
|
||||||
* For example:
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
* assertThat("myStringOfNote", pattern("[0-9]+"))
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @param regex
|
|
||||||
* the regular expression that the returned matcher will use to match any examined {@link CharSequence}
|
|
||||||
*/
|
|
||||||
@Factory
|
|
||||||
public static Matcher<CharSequence> pattern(String regex) {
|
|
||||||
return pattern(Pattern.compile(regex));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Creates a matcher that matches if the examined {@link CharSequence} matches the specified {@link Pattern}.
|
|
||||||
* <p/>
|
|
||||||
* For example:
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
* assertThat("myStringOfNote", Pattern.compile("[0-9]+"))
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @param pattern
|
|
||||||
* the pattern that the returned matcher will use to match any examined {@link CharSequence}
|
|
||||||
*/
|
|
||||||
@Factory
|
|
||||||
public static Matcher<CharSequence> pattern(Pattern pattern) {
|
|
||||||
return new PatternMatcher(pattern);
|
|
||||||
}
|
|
||||||
|
|
||||||
private final Pattern pattern;
|
|
||||||
|
|
||||||
public PatternMatcher(Pattern pattern) {
|
|
||||||
this.pattern = pattern;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean matchesSafely(CharSequence item) {
|
|
||||||
return pattern.matcher(item).find();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void describeMismatchSafely(CharSequence item, org.hamcrest.Description mismatchDescription) {
|
|
||||||
mismatchDescription.appendText("was \"").appendText(String.valueOf(item)).appendText("\"");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void describeTo(org.hamcrest.Description description) {
|
|
||||||
description.appendText("a string with pattern \"").appendText(String.valueOf(pattern)).appendText("\"");
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,15 +1,11 @@
|
||||||
package ca.uhn.fhir.rest.server;
|
package ca.uhn.fhir.rest.server;
|
||||||
|
|
||||||
import static org.hamcrest.Matchers.containsString;
|
import ca.uhn.fhir.context.FhirContext;
|
||||||
import static org.hamcrest.Matchers.not;
|
import ca.uhn.fhir.model.primitive.InstantDt;
|
||||||
import static org.hamcrest.Matchers.stringContainsInOrder;
|
import ca.uhn.fhir.rest.annotation.Search;
|
||||||
import static org.junit.Assert.assertEquals;
|
import ca.uhn.fhir.rest.api.Constants;
|
||||||
import static org.junit.Assert.assertNull;
|
import ca.uhn.fhir.rest.api.server.IBundleProvider;
|
||||||
import static org.junit.Assert.assertThat;
|
import ca.uhn.fhir.util.PortUtil;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.concurrent.TimeUnit;
|
|
||||||
|
|
||||||
import org.apache.commons.io.IOUtils;
|
import org.apache.commons.io.IOUtils;
|
||||||
import org.apache.http.HttpResponse;
|
import org.apache.http.HttpResponse;
|
||||||
import org.apache.http.client.methods.HttpGet;
|
import org.apache.http.client.methods.HttpGet;
|
||||||
|
@ -22,15 +18,15 @@ import org.eclipse.jetty.servlet.ServletHolder;
|
||||||
import org.hl7.fhir.instance.model.Bundle;
|
import org.hl7.fhir.instance.model.Bundle;
|
||||||
import org.hl7.fhir.instance.model.Patient;
|
import org.hl7.fhir.instance.model.Patient;
|
||||||
import org.hl7.fhir.instance.model.api.IBaseResource;
|
import org.hl7.fhir.instance.model.api.IBaseResource;
|
||||||
import org.junit.*;
|
import org.junit.AfterClass;
|
||||||
|
import org.junit.BeforeClass;
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
import ca.uhn.fhir.context.FhirContext;
|
import java.util.List;
|
||||||
import ca.uhn.fhir.model.primitive.InstantDt;
|
import java.util.concurrent.TimeUnit;
|
||||||
import ca.uhn.fhir.rest.annotation.Search;
|
|
||||||
import ca.uhn.fhir.rest.api.Constants;
|
import static org.hamcrest.Matchers.*;
|
||||||
import ca.uhn.fhir.rest.api.server.IBundleProvider;
|
import static org.junit.Assert.*;
|
||||||
import ca.uhn.fhir.util.PatternMatcherB;
|
|
||||||
import ca.uhn.fhir.util.PortUtil;
|
|
||||||
|
|
||||||
public class SearchHl7OrgDstu2Test {
|
public class SearchHl7OrgDstu2Test {
|
||||||
|
|
||||||
|
@ -86,7 +82,7 @@ public class SearchHl7OrgDstu2Test {
|
||||||
ourLog.info(responseContent);
|
ourLog.info(responseContent);
|
||||||
|
|
||||||
assertEquals(200, status.getStatusLine().getStatusCode());
|
assertEquals(200, status.getStatusLine().getStatusCode());
|
||||||
assertThat(responseContent, PatternMatcherB.pattern("id value..[0-9a-f-]+\\\""));
|
assertThat(responseContent, matchesPattern("id value..[0-9a-f-]+\\\""));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
|
@ -1,68 +0,0 @@
|
||||||
package ca.uhn.fhir.util;
|
|
||||||
|
|
||||||
import java.util.regex.Pattern;
|
|
||||||
|
|
||||||
import org.hamcrest.Factory;
|
|
||||||
import org.hamcrest.Matcher;
|
|
||||||
import org.hamcrest.TypeSafeMatcher;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Tests if the argument is a {@link CharSequence} that matches a regular expression.
|
|
||||||
*/
|
|
||||||
public class PatternMatcherB extends TypeSafeMatcher<CharSequence> {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Creates a matcher that matches if the examined {@link CharSequence} matches the specified regular expression.
|
|
||||||
* <p/>
|
|
||||||
* For example:
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
* assertThat("myStringOfNote", pattern("[0-9]+"))
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @param regex
|
|
||||||
* the regular expression that the returned matcher will use to match any examined {@link CharSequence}
|
|
||||||
*/
|
|
||||||
@Factory
|
|
||||||
public static Matcher<CharSequence> pattern(String regex) {
|
|
||||||
return pattern(Pattern.compile(regex));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Creates a matcher that matches if the examined {@link CharSequence} matches the specified {@link Pattern}.
|
|
||||||
* <p/>
|
|
||||||
* For example:
|
|
||||||
*
|
|
||||||
* <pre>
|
|
||||||
* assertThat("myStringOfNote", Pattern.compile("[0-9]+"))
|
|
||||||
* </pre>
|
|
||||||
*
|
|
||||||
* @param pattern
|
|
||||||
* the pattern that the returned matcher will use to match any examined {@link CharSequence}
|
|
||||||
*/
|
|
||||||
@Factory
|
|
||||||
public static Matcher<CharSequence> pattern(Pattern pattern) {
|
|
||||||
return new PatternMatcherB(pattern);
|
|
||||||
}
|
|
||||||
|
|
||||||
private final Pattern pattern;
|
|
||||||
|
|
||||||
public PatternMatcherB(Pattern pattern) {
|
|
||||||
this.pattern = pattern;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean matchesSafely(CharSequence item) {
|
|
||||||
return pattern.matcher(item).find();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void describeMismatchSafely(CharSequence item, org.hamcrest.Description mismatchDescription) {
|
|
||||||
mismatchDescription.appendText("was \"").appendText(String.valueOf(item)).appendText("\"");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void describeTo(org.hamcrest.Description description) {
|
|
||||||
description.appendText("a string with pattern \"").appendText(String.valueOf(pattern)).appendText("\"");
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,24 +1,5 @@
|
||||||
package ca.uhn.fhir.rest.client;
|
package ca.uhn.fhir.rest.client;
|
||||||
|
|
||||||
import static org.junit.Assert.assertFalse;
|
|
||||||
import static org.junit.Assert.assertNotNull;
|
|
||||||
import static org.mockito.Matchers.argThat;
|
|
||||||
import static org.mockito.Mockito.mock;
|
|
||||||
import static org.mockito.Mockito.times;
|
|
||||||
import static org.mockito.Mockito.verify;
|
|
||||||
import static org.mockito.Mockito.when;
|
|
||||||
|
|
||||||
import java.net.URL;
|
|
||||||
|
|
||||||
import org.eclipse.jetty.server.Server;
|
|
||||||
import org.eclipse.jetty.servlet.ServletHandler;
|
|
||||||
import org.eclipse.jetty.servlet.ServletHolder;
|
|
||||||
import org.hl7.fhir.r4.model.IdType;
|
|
||||||
import org.hl7.fhir.r4.model.Patient;
|
|
||||||
import org.junit.*;
|
|
||||||
import org.mockito.ArgumentMatcher;
|
|
||||||
import org.slf4j.LoggerFactory;
|
|
||||||
|
|
||||||
import ca.uhn.fhir.context.FhirContext;
|
import ca.uhn.fhir.context.FhirContext;
|
||||||
import ca.uhn.fhir.rest.annotation.IdParam;
|
import ca.uhn.fhir.rest.annotation.IdParam;
|
||||||
import ca.uhn.fhir.rest.annotation.Read;
|
import ca.uhn.fhir.rest.annotation.Read;
|
||||||
|
@ -35,6 +16,20 @@ import ch.qos.logback.classic.joran.JoranConfigurator;
|
||||||
import ch.qos.logback.classic.spi.ILoggingEvent;
|
import ch.qos.logback.classic.spi.ILoggingEvent;
|
||||||
import ch.qos.logback.classic.spi.LoggingEvent;
|
import ch.qos.logback.classic.spi.LoggingEvent;
|
||||||
import ch.qos.logback.core.Appender;
|
import ch.qos.logback.core.Appender;
|
||||||
|
import org.eclipse.jetty.server.Server;
|
||||||
|
import org.eclipse.jetty.servlet.ServletHandler;
|
||||||
|
import org.eclipse.jetty.servlet.ServletHolder;
|
||||||
|
import org.hl7.fhir.r4.model.IdType;
|
||||||
|
import org.hl7.fhir.r4.model.Patient;
|
||||||
|
import org.junit.*;
|
||||||
|
import org.mockito.ArgumentMatcher;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
|
import java.net.URL;
|
||||||
|
|
||||||
|
import static org.junit.Assert.*;
|
||||||
|
import static org.mockito.ArgumentMatchers.argThat;
|
||||||
|
import static org.mockito.Mockito.*;
|
||||||
|
|
||||||
public class LoggingInterceptorTest {
|
public class LoggingInterceptorTest {
|
||||||
|
|
||||||
|
@ -78,8 +73,8 @@ public class LoggingInterceptorTest {
|
||||||
|
|
||||||
verify(myMockAppender, times(2)).doAppend(argThat(new ArgumentMatcher<ILoggingEvent>() {
|
verify(myMockAppender, times(2)).doAppend(argThat(new ArgumentMatcher<ILoggingEvent>() {
|
||||||
@Override
|
@Override
|
||||||
public boolean matches(final Object argument) {
|
public boolean matches(final ILoggingEvent argument) {
|
||||||
String formattedMessage = ((LoggingEvent) argument).getFormattedMessage();
|
String formattedMessage = argument.getFormattedMessage();
|
||||||
System.out.flush();
|
System.out.flush();
|
||||||
System.out.println("** Got Message: " + formattedMessage);
|
System.out.println("** Got Message: " + formattedMessage);
|
||||||
System.out.flush();
|
System.out.flush();
|
||||||
|
@ -103,8 +98,8 @@ public class LoggingInterceptorTest {
|
||||||
|
|
||||||
verify(myMockAppender, times(1)).doAppend(argThat(new ArgumentMatcher<ILoggingEvent>() {
|
verify(myMockAppender, times(1)).doAppend(argThat(new ArgumentMatcher<ILoggingEvent>() {
|
||||||
@Override
|
@Override
|
||||||
public boolean matches(final Object argument) {
|
public boolean matches(final ILoggingEvent argument) {
|
||||||
String formattedMessage = ((LoggingEvent) argument).getFormattedMessage();
|
String formattedMessage = argument.getFormattedMessage();
|
||||||
System.out.println("Verifying: " + formattedMessage);
|
System.out.println("Verifying: " + formattedMessage);
|
||||||
return formattedMessage.replace("; ", ";").toLowerCase().contains("Content-Type: application/fhir+xml;charset=utf-8".toLowerCase());
|
return formattedMessage.replace("; ", ";").toLowerCase().contains("Content-Type: application/fhir+xml;charset=utf-8".toLowerCase());
|
||||||
}
|
}
|
||||||
|
@ -118,8 +113,8 @@ public class LoggingInterceptorTest {
|
||||||
|
|
||||||
verify(myMockAppender, times(1)).doAppend(argThat(new ArgumentMatcher<ILoggingEvent>() {
|
verify(myMockAppender, times(1)).doAppend(argThat(new ArgumentMatcher<ILoggingEvent>() {
|
||||||
@Override
|
@Override
|
||||||
public boolean matches(final Object argument) {
|
public boolean matches(final ILoggingEvent argument) {
|
||||||
String formattedMessage = ((LoggingEvent) argument).getFormattedMessage();
|
String formattedMessage = argument.getFormattedMessage();
|
||||||
System.out.println("Verifying: " + formattedMessage);
|
System.out.println("Verifying: " + formattedMessage);
|
||||||
return formattedMessage.replace("; ", ";").toLowerCase().contains("Content-Type: application/fhir+xml;charset=utf-8".toLowerCase());
|
return formattedMessage.replace("; ", ";").toLowerCase().contains("Content-Type: application/fhir+xml;charset=utf-8".toLowerCase());
|
||||||
}
|
}
|
||||||
|
|
29
pom.xml
29
pom.xml
|
@ -79,7 +79,7 @@
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.mockito</groupId>
|
<groupId>org.mockito</groupId>
|
||||||
<artifactId>mockito-all</artifactId>
|
<artifactId>mockito-core</artifactId>
|
||||||
<scope>test</scope>
|
<scope>test</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
@ -442,7 +442,7 @@
|
||||||
<commons_lang3_version>3.6</commons_lang3_version>
|
<commons_lang3_version>3.6</commons_lang3_version>
|
||||||
<derby_version>10.14.1.0</derby_version>
|
<derby_version>10.14.1.0</derby_version>
|
||||||
<error_prone_annotations_version>2.0.18</error_prone_annotations_version>
|
<error_prone_annotations_version>2.0.18</error_prone_annotations_version>
|
||||||
<guava_version>23.0</guava_version>
|
<guava_version>25.0-jre</guava_version>
|
||||||
<gson_version>2.8.1</gson_version>
|
<gson_version>2.8.1</gson_version>
|
||||||
<jaxb_api_version>2.3.0</jaxb_api_version>
|
<jaxb_api_version>2.3.0</jaxb_api_version>
|
||||||
<jaxb_core_version>2.3.0</jaxb_core_version>
|
<jaxb_core_version>2.3.0</jaxb_core_version>
|
||||||
|
@ -461,6 +461,7 @@
|
||||||
<maven_license_plugin_version>1.8</maven_license_plugin_version>
|
<maven_license_plugin_version>1.8</maven_license_plugin_version>
|
||||||
<phloc_schematron_version>2.7.1</phloc_schematron_version>
|
<phloc_schematron_version>2.7.1</phloc_schematron_version>
|
||||||
<phloc_commons_version>4.4.11</phloc_commons_version>
|
<phloc_commons_version>4.4.11</phloc_commons_version>
|
||||||
|
<resteasy_version>4.0.0.Beta3</resteasy_version>
|
||||||
<servicemix_saxon_version>9.5.1-5_1</servicemix_saxon_version>
|
<servicemix_saxon_version>9.5.1-5_1</servicemix_saxon_version>
|
||||||
<servicemix_xmlresolver_version>1.2_5</servicemix_xmlresolver_version>
|
<servicemix_xmlresolver_version>1.2_5</servicemix_xmlresolver_version>
|
||||||
<spring_version>5.0.3.RELEASE</spring_version>
|
<spring_version>5.0.3.RELEASE</spring_version>
|
||||||
|
@ -620,6 +621,11 @@
|
||||||
<artifactId>txtmark</artifactId>
|
<artifactId>txtmark</artifactId>
|
||||||
<version>0.16</version>
|
<version>0.16</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>javax.annotation</groupId>
|
||||||
|
<artifactId>javax.annotation-api</artifactId>
|
||||||
|
<version>1.3.2</version>
|
||||||
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>javax.ejb</groupId>
|
<groupId>javax.ejb</groupId>
|
||||||
<artifactId>ejb-api</artifactId>
|
<artifactId>ejb-api</artifactId>
|
||||||
|
@ -944,7 +950,7 @@
|
||||||
<artifactId>javax.json</artifactId>
|
<artifactId>javax.json</artifactId>
|
||||||
<version>1.0.4</version>
|
<version>1.0.4</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<!--<dependency>
|
||||||
<groupId>org.glassfish.jersey.core</groupId>
|
<groupId>org.glassfish.jersey.core</groupId>
|
||||||
<artifactId>jersey-server</artifactId>
|
<artifactId>jersey-server</artifactId>
|
||||||
<version>${jersey_version}</version>
|
<version>${jersey_version}</version>
|
||||||
|
@ -963,6 +969,16 @@
|
||||||
<groupId>org.glassfish.jersey.media</groupId>
|
<groupId>org.glassfish.jersey.media</groupId>
|
||||||
<artifactId>jersey-media-moxy</artifactId>
|
<artifactId>jersey-media-moxy</artifactId>
|
||||||
<version>${jersey_version}</version>
|
<version>${jersey_version}</version>
|
||||||
|
</dependency>-->
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.jboss.resteasy</groupId>
|
||||||
|
<artifactId>resteasy-jaxrs</artifactId>
|
||||||
|
<version>${resteasy_version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.jboss.resteasy</groupId>
|
||||||
|
<artifactId>resteasy-client</artifactId>
|
||||||
|
<version>${resteasy_version}</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.jscience</groupId>
|
<groupId>org.jscience</groupId>
|
||||||
|
@ -1011,8 +1027,8 @@
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.mockito</groupId>
|
<groupId>org.mockito</groupId>
|
||||||
<artifactId>mockito-all</artifactId>
|
<artifactId>mockito-core</artifactId>
|
||||||
<version>1.10.19</version>
|
<version>2.18.3</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.slf4j</groupId>
|
<groupId>org.slf4j</groupId>
|
||||||
|
@ -1270,7 +1286,7 @@
|
||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<artifactId>maven-surefire-plugin</artifactId>
|
<artifactId>maven-surefire-plugin</artifactId>
|
||||||
<version>2.20.1</version>
|
<version>2.21.0</version>
|
||||||
<configuration>
|
<configuration>
|
||||||
<redirectTestOutputToFile>true</redirectTestOutputToFile>
|
<redirectTestOutputToFile>true</redirectTestOutputToFile>
|
||||||
<runOrder>random</runOrder>
|
<runOrder>random</runOrder>
|
||||||
|
@ -1501,6 +1517,7 @@
|
||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<artifactId>maven-enforcer-plugin</artifactId>
|
<artifactId>maven-enforcer-plugin</artifactId>
|
||||||
|
<version>1.4.1</version>
|
||||||
<executions>
|
<executions>
|
||||||
<execution>
|
<execution>
|
||||||
<id>enforce-java</id>
|
<id>enforce-java</id>
|
||||||
|
|
Loading…
Reference in New Issue