@Test public void testRequestQuoterWithNotNull() throws Exception { HttpServletRequest request = Mockito.mock(HttpServletRequest.class); String[] values = new String[] { "abc", "def" }; Mockito.doReturn(values).when(request).getParameterValues("dummy"); RequestQuoter requestQuoter = new RequestQuoter(request); String[] parameterValues = requestQuoter.getParameterValues("dummy"); Assert.assertTrue("It should return Parameter Values", Arrays.equals( values, parameterValues)); }
@Test public void testRequestQuoterWithNull() throws Exception { HttpServletRequest request = Mockito.mock(HttpServletRequest.class); Mockito.doReturn(null).when(request).getParameterValues("dummy"); RequestQuoter requestQuoter = new RequestQuoter(request); String[] parameterValues = requestQuoter.getParameterValues("dummy"); Assert.assertEquals("It should return null " + "when there are no values for the parameter", null, parameterValues); }
@Test public void testRequestQuoting() throws Exception { HttpServletRequest mockReq = Mockito.mock(HttpServletRequest.class); HttpServer.QuotingInputFilter.RequestQuoter quoter = new HttpServer.QuotingInputFilter.RequestQuoter(mockReq); Mockito.doReturn("a<b").when(mockReq).getParameter("x"); assertEquals("Test simple param quoting", "a<b", quoter.getParameter("x")); Mockito.doReturn(null).when(mockReq).getParameter("x"); assertEquals("Test that missing parameters dont cause NPE", null, quoter.getParameter("x")); Mockito.doReturn(new String[]{"a<b", "b"}).when(mockReq).getParameterValues("x"); assertArrayEquals("Test escaping of an array", new String[]{"a<b", "b"}, quoter.getParameterValues("x")); Mockito.doReturn(null).when(mockReq).getParameterValues("x"); assertArrayEquals("Test that missing parameters dont cause NPE for array", null, quoter.getParameterValues("x")); } }