Author: markt Date: Wed Jan 13 18:23:08 2016 New Revision: 1724475 URL: http://svn.apache.org/viewvc?rev=1724475&view=rev Log: Extract common test code into a single Tester class
Added: tomcat/trunk/test/org/apache/tomcat/websocket/server/TesterEndpointConfig.java (with props) Modified: tomcat/trunk/test/org/apache/tomcat/websocket/TestWsSubprotocols.java tomcat/trunk/test/org/apache/tomcat/websocket/TesterFirehoseServer.java tomcat/trunk/test/org/apache/tomcat/websocket/pojo/TesterUtil.java tomcat/trunk/test/org/apache/tomcat/websocket/server/TestClose.java tomcat/trunk/test/org/apache/tomcat/websocket/server/TestWsRemoteEndpointImplServer.java tomcat/trunk/test/org/apache/tomcat/websocket/server/TestWsServerContainer.java Modified: tomcat/trunk/test/org/apache/tomcat/websocket/TestWsSubprotocols.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/websocket/TestWsSubprotocols.java?rev=1724475&r1=1724474&r2=1724475&view=diff ============================================================================== --- tomcat/trunk/test/org/apache/tomcat/websocket/TestWsSubprotocols.java (original) +++ tomcat/trunk/test/org/apache/tomcat/websocket/TestWsSubprotocols.java Wed Jan 13 18:23:08 2016 @@ -20,15 +20,12 @@ import java.net.URI; import java.util.Arrays; import java.util.List; -import javax.servlet.ServletContextEvent; import javax.websocket.ClientEndpointConfig; import javax.websocket.ContainerProvider; -import javax.websocket.DeploymentException; import javax.websocket.EndpointConfig; import javax.websocket.OnOpen; import javax.websocket.Session; import javax.websocket.WebSocketContainer; -import javax.websocket.server.ServerContainer; import javax.websocket.server.ServerEndpoint; import javax.websocket.server.ServerEndpointConfig; @@ -41,8 +38,7 @@ import org.apache.catalina.servlets.Defa import org.apache.catalina.startup.Tomcat; import org.apache.catalina.startup.TomcatBaseTest; import org.apache.tomcat.websocket.TesterMessageCountClient.TesterProgrammaticEndpoint; -import org.apache.tomcat.websocket.server.Constants; -import org.apache.tomcat.websocket.server.WsContextListener; +import org.apache.tomcat.websocket.server.TesterEndpointConfig; public class TestWsSubprotocols extends TomcatBaseTest { @@ -115,18 +111,11 @@ public class TestWsSubprotocols extends } - public static class Config extends WsContextListener { + public static class Config extends TesterEndpointConfig { + @Override - public void contextInitialized(ServletContextEvent sce) { - super.contextInitialized(sce); - ServerContainer sc = (ServerContainer) sce.getServletContext() - .getAttribute(Constants. - SERVER_CONTAINER_SERVLET_CONTEXT_ATTRIBUTE); - try { - sc.addEndpoint(SubProtocolsEndpoint.class); - } catch (DeploymentException e) { - throw new IllegalStateException(e); - } + protected Class<?> getEndpointClass() { + return SubProtocolsEndpoint.class; } } } Modified: tomcat/trunk/test/org/apache/tomcat/websocket/TesterFirehoseServer.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/websocket/TesterFirehoseServer.java?rev=1724475&r1=1724474&r2=1724475&view=diff ============================================================================== --- tomcat/trunk/test/org/apache/tomcat/websocket/TesterFirehoseServer.java (original) +++ tomcat/trunk/test/org/apache/tomcat/websocket/TesterFirehoseServer.java Wed Jan 13 18:23:08 2016 @@ -19,19 +19,15 @@ package org.apache.tomcat.websocket; import java.io.IOException; import java.util.concurrent.atomic.AtomicInteger; -import javax.servlet.ServletContextEvent; -import javax.websocket.DeploymentException; import javax.websocket.OnClose; import javax.websocket.OnError; import javax.websocket.OnMessage; import javax.websocket.OnOpen; import javax.websocket.RemoteEndpoint.Basic; import javax.websocket.Session; -import javax.websocket.server.ServerContainer; import javax.websocket.server.ServerEndpoint; -import org.apache.tomcat.websocket.server.Constants; -import org.apache.tomcat.websocket.server.WsContextListener; +import org.apache.tomcat.websocket.server.TesterEndpointConfig; /** * Sends {@link #MESSAGE_COUNT} messages of size {@link #MESSAGE_SIZE} bytes as @@ -54,21 +50,13 @@ public class TesterFirehoseServer { } - public static class Config extends WsContextListener { + public static class Config extends TesterEndpointConfig { public static final String PATH = "/firehose"; @Override - public void contextInitialized(ServletContextEvent sce) { - super.contextInitialized(sce); - ServerContainer sc = - (ServerContainer) sce.getServletContext().getAttribute( - Constants.SERVER_CONTAINER_SERVLET_CONTEXT_ATTRIBUTE); - try { - sc.addEndpoint(Endpoint.class); - } catch (DeploymentException e) { - throw new IllegalStateException(e); - } + protected Class<?> getEndpointClass() { + return Endpoint.class; } } Modified: tomcat/trunk/test/org/apache/tomcat/websocket/pojo/TesterUtil.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/websocket/pojo/TesterUtil.java?rev=1724475&r1=1724474&r2=1724475&view=diff ============================================================================== --- tomcat/trunk/test/org/apache/tomcat/websocket/pojo/TesterUtil.java (original) +++ tomcat/trunk/test/org/apache/tomcat/websocket/pojo/TesterUtil.java Wed Jan 13 18:23:08 2016 @@ -16,18 +16,14 @@ */ package org.apache.tomcat.websocket.pojo; -import javax.servlet.ServletContextEvent; import javax.websocket.ClientEndpoint; -import javax.websocket.DeploymentException; -import javax.websocket.server.ServerContainer; import javax.websocket.server.ServerEndpointConfig.Configurator; -import org.apache.tomcat.websocket.server.Constants; -import org.apache.tomcat.websocket.server.WsContextListener; +import org.apache.tomcat.websocket.server.TesterEndpointConfig; public class TesterUtil { - public static class ServerConfigListener extends WsContextListener { + public static class ServerConfigListener extends TesterEndpointConfig { private static Class<?> pojoClazz; @@ -35,17 +31,10 @@ public class TesterUtil { ServerConfigListener.pojoClazz = pojoClazz; } + @Override - public void contextInitialized(ServletContextEvent sce) { - super.contextInitialized(sce); - ServerContainer sc = - (ServerContainer) sce.getServletContext().getAttribute( - Constants.SERVER_CONTAINER_SERVLET_CONTEXT_ATTRIBUTE); - try { - sc.addEndpoint(pojoClazz); - } catch (DeploymentException e) { - throw new IllegalStateException(e); - } + protected Class<?> getEndpointClass() { + return pojoClazz; } } Modified: tomcat/trunk/test/org/apache/tomcat/websocket/server/TestClose.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/websocket/server/TestClose.java?rev=1724475&r1=1724474&r2=1724475&view=diff ============================================================================== --- tomcat/trunk/test/org/apache/tomcat/websocket/server/TestClose.java (original) +++ tomcat/trunk/test/org/apache/tomcat/websocket/server/TestClose.java Wed Jan 13 18:23:08 2016 @@ -22,17 +22,14 @@ import java.util.Set; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; -import javax.servlet.ServletContextEvent; import javax.websocket.CloseReason; import javax.websocket.CloseReason.CloseCode; import javax.websocket.CloseReason.CloseCodes; -import javax.websocket.DeploymentException; import javax.websocket.OnClose; import javax.websocket.OnError; import javax.websocket.OnMessage; import javax.websocket.OnOpen; import javax.websocket.Session; -import javax.websocket.server.ServerContainer; import javax.websocket.server.ServerEndpointConfig; import org.junit.Assert; @@ -350,29 +347,13 @@ public class TestClose extends TomcatBas } - public abstract static class BaseEndpointConfig extends WsContextListener { + public abstract static class BaseEndpointConfig extends TesterEndpointConfig { public static final String PATH = "/test"; - protected abstract Class<?> getEndpointClass(); - @Override - public void contextInitialized(ServletContextEvent sce) { - super.contextInitialized(sce); - - ServerContainer sc = (ServerContainer) sce - .getServletContext() - .getAttribute( - Constants.SERVER_CONTAINER_SERVLET_CONTEXT_ATTRIBUTE); - - ServerEndpointConfig sec = ServerEndpointConfig.Builder.create( - getEndpointClass(), PATH).build(); - - try { - sc.addEndpoint(sec); - } catch (DeploymentException e) { - throw new RuntimeException(e); - } + protected ServerEndpointConfig getServerEndpointConfig() { + return ServerEndpointConfig.Builder.create(getEndpointClass(), PATH).build(); } } } Modified: tomcat/trunk/test/org/apache/tomcat/websocket/server/TestWsRemoteEndpointImplServer.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/websocket/server/TestWsRemoteEndpointImplServer.java?rev=1724475&r1=1724474&r2=1724475&view=diff ============================================================================== --- tomcat/trunk/test/org/apache/tomcat/websocket/server/TestWsRemoteEndpointImplServer.java (original) +++ tomcat/trunk/test/org/apache/tomcat/websocket/server/TestWsRemoteEndpointImplServer.java Wed Jan 13 18:23:08 2016 @@ -23,10 +23,8 @@ import java.util.List; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; -import javax.servlet.ServletContextEvent; import javax.websocket.CloseReason; import javax.websocket.ContainerProvider; -import javax.websocket.DeploymentException; import javax.websocket.EncodeException; import javax.websocket.Encoder; import javax.websocket.EndpointConfig; @@ -36,7 +34,6 @@ import javax.websocket.OnMessage; import javax.websocket.OnOpen; import javax.websocket.Session; import javax.websocket.WebSocketContainer; -import javax.websocket.server.ServerContainer; import javax.websocket.server.ServerEndpointConfig; import org.junit.Ignore; @@ -91,26 +88,17 @@ public class TestWsRemoteEndpointImplSer session.close(); } - public static class Bug58624Config extends WsContextListener { + public static class Bug58624Config extends TesterEndpointConfig { public static final String PATH = "/bug58624"; - @Override - public void contextInitialized(ServletContextEvent sce) { - super.contextInitialized(sce); - ServerContainer sc = (ServerContainer) sce.getServletContext().getAttribute( - Constants.SERVER_CONTAINER_SERVLET_CONTEXT_ATTRIBUTE); + @Override + protected ServerEndpointConfig getServerEndpointConfig() { List<Class<? extends Encoder>> encoders = new ArrayList<>(); encoders.add(Bug58624Encoder.class); - ServerEndpointConfig sec = ServerEndpointConfig.Builder.create( + return ServerEndpointConfig.Builder.create( Bug58624Endpoint.class, PATH).encoders(encoders).build(); - - try { - sc.addEndpoint(sec); - } catch (DeploymentException e) { - throw new RuntimeException(e); - } } } Modified: tomcat/trunk/test/org/apache/tomcat/websocket/server/TestWsServerContainer.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/websocket/server/TestWsServerContainer.java?rev=1724475&r1=1724474&r2=1724475&view=diff ============================================================================== --- tomcat/trunk/test/org/apache/tomcat/websocket/server/TestWsServerContainer.java (original) +++ tomcat/trunk/test/org/apache/tomcat/websocket/server/TestWsServerContainer.java Wed Jan 13 18:23:08 2016 @@ -21,12 +21,9 @@ import java.util.Queue; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; -import javax.servlet.ServletContextEvent; import javax.websocket.ContainerProvider; -import javax.websocket.DeploymentException; import javax.websocket.Session; import javax.websocket.WebSocketContainer; -import javax.websocket.server.ServerContainer; import javax.websocket.server.ServerEndpointConfig; import org.junit.Assert; @@ -97,24 +94,12 @@ public class TestWsServerContainer exten } - public static class Bug54807Config extends WsContextListener { + public static class Bug54807Config extends TesterEndpointConfig { @Override - public void contextInitialized(ServletContextEvent sce) { - super.contextInitialized(sce); - - ServerContainer sc = - (ServerContainer) sce.getServletContext().getAttribute( - Constants.SERVER_CONTAINER_SERVLET_CONTEXT_ATTRIBUTE); - - ServerEndpointConfig sec = ServerEndpointConfig.Builder.create( + protected ServerEndpointConfig getServerEndpointConfig() { + return ServerEndpointConfig.Builder.create( TesterEchoServer.Basic.class, "/{param}").build(); - - try { - sc.addEndpoint(sec); - } catch (DeploymentException e) { - throw new RuntimeException(e); - } } } Added: tomcat/trunk/test/org/apache/tomcat/websocket/server/TesterEndpointConfig.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/websocket/server/TesterEndpointConfig.java?rev=1724475&view=auto ============================================================================== --- tomcat/trunk/test/org/apache/tomcat/websocket/server/TesterEndpointConfig.java (added) +++ tomcat/trunk/test/org/apache/tomcat/websocket/server/TesterEndpointConfig.java Wed Jan 13 18:23:08 2016 @@ -0,0 +1,54 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.tomcat.websocket.server; + +import javax.servlet.ServletContextEvent; +import javax.websocket.DeploymentException; +import javax.websocket.server.ServerContainer; +import javax.websocket.server.ServerEndpointConfig; + +public abstract class TesterEndpointConfig extends WsContextListener { + + @Override + public void contextInitialized(ServletContextEvent sce) { + super.contextInitialized(sce); + + ServerContainer sc = (ServerContainer) sce.getServletContext().getAttribute( + Constants.SERVER_CONTAINER_SERVLET_CONTEXT_ATTRIBUTE); + + try { + ServerEndpointConfig sec = getServerEndpointConfig(); + if (sec == null) { + sc.addEndpoint(getEndpointClass()); + } else { + sc.addEndpoint(sec); + } + } catch (DeploymentException e) { + throw new RuntimeException(e); + } + } + + + protected Class<?> getEndpointClass() { + return null; + } + + + protected ServerEndpointConfig getServerEndpointConfig() { + return null; + } +} Propchange: tomcat/trunk/test/org/apache/tomcat/websocket/server/TesterEndpointConfig.java ------------------------------------------------------------------------------ svn:eol-style = native --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org