Example usage for org.springframework.mock.web MockHttpServletRequest setMethod

List of usage examples for org.springframework.mock.web MockHttpServletRequest setMethod

Introduction

In this page you can find the example usage for org.springframework.mock.web MockHttpServletRequest setMethod.

Prototype

public void setMethod(@Nullable String method) 

Source Link

Usage

From source file:org.apache.archiva.webdav.RepositoryServletSecurityTest.java

@Test
public void testPutWithValidUserWithNoWriteAccess() throws Exception {

    servlet.setDavSessionProvider(davSessionProvider);

    ArchivaDavResourceFactory archivaDavResourceFactory = (ArchivaDavResourceFactory) servlet
            .getResourceFactory();/* w  w w .ja  v  a  2s  .  co  m*/
    archivaDavResourceFactory.setHttpAuth(httpAuth);
    archivaDavResourceFactory.setServletAuth(servletAuth);
    servlet.setResourceFactory(archivaDavResourceFactory);

    AuthenticationResult result = new AuthenticationResult();

    EasyMock.expect(httpAuth.getAuthenticationResult(anyObject(HttpServletRequest.class),
            anyObject(HttpServletResponse.class))).andReturn(result);

    EasyMock.expect(servletAuth.isAuthenticated(anyObject(HttpServletRequest.class),
            anyObject(AuthenticationResult.class))).andReturn(true);

    // ArchivaDavResourceFactory#isAuthorized()
    SecuritySession session = new DefaultSecuritySession();

    EasyMock.expect(httpAuth.getAuthenticationResult(anyObject(HttpServletRequest.class),
            anyObject(HttpServletResponse.class))).andReturn(result);

    MockHttpServletRequest mockHttpServletRequest = new MockHttpServletRequest();

    EasyMock.expect(httpAuth.getSecuritySession(mockHttpServletRequest.getSession(true))).andReturn(session);

    EasyMock.expect(httpAuth.getSessionUser(mockHttpServletRequest.getSession())).andReturn(new SimpleUser());

    EasyMock.expect(servletAuth.isAuthenticated(anyObject(HttpServletRequest.class), eq(result)))
            .andReturn(true);

    EasyMock.expect(servletAuth.isAuthorized(anyObject(HttpServletRequest.class), eq(session), eq("internal"),
            eq(ArchivaRoleConstants.OPERATION_REPOSITORY_UPLOAD)))
            .andThrow(new UnauthorizedException("User not authorized"));
    httpAuthControl.replay();
    servletAuthControl.replay();

    InputStream is = getClass().getResourceAsStream("/artifact.jar");
    assertNotNull("artifact.jar inputstream", is);

    mockHttpServletRequest.addHeader("User-Agent", "foo");
    mockHttpServletRequest.setMethod("PUT");
    mockHttpServletRequest.setRequestURI("/repository/internal/path/to/artifact.jar");
    mockHttpServletRequest.setContent(IOUtils.toByteArray(is));
    mockHttpServletRequest.setContentType("application/octet-stream");

    MockHttpServletResponse mockHttpServletResponse = new MockHttpServletResponse();

    servlet.service(mockHttpServletRequest, mockHttpServletResponse);

    httpAuthControl.verify();
    servletAuthControl.verify();

    assertEquals(HttpServletResponse.SC_UNAUTHORIZED, mockHttpServletResponse.getStatus());
}

From source file:org.apache.archiva.webdav.RepositoryServletSecurityTest.java

@Test
public void testPutWithValidUserWithWriteAccess() throws Exception {
    assertTrue(repoRootInternal.getRoot().exists());

    MockHttpServletRequest mockHttpServletRequest = new MockHttpServletRequest();
    String putUrl = "http://machine.com/repository/internal/path/to/artifact.jar";
    InputStream is = getClass().getResourceAsStream("/artifact.jar");
    assertNotNull("artifact.jar inputstream", is);

    servlet.setDavSessionProvider(davSessionProvider);

    ArchivaDavResourceFactory archivaDavResourceFactory = (ArchivaDavResourceFactory) servlet
            .getResourceFactory();/*from w  w w  .j a  v a2  s . c  om*/
    archivaDavResourceFactory.setHttpAuth(httpAuth);
    archivaDavResourceFactory.setServletAuth(servletAuth);

    TestAuditListener listener = new TestAuditListener();
    archivaDavResourceFactory.addAuditListener(listener);
    servlet.setResourceFactory(archivaDavResourceFactory);

    AuthenticationResult result = new AuthenticationResult();

    EasyMock.expect(httpAuth.getAuthenticationResult(anyObject(HttpServletRequest.class),
            anyObject(HttpServletResponse.class))).andReturn(result);

    EasyMock.expect(servletAuth.isAuthenticated(anyObject(HttpServletRequest.class),
            anyObject(AuthenticationResult.class))).andReturn(true);

    User user = new SimpleUser();
    user.setUsername("admin");

    // ArchivaDavResourceFactory#isAuthorized()
    SecuritySession session = new DefaultSecuritySession();

    EasyMock.expect(httpAuth.getAuthenticationResult(anyObject(HttpServletRequest.class),
            anyObject(HttpServletResponse.class))).andReturn(result);

    EasyMock.expect(httpAuth.getSecuritySession(mockHttpServletRequest.getSession())).andReturn(session);

    EasyMock.expect(httpAuth.getSessionUser(mockHttpServletRequest.getSession())).andReturn(user);

    EasyMock.expect(servletAuth.isAuthenticated(anyObject(HttpServletRequest.class), eq(result)))
            .andReturn(true);

    EasyMock.expect(servletAuth.isAuthorized(anyObject(HttpServletRequest.class), eq(session), eq("internal"),
            eq(ArchivaRoleConstants.OPERATION_REPOSITORY_UPLOAD))).andReturn(true);

    httpAuthControl.replay();
    servletAuthControl.replay();

    mockHttpServletRequest.addHeader("User-Agent", "foo");
    mockHttpServletRequest.setMethod("PUT");
    mockHttpServletRequest.setRequestURI("/repository/internal/path/to/artifact.jar");
    mockHttpServletRequest.setContent(IOUtils.toByteArray(is));
    mockHttpServletRequest.setContentType("application/octet-stream");

    MockHttpServletResponse mockHttpServletResponse = new MockHttpServletResponse();

    servlet.service(mockHttpServletRequest, mockHttpServletResponse);

    httpAuthControl.verify();
    servletAuthControl.verify();

    assertEquals(HttpServletResponse.SC_CREATED, mockHttpServletResponse.getStatus());

    assertEquals("admin", listener.getEvents().get(0).getUserId());
}

From source file:org.apache.archiva.webdav.RepositoryServletSecurityTest.java

@Test
public void testGetWithInvalidUserAndGuestHasReadAccess() throws Exception {
    String commonsLangJar = "commons-lang/commons-lang/2.1/commons-lang-2.1.jar";
    String expectedArtifactContents = "dummy-commons-lang-artifact";

    File artifactFile = new File(repoRootInternal.getRoot(), commonsLangJar);
    artifactFile.getParentFile().mkdirs();

    FileUtils.writeStringToFile(artifactFile, expectedArtifactContents, Charset.defaultCharset());

    servlet.setDavSessionProvider(davSessionProvider);

    ArchivaDavResourceFactory archivaDavResourceFactory = (ArchivaDavResourceFactory) servlet
            .getResourceFactory();// w  w  w  .j  ava 2 s .  co  m
    archivaDavResourceFactory.setHttpAuth(httpAuth);
    archivaDavResourceFactory.setServletAuth(servletAuth);

    servlet.setResourceFactory(archivaDavResourceFactory);

    AuthenticationResult result = new AuthenticationResult();

    EasyMock.expect(httpAuth.getAuthenticationResult(anyObject(HttpServletRequest.class),
            anyObject(HttpServletResponse.class))).andReturn(result);

    EasyMock.expect(servletAuth.isAuthenticated(anyObject(HttpServletRequest.class),
            anyObject(AuthenticationResult.class)))
            .andThrow(new AuthenticationException("Authentication error"));

    EasyMock.expect(
            servletAuth.isAuthorized("guest", "internal", ArchivaRoleConstants.OPERATION_REPOSITORY_ACCESS))
            .andReturn(true);

    // ArchivaDavResourceFactory#isAuthorized()
    SecuritySession session = new DefaultSecuritySession();

    EasyMock.expect(httpAuth.getAuthenticationResult(anyObject(HttpServletRequest.class),
            anyObject(HttpServletResponse.class))).andReturn(result);

    EasyMock.expect(httpAuth.getSecuritySession(anyObject(HttpSession.class))).andReturn(session);

    EasyMock.expect(httpAuth.getSessionUser(anyObject(HttpSession.class))).andReturn(null);

    EasyMock.expect(servletAuth.isAuthenticated(anyObject(HttpServletRequest.class), eq(result)))
            .andReturn(true);

    EasyMock.expect(servletAuth.isAuthorized(anyObject(HttpServletRequest.class), eq(session), eq("internal"),
            eq(ArchivaRoleConstants.OPERATION_REPOSITORY_ACCESS))).andReturn(true);
    httpAuthControl.replay();
    servletAuthControl.replay();

    MockHttpServletRequest mockHttpServletRequest = new MockHttpServletRequest();
    mockHttpServletRequest.addHeader("User-Agent", "foo");
    mockHttpServletRequest.setMethod("GET");
    mockHttpServletRequest.setRequestURI("/repository/internal/" + commonsLangJar);

    MockHttpServletResponse mockHttpServletResponse = new MockHttpServletResponse();

    servlet.service(mockHttpServletRequest, mockHttpServletResponse);

    httpAuthControl.verify();
    servletAuthControl.verify();

    assertEquals(HttpServletResponse.SC_OK, mockHttpServletResponse.getStatus());

    assertEquals("Expected file contents", expectedArtifactContents,
            mockHttpServletResponse.getContentAsString());
}

From source file:org.apache.archiva.webdav.RepositoryServletSecurityTest.java

@Test
public void testGetWithInvalidUserAndGuestHasNoReadAccess() throws Exception {
    String commonsLangJar = "commons-lang/commons-lang/2.1/commons-lang-2.1.jar";
    String expectedArtifactContents = "dummy-commons-lang-artifact";

    File artifactFile = new File(repoRootInternal.getRoot(), commonsLangJar);
    artifactFile.getParentFile().mkdirs();

    FileUtils.writeStringToFile(artifactFile, expectedArtifactContents, Charset.defaultCharset());

    servlet.setDavSessionProvider(davSessionProvider);

    AuthenticationResult result = new AuthenticationResult();

    EasyMock.expect(httpAuth.getAuthenticationResult(anyObject(HttpServletRequest.class),
            anyObject(HttpServletResponse.class))).andReturn(result);

    EasyMock.expect(servletAuth.isAuthenticated(anyObject(HttpServletRequest.class),
            anyObject(AuthenticationResult.class)))
            .andThrow(new AuthenticationException("Authentication error"));

    EasyMock.expect(/*w ww. ja va2  s  .c o m*/
            servletAuth.isAuthorized("guest", "internal", ArchivaRoleConstants.OPERATION_REPOSITORY_ACCESS))
            .andReturn(false);
    httpAuthControl.replay();
    servletAuthControl.replay();

    MockHttpServletRequest mockHttpServletRequest = new MockHttpServletRequest();
    mockHttpServletRequest.addHeader("User-Agent", "foo");
    mockHttpServletRequest.setMethod("GET");
    mockHttpServletRequest.setRequestURI("/repository/internal/" + commonsLangJar);

    MockHttpServletResponse mockHttpServletResponse = new MockHttpServletResponse();

    servlet.service(mockHttpServletRequest, mockHttpServletResponse);

    httpAuthControl.verify();
    servletAuthControl.verify();

    assertEquals(HttpServletResponse.SC_UNAUTHORIZED, mockHttpServletResponse.getStatus());
}

From source file:org.apache.archiva.webdav.RepositoryServletSecurityTest.java

@Test
public void testGetWithAValidUserWithReadAccess() throws Exception {
    String commonsLangJar = "commons-lang/commons-lang/2.1/commons-lang-2.1.jar";
    String expectedArtifactContents = "dummy-commons-lang-artifact";

    File artifactFile = new File(repoRootInternal.getRoot(), commonsLangJar);
    artifactFile.getParentFile().mkdirs();

    FileUtils.writeStringToFile(artifactFile, expectedArtifactContents, Charset.defaultCharset());

    servlet.setDavSessionProvider(davSessionProvider);

    ArchivaDavResourceFactory archivaDavResourceFactory = (ArchivaDavResourceFactory) servlet
            .getResourceFactory();/*  w ww . j  a  v a2 s  .  c o  m*/
    archivaDavResourceFactory.setHttpAuth(httpAuth);
    archivaDavResourceFactory.setServletAuth(servletAuth);

    servlet.setResourceFactory(archivaDavResourceFactory);

    AuthenticationResult result = new AuthenticationResult();

    EasyMock.expect(httpAuth.getAuthenticationResult(anyObject(HttpServletRequest.class),
            anyObject(HttpServletResponse.class))).andReturn(result);

    EasyMock.expect(servletAuth.isAuthenticated(anyObject(HttpServletRequest.class),
            anyObject(AuthenticationResult.class))).andReturn(true);
    // ArchivaDavResourceFactory#isAuthorized()
    SecuritySession session = new DefaultSecuritySession();

    EasyMock.expect(httpAuth.getAuthenticationResult(anyObject(HttpServletRequest.class),
            anyObject(HttpServletResponse.class))).andReturn(result);

    EasyMock.expect(httpAuth.getSecuritySession(anyObject(HttpSession.class))).andReturn(session);

    EasyMock.expect(httpAuth.getSessionUser(anyObject(HttpSession.class))).andReturn(new SimpleUser());

    EasyMock.expect(servletAuth.isAuthenticated(anyObject(HttpServletRequest.class), eq(result)))
            .andReturn(true);

    EasyMock.expect(servletAuth.isAuthorized(anyObject(HttpServletRequest.class), eq(session), eq("internal"),
            eq(ArchivaRoleConstants.OPERATION_REPOSITORY_ACCESS))).andReturn(true);

    httpAuthControl.replay();
    servletAuthControl.replay();

    MockHttpServletRequest mockHttpServletRequest = new MockHttpServletRequest();
    mockHttpServletRequest.addHeader("User-Agent", "foo");
    mockHttpServletRequest.setMethod("GET");
    mockHttpServletRequest.setRequestURI("/repository/internal/" + commonsLangJar);

    MockHttpServletResponse mockHttpServletResponse = new MockHttpServletResponse();

    servlet.service(mockHttpServletRequest, mockHttpServletResponse);

    httpAuthControl.verify();
    servletAuthControl.verify();

    assertEquals(HttpServletResponse.SC_OK, mockHttpServletResponse.getStatus());
    assertEquals("Expected file contents", expectedArtifactContents,
            mockHttpServletResponse.getContentAsString());
}

From source file:org.apache.archiva.webdav.RepositoryServletSecurityTest.java

@Test
public void testGetWithAValidUserWithNoReadAccess() throws Exception {
    String commonsLangJar = "commons-lang/commons-lang/2.1/commons-lang-2.1.jar";
    String expectedArtifactContents = "dummy-commons-lang-artifact";

    File artifactFile = new File(repoRootInternal.getRoot(), commonsLangJar);
    artifactFile.getParentFile().mkdirs();

    FileUtils.writeStringToFile(artifactFile, expectedArtifactContents, Charset.defaultCharset());

    servlet.setDavSessionProvider(davSessionProvider);

    ArchivaDavResourceFactory archivaDavResourceFactory = (ArchivaDavResourceFactory) servlet
            .getResourceFactory();// w  w  w .j a  v a2 s.co  m
    archivaDavResourceFactory.setHttpAuth(httpAuth);
    archivaDavResourceFactory.setServletAuth(servletAuth);

    servlet.setResourceFactory(archivaDavResourceFactory);

    AuthenticationResult result = new AuthenticationResult();

    EasyMock.expect(httpAuth.getAuthenticationResult(anyObject(HttpServletRequest.class),
            anyObject(HttpServletResponse.class))).andReturn(result);

    EasyMock.expect(servletAuth.isAuthenticated(anyObject(HttpServletRequest.class),
            anyObject(AuthenticationResult.class))).andReturn(true);

    // ArchivaDavResourceFactory#isAuthorized()
    SecuritySession session = new DefaultSecuritySession();

    EasyMock.expect(httpAuth.getAuthenticationResult(anyObject(HttpServletRequest.class),
            anyObject(HttpServletResponse.class))).andReturn(result);

    EasyMock.expect(httpAuth.getSecuritySession(anyObject(HttpSession.class))).andReturn(session);

    EasyMock.expect(httpAuth.getSessionUser(anyObject(HttpSession.class))).andReturn(new SimpleUser());

    EasyMock.expect(servletAuth.isAuthenticated(anyObject(HttpServletRequest.class), eq(result)))
            .andReturn(true);

    EasyMock.expect(servletAuth.isAuthorized(anyObject(HttpServletRequest.class), eq(session), eq("internal"),
            eq(ArchivaRoleConstants.OPERATION_REPOSITORY_ACCESS)))
            .andThrow(new UnauthorizedException("User not authorized to read repository."));
    httpAuthControl.replay();
    servletAuthControl.replay();

    MockHttpServletRequest mockHttpServletRequest = new MockHttpServletRequest();
    mockHttpServletRequest.addHeader("User-Agent", "foo");
    mockHttpServletRequest.setMethod("GET");
    mockHttpServletRequest.setRequestURI("/repository/internal/" + commonsLangJar);

    MockHttpServletResponse mockHttpServletResponse = new MockHttpServletResponse();

    servlet.service(mockHttpServletRequest, mockHttpServletResponse);

    httpAuthControl.verify();
    servletAuthControl.verify();

    assertEquals(HttpServletResponse.SC_UNAUTHORIZED, mockHttpServletResponse.getStatus());
}

From source file:org.apache.struts2.interceptor.FileUploadInterceptorTest.java

/**
 * tests whether with multiple files sent with the same name, the ones with forbiddenTypes (see
 * FileUploadInterceptor.setAllowedTypes(...) ) are sorted out.
 *
 * @throws Exception/*from   w ww  . ja  v a2  s  .c  o m*/
 */
public void testMultipleAccept() throws Exception {
    final String htmlContent = "<html><head></head><body>html content</body></html>";
    final String plainContent = "plain content";
    final String bondary = "simple boundary";
    final String endline = "\r\n";

    MockHttpServletRequest req = new MockHttpServletRequest();
    req.setCharacterEncoding("text/html");
    req.setMethod("POST");
    req.setContentType("multipart/form-data; boundary=" + bondary);
    req.addHeader("Content-type", "multipart/form-data");
    StringBuilder content = new StringBuilder(128);
    content.append(encodeTextFile(bondary, endline, "file", "test.html", "text/plain", plainContent));
    content.append(encodeTextFile(bondary, endline, "file", "test1.html", "text/html", htmlContent));
    content.append(encodeTextFile(bondary, endline, "file", "test2.html", "text/html", htmlContent));
    content.append(endline);
    content.append(endline);
    content.append(endline);
    content.append("--");
    content.append(bondary);
    content.append("--");
    content.append(endline);
    req.setContent(content.toString().getBytes());

    assertTrue(ServletFileUpload.isMultipartContent(req));

    MyFileupAction action = new MyFileupAction();
    MockActionInvocation mai = new MockActionInvocation();
    mai.setAction(action);
    mai.setResultCode("success");
    mai.setInvocationContext(ActionContext.getContext());
    Map<String, Object> param = new HashMap<String, Object>();
    ActionContext.getContext().setParameters(param);
    ActionContext.getContext().put(ServletActionContext.HTTP_REQUEST, createMultipartRequest(req, 2000));

    interceptor.setAllowedTypes("text/html");
    interceptor.intercept(mai);

    assertEquals(3, param.size());
    File[] files = (File[]) param.get("file");
    String[] fileContentTypes = (String[]) param.get("fileContentType");
    String[] fileRealFilenames = (String[]) param.get("fileFileName");

    assertNotNull(files);
    assertNotNull(fileContentTypes);
    assertNotNull(fileRealFilenames);
    assertEquals("files accepted ", 2, files.length);
    assertEquals(2, fileContentTypes.length);
    assertEquals(2, fileRealFilenames.length);
    assertEquals("text/html", fileContentTypes[0]);
    assertNotNull("test1.html", fileRealFilenames[0]);
}

From source file:org.cloudifysource.rest.AttributesContollerTest.java

private MockHttpServletRequest createMockGetRequest(final String requestUri) {
    final MockHttpServletRequest request = new MockHttpServletRequest();
    request.setRequestURI(requestUri);/*w ww .j  a  va2  s.com*/
    request.setMethod("GET");
    request.setContentType("application/json");

    return request;
}

From source file:org.cloudifysource.rest.AttributesContollerTest.java

private MockHttpServletRequest createMockPostRequest(final String requestUri, final String contentAsJson) {
    final MockHttpServletRequest request = new MockHttpServletRequest();
    request.setRequestURI(requestUri);/*w w w  .j  a va 2  s. c om*/
    request.setMethod("POST");
    request.setContentType("application/json");

    if (StringUtils.isNotBlank(contentAsJson)) {
        request.setContent(contentAsJson.getBytes());
    }

    return request;
}

From source file:org.cloudifysource.rest.AttributesContollerTest.java

private MockHttpServletRequest createMockDeleteRequest(final String requestUri) {
    final MockHttpServletRequest request = new MockHttpServletRequest();
    request.setRequestURI(requestUri);//w  w  w .  j  ava 2s  .co  m
    request.setMethod("DELETE");
    request.setContentType("application/json");

    return request;
}