Skip to content

Commit 7e55f5e

Browse files
author
morgan.peng
committed
feat(test): add jetty test
1 parent be07f5c commit 7e55f5e

File tree

1 file changed

+63
-0
lines changed

1 file changed

+63
-0
lines changed
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
package org.tron.common.jetty;
2+
3+
import java.net.URI;
4+
import lombok.extern.slf4j.Slf4j;
5+
import org.apache.http.HttpResponse;
6+
import org.apache.http.client.HttpClient;
7+
import org.apache.http.client.methods.HttpGet;
8+
import org.apache.http.impl.client.DefaultHttpClient;
9+
import org.eclipse.jetty.server.Server;
10+
import org.eclipse.jetty.server.ServerConnector;
11+
import org.eclipse.jetty.servlet.DefaultServlet;
12+
import org.eclipse.jetty.servlet.ServletContextHandler;
13+
import org.eclipse.jetty.servlet.ServletHolder;
14+
import org.junit.AfterClass;
15+
import org.junit.Assert;
16+
import org.junit.BeforeClass;
17+
import org.junit.Test;
18+
19+
@Slf4j
20+
public class JettyServerTest {
21+
private static Server server;
22+
private static URI serverUri;
23+
24+
@BeforeClass
25+
public static void startJetty() throws Exception {
26+
server = new Server();
27+
ServerConnector connector = new ServerConnector(server);
28+
connector.setPort(0);
29+
server.addConnector(connector);
30+
31+
ServletContextHandler context = new ServletContextHandler();
32+
ServletHolder defaultServ = new ServletHolder("default", DefaultServlet.class);
33+
context.addServlet(defaultServ, "/");
34+
server.setHandler(context);
35+
server.start();
36+
String host = connector.getHost();
37+
if (host == null) {
38+
host = "localhost";
39+
}
40+
int port = connector.getLocalPort();
41+
serverUri = new URI(String.format("http://%s:%d/", host, port));
42+
}
43+
44+
@AfterClass
45+
public static void stopJetty() {
46+
try {
47+
server.stop();
48+
} catch (Exception e) {
49+
throw new RuntimeException(e);
50+
}
51+
}
52+
53+
@Test
54+
public void testGet() throws Exception {
55+
HttpClient client = new DefaultHttpClient();
56+
HttpGet request = new HttpGet(serverUri.resolve("/"));
57+
request.setHeader("Content-Length", "+450");
58+
HttpResponse mockResponse = client.execute(request);
59+
Assert.assertTrue(mockResponse.getStatusLine().toString().contains(
60+
"400 Invalid Content-Length Value"));
61+
}
62+
63+
}

0 commit comments

Comments
 (0)