List of usage examples for org.springframework.mock.web MockHttpServletRequest setMethod
public void setMethod(@Nullable String method)
From source file:org.geoserver.restupload.ResumableUploadTest.java
private String sendPostRequest() throws Exception { MockHttpServletRequest request = createRequest("/rest/resumableupload/"); request.setMethod("POST"); request.setContentType("text/plain"); request.setContent(fileName.getBytes("UTF-8")); request.addHeader("Content-type", "text/plain"); MockHttpServletResponse response = dispatch(request); assertEquals(Status.SUCCESS_CREATED.getCode(), response.getStatus()); String responseBody = response.getContentAsString(); String url = responseBody.split("\\r?\\n")[1]; String uploadId = FilenameUtils.getBaseName(url); return uploadId; }
From source file:org.geoserver.security.BruteForceAttackTest.java
private void testParallelLogin(String expectedMessage, Function<Integer, String> userNameGenerator) throws InterruptedException, ExecutionException { // idea, setup several threads to do the same failing auth in parallel, // ensuring they are all ready to go at the same time using a latch final int NTHREADS = 32; ExecutorService service = Executors.newFixedThreadPool(NTHREADS); CountDownLatch latch = new CountDownLatch(NTHREADS); AtomicInteger concurrentLoginsPrevented = new AtomicInteger(0); List<Future<?>> futures = new ArrayList<>(); long start = System.currentTimeMillis(); for (int i = 0; i < NTHREADS; i++) { final int idx = i; Future<?> future = service.submit(() -> { // mark and ready and wait for others latch.countDown();/*from w w w . j a v a2 s .c om*/ latch.await(); // execute request timing how long it took MockHttpServletRequest request = createRequest(HELLO_GET_REQUEST); request.setMethod("GET"); request.setContent(new byte[] {}); String userName = userNameGenerator.apply(idx); String token = userName + ":foobar"; request.addHeader("Authorization", "Basic " + new String(Base64.encodeBase64(token.getBytes()))); MockHttpServletResponse response = dispatch(request, "UTF-8"); // check the response and see the error message assertEquals(401, response.getStatus()); final String message = response.getErrorMessage(); // System.out.println(message); if (message.contains(expectedMessage)) { concurrentLoginsPrevented.incrementAndGet(); } return null; }); futures.add(future); } // wait for termination for (Future<?> future : futures) { future.get(); } long awaitTime = System.currentTimeMillis() - start; service.shutdown(); // now, either the threads all serialized and waited (extremely unlikely, but // not impossible) or at least one got bumped immediately with a concurrent login message assertTrue(awaitTime > NTHREADS * 1000 || concurrentLoginsPrevented.get() > 0); }
From source file:org.kuali.rice.web.health.HealthServletTest.java
@Test public void testService_No_Details_Ok() throws Exception { healthServlet.init();//from w w w .j a v a 2s.c o m MockHttpServletRequest request = new MockHttpServletRequest(); request.setRequestURI("http://localhost:8080/rice-standalone/health"); request.setMethod("GET"); MockHttpServletResponse response = new MockHttpServletResponse(); healthServlet.service(request, response); assertEquals("Response code should be 204", 204, response.getStatus()); String content = response.getContentAsString(); assertTrue("Content should be empty", content.isEmpty()); }
From source file:org.kuali.rice.web.health.HealthServletTest.java
@Test public void testService_No_Details_Failed() throws Exception { // set memory usage threshold at 0 to guarantee a failure this.config.putProperty("rice.health.memory.total.usageThreshold", "0.0"); healthServlet.init();/*from w w w . j a va 2 s. c o m*/ MockHttpServletRequest request = new MockHttpServletRequest(); request.setRequestURI("http://localhost:8080/rice-standalone/health"); request.setMethod("GET"); MockHttpServletResponse response = new MockHttpServletResponse(); healthServlet.service(request, response); assertEquals("Response code should be 503", 503, response.getStatus()); String content = response.getContentAsString(); assertTrue("Content should be empty", content.isEmpty()); }
From source file:org.kuali.rice.web.health.HealthServletTest.java
private MockHttpServletResponse initAndExecuteDetailedCheck(HealthServlet healthServlet) throws Exception { healthServlet.init();//from w ww . ja v a 2s .c om MockHttpServletRequest request = new MockHttpServletRequest(); request.setRequestURI("http://localhost:8080/rice-standalone/health"); request.setMethod("GET"); request.setParameter("detail", "true"); MockHttpServletResponse response = new MockHttpServletResponse(); healthServlet.service(request, response); String content = response.getContentAsString(); assertEquals("application/json", response.getContentType()); assertFalse(content.isEmpty()); return response; }
From source file:org.springframework.integration.http.inbound.HttpRequestHandlingControllerTests.java
@Test public void sendOnly() throws Exception { QueueChannel requestChannel = new QueueChannel(); HttpRequestHandlingController controller = new HttpRequestHandlingController(false); controller.setBeanFactory(mock(BeanFactory.class)); controller.setRequestChannel(requestChannel); controller.setViewName("foo"); controller.afterPropertiesSet();//from www. j a va 2s .c o m controller.start(); MockHttpServletRequest request = new MockHttpServletRequest(); request.setMethod("POST"); request.setContent("hello".getBytes()); //request.setContentType("text/plain"); //Works in Spring 3.1.2.RELEASE but NOT in 3.0.7.RELEASE //Instead do: request.addHeader("Content-Type", "text/plain"); MockHttpServletResponse response = new MockHttpServletResponse(); ModelAndView modelAndView = controller.handleRequest(request, response); assertEquals("foo", modelAndView.getViewName()); assertEquals(0, modelAndView.getModel().size()); Message<?> requestMessage = requestChannel.receive(0); assertNotNull(requestMessage); assertEquals("hello", requestMessage.getPayload()); }
From source file:org.springframework.integration.http.inbound.HttpRequestHandlingControllerTests.java
@Test public void sendOnlyViewExpression() throws Exception { QueueChannel requestChannel = new QueueChannel(); HttpRequestHandlingController controller = new HttpRequestHandlingController(false); controller.setBeanFactory(mock(BeanFactory.class)); controller.setRequestChannel(requestChannel); Expression viewExpression = new SpelExpressionParser().parseExpression("'baz'"); controller.setViewExpression(viewExpression); controller.afterPropertiesSet();//from w w w . ja v a 2 s .c o m controller.start(); MockHttpServletRequest request = new MockHttpServletRequest(); request.setMethod("POST"); request.setContent("hello".getBytes()); //request.setContentType("text/plain"); //Works in Spring 3.1.2.RELEASE but NOT in 3.0.7.RELEASE //Instead do: request.addHeader("Content-Type", "text/plain"); MockHttpServletResponse response = new MockHttpServletResponse(); ModelAndView modelAndView = controller.handleRequest(request, response); assertEquals("baz", modelAndView.getViewName()); assertEquals(0, modelAndView.getModel().size()); Message<?> requestMessage = requestChannel.receive(0); assertNotNull(requestMessage); assertEquals("hello", requestMessage.getPayload()); }
From source file:org.springframework.integration.http.inbound.HttpRequestHandlingControllerTests.java
@Test public void requestReply() throws Exception { DirectChannel requestChannel = new DirectChannel(); AbstractReplyProducingMessageHandler handler = new AbstractReplyProducingMessageHandler() { @Override/*w ww . j a va 2 s . c om*/ protected Object handleRequestMessage(Message<?> requestMessage) { return requestMessage.getPayload().toString().toUpperCase(); } }; requestChannel.subscribe(handler); HttpRequestHandlingController controller = new HttpRequestHandlingController(true); controller.setBeanFactory(mock(BeanFactory.class)); controller.setRequestChannel(requestChannel); controller.setViewName("foo"); controller.afterPropertiesSet(); controller.start(); MockHttpServletRequest request = new MockHttpServletRequest(); request.setMethod("POST"); //request.setContentType("text/plain"); //Works in Spring 3.1.2.RELEASE but NOT in 3.0.7.RELEASE //Instead do: request.addHeader("Content-Type", "text/plain"); request.setContent("hello".getBytes()); //For Spring 3.0.7.RELEASE the Content must be set, MockHttpServletResponse response = new MockHttpServletResponse(); ModelAndView modelAndView = controller.handleRequest(request, response); assertEquals("foo", modelAndView.getViewName()); assertEquals(1, modelAndView.getModel().size()); Object reply = modelAndView.getModel().get("reply"); assertNotNull(reply); assertEquals("HELLO", reply); }
From source file:org.springframework.integration.http.inbound.HttpRequestHandlingControllerTests.java
@Test public void requestReplyViewExpressionString() throws Exception { DirectChannel requestChannel = new DirectChannel(); AbstractReplyProducingMessageHandler handler = new AbstractReplyProducingMessageHandler() { @Override//from w ww . j a v a2 s . com protected Message<String> handleRequestMessage(Message<?> requestMessage) { return MessageBuilder.withPayload("foo").setHeader("bar", "baz").build(); } }; requestChannel.subscribe(handler); HttpRequestHandlingController controller = new HttpRequestHandlingController(true); controller.setBeanFactory(mock(BeanFactory.class)); controller.setRequestChannel(requestChannel); Expression viewExpression = new SpelExpressionParser().parseExpression("headers['bar']"); controller.setViewExpression(viewExpression); controller.afterPropertiesSet(); controller.start(); MockHttpServletRequest request = new MockHttpServletRequest(); request.setMethod("POST"); request.setContent("hello".getBytes()); request.setContentType("text/plain"); MockHttpServletResponse response = new MockHttpServletResponse(); ModelAndView modelAndView = controller.handleRequest(request, response); assertEquals("baz", modelAndView.getViewName()); assertEquals(1, modelAndView.getModel().size()); Object reply = modelAndView.getModel().get("reply"); assertNotNull(reply); assertEquals("foo", reply); }
From source file:org.springframework.integration.http.inbound.HttpRequestHandlingControllerTests.java
@Test public void requestReplyViewExpressionView() throws Exception { final View view = mock(View.class); DirectChannel requestChannel = new DirectChannel(); AbstractReplyProducingMessageHandler handler = new AbstractReplyProducingMessageHandler() { @Override/* ww w. j a v a 2 s . c o m*/ protected Message<String> handleRequestMessage(Message<?> requestMessage) { return MessageBuilder.withPayload("foo").setHeader("bar", view).build(); } }; requestChannel.subscribe(handler); HttpRequestHandlingController controller = new HttpRequestHandlingController(true); controller.setBeanFactory(mock(BeanFactory.class)); controller.setRequestChannel(requestChannel); Expression viewExpression = new SpelExpressionParser().parseExpression("headers['bar']"); controller.setViewExpression(viewExpression); controller.afterPropertiesSet(); controller.start(); MockHttpServletRequest request = new MockHttpServletRequest(); request.setMethod("POST"); request.setContent("hello".getBytes()); request.setContentType("text/plain"); MockHttpServletResponse response = new MockHttpServletResponse(); ModelAndView modelAndView = controller.handleRequest(request, response); assertSame(view, modelAndView.getView()); assertEquals(1, modelAndView.getModel().size()); Object reply = modelAndView.getModel().get("reply"); assertNotNull(reply); assertEquals("foo", reply); }