package org.jboss.resteasy.plugins.server.tjws; import org.junit.Assert; import org.jboss.resteasy.test.TestPortProvider; import org.junit.After; import org.junit.Before; import org.junit.Test; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.ws.rs.client.Invocation.Builder; import java.io.File; import java.io.IOException; import java.net.URI; import java.net.URL; public class TJWSServletServerTest { TJWSServletServer server = null; @Before public void setup() { server = new TJWSServletServer(); server.setPort(TestPortProvider.getPort()); } @After public void finish() { server.stop(); } @Test public void testResource() throws Exception { server.addServlet("/hello", new HttpServlet() { private static final long serialVersionUID = -4176523779912453903L; @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.getWriter().write("world"); } }); server.start(); Builder request = TestPortProvider.createTarget("/hello").request(); Assert.assertEquals("world", request.get().readEntity(String.class)); } @Test /** * Test to make sure that file system mapping works. */ public void testFile() throws Exception { URL root = getClass().getClassLoader().getResource("."); URI uri = new URI(root.getFile()); server.server.addFileMapping("/", new File(uri.getPath())); server.start(); checkText("/test.txt", "Hello, World!"); checkText("/test.html", "<html><body>Hello, World!</body></html>"); } private void checkText(String uri, final String text) throws Exception { Builder request = TestPortProvider.createTarget(uri).request(); Assert.assertEquals(text, request.get().readEntity(String.class)); } }