aboutsummaryrefslogtreecommitdiffstats
path: root/container-core
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@verizonmedia.com>2021-06-09 17:19:20 +0200
committerBjørn Christian Seime <bjorncs@verizonmedia.com>2021-06-09 17:19:20 +0200
commit7f7d688a214b55ed21b45304a87d90667cb7dcd3 (patch)
tree216dfe4832c01112a2d9999184e5c9ca31f52d5d /container-core
parent9c6c5f527d7788bedf4b7f0563c97e21c64cea51 (diff)
Verify that connector idle timeout is based on jdisc connector config
Diffstat (limited to 'container-core')
-rw-r--r--container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ConnectorFactoryTest.java81
1 files changed, 55 insertions, 26 deletions
diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ConnectorFactoryTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ConnectorFactoryTest.java
index 93261a2401f..b05d94c9f9c 100644
--- a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ConnectorFactoryTest.java
+++ b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ConnectorFactoryTest.java
@@ -8,6 +8,8 @@ import com.yahoo.jdisc.http.ssl.impl.ConfiguredSslContextFactoryProvider;
import org.eclipse.jetty.server.Request;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.server.handler.AbstractHandler;
+import org.junit.After;
+import org.junit.Before;
import org.junit.Test;
import javax.servlet.http.HttpServletRequest;
@@ -16,46 +18,73 @@ import java.io.IOException;
import java.util.Map;
import static org.hamcrest.CoreMatchers.equalTo;
+import static org.junit.Assert.assertEquals;
/**
* @author Einar M R Rosenvinge
+ * @author bjorncs
*/
public class ConnectorFactoryTest {
- @Test
- public void requireThatServerCanBindChannel() throws Exception {
- Server server = new Server();
+ private Server server;
+
+ @Before
+ public void createServer() {
+ server = new Server();
+ }
+
+ @After
+ public void stopServer() {
try {
- ConnectorConfig config = new ConnectorConfig(new ConnectorConfig.Builder());
- ConnectorFactory factory = createConnectorFactory(config);
- JettyConnectionLogger connectionLogger = new JettyConnectionLogger(
- new ServerConfig.ConnectionLog.Builder().enabled(false).build(),
- new VoidConnectionLog());
- DummyMetric metric = new DummyMetric();
- var connectionMetricAggregator = new ConnectionMetricAggregator(new ServerConfig(new ServerConfig.Builder()), metric);
- JDiscServerConnector connector =
- (JDiscServerConnector)factory.createConnector(metric, server, connectionLogger, connectionMetricAggregator);
- server.addConnector(connector);
- server.setHandler(new HelloWorldHandler());
- server.start();
-
- SimpleHttpClient client = new SimpleHttpClient(null, connector.getLocalPort(), false);
- SimpleHttpClient.RequestExecutor ex = client.newGet("/blaasdfnb");
- SimpleHttpClient.ResponseValidator val = ex.execute();
- val.expectContent(equalTo("Hello world"));
- } finally {
- try {
- server.stop();
- } catch (Exception e) {
- //ignore
- }
+ server.stop();
+ server = null;
+ } catch (Exception e) {
+ //ignore
}
}
+ @Test
+ public void requireThatServerCanBindChannel() throws Exception {
+ ConnectorConfig config = new ConnectorConfig(new ConnectorConfig.Builder());
+ ConnectorFactory factory = createConnectorFactory(config);
+ JDiscServerConnector connector = createConnectorFromFactory(factory);
+ server.addConnector(connector);
+ server.setHandler(new HelloWorldHandler());
+ server.start();
+
+ SimpleHttpClient client = new SimpleHttpClient(null, connector.getLocalPort(), false);
+ SimpleHttpClient.RequestExecutor ex = client.newGet("/blaasdfnb");
+ SimpleHttpClient.ResponseValidator val = ex.execute();
+ val.expectContent(equalTo("Hello world"));
+ }
+
+ @Test
+ public void constructed_connector_is_based_jdisc_connector_config() {
+ ConnectorConfig config = new ConnectorConfig.Builder()
+ .idleTimeout(25)
+ .name("my-server-name")
+ .listenPort(12345)
+ .build();
+ ConnectorFactory factory = createConnectorFactory(config);
+ JDiscServerConnector connector = createConnectorFromFactory(factory);
+ assertEquals(25000, connector.getIdleTimeout());
+ assertEquals(12345, connector.listenPort());
+ assertEquals("my-server-name", connector.getName());
+ }
+
private static ConnectorFactory createConnectorFactory(ConnectorConfig config) {
return new ConnectorFactory(config, new ConfiguredSslContextFactoryProvider(config));
}
+ private JDiscServerConnector createConnectorFromFactory(ConnectorFactory factory) {
+ JettyConnectionLogger connectionLogger = new JettyConnectionLogger(
+ new ServerConfig.ConnectionLog.Builder().enabled(false).build(),
+ new VoidConnectionLog());
+ DummyMetric metric = new DummyMetric();
+ var connectionMetricAggregator = new ConnectionMetricAggregator(new ServerConfig(new ServerConfig.Builder()), metric);
+ return (JDiscServerConnector)factory.createConnector(metric, server, connectionLogger, connectionMetricAggregator);
+ }
+
private static class HelloWorldHandler extends AbstractHandler {
@Override
public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException {