diff --git a/zeppelin-server/src/test/java/org/apache/zeppelin/server/CorsFilterTest.java b/zeppelin-server/src/test/java/org/apache/zeppelin/server/CorsFilterTest.java index a76d4c86a6d..df2a6e92e0d 100644 --- a/zeppelin-server/src/test/java/org/apache/zeppelin/server/CorsFilterTest.java +++ b/zeppelin-server/src/test/java/org/apache/zeppelin/server/CorsFilterTest.java @@ -1,7 +1,4 @@ -/** - * Created by joelz on 8/6/15. - * - * +/* * 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. @@ -19,7 +16,6 @@ */ package org.apache.zeppelin.server; -import org.apache.zeppelin.socket.TestHttpServletRequest; import org.junit.Assert; import org.junit.Test; import org.mockito.invocation.InvocationOnMock; @@ -27,14 +23,16 @@ import javax.servlet.FilterChain; import javax.servlet.ServletException; +import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; + import java.io.IOException; import static org.mockito.Matchers.anyString; import static org.mockito.Mockito.*; /** - * BASIC Cors rest api tests + * Basic CORS REST API tests */ public class CorsFilterTest { @@ -42,11 +40,12 @@ public class CorsFilterTest { public static Integer count = 0; @Test + @SuppressWarnings("rawtypes") public void ValidCorsFilterTest() throws IOException, ServletException { CorsFilter filter = new CorsFilter(); HttpServletResponse mockResponse = mock(HttpServletResponse.class); FilterChain mockedFilterChain = mock(FilterChain.class); - TestHttpServletRequest mockRequest = mock(TestHttpServletRequest.class); + HttpServletRequest mockRequest = mock(HttpServletRequest.class); when(mockRequest.getHeader("Origin")).thenReturn("http://localhost:8080"); when(mockRequest.getMethod()).thenReturn("Empty"); when(mockRequest.getServerName()).thenReturn("localhost"); @@ -66,11 +65,12 @@ public Object answer(InvocationOnMock invocationOnMock) throws Throwable { } @Test + @SuppressWarnings("rawtypes") public void InvalidCorsFilterTest() throws IOException, ServletException { CorsFilter filter = new CorsFilter(); HttpServletResponse mockResponse = mock(HttpServletResponse.class); FilterChain mockedFilterChain = mock(FilterChain.class); - TestHttpServletRequest mockRequest = mock(TestHttpServletRequest.class); + HttpServletRequest mockRequest = mock(HttpServletRequest.class); when(mockRequest.getHeader("Origin")).thenReturn("http://evillocalhost:8080"); when(mockRequest.getMethod()).thenReturn("Empty"); when(mockRequest.getServerName()).thenReturn("evillocalhost"); diff --git a/zeppelin-server/src/test/java/org/apache/zeppelin/socket/NotebookServerTest.java b/zeppelin-server/src/test/java/org/apache/zeppelin/socket/NotebookServerTest.java index bc131131ea9..01a24e2e1de 100644 --- a/zeppelin-server/src/test/java/org/apache/zeppelin/socket/NotebookServerTest.java +++ b/zeppelin-server/src/test/java/org/apache/zeppelin/socket/NotebookServerTest.java @@ -1,7 +1,4 @@ -/** - * Created by joelz on 8/6/15. - * - * +/* * 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. @@ -35,10 +32,12 @@ import org.apache.zeppelin.rest.AbstractTestRestApi; import org.apache.zeppelin.server.ZeppelinServer; import org.junit.AfterClass; +import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; import javax.servlet.http.HttpServletRequest; + import java.io.IOException; import java.net.InetAddress; import java.net.UnknownHostException; @@ -51,12 +50,13 @@ /** - * BASIC Zeppelin rest api tests + * Basic REST API tests for notebookServer */ public class NotebookServerTest extends AbstractTestRestApi { private static Notebook notebook; private static NotebookServer notebookServer; private static Gson gson; + private HttpServletRequest mockRequest; @BeforeClass public static void init() throws Exception { @@ -71,19 +71,24 @@ public static void destroy() throws Exception { AbstractTestRestApi.shutDown(); } + @Before + public void setUp() { + mockRequest = mock(HttpServletRequest.class); + } + @Test public void checkOrigin() throws UnknownHostException { NotebookServer server = new NotebookServer(); String origin = "http://" + InetAddress.getLocalHost().getHostName() + ":8080"; assertTrue("Origin " + origin + " is not allowed. Please check your hostname.", - server.checkOrigin(new TestHttpServletRequest(), origin)); + server.checkOrigin(mockRequest, origin)); } @Test public void checkInvalidOrigin(){ NotebookServer server = new NotebookServer(); - assertFalse(server.checkOrigin(new TestHttpServletRequest(), "http://evillocalhost:8080")); + assertFalse(server.checkOrigin(mockRequest, "http://evillocalhost:8080")); } @Test @@ -166,7 +171,7 @@ public void testImportNotebook() throws IOException { } @Test - public void should_bind_angular_object_to_remote_for_paragraphs() throws Exception { + public void bindAngularObjectToRemoteForParagraphs() throws Exception { //Given final String varName = "name"; final String value = "DuyHai DOAN"; @@ -191,8 +196,7 @@ public void should_bind_angular_object_to_remote_for_paragraphs() throws Excepti when(paragraph.getCurrentRepl().getInterpreterGroup()).thenReturn(mdGroup); - - final AngularObject ao1 = AngularObjectBuilder.build(varName, value, "noteId", "paragraphId"); + final AngularObject ao1 = AngularObjectBuilder.build(varName, value, "noteId", "paragraphId"); when(mdRegistry.addAndNotifyRemoteProcess(varName, value, "noteId", "paragraphId")).thenReturn(ao1); @@ -217,7 +221,7 @@ public void should_bind_angular_object_to_remote_for_paragraphs() throws Excepti } @Test - public void should_bind_angular_object_to_local_for_paragraphs() throws Exception { + public void bindAngularObjectToLocalForParagraphs() throws Exception { //Given final String varName = "name"; final String value = "DuyHai DOAN"; @@ -241,7 +245,7 @@ public void should_bind_angular_object_to_local_for_paragraphs() throws Exceptio when(paragraph.getCurrentRepl().getInterpreterGroup()).thenReturn(mdGroup); - final AngularObject ao1 = AngularObjectBuilder.build(varName, value, "noteId", "paragraphId"); + final AngularObject ao1 = AngularObjectBuilder.build(varName, value, "noteId", "paragraphId"); when(mdRegistry.add(varName, value, "noteId", "paragraphId")).thenReturn(ao1); @@ -264,7 +268,7 @@ public void should_bind_angular_object_to_local_for_paragraphs() throws Exceptio } @Test - public void should_unbind_angular_object_from_remote_for_paragraphs() throws Exception { + public void unbindAngularObjectFromRemoteForParagraphs() throws Exception { //Given final String varName = "name"; final String value = "val"; @@ -286,7 +290,7 @@ public void should_unbind_angular_object_from_remote_for_paragraphs() throws Exc when(paragraph.getCurrentRepl().getInterpreterGroup()).thenReturn(mdGroup); - final AngularObject ao1 = AngularObjectBuilder.build(varName, value, "noteId", "paragraphId"); + final AngularObject ao1 = AngularObjectBuilder.build(varName, value, "noteId", "paragraphId"); when(mdRegistry.removeAndNotifyRemoteProcess(varName, "noteId", "paragraphId")).thenReturn(ao1); NotebookSocket conn = mock(NotebookSocket.class); NotebookSocket otherConn = mock(NotebookSocket.class); @@ -309,7 +313,7 @@ public void should_unbind_angular_object_from_remote_for_paragraphs() throws Exc } @Test - public void should_unbind_angular_object_from_local_for_paragraphs() throws Exception { + public void unbindAngularObjectFromLocalForParagraphs() throws Exception { //Given final String varName = "name"; final String value = "val"; @@ -331,8 +335,7 @@ public void should_unbind_angular_object_from_local_for_paragraphs() throws Exce when(paragraph.getCurrentRepl().getInterpreterGroup()).thenReturn(mdGroup); - final AngularObject ao1 = AngularObjectBuilder.build(varName, value, "noteId", "paragraphId"); - + final AngularObject ao1 = AngularObjectBuilder.build(varName, value, "noteId", "paragraphId"); when(mdRegistry.remove(varName, "noteId", "paragraphId")).thenReturn(ao1); @@ -355,12 +358,9 @@ public void should_unbind_angular_object_from_local_for_paragraphs() throws Exce private NotebookSocket createWebSocket() { NotebookSocket sock = mock(NotebookSocket.class); - when(sock.getRequest()).thenReturn(createHttpServletRequest()); + when(sock.getRequest()).thenReturn(mockRequest); return sock; } - private HttpServletRequest createHttpServletRequest() { - return mock(HttpServletRequest.class); - } } diff --git a/zeppelin-server/src/test/java/org/apache/zeppelin/socket/TestHttpServletRequest.java b/zeppelin-server/src/test/java/org/apache/zeppelin/socket/TestHttpServletRequest.java deleted file mode 100644 index 0a176baa4e3..00000000000 --- a/zeppelin-server/src/test/java/org/apache/zeppelin/socket/TestHttpServletRequest.java +++ /dev/null @@ -1,372 +0,0 @@ -/** - * Created by joelz on 8/6/15. - * - * - * 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.zeppelin.socket; - -import javax.servlet.*; -import javax.servlet.http.*; -import java.io.BufferedReader; -import java.io.IOException; -import java.io.UnsupportedEncodingException; -import java.security.Principal; -import java.util.Collection; -import java.util.Enumeration; -import java.util.Locale; -import java.util.Map; - -/** - * Created by joelz on 8/6/15. - * Helps mocking a http servlet request - */ -public class TestHttpServletRequest implements HttpServletRequest { - @Override - public boolean authenticate(HttpServletResponse httpServletResponse) throws IOException, ServletException { - return false; - } - - @Override - public String getAuthType() { - return null; - } - - @Override - public String getContextPath() { - return null; - } - - @Override - public Cookie[] getCookies() { - return new Cookie[0]; - } - - @Override - public long getDateHeader(String s) { - return 0; - } - - @Override - public String getHeader(String s) { - switch (s) { - case "Origin": - return "http://localhost:8080"; - } - - return null; - } - - @Override - public Enumeration getHeaderNames() { - return null; - } - - @Override - public Enumeration getHeaders(String s) { - return null; - } - - @Override - public int getIntHeader(String s) { - return 0; - } - - @Override - public String getMethod() { - return null; - } - - @Override - public Part getPart(String s) throws IOException, ServletException { - return null; - } - - @Override - public Collection getParts() throws IOException, ServletException { - return null; - } - - @Override - public String getPathInfo() { - return null; - } - - @Override - public String getPathTranslated() { - return null; - } - - @Override - public String getQueryString() { - return null; - } - - @Override - public String getRemoteUser() { - return null; - } - - @Override - public String getRequestedSessionId() { - return null; - } - - @Override - public String getRequestURI() { - return null; - } - - @Override - public StringBuffer getRequestURL() { - return null; - } - - @Override - public String getServletPath() { - return null; - } - - @Override - public HttpSession getSession() { - return null; - } - - @Override - public HttpSession getSession(boolean b) { - return null; - } - - @Override - public Principal getUserPrincipal() { - return null; - } - - @Override - public boolean isRequestedSessionIdFromCookie() { - return false; - } - - @Override - public boolean isRequestedSessionIdFromUrl() { - return false; - } - - @Override - public boolean isRequestedSessionIdFromURL() { - return false; - } - - @Override - public boolean isRequestedSessionIdValid() { - return false; - } - - @Override - public boolean isUserInRole(String s) { - return false; - } - - @Override - public void login(String s, String s1) throws ServletException { - - } - - @Override - public void logout() throws ServletException { - - } - - @Override - public AsyncContext getAsyncContext() { - return null; - } - - @Override - public Object getAttribute(String s) { - return null; - } - - @Override - public Enumeration getAttributeNames() { - return null; - } - - @Override - public String getCharacterEncoding() { - return null; - } - - @Override - public int getContentLength() { - return 0; - } - - @Override - public String getContentType() { - return null; - } - - @Override - public DispatcherType getDispatcherType() { - return null; - } - - @Override - public ServletInputStream getInputStream() throws IOException { - return null; - } - - @Override - public String getLocalAddr() { - return null; - } - - @Override - public Locale getLocale() { - return null; - } - - @Override - public Enumeration getLocales() { - return null; - } - - @Override - public String getLocalName() { - return null; - } - - @Override - public int getLocalPort() { - return 0; - } - - @Override - public String getParameter(String s) { - return null; - } - - @Override - public Map getParameterMap() { - return null; - } - - @Override - public Enumeration getParameterNames() { - return null; - } - - @Override - public String[] getParameterValues(String s) { - return new String[0]; - } - - @Override - public String getProtocol() { - return null; - } - - @Override - public BufferedReader getReader() throws IOException { - return null; - } - - @Override - public String getRealPath(String s) { - return null; - } - - @Override - public String getRemoteAddr() { - return null; - } - - @Override - public String getRemoteHost() { - return null; - } - - @Override - public int getRemotePort() { - return 0; - } - - @Override - public RequestDispatcher getRequestDispatcher(String s) { - return null; - } - - @Override - public String getScheme() { - return null; - } - - @Override - public String getServerName() { - return "localhost"; - } - - @Override - public int getServerPort() { - return 0; - } - - @Override - public ServletContext getServletContext() { - return null; - } - - @Override - public boolean isAsyncStarted() { - return false; - } - - @Override - public boolean isAsyncSupported() { - return false; - } - - @Override - public boolean isSecure() { - return false; - } - - @Override - public void removeAttribute(String s) { - - } - - @Override - public void setAttribute(String s, Object o) { - - } - - @Override - public void setCharacterEncoding(String s) throws UnsupportedEncodingException { - - } - - @Override - public AsyncContext startAsync() { - return null; - } - - @Override - public AsyncContext startAsync(ServletRequest servletRequest, ServletResponse servletResponse) { - return null; - } -}