You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by cs...@apache.org on 2017/08/31 11:55:26 UTC
aries-jax-rs-whiteboard git commit: Make tests use first port
available
Repository: aries-jax-rs-whiteboard
Updated Branches:
refs/heads/master 449f090b3 -> 990b9d24f
Make tests use first port available
Project: http://git-wip-us.apache.org/repos/asf/aries-jax-rs-whiteboard/repo
Commit: http://git-wip-us.apache.org/repos/asf/aries-jax-rs-whiteboard/commit/990b9d24
Tree: http://git-wip-us.apache.org/repos/asf/aries-jax-rs-whiteboard/tree/990b9d24
Diff: http://git-wip-us.apache.org/repos/asf/aries-jax-rs-whiteboard/diff/990b9d24
Branch: refs/heads/master
Commit: 990b9d24f2f0f113906ed93940868e22de8be671
Parents: 449f090
Author: Carlos Sierra <cs...@apache.org>
Authored: Thu Aug 31 13:54:38 2017 +0200
Committer: Carlos Sierra <cs...@apache.org>
Committed: Thu Aug 31 13:54:38 2017 +0200
----------------------------------------------------------------------
jax-rs.itests/itest.bndrun | 2 +-
jax-rs.itests/src/main/java/test/JaxrsTest.java | 448 ++++++-------------
.../main/java/test/WhiteboardFactoryTest.java | 68 +--
.../java/test/WhiteboardTargetFilterTest.java | 37 +-
.../src/main/java/test/types/TestHelper.java | 68 ++-
.../aries/jax/rs/whiteboard/internal/Utils.java | 3 +-
6 files changed, 233 insertions(+), 393 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/aries-jax-rs-whiteboard/blob/990b9d24/jax-rs.itests/itest.bndrun
----------------------------------------------------------------------
diff --git a/jax-rs.itests/itest.bndrun b/jax-rs.itests/itest.bndrun
index 193ab99..d1f4237 100644
--- a/jax-rs.itests/itest.bndrun
+++ b/jax-rs.itests/itest.bndrun
@@ -17,7 +17,7 @@
logback.configurationFile=file:${.}/logback.xml,\
osgi.console.enable.builtin=false, \
osgi.console=, \
- org.osgi.service.http.port=65532
+ org.osgi.service.http.port=*
-runblacklist:\
osgi.identity;filter:='(osgi.identity=org.osgi.compendium)',\
osgi.identity;filter:='(osgi.identity=osgi.cmpn)'
http://git-wip-us.apache.org/repos/asf/aries-jax-rs-whiteboard/blob/990b9d24/jax-rs.itests/src/main/java/test/JaxrsTest.java
----------------------------------------------------------------------
diff --git a/jax-rs.itests/src/main/java/test/JaxrsTest.java b/jax-rs.itests/src/main/java/test/JaxrsTest.java
index 0661a62..16fe6c4 100644
--- a/jax-rs.itests/src/main/java/test/JaxrsTest.java
+++ b/jax-rs.itests/src/main/java/test/JaxrsTest.java
@@ -17,7 +17,6 @@
package test;
-import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
import static org.osgi.service.jaxrs.whiteboard.JaxRSWhiteboardConstants.*;
@@ -33,7 +32,6 @@ import org.junit.Test;
import org.osgi.framework.Bundle;
import org.osgi.framework.PrototypeServiceFactory;
import org.osgi.framework.ServiceFactory;
-import org.osgi.framework.ServiceReference;
import org.osgi.framework.ServiceRegistration;
import org.osgi.service.jaxrs.runtime.JaxRSServiceRuntime;
@@ -51,7 +49,6 @@ import test.types.TestFilter;
import test.types.TestFilterAndExceptionMapper;
import test.types.TestHelper;
-import javax.ws.rs.client.Client;
import javax.ws.rs.client.WebTarget;
import javax.ws.rs.container.ContainerResponseFilter;
import javax.ws.rs.core.Application;
@@ -64,10 +61,6 @@ import static org.junit.Assert.assertNull;
public class JaxrsTest extends TestHelper {
- public static final long SERVICE_TIMEOUT = 15000L;
- private ServiceTracker<JaxRSServiceRuntime, JaxRSServiceRuntime>
- _runtimeTracker;
-
private Collection<ServiceRegistration<?>> _registrations =
new ArrayList<>();
@@ -94,22 +87,13 @@ public class JaxrsTest extends TestHelper {
@Test
public void testApplication() throws InterruptedException {
-
- JaxRSServiceRuntime runtime = getJaxRSServiceRuntime();
-
- assertNotNull(runtime);
-
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
registerApplication(new TestApplication());
- assertEquals(1, runtime.getRuntimeDTO().applicationDTOs.length);
-
- Client client = createClient();
+ assertEquals(1, _runtime.getRuntimeDTO().applicationDTOs.length);
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("/test-application");
+ WebTarget webTarget = createDefaultTarget().path("/test-application");
Response response = webTarget.request().get();
@@ -119,58 +103,35 @@ public class JaxrsTest extends TestHelper {
@Test
public void testApplicationChangeCount() throws Exception {
- ServiceTracker<JaxRSServiceRuntime, JaxRSServiceRuntime>
- runtimeTracker = new ServiceTracker<>(
- bundleContext, JaxRSServiceRuntime.class, null);
-
- try {
- runtimeTracker.open();
-
- JaxRSServiceRuntime runtime = runtimeTracker.waitForService(
- SERVICE_TIMEOUT);
+ Long changeCount = (Long)_runtimeServiceReference.getProperty(
+ "service.changecount");
- assertNotNull(runtime);
-
- ServiceReference<JaxRSServiceRuntime> serviceReference =
- runtimeTracker.getServiceReference();
-
- Long changeCount = (Long)serviceReference.getProperty(
- "service.changecount");
-
- Dictionary<String, Object> properties = new Hashtable<>();
+ Dictionary<String, Object> properties = new Hashtable<>();
- properties.put(JAX_RS_APPLICATION_BASE, "/test-counter");
+ properties.put(JAX_RS_APPLICATION_BASE, "/test-counter");
- ServiceRegistration<?> serviceRegistration =
- bundleContext.registerService(
- Application.class, new TestApplication(), properties);
+ ServiceRegistration<?> serviceRegistration =
+ bundleContext.registerService(
+ Application.class, new TestApplication(), properties);
- Long newCount = (Long)serviceReference.getProperty(
- "service.changecount");
+ Long newCount = (Long)_runtimeServiceReference.getProperty(
+ "service.changecount");
- assertTrue(changeCount < newCount);
+ assertTrue(changeCount < newCount);
- changeCount = newCount;
+ changeCount = newCount;
- serviceRegistration.unregister();
+ serviceRegistration.unregister();
- newCount = (Long)serviceReference.getProperty(
- "service.changecount");
+ newCount = (Long)_runtimeServiceReference.getProperty(
+ "service.changecount");
- assertTrue(changeCount < newCount);
- }
- finally {
- runtimeTracker.close();
- }
+ assertTrue(changeCount < newCount);
}
@Test
public void testApplicationConflict() {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("test-application");
+ WebTarget webTarget = createDefaultTarget().path("test-application");
ServiceRegistration<?> serviceRegistration2;
@@ -178,17 +139,14 @@ public class JaxrsTest extends TestHelper {
Response response = webTarget.request().get();
- assertEquals(
- "Hello application",
- response.readEntity(String.class));
+ assertEquals("Hello application", response.readEntity(String.class));
serviceRegistration2 = registerApplication(
new TestApplicationConflict(), "service.ranking", -1);
response = webTarget.request().get();
- assertEquals(
- "Hello application", response.readEntity(String.class));
+ assertEquals("Hello application", response.readEntity(String.class));
assertEquals(
Response.Status.NOT_FOUND.getStatusCode(),
@@ -198,16 +156,12 @@ public class JaxrsTest extends TestHelper {
response = webTarget.request().get();
- assertEquals(
- "Hello application", response.readEntity(String.class));
+ assertEquals("Hello application", response.readEntity(String.class));
}
@Test
public void testApplicationEndpointExtension() {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
+ WebTarget webTarget = createDefaultTarget().
path("/test-application").
path("extended");
@@ -226,10 +180,7 @@ public class JaxrsTest extends TestHelper {
public void testApplicationEndpointExtensionReadd()
throws InterruptedException {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
+ WebTarget webTarget = createDefaultTarget().
path("/test-application").
path("extended");
@@ -263,11 +214,7 @@ public class JaxrsTest extends TestHelper {
@Test
public void testApplicationOverride() throws InterruptedException {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("test-application");
+ WebTarget webTarget = createDefaultTarget().path("test-application");
JaxRSServiceRuntime runtime = getJaxRSServiceRuntime();
@@ -283,9 +230,7 @@ public class JaxrsTest extends TestHelper {
Response response = webTarget.request().get();
- assertEquals(
- "Hello application",
- response.readEntity(String.class));
+ assertEquals("Hello application", response.readEntity(String.class));
serviceRegistration2 = registerApplication(
new TestApplicationConflict(), "service.ranking", 1);
@@ -296,8 +241,7 @@ public class JaxrsTest extends TestHelper {
response = webTarget.request().get();
assertEquals(
- "Hello application conflict",
- response.readEntity(String.class));
+ "Hello application conflict", response.readEntity(String.class));
assertEquals(
"conflict",
@@ -310,17 +254,12 @@ public class JaxrsTest extends TestHelper {
response = webTarget.request().get();
- assertEquals(
- "Hello application", response.readEntity(String.class));
+ assertEquals("Hello application", response.readEntity(String.class));
}
@Test
public void testApplicationProviderExtension() {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("/test-application");
+ WebTarget webTarget = createDefaultTarget().path("/test-application");
registerApplication(new TestApplication());
@@ -330,20 +269,14 @@ public class JaxrsTest extends TestHelper {
Response response = webTarget.request().get();
- assertEquals(
- "Hello application",
- response.readEntity(String.class));
+ assertEquals("Hello application", response.readEntity(String.class));
assertEquals("true", response.getHeaders().getFirst("Filtered"));
}
@Test
public void testApplicationProviderExtensionReadd() {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("/test-application");
+ WebTarget webTarget = createDefaultTarget().path("/test-application");
registerApplication(new TestApplication());
@@ -367,8 +300,7 @@ public class JaxrsTest extends TestHelper {
response = webTarget.request().get();
assertEquals(
- response.getHeaders().getFirst("Filtered"),
- "true");
+ response.getHeaders().getFirst("Filtered"), "true");
}
finally {
if (filterRegistration != null) {
@@ -384,16 +316,10 @@ public class JaxrsTest extends TestHelper {
@Test
public void testApplicationReadd() throws InterruptedException {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("/test-application");
-
- JaxRSServiceRuntime runtime = getJaxRSServiceRuntime();
+ WebTarget webTarget = createDefaultTarget().path("/test-application");
Runnable testCase = () -> {
- int applications = runtime.getRuntimeDTO().applicationDTOs.length;
+ int applications = _runtime.getRuntimeDTO().applicationDTOs.length;
assertEquals(404, webTarget.request().get().getStatus());
@@ -412,7 +338,7 @@ public class JaxrsTest extends TestHelper {
assertEquals(
applications + 1,
- runtime.getRuntimeDTO().applicationDTOs.length);
+ _runtime.getRuntimeDTO().applicationDTOs.length);
}
finally {
if (serviceRegistration != null) {
@@ -430,25 +356,17 @@ public class JaxrsTest extends TestHelper {
public void testApplicationWithDedicatedExtension()
throws InterruptedException {
- JaxRSServiceRuntime runtime = getJaxRSServiceRuntime();
-
- assertNotNull(runtime);
-
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
registerApplication(
new TestApplication(),
JAX_RS_EXTENSION_SELECT,
- String.format("(%s=%s)", JAX_RS_NAME, "Filter"),
- "propertyKey", "propertyValue");
+ String.format("(%s=%s)", JAX_RS_NAME, "Filter"), "propertyKey",
+ "propertyValue");
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
-
- Client client = createClient();
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("/test-application");
+ WebTarget webTarget = createDefaultTarget().path("/test-application");
Response response = webTarget.request().get();
@@ -457,7 +375,7 @@ public class JaxrsTest extends TestHelper {
ServiceRegistration<?> filterRegistration = registerExtension(
"Filter", JAX_RS_APPLICATION_SELECT, "(propertyKey=propertyValue)");
- assertEquals(1, runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(1, _runtime.getRuntimeDTO().applicationDTOs.length);
response = webTarget.request().get();
@@ -465,7 +383,7 @@ public class JaxrsTest extends TestHelper {
filterRegistration.unregister();
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
response = webTarget.request().get();
@@ -474,11 +392,7 @@ public class JaxrsTest extends TestHelper {
@Test
public void testApplicationWithError() throws InterruptedException {
- JaxRSServiceRuntime runtime = getJaxRSServiceRuntime();
-
- assertNotNull(runtime);
-
- RuntimeDTO runtimeDTO = runtime.getRuntimeDTO();
+ RuntimeDTO runtimeDTO = _runtime.getRuntimeDTO();
assertEquals(0, runtimeDTO.applicationDTOs.length);
assertEquals(0, runtimeDTO.failedExtensionDTOs.length);
@@ -493,7 +407,7 @@ public class JaxrsTest extends TestHelper {
});
- runtimeDTO = runtime.getRuntimeDTO();
+ runtimeDTO = _runtime.getRuntimeDTO();
assertEquals(0, runtimeDTO.applicationDTOs.length);
assertEquals(1, runtimeDTO.failedApplicationDTOs.length);
@@ -501,17 +415,13 @@ public class JaxrsTest extends TestHelper {
DTOConstants.FAILURE_REASON_UNKNOWN,
runtimeDTO.failedApplicationDTOs[0].failureReason);
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("/test-application");
+ WebTarget webTarget = createDefaultTarget().path("/test-application");
assertEquals(404, webTarget.request().get().getStatus());
serviceRegistration.unregister();
- runtimeDTO = runtime.getRuntimeDTO();
+ runtimeDTO = _runtime.getRuntimeDTO();
assertEquals(0, runtimeDTO.applicationDTOs.length);
assertEquals(0, runtimeDTO.failedApplicationDTOs.length);
@@ -521,24 +431,15 @@ public class JaxrsTest extends TestHelper {
public void testApplicationWithExtensionDryRun()
throws InterruptedException {
- JaxRSServiceRuntime runtime = getJaxRSServiceRuntime();
-
- assertNotNull(runtime);
-
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
registerApplication(
- new TestApplication(),
- JAX_RS_EXTENSION_SELECT,
+ new TestApplication(), JAX_RS_EXTENSION_SELECT,
String.format("(%s=%s)", JAX_RS_NAME, "Filter"));
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("/test-application");
+ WebTarget webTarget = createDefaultTarget().path("/test-application");
Response response = webTarget.request().get();
@@ -547,7 +448,7 @@ public class JaxrsTest extends TestHelper {
ServiceRegistration<?> filterRegistration = registerExtension(
"Filter", JAX_RS_APPLICATION_SELECT, "(unexistent=application)");
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
response = webTarget.request().get();
@@ -555,7 +456,7 @@ public class JaxrsTest extends TestHelper {
filterRegistration.unregister();
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
response = webTarget.request().get();
@@ -566,24 +467,16 @@ public class JaxrsTest extends TestHelper {
public void testApplicationWithGenericExtension()
throws InterruptedException {
- JaxRSServiceRuntime runtime = getJaxRSServiceRuntime();
-
- assertNotNull(runtime);
-
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
registerApplication(
new TestApplication(),
JAX_RS_EXTENSION_SELECT,
String.format("(%s=%s)", JAX_RS_NAME, "Filter"));
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
-
- Client client = createClient();
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("/test-application");
+ WebTarget webTarget = createDefaultTarget().path("/test-application");
Response response = webTarget.request().get();
@@ -591,7 +484,7 @@ public class JaxrsTest extends TestHelper {
ServiceRegistration<?> filterRegistration = registerExtension("Filter");
- assertEquals(1, runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(1, _runtime.getRuntimeDTO().applicationDTOs.length);
response = webTarget.request().get();
@@ -599,7 +492,7 @@ public class JaxrsTest extends TestHelper {
filterRegistration.unregister();
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
response = webTarget.request().get();
@@ -608,11 +501,7 @@ public class JaxrsTest extends TestHelper {
@Test
public void testEndpointsOverride() {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("conflict");
+ WebTarget webTarget = createDefaultTarget().path("conflict");
registerAddon(new TestAddonConflict());
@@ -644,11 +533,7 @@ public class JaxrsTest extends TestHelper {
public void testExtensionRegisterOnlySignalledInterfaces()
throws InterruptedException {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("test-application");
+ WebTarget webTarget = createDefaultTarget().path("test-application");
registerApplication(new TestApplicationWithException());
@@ -668,22 +553,16 @@ public class JaxrsTest extends TestHelper {
public void testGettableAndNotGettableApplication()
throws InterruptedException {
- Client client = createClient();
+ WebTarget webTarget = createDefaultTarget().path("test-application");
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("test-application");
-
- JaxRSServiceRuntime runtime = getJaxRSServiceRuntime();
-
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
- assertEquals(0, runtime.getRuntimeDTO().failedApplicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().failedApplicationDTOs.length);
ServiceRegistration<Application> serviceRegistration =
registerApplication(new TestApplication());
- assertEquals(1, runtime.getRuntimeDTO().applicationDTOs.length);
- assertEquals(0, runtime.getRuntimeDTO().failedApplicationDTOs.length);
+ assertEquals(1, _runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().failedApplicationDTOs.length);
assertEquals(
"Hello application",
@@ -692,12 +571,12 @@ public class JaxrsTest extends TestHelper {
ServiceRegistration<Application> ungettableServiceRegistration =
registerUngettableApplication("service.ranking", 1);
- assertEquals(1, runtime.getRuntimeDTO().applicationDTOs.length);
- assertEquals(1, runtime.getRuntimeDTO().failedApplicationDTOs.length);
+ assertEquals(1, _runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(1, _runtime.getRuntimeDTO().failedApplicationDTOs.length);
assertEquals(
DTOConstants.FAILURE_REASON_SERVICE_NOT_GETTABLE,
- runtime.getRuntimeDTO().failedApplicationDTOs[0].failureReason);
+ _runtime.getRuntimeDTO().failedApplicationDTOs[0].failureReason);
assertEquals(
"Hello application",
@@ -705,37 +584,31 @@ public class JaxrsTest extends TestHelper {
serviceRegistration.unregister();
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
- assertEquals(1, runtime.getRuntimeDTO().failedApplicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(1, _runtime.getRuntimeDTO().failedApplicationDTOs.length);
assertEquals(404, webTarget.request().get().getStatus());
ungettableServiceRegistration.unregister();
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
- assertEquals(0, runtime.getRuntimeDTO().failedApplicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().failedApplicationDTOs.length);
}
@Test
public void testGettableAndShadowedNotGettableApplication()
throws InterruptedException {
- Client client = createClient();
+ WebTarget webTarget = createDefaultTarget().path("test-application");
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("test-application");
-
- JaxRSServiceRuntime runtime = getJaxRSServiceRuntime();
-
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
- assertEquals(0, runtime.getRuntimeDTO().failedApplicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().failedApplicationDTOs.length);
ServiceRegistration<Application> serviceRegistration =
registerApplication(new TestApplication());
- assertEquals(1, runtime.getRuntimeDTO().applicationDTOs.length);
- assertEquals(0, runtime.getRuntimeDTO().failedApplicationDTOs.length);
+ assertEquals(1, _runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().failedApplicationDTOs.length);
assertEquals(
"Hello application",
@@ -744,12 +617,12 @@ public class JaxrsTest extends TestHelper {
ServiceRegistration<Application> ungettableServiceRegistration =
registerUngettableApplication("service.ranking", -1);
- assertEquals(1, runtime.getRuntimeDTO().applicationDTOs.length);
- assertEquals(1, runtime.getRuntimeDTO().failedApplicationDTOs.length);
+ assertEquals(1, _runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(1, _runtime.getRuntimeDTO().failedApplicationDTOs.length);
assertEquals(
DTOConstants.FAILURE_REASON_SERVICE_NOT_GETTABLE,
- runtime.getRuntimeDTO().failedApplicationDTOs[0].failureReason);
+ _runtime.getRuntimeDTO().failedApplicationDTOs[0].failureReason);
assertEquals(
"Hello application",
@@ -757,38 +630,31 @@ public class JaxrsTest extends TestHelper {
serviceRegistration.unregister();
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
- assertEquals(1, runtime.getRuntimeDTO().failedApplicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(1, _runtime.getRuntimeDTO().failedApplicationDTOs.length);
assertEquals(404, webTarget.request().get().getStatus());
ungettableServiceRegistration.unregister();
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
- assertEquals(0, runtime.getRuntimeDTO().failedApplicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().failedApplicationDTOs.length);
}
@Test
public void testInvalidExtension() throws InterruptedException {
- Client client = createClient();
+ WebTarget webTarget = createDefaultTarget().path("test");
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("test");
-
- JaxRSServiceRuntime runtime = getJaxRSServiceRuntime();
+ RuntimeDTO runtimeDTO = _runtime.getRuntimeDTO();
- RuntimeDTO runtimeDTO = runtime.getRuntimeDTO();
-
- assertEquals(
- 0, runtimeDTO.defaultApplication.extensionDTOs.length);
+ assertEquals(0, runtimeDTO.defaultApplication.extensionDTOs.length);
registerAddon(new TestAddon());
- ServiceRegistration<?> filterRegistration =
- registerInvalidExtension("Filter");
+ ServiceRegistration<?> filterRegistration = registerInvalidExtension(
+ "Filter");
- runtimeDTO = runtime.getRuntimeDTO();
+ runtimeDTO = _runtime.getRuntimeDTO();
assertEquals(0, runtimeDTO.defaultApplication.extensionDTOs.length);
@@ -811,7 +677,7 @@ public class JaxrsTest extends TestHelper {
filterRegistration.unregister();
- runtimeDTO = runtime.getRuntimeDTO();
+ runtimeDTO = _runtime.getRuntimeDTO();
assertEquals(0, runtimeDTO.defaultApplication.extensionDTOs.length);
@@ -820,98 +686,72 @@ public class JaxrsTest extends TestHelper {
@Test
public void testNotGettableApplication() throws InterruptedException {
- JaxRSServiceRuntime runtime = getJaxRSServiceRuntime();
-
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
- assertEquals(0, runtime.getRuntimeDTO().failedApplicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().failedApplicationDTOs.length);
ServiceRegistration<Application> serviceRegistration =
registerUngettableApplication();
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
- assertEquals(1, runtime.getRuntimeDTO().failedApplicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(1, _runtime.getRuntimeDTO().failedApplicationDTOs.length);
assertEquals(
DTOConstants.FAILURE_REASON_SERVICE_NOT_GETTABLE,
- runtime.getRuntimeDTO().failedApplicationDTOs[0].failureReason);
+ _runtime.getRuntimeDTO().failedApplicationDTOs[0].failureReason);
serviceRegistration.unregister();
- assertEquals(0, runtime.getRuntimeDTO().applicationDTOs.length);
- assertEquals(0, runtime.getRuntimeDTO().failedApplicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().applicationDTOs.length);
+ assertEquals(0, _runtime.getRuntimeDTO().failedApplicationDTOs.length);
}
@Test
public void testResourcesChangeCount() throws Exception {
- ServiceTracker<JaxRSServiceRuntime, JaxRSServiceRuntime>
- runtimeTracker = new ServiceTracker<>(
- bundleContext, JaxRSServiceRuntime.class, null);
-
- try {
- runtimeTracker.open();
-
- JaxRSServiceRuntime runtime = runtimeTracker.waitForService(15000L);
-
- assertNotNull(runtime);
+ Long changeCount = (Long)_runtimeServiceReference.getProperty(
+ "service.changecount");
- ServiceReference<JaxRSServiceRuntime> serviceReference =
- runtimeTracker.getServiceReference();
-
- Long changeCount = (Long)serviceReference.getProperty(
- "service.changecount");
-
- ServiceRegistration<?> serviceRegistration =
- registerAddon(new TestAddon());
+ ServiceRegistration<?> serviceRegistration = registerAddon(
+ new TestAddon());
- Long newCount = (Long)serviceReference.getProperty(
- "service.changecount");
+ Long newCount = (Long)_runtimeServiceReference.getProperty(
+ "service.changecount");
- assertTrue(changeCount < newCount);
+ assertTrue(changeCount < newCount);
- changeCount = newCount;
+ changeCount = newCount;
- ServiceRegistration<?> serviceRegistration2 =
- registerAddon(new TestAddon());
+ ServiceRegistration<?> serviceRegistration2 = registerAddon(
+ new TestAddon());
- newCount = (Long)serviceReference.getProperty(
- "service.changecount");
+ newCount = (Long)_runtimeServiceReference.getProperty(
+ "service.changecount");
- assertTrue(changeCount < newCount);
+ assertTrue(changeCount < newCount);
- changeCount = newCount;
+ changeCount = newCount;
- serviceRegistration.unregister();
+ serviceRegistration.unregister();
- newCount = (Long)serviceReference.getProperty(
- "service.changecount");
+ newCount = (Long)_runtimeServiceReference.getProperty(
+ "service.changecount");
- assertTrue(changeCount < newCount);
+ assertTrue(changeCount < newCount);
- changeCount = newCount;
+ changeCount = newCount;
- serviceRegistration2.unregister();
+ serviceRegistration2.unregister();
- newCount = (Long)serviceReference.getProperty(
- "service.changecount");
+ newCount = (Long)_runtimeServiceReference.getProperty(
+ "service.changecount");
- assertTrue(changeCount < newCount);
- }
- finally {
- runtimeTracker.close();
- }
+ assertTrue(changeCount < newCount);
}
@Test
public void testStandaloneEndPoint() throws InterruptedException {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("test");
-
- JaxRSServiceRuntime runtime = getJaxRSServiceRuntime();
+ WebTarget webTarget = createDefaultTarget().path("test");
- runtime.getRuntimeDTO();
+ _runtime.getRuntimeDTO();
registerAddon(new TestAddon());
@@ -924,10 +764,8 @@ public class JaxrsTest extends TestHelper {
@Test
public void testStandaloneEndPointPrototypeLifecycle() {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
+ WebTarget webTarget =
+ createDefaultTarget().
path("/test-addon-lifecycle");
registerAddonLifecycle(false, JAX_RS_RESOURCE, "true");
@@ -941,11 +779,7 @@ public class JaxrsTest extends TestHelper {
@Test
public void testStandaloneEndPointReadd() {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("test");
+ WebTarget webTarget = createDefaultTarget().path("test");
Runnable testCase = () -> {
assertEquals(404, webTarget.request().get().getStatus());
@@ -973,11 +807,9 @@ public class JaxrsTest extends TestHelper {
@Test
public void testStandaloneEndPointSingletonLifecycle() {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("/test-addon-lifecycle");
+ WebTarget webTarget =
+ createDefaultTarget().
+ path("/test-addon-lifecycle");
registerAddonLifecycle(true, JAX_RS_RESOURCE, "true");
@@ -992,11 +824,7 @@ public class JaxrsTest extends TestHelper {
public void testStandaloneEndpointWithExtensionsDependencies()
throws InterruptedException {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("test");
+ WebTarget webTarget = createDefaultTarget().path("test");
JaxRSServiceRuntime runtime = getJaxRSServiceRuntime();
@@ -1091,11 +919,7 @@ public class JaxrsTest extends TestHelper {
@Test
public void testStandaloneFilter() throws InterruptedException {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("test");
+ WebTarget webTarget = createDefaultTarget().path("test");
JaxRSServiceRuntime runtime = getJaxRSServiceRuntime();
@@ -1128,11 +952,7 @@ public class JaxrsTest extends TestHelper {
@Test
public void testStandaloneFilterReadd() {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("test");
+ WebTarget webTarget = createDefaultTarget().path("test");
registerAddon(new TestAddon());
@@ -1171,11 +991,7 @@ public class JaxrsTest extends TestHelper {
@Test
public void testUngettableExtension() throws InterruptedException {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("test");
+ WebTarget webTarget = createDefaultTarget().path("test");
JaxRSServiceRuntime runtime = getJaxRSServiceRuntime();
http://git-wip-us.apache.org/repos/asf/aries-jax-rs-whiteboard/blob/990b9d24/jax-rs.itests/src/main/java/test/WhiteboardFactoryTest.java
----------------------------------------------------------------------
diff --git a/jax-rs.itests/src/main/java/test/WhiteboardFactoryTest.java b/jax-rs.itests/src/main/java/test/WhiteboardFactoryTest.java
index 24f29b3..0f1bb86 100644
--- a/jax-rs.itests/src/main/java/test/WhiteboardFactoryTest.java
+++ b/jax-rs.itests/src/main/java/test/WhiteboardFactoryTest.java
@@ -17,11 +17,9 @@
package test;
+import static junit.framework.TestCase.assertNotNull;
import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
import static org.osgi.service.http.whiteboard.HttpWhiteboardConstants.HTTP_WHITEBOARD_SERVLET_PATTERN;
-import static org.osgi.service.jaxrs.whiteboard.JaxRSWhiteboardConstants.JAX_RS_APPLICATION_BASE;
import java.util.Dictionary;
import java.util.Hashtable;
@@ -31,39 +29,17 @@ import org.osgi.framework.BundleContext;
import org.osgi.framework.Constants;
import org.osgi.framework.FrameworkUtil;
import org.osgi.framework.ServiceReference;
-import org.osgi.framework.ServiceRegistration;
import org.osgi.service.cm.Configuration;
import org.osgi.service.cm.ConfigurationAdmin;
import org.osgi.service.jaxrs.runtime.JaxRSServiceRuntime;
import org.osgi.util.tracker.ServiceTracker;
-import test.types.TestApplication;
+import test.types.TestHelper;
-import javax.ws.rs.core.Application;
-
-public class WhiteboardFactoryTest {
+public class WhiteboardFactoryTest extends TestHelper {
@Test
public void testDefaultDefaultWhiteboardConfig() throws Exception {
- ServiceTracker<JaxRSServiceRuntime, JaxRSServiceRuntime> runtimeTracker =
- new ServiceTracker<>(
- bundleContext, JaxRSServiceRuntime.class, null);
-
- try {
- runtimeTracker.open();
-
- JaxRSServiceRuntime runtime = runtimeTracker.waitForService(5000);
-
- assertNotNull(runtime);
-
- ServiceReference<JaxRSServiceRuntime> serviceReference = runtimeTracker.getServiceReference();
-
- assertNotNull(serviceReference);
-
- assertEquals(1, runtimeTracker.size());
- }
- finally {
- runtimeTracker.close();
- }
+ assertEquals(1, _runtimeTracker.size());
}
@Test
@@ -72,25 +48,17 @@ public class WhiteboardFactoryTest {
new ServiceTracker<>(
bundleContext, ConfigurationAdmin.class, null);
- ServiceTracker<JaxRSServiceRuntime, JaxRSServiceRuntime> runtimeTracker =
- new ServiceTracker<>(
- bundleContext, JaxRSServiceRuntime.class, null);
-
try {
configTracker.open();
- runtimeTracker.open();
-
- JaxRSServiceRuntime runtime = runtimeTracker.waitForService(5000);
- assertNotNull(runtime);
-
- ServiceReference<JaxRSServiceRuntime> serviceReference = runtimeTracker.getServiceReference();
+ ServiceReference<JaxRSServiceRuntime> serviceReference =
+ _runtimeTracker.getServiceReference();
assertNotNull(serviceReference);
- assertEquals(1, runtimeTracker.size());
+ assertEquals(1, _runtimeTracker.size());
- int trackingCount = runtimeTracker.getTrackingCount();
+ int trackingCount = _runtimeTracker.getTrackingCount();
ConfigurationAdmin admin = configTracker.waitForService(5000);
@@ -110,29 +78,33 @@ public class WhiteboardFactoryTest {
Thread.sleep(50);
if (!"/new-whiteboard".equals(
- runtimeTracker.getServiceReference().getProperty(HTTP_WHITEBOARD_SERVLET_PATTERN))) {
- trackingCount = runtimeTracker.getTrackingCount();
+ _runtimeTracker.getServiceReference().getProperty(
+ HTTP_WHITEBOARD_SERVLET_PATTERN))) {
+
+ trackingCount = _runtimeTracker.getTrackingCount();
}
}
- while (runtimeTracker.getTrackingCount() <= trackingCount);
+ while (_runtimeTracker.getTrackingCount() <= trackingCount);
- assertEquals(2, runtimeTracker.size());
+ assertEquals(2, _runtimeTracker.size());
configuration.delete();
do {
Thread.sleep(50);
}
- while (runtimeTracker.getTrackingCount() <= trackingCount);
+ while (_runtimeTracker.getTrackingCount() <= trackingCount);
- assertEquals(1, runtimeTracker.size());
+ assertEquals(1, _runtimeTracker.size());
}
finally {
- runtimeTracker.close();
configTracker.close();
}
}
- private BundleContext bundleContext = FrameworkUtil.getBundle(getClass()).getBundleContext();
+ private BundleContext bundleContext =
+ FrameworkUtil.
+ getBundle(getClass()).
+ getBundleContext();
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/aries-jax-rs-whiteboard/blob/990b9d24/jax-rs.itests/src/main/java/test/WhiteboardTargetFilterTest.java
----------------------------------------------------------------------
diff --git a/jax-rs.itests/src/main/java/test/WhiteboardTargetFilterTest.java b/jax-rs.itests/src/main/java/test/WhiteboardTargetFilterTest.java
index acc3e6e..a8710e7 100644
--- a/jax-rs.itests/src/main/java/test/WhiteboardTargetFilterTest.java
+++ b/jax-rs.itests/src/main/java/test/WhiteboardTargetFilterTest.java
@@ -39,11 +39,7 @@ public class WhiteboardTargetFilterTest extends TestHelper {
@Test
public void testInvalidTargetFilter() throws Exception {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("extended");
+ WebTarget webTarget = createDefaultTarget().path("extended");
assertEquals(
"This should return nothing", 404,
@@ -53,8 +49,9 @@ public class WhiteboardTargetFilterTest extends TestHelper {
properties.put(JaxRSWhiteboardConstants.JAX_RS_RESOURCE, "true");
properties.put(JaxRSWhiteboardConstants.JAX_RS_WHITEBOARD_TARGET, "//");
- ServiceRegistration<Object> serviceRegistration = bundleContext.registerService(
- Object.class, new TestAddon(), properties);
+ ServiceRegistration<Object> serviceRegistration =
+ bundleContext.registerService(
+ Object.class, new TestAddon(), properties);
try {
assertEquals(
@@ -68,11 +65,7 @@ public class WhiteboardTargetFilterTest extends TestHelper {
@Test
public void testNonMatchingFilter() throws Exception {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("extended");
+ WebTarget webTarget = createDefaultTarget().path("extended");
assertEquals(
"This should return nothing", 404,
@@ -80,10 +73,13 @@ public class WhiteboardTargetFilterTest extends TestHelper {
Dictionary<String, Object> properties = new Hashtable<>();
properties.put(JaxRSWhiteboardConstants.JAX_RS_RESOURCE, "true");
- properties.put(JaxRSWhiteboardConstants.JAX_RS_WHITEBOARD_TARGET, "(crazy=the joker)");
+ properties.put(
+ JaxRSWhiteboardConstants.JAX_RS_WHITEBOARD_TARGET,
+ "(crazy=the joker)");
- ServiceRegistration<Object> serviceRegistration = bundleContext.registerService(
- Object.class, new TestAddon(), properties);
+ ServiceRegistration<Object> serviceRegistration =
+ bundleContext.registerService(
+ Object.class, new TestAddon(), properties);
try {
assertEquals(
@@ -97,11 +93,7 @@ public class WhiteboardTargetFilterTest extends TestHelper {
@Test
public void testMatchingFilter() throws Exception {
- Client client = createClient();
-
- WebTarget webTarget = client.
- target("http://localhost:65532").
- path("extended");
+ WebTarget webTarget = createDefaultTarget().path("extended");
assertEquals(
"This should return nothing", 404,
@@ -113,8 +105,9 @@ public class WhiteboardTargetFilterTest extends TestHelper {
JaxRSWhiteboardConstants.JAX_RS_WHITEBOARD_TARGET,
"(service.pid=org.apache.aries.jax.rs.whiteboard.default)");
- ServiceRegistration<Object> serviceRegistration = bundleContext.registerService(
- Object.class, new TestAddon(), properties);
+ ServiceRegistration<Object> serviceRegistration =
+ bundleContext.registerService(
+ Object.class, new TestAddon(), properties);
try {
assertEquals(
http://git-wip-us.apache.org/repos/asf/aries-jax-rs-whiteboard/blob/990b9d24/jax-rs.itests/src/main/java/test/types/TestHelper.java
----------------------------------------------------------------------
diff --git a/jax-rs.itests/src/main/java/test/types/TestHelper.java b/jax-rs.itests/src/main/java/test/types/TestHelper.java
index 3803558..9f8b98c 100644
--- a/jax-rs.itests/src/main/java/test/types/TestHelper.java
+++ b/jax-rs.itests/src/main/java/test/types/TestHelper.java
@@ -19,30 +19,73 @@ package test.types;
import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;
+import javax.ws.rs.client.WebTarget;
import org.junit.After;
import org.junit.Before;
import org.osgi.framework.BundleContext;
import org.osgi.framework.FrameworkUtil;
+import org.osgi.framework.ServiceReference;
+import org.osgi.service.jaxrs.runtime.JaxRSServiceRuntime;
import org.osgi.util.tracker.ServiceTracker;
+import java.util.Collection;
+
public class TestHelper {
- public static BundleContext bundleContext = FrameworkUtil.getBundle(
- TestHelper.class).getBundleContext();
+ public static BundleContext bundleContext =
+ FrameworkUtil.
+ getBundle(TestHelper.class).
+ getBundleContext();
- private ServiceTracker<ClientBuilder, ClientBuilder> _clientBuilderTracker;
+ protected ServiceTracker<JaxRSServiceRuntime, JaxRSServiceRuntime>
+ _runtimeTracker;
+ protected ServiceTracker<ClientBuilder, ClientBuilder>
+ _clientBuilderTracker;
+ protected JaxRSServiceRuntime _runtime;
+ protected ServiceReference<JaxRSServiceRuntime> _runtimeServiceReference;
@After
public void after() {
+ _runtimeTracker.close();
+
_clientBuilderTracker.close();
}
@Before
public void before() {
- _clientBuilderTracker = new ServiceTracker<>(bundleContext, ClientBuilder.class, null);
+ _clientBuilderTracker = new ServiceTracker<>(
+ bundleContext, ClientBuilder.class, null);
_clientBuilderTracker.open();
+
+ _runtimeTracker = new ServiceTracker<>(
+ bundleContext, JaxRSServiceRuntime.class, null);
+
+ _runtimeTracker.open();
+
+ try {
+ _runtime = _runtimeTracker.waitForService(15000L);
+ }
+ catch (InterruptedException e) {
+ throw new RuntimeException(e);
+ }
+
+ _runtimeServiceReference = _runtimeTracker.getServiceReference();
+ }
+
+ private static String[] canonicalize(Object propertyValue) {
+ if (propertyValue == null) {
+ return new String[0];
+ }
+ if (propertyValue instanceof String[]) {
+ return (String[]) propertyValue;
+ }
+ if (propertyValue instanceof Collection) {
+ return ((Collection<String>) propertyValue).toArray(new String[0]);
+ }
+
+ return new String[]{propertyValue.toString()};
}
protected Client createClient() {
@@ -58,4 +101,21 @@ public class TestHelper {
}
}
+ protected WebTarget createDefaultTarget() {
+ Client client = createClient();
+
+ String[] runtimes = canonicalize(
+ _runtimeServiceReference.getProperty("osgi.jaxrs.endpoint"));
+
+ if (runtimes.length == 0) {
+ throw new IllegalStateException(
+ "No runtimes could be found on \"osgi.jaxrs.endpoint\" " +
+ "runtime service property ");
+ }
+
+ String runtime = runtimes[0];
+
+ return client.target(runtime);
+ }
+
}
http://git-wip-us.apache.org/repos/asf/aries-jax-rs-whiteboard/blob/990b9d24/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/Utils.java
----------------------------------------------------------------------
diff --git a/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/Utils.java b/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/Utils.java
index 72c6ef6..ed7c503 100644
--- a/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/Utils.java
+++ b/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/Utils.java
@@ -193,8 +193,7 @@ public class Utils {
).then(
just(new ServiceTuple<>(serviceReference, service))
);
- }
- ));
+ }));
}
public static <T> OSGi<T> service(ServiceReference<T> serviceReference) {