[jackson-jaxrs-providers] 122/162: Try to add baseline provider tests for backends other than JSON
Timo Aaltonen
tjaalton at moszumanska.debian.org
Mon Sep 8 22:16:35 UTC 2014
This is an automated email from the git hooks/post-receive script.
tjaalton pushed a commit to branch master
in repository jackson-jaxrs-providers.
commit dc829f08d26e5d7f416c2ab36f604d5b47ef4b10
Author: Tatu Saloranta <tatu.saloranta at iki.fi>
Date: Fri Feb 7 21:05:05 2014 -0800
Try to add baseline provider tests for backends other than JSON
---
.../jackson/jaxrs/cbor/JacksonCBORProvider.java | 7 +-
.../jackson/jaxrs/cbor}/JaxrsTestBase.java | 26 +++++-
.../jackson/jaxrs/cbor/TestCBORVersions.java | 28 ++++++
.../jackson/jaxrs/cbor/TestCanDeserialize.java | 25 ++++++
.../jackson/jaxrs/cbor/dw/ResourceTestBase.java | 94 +++++++++++++++++++
.../jaxrs/cbor/dw/SimpleEndpointTestBase.java | 100 +++++++++++++++++++++
.../jaxrs/cbor/jersey/SimpleEndpointTest.java | 11 +++
.../jackson/jaxrs/smile/JacksonSmileProvider.java | 7 +-
.../jackson/jaxrs/smile/JaxrsTestBase.java | 24 +++++
.../jackson/jaxrs/smile/dw/ResourceTestBase.java | 94 +++++++++++++++++++
.../jaxrs/smile/dw/SimpleEndpointTestBase.java | 100 +++++++++++++++++++++
.../jaxrs/smile/jersey/SimpleEndpointTest.java | 11 +++
12 files changed, 524 insertions(+), 3 deletions(-)
diff --git a/cbor/src/main/java/com/fasterxml/jackson/jaxrs/cbor/JacksonCBORProvider.java b/cbor/src/main/java/com/fasterxml/jackson/jaxrs/cbor/JacksonCBORProvider.java
index df8b421..6078374 100644
--- a/cbor/src/main/java/com/fasterxml/jackson/jaxrs/cbor/JacksonCBORProvider.java
+++ b/cbor/src/main/java/com/fasterxml/jackson/jaxrs/cbor/JacksonCBORProvider.java
@@ -8,6 +8,7 @@ import javax.ws.rs.ext.*;
import com.fasterxml.jackson.core.*;
import com.fasterxml.jackson.databind.*;
+import com.fasterxml.jackson.dataformat.cbor.CBORFactory;
import com.fasterxml.jackson.jaxrs.base.ProviderBase;
import com.fasterxml.jackson.jaxrs.cfg.Annotations;
@@ -200,7 +201,11 @@ extends ProviderBase<JacksonCBORProvider,
resolver = _providers.getContextResolver(ObjectMapper.class, null);
}
if (resolver != null) {
- return resolver.getContext(type);
+ ObjectMapper mapper = resolver.getContext(type);
+ // 07-Feb-2014, tatu: just in case, ensure we have correct type
+ if (mapper.getFactory() instanceof CBORFactory) {
+ return mapper;
+ }
}
}
return null;
diff --git a/smile/src/test/java/com/fasterxml/jackson/jaxrs/smile/JaxrsTestBase.java b/cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/JaxrsTestBase.java
similarity index 79%
copy from smile/src/test/java/com/fasterxml/jackson/jaxrs/smile/JaxrsTestBase.java
copy to cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/JaxrsTestBase.java
index fc977b6..86fac51 100644
--- a/smile/src/test/java/com/fasterxml/jackson/jaxrs/smile/JaxrsTestBase.java
+++ b/cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/JaxrsTestBase.java
@@ -1,6 +1,8 @@
-package com.fasterxml.jackson.jaxrs.smile;
+package com.fasterxml.jackson.jaxrs.cbor;
+import java.io.ByteArrayOutputStream;
import java.io.IOException;
+import java.io.InputStream;
import java.util.Arrays;
import org.junit.Assert;
@@ -88,4 +90,26 @@ public abstract class JaxrsTestBase
public String quote(String str) {
return '"'+str+'"';
}
+
+ protected String aposToQuotes(String json) {
+ return json.replace("'", "\"");
+ }
+
+ protected String readUTF8(InputStream in) throws IOException
+ {
+ return new String(readAll(in), "UTF-8");
+ }
+
+ protected byte[] readAll(InputStream in) throws IOException
+ {
+ ByteArrayOutputStream bytes = new ByteArrayOutputStream(100);
+ byte[] buffer = new byte[500];
+ int count;
+
+ while ((count = in.read(buffer)) > 0) {
+ bytes.write(buffer, 0, count);
+ }
+ in.close();
+ return bytes.toByteArray();
+ }
}
diff --git a/cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/TestCBORVersions.java b/cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/TestCBORVersions.java
new file mode 100644
index 0000000..ad2c662
--- /dev/null
+++ b/cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/TestCBORVersions.java
@@ -0,0 +1,28 @@
+package com.fasterxml.jackson.jaxrs.cbor;
+
+import com.fasterxml.jackson.core.Version;
+import com.fasterxml.jackson.core.Versioned;
+
+public class TestCBORVersions extends JaxrsTestBase
+{
+ public void testMapperVersions()
+ {
+ assertVersion(new JacksonCBORProvider());
+ }
+
+ /*
+ /**********************************************************
+ /* Helper methods
+ /**********************************************************
+ */
+
+ private void assertVersion(Versioned vers)
+ {
+ final Version v = vers.version();
+ assertFalse("Should find version information (got "+v+")", v.isUknownVersion());
+ Version exp = PackageVersion.VERSION;
+ assertEquals(exp.toFullString(), v.toFullString());
+ assertEquals(exp, v);
+ }
+}
+
diff --git a/cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/TestCanDeserialize.java b/cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/TestCanDeserialize.java
new file mode 100644
index 0000000..4b950ff
--- /dev/null
+++ b/cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/TestCanDeserialize.java
@@ -0,0 +1,25 @@
+package com.fasterxml.jackson.jaxrs.cbor;
+
+import java.io.*;
+import java.lang.annotation.Annotation;
+
+import javax.ws.rs.core.MediaType;
+
+/**
+ * Unit test to check [JACKSON-540]
+ */
+public class TestCanDeserialize extends JaxrsTestBase
+{
+ static class Bean {
+ public int x;
+ }
+
+ // [Issue#1]: exception for no content
+ public void testCanSerializeEmpty() throws IOException
+ {
+ JacksonCBORProvider prov = new JacksonCBORProvider();
+ Bean b = (Bean) prov.readFrom(Object.class, Bean.class, new Annotation[0],
+ MediaType.APPLICATION_XML_TYPE, null, new ByteArrayInputStream(new byte[0]));
+ assertNull(b);
+ }
+}
diff --git a/cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/dw/ResourceTestBase.java b/cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/dw/ResourceTestBase.java
new file mode 100644
index 0000000..13bded1
--- /dev/null
+++ b/cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/dw/ResourceTestBase.java
@@ -0,0 +1,94 @@
+package com.fasterxml.jackson.jaxrs.cbor.dw;
+
+import java.io.*;
+import java.util.HashSet;
+import java.util.Set;
+
+import javax.servlet.DispatcherType;
+import javax.servlet.Filter;
+import javax.servlet.Servlet;
+import javax.ws.rs.core.Application;
+
+import org.eclipse.jetty.server.Server;
+import org.eclipse.jetty.server.handler.ContextHandlerCollection;
+import org.eclipse.jetty.servlet.ServletContextHandler;
+import org.eclipse.jetty.servlet.ServletHolder;
+
+import com.fasterxml.jackson.jaxrs.cbor.JacksonCBORProvider;
+import com.fasterxml.jackson.jaxrs.cbor.JaxrsTestBase;
+
+/**
+ * Intermediate base for tests that run actual full JAX-RS resource.
+ */
+public abstract class ResourceTestBase extends JaxrsTestBase
+{
+ protected static abstract class CBORApplication extends Application
+ {
+ protected final Object _provider;
+ protected final Object _resource;
+
+ protected CBORApplication(Object provider, Object resource) {
+ _provider = provider;
+ _resource = resource;
+ }
+
+ @Override
+ public Set<Object> getSingletons() {
+ HashSet<Object> singletons = new HashSet<Object>();
+ singletons.add(_provider);
+ singletons.add(_resource);
+ return singletons;
+ }
+ }
+
+ protected static abstract class CBORApplicationWithJackson extends CBORApplication
+ {
+ public CBORApplicationWithJackson(Object resource) {
+ super(new JacksonCBORProvider(), resource);
+ }
+ }
+
+ /*
+ /**********************************************************
+ /* Abstract and overridable config methods
+ /**********************************************************
+ */
+
+ protected abstract Class<? extends Servlet> servletContainerClass();
+
+ /*
+ /**********************************************************
+ /* Starting actual JAX-RS container
+ /**********************************************************
+ */
+
+ protected Server startServer(int port, Class<? extends Application> appClass) {
+ return startServer(port, appClass, null);
+ }
+
+ protected Server startServer(int port, Class<? extends Application> appClass,
+ Class<? extends Filter> filterClass)
+ {
+ Server server = new Server(port);
+ final ContextHandlerCollection contexts = new ContextHandlerCollection();
+ server.setHandler(contexts);
+ ServletHolder jaxrs = new ServletHolder(servletContainerClass());
+ jaxrs.setInitParameter("javax.ws.rs.Application", appClass.getName());
+ final ServletContextHandler mainHandler = new ServletContextHandler(contexts, "/", true, false);
+ mainHandler.addServlet(jaxrs, "/*");
+
+ if (filterClass != null) {
+ mainHandler.addFilter(filterClass, "/*", java.util.EnumSet.allOf(DispatcherType.class));
+ }
+
+ server.setHandler(mainHandler);
+ try {
+ server.start();
+ } catch (RuntimeException e) {
+ throw e;
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ return server;
+ }
+}
diff --git a/cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/dw/SimpleEndpointTestBase.java b/cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/dw/SimpleEndpointTestBase.java
new file mode 100644
index 0000000..87881d4
--- /dev/null
+++ b/cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/dw/SimpleEndpointTestBase.java
@@ -0,0 +1,100 @@
+package com.fasterxml.jackson.jaxrs.cbor.dw;
+
+import java.io.*;
+import java.net.*;
+
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.Produces;
+import javax.ws.rs.core.MediaType;
+
+import org.eclipse.jetty.server.Server;
+import org.junit.Assert;
+
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.dataformat.cbor.CBORFactory;
+import com.fasterxml.jackson.jaxrs.cbor.CBORMediaTypes;
+
+public abstract class SimpleEndpointTestBase extends ResourceTestBase
+{
+ final static int TEST_PORT = 6011;
+
+ static class Point {
+ public int x, y;
+
+ protected Point() { }
+ public Point(int x, int y) {
+ this.x = x;
+ this.y = y;
+ }
+ }
+
+ @Path("/point")
+ public static class SimpleResource
+ {
+ @GET
+ @Produces({ CBORMediaTypes.APPLICATION_JACKSON_CBOR })
+ public Point getPoint() {
+ return new Point(1, 2);
+ }
+ }
+
+ public static class SimpleResourceApp extends CBORApplicationWithJackson {
+ public SimpleResourceApp() { super(new SimpleResource()); }
+ }
+
+ private final static byte[] UNTOUCHABLE_RESPONSE = new byte[] { 1, 2, 3, 4 };
+
+ @Path("/raw")
+ public static class RawResource
+ {
+ @GET
+ @Path("bytes")
+ @Produces({ CBORMediaTypes.APPLICATION_JACKSON_CBOR })
+ public byte[] getBytes() throws IOException {
+ return UNTOUCHABLE_RESPONSE;
+ }
+ }
+
+ public static class SimpleRawApp extends CBORApplicationWithJackson {
+ public SimpleRawApp() { super(new RawResource()); }
+ }
+
+ /*
+ /**********************************************************
+ /* Test methods
+ /**********************************************************
+ */
+
+ public void testStandardSmile() throws Exception
+ {
+ final ObjectMapper mapper = new ObjectMapper(new CBORFactory());
+ Server server = startServer(TEST_PORT, SimpleResourceApp.class);
+ Point p;
+
+ try {
+ InputStream in = new URL("http://localhost:"+TEST_PORT+"/point").openStream();
+ p = mapper.readValue(in, Point.class);
+ in.close();
+ } finally {
+ server.stop();
+ }
+ // ensure we got a valid Point
+ assertNotNull(p);
+ assertEquals(1, p.x);
+ assertEquals(2, p.y);
+ }
+
+ // [Issue#34] Verify that Untouchables act the way as they should
+ @SuppressWarnings("resource")
+ public void testUntouchables() throws Exception
+ {
+ Server server = startServer(TEST_PORT, SimpleRawApp.class);
+ try {
+ InputStream in = new URL("http://localhost:"+TEST_PORT+"/raw/bytes").openStream();
+ Assert.assertArrayEquals(UNTOUCHABLE_RESPONSE, readAll(in));
+ } finally {
+ server.stop();
+ }
+ }
+}
diff --git a/cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/jersey/SimpleEndpointTest.java b/cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/jersey/SimpleEndpointTest.java
new file mode 100644
index 0000000..92c14ca
--- /dev/null
+++ b/cbor/src/test/java/com/fasterxml/jackson/jaxrs/cbor/jersey/SimpleEndpointTest.java
@@ -0,0 +1,11 @@
+package com.fasterxml.jackson.jaxrs.cbor.jersey;
+
+import javax.servlet.Servlet;
+
+import com.fasterxml.jackson.jaxrs.cbor.dw.SimpleEndpointTestBase;
+import com.sun.jersey.spi.container.servlet.ServletContainer;
+
+public class SimpleEndpointTest extends SimpleEndpointTestBase {
+ @Override
+ protected Class<? extends Servlet> servletContainerClass() { return ServletContainer.class; }
+}
diff --git a/smile/src/main/java/com/fasterxml/jackson/jaxrs/smile/JacksonSmileProvider.java b/smile/src/main/java/com/fasterxml/jackson/jaxrs/smile/JacksonSmileProvider.java
index 76138b7..1ace7b4 100644
--- a/smile/src/main/java/com/fasterxml/jackson/jaxrs/smile/JacksonSmileProvider.java
+++ b/smile/src/main/java/com/fasterxml/jackson/jaxrs/smile/JacksonSmileProvider.java
@@ -8,6 +8,7 @@ import javax.ws.rs.ext.*;
import com.fasterxml.jackson.core.*;
import com.fasterxml.jackson.databind.*;
+import com.fasterxml.jackson.dataformat.smile.SmileFactory;
import com.fasterxml.jackson.jaxrs.base.ProviderBase;
import com.fasterxml.jackson.jaxrs.cfg.Annotations;
@@ -200,7 +201,11 @@ extends ProviderBase<JacksonSmileProvider,
resolver = _providers.getContextResolver(ObjectMapper.class, null);
}
if (resolver != null) {
- return resolver.getContext(type);
+ ObjectMapper mapper = resolver.getContext(type);
+ // 07-Feb-2014, tatu: just in case, ensure we have correct type
+ if (mapper.getFactory() instanceof SmileFactory) {
+ return mapper;
+ }
}
}
return null;
diff --git a/smile/src/test/java/com/fasterxml/jackson/jaxrs/smile/JaxrsTestBase.java b/smile/src/test/java/com/fasterxml/jackson/jaxrs/smile/JaxrsTestBase.java
index fc977b6..b340976 100644
--- a/smile/src/test/java/com/fasterxml/jackson/jaxrs/smile/JaxrsTestBase.java
+++ b/smile/src/test/java/com/fasterxml/jackson/jaxrs/smile/JaxrsTestBase.java
@@ -1,6 +1,8 @@
package com.fasterxml.jackson.jaxrs.smile;
+import java.io.ByteArrayOutputStream;
import java.io.IOException;
+import java.io.InputStream;
import java.util.Arrays;
import org.junit.Assert;
@@ -88,4 +90,26 @@ public abstract class JaxrsTestBase
public String quote(String str) {
return '"'+str+'"';
}
+
+ protected String aposToQuotes(String json) {
+ return json.replace("'", "\"");
+ }
+
+ protected String readUTF8(InputStream in) throws IOException
+ {
+ return new String(readAll(in), "UTF-8");
+ }
+
+ protected byte[] readAll(InputStream in) throws IOException
+ {
+ ByteArrayOutputStream bytes = new ByteArrayOutputStream(100);
+ byte[] buffer = new byte[500];
+ int count;
+
+ while ((count = in.read(buffer)) > 0) {
+ bytes.write(buffer, 0, count);
+ }
+ in.close();
+ return bytes.toByteArray();
+ }
}
diff --git a/smile/src/test/java/com/fasterxml/jackson/jaxrs/smile/dw/ResourceTestBase.java b/smile/src/test/java/com/fasterxml/jackson/jaxrs/smile/dw/ResourceTestBase.java
new file mode 100644
index 0000000..5100483
--- /dev/null
+++ b/smile/src/test/java/com/fasterxml/jackson/jaxrs/smile/dw/ResourceTestBase.java
@@ -0,0 +1,94 @@
+package com.fasterxml.jackson.jaxrs.smile.dw;
+
+import java.io.*;
+import java.util.HashSet;
+import java.util.Set;
+
+import javax.servlet.DispatcherType;
+import javax.servlet.Filter;
+import javax.servlet.Servlet;
+import javax.ws.rs.core.Application;
+
+import org.eclipse.jetty.server.Server;
+import org.eclipse.jetty.server.handler.ContextHandlerCollection;
+import org.eclipse.jetty.servlet.ServletContextHandler;
+import org.eclipse.jetty.servlet.ServletHolder;
+
+import com.fasterxml.jackson.jaxrs.smile.JacksonSmileProvider;
+import com.fasterxml.jackson.jaxrs.smile.JaxrsTestBase;
+
+/**
+ * Intermediate base for tests that run actual full JAX-RS resource.
+ */
+public abstract class ResourceTestBase extends JaxrsTestBase
+{
+ protected static abstract class SmileApplication extends Application
+ {
+ protected final Object _smileProvider;
+ protected final Object _resource;
+
+ protected SmileApplication(Object smileProvider, Object resource) {
+ _smileProvider = smileProvider;
+ _resource = resource;
+ }
+
+ @Override
+ public Set<Object> getSingletons() {
+ HashSet<Object> singletons = new HashSet<Object>();
+ singletons.add(_smileProvider);
+ singletons.add(_resource);
+ return singletons;
+ }
+ }
+
+ protected static abstract class SmileApplicationWithJackson extends SmileApplication
+ {
+ public SmileApplicationWithJackson(Object resource) {
+ super(new JacksonSmileProvider(), resource);
+ }
+ }
+
+ /*
+ /**********************************************************
+ /* Abstract and overridable config methods
+ /**********************************************************
+ */
+
+ protected abstract Class<? extends Servlet> servletContainerClass();
+
+ /*
+ /**********************************************************
+ /* Starting actual JAX-RS container
+ /**********************************************************
+ */
+
+ protected Server startServer(int port, Class<? extends Application> appClass) {
+ return startServer(port, appClass, null);
+ }
+
+ protected Server startServer(int port, Class<? extends Application> appClass,
+ Class<? extends Filter> filterClass)
+ {
+ Server server = new Server(port);
+ final ContextHandlerCollection contexts = new ContextHandlerCollection();
+ server.setHandler(contexts);
+ ServletHolder jaxrs = new ServletHolder(servletContainerClass());
+ jaxrs.setInitParameter("javax.ws.rs.Application", appClass.getName());
+ final ServletContextHandler mainHandler = new ServletContextHandler(contexts, "/", true, false);
+ mainHandler.addServlet(jaxrs, "/*");
+
+ if (filterClass != null) {
+ mainHandler.addFilter(filterClass, "/*", java.util.EnumSet.allOf(DispatcherType.class));
+ }
+
+ server.setHandler(mainHandler);
+ try {
+ server.start();
+ } catch (RuntimeException e) {
+ throw e;
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ return server;
+ }
+}
diff --git a/smile/src/test/java/com/fasterxml/jackson/jaxrs/smile/dw/SimpleEndpointTestBase.java b/smile/src/test/java/com/fasterxml/jackson/jaxrs/smile/dw/SimpleEndpointTestBase.java
new file mode 100644
index 0000000..4df493b
--- /dev/null
+++ b/smile/src/test/java/com/fasterxml/jackson/jaxrs/smile/dw/SimpleEndpointTestBase.java
@@ -0,0 +1,100 @@
+package com.fasterxml.jackson.jaxrs.smile.dw;
+
+import java.io.*;
+import java.net.*;
+
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.Produces;
+import javax.ws.rs.core.MediaType;
+
+import org.eclipse.jetty.server.Server;
+import org.junit.Assert;
+
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.dataformat.smile.SmileFactory;
+import com.fasterxml.jackson.jaxrs.smile.SmileMediaTypes;
+
+public abstract class SimpleEndpointTestBase extends ResourceTestBase
+{
+ final static int TEST_PORT = 6011;
+
+ static class Point {
+ public int x, y;
+
+ protected Point() { }
+ public Point(int x, int y) {
+ this.x = x;
+ this.y = y;
+ }
+ }
+
+ @Path("/point")
+ public static class SimpleResource
+ {
+ @GET
+ @Produces({ SmileMediaTypes.APPLICATION_JACKSON_SMILE })
+ public Point getPoint() {
+ return new Point(1, 2);
+ }
+ }
+
+ public static class SimpleResourceApp extends SmileApplicationWithJackson {
+ public SimpleResourceApp() { super(new SimpleResource()); }
+ }
+
+ private final static byte[] UNTOUCHABLE_RESPONSE = new byte[] { 1, 2, 3, 4 };
+
+ @Path("/raw")
+ public static class RawResource
+ {
+ @GET
+ @Path("bytes")
+ @Produces({ SmileMediaTypes.APPLICATION_JACKSON_SMILE })
+ public byte[] getBytes() throws IOException {
+ return UNTOUCHABLE_RESPONSE;
+ }
+ }
+
+ public static class SimpleRawApp extends SmileApplicationWithJackson {
+ public SimpleRawApp() { super(new RawResource()); }
+ }
+
+ /*
+ /**********************************************************
+ /* Test methods
+ /**********************************************************
+ */
+
+ public void testStandardSmile() throws Exception
+ {
+ final ObjectMapper mapper = new ObjectMapper(new SmileFactory());
+ Server server = startServer(TEST_PORT, SimpleResourceApp.class);
+ Point p;
+
+ try {
+ InputStream in = new URL("http://localhost:"+TEST_PORT+"/point").openStream();
+ p = mapper.readValue(in, Point.class);
+ in.close();
+ } finally {
+ server.stop();
+ }
+ // ensure we got a valid Point
+ assertNotNull(p);
+ assertEquals(1, p.x);
+ assertEquals(2, p.y);
+ }
+
+ // [Issue#34] Verify that Untouchables act the way as they should
+ @SuppressWarnings("resource")
+ public void testUntouchables() throws Exception
+ {
+ Server server = startServer(TEST_PORT, SimpleRawApp.class);
+ try {
+ InputStream in = new URL("http://localhost:"+TEST_PORT+"/raw/bytes").openStream();
+ Assert.assertArrayEquals(UNTOUCHABLE_RESPONSE, readAll(in));
+ } finally {
+ server.stop();
+ }
+ }
+}
diff --git a/smile/src/test/java/com/fasterxml/jackson/jaxrs/smile/jersey/SimpleEndpointTest.java b/smile/src/test/java/com/fasterxml/jackson/jaxrs/smile/jersey/SimpleEndpointTest.java
new file mode 100644
index 0000000..cad898f
--- /dev/null
+++ b/smile/src/test/java/com/fasterxml/jackson/jaxrs/smile/jersey/SimpleEndpointTest.java
@@ -0,0 +1,11 @@
+package com.fasterxml.jackson.jaxrs.smile.jersey;
+
+import javax.servlet.Servlet;
+
+import com.fasterxml.jackson.jaxrs.smile.dw.SimpleEndpointTestBase;
+import com.sun.jersey.spi.container.servlet.ServletContainer;
+
+public class SimpleEndpointTest extends SimpleEndpointTestBase {
+ @Override
+ protected Class<? extends Servlet> servletContainerClass() { return ServletContainer.class; }
+}
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/jackson-jaxrs-providers.git
More information about the pkg-java-commits
mailing list