Example usage for org.springframework.mock.web MockMultipartHttpServletRequest addFile

List of usage examples for org.springframework.mock.web MockMultipartHttpServletRequest addFile

Introduction

In this page you can find the example usage for org.springframework.mock.web MockMultipartHttpServletRequest addFile.

Prototype

public void addFile(MultipartFile file) 

Source Link

Document

Add a file to this request.

Usage

From source file:com.cognitivabrasil.repositorio.web.FileControllerTest.java

@Test
public void testUploadFile() throws IOException, ServletException, FileUploadException {
    HttpServletResponse response = new MockHttpServletResponse();

    MockMultipartHttpServletRequest request = new MockMultipartHttpServletRequest();
    assertThat(request.getFileNames().hasNext(), equalTo(false));
    assertThat(request.getFile("file1"), equalTo(null));
    assertThat(request.getFile("file2"), equalTo(null));
    assertThat(request.getFileMap().isEmpty(), equalTo(true));

    request.setContentType("multipart/form-data; boundary=-----1234");
    request.setCharacterEncoding("text/plain");
    request.setContent("algo".getBytes());
    request.setMethod("POST");

    MockMultipartFile mockMultipartFile = new MockMultipartFile("content", "test.txt", "text/plain",
            "HelloWorld".getBytes());
    request.addFile(mockMultipartFile);

    FileController fileController = mockFiles();

    String result = fileController.upload(request, response);

    assertThat(result, equalTo("{\"jsonrpc\" : \"2.0\", \"result\" : \"success\", \"id\" : \"id\"}"));
    //testes//from ww w .  j  av a 2s .  c  o m

}

From source file:com.formkiq.core.service.workflow.WorkflowEditorServiceImplTest.java

/**
 * testEventAddStep02()./*  w w  w .  ja  va2  s  . co m*/
 * Add step - MultipartHttpServletRequest
 * @throws IOException IOException
 */
@SuppressWarnings("unchecked")
@Test
public void testEventAddStep02() throws IOException {
    // given
    this.archive.setWorkflow(this.workflow);
    MockMultipartHttpServletRequest req = new MockMultipartHttpServletRequest();
    req.setRequestURI("/home");

    byte[] content = Strings.toByteArray("test");
    req.addFile(new MockMultipartFile("sample.pdf", "sample.pdf", "", content));

    // when
    expect(this.flow.getData()).andReturn(this.archive);

    this.flow.setStates(isA(List.class));
    this.flow.setEventId(1);

    Map<String, WorkflowOutputGenerator> map = ImmutableMap.of("test", this.pdfEditor);
    expect(this.context.getBeansOfType(WorkflowOutputGenerator.class)).andReturn(map);
    expect(this.pdfEditor.getNewWorkflowOutputDocument()).andReturn(new WorkflowOutputPdfForm());
    this.pdfEditor.generate(this.archive, "sample.pdf", content);

    replayAll();
    this.ws.eventIdaddstep(this.flow, req, null);

    // then
    verifyAll();
}

From source file:au.com.gaiaresources.bdrs.controller.test.TestDataCreator.java

private void createTaxonAttributes(MockMultipartHttpServletRequest request, TaxonGroup taxonGroup)
        throws ParseException, IOException {

    String name;//from www  .ja  va2 s . c o m
    IndicatorSpeciesAttribute taxonAttr;
    Preference testDataDirPref = prefDAO.getPreferenceByKey(TEST_DATA_IMAGE_DIR);
    for (Attribute attr : taxonGroup.getAttributes()) {
        if (attr.isTag()) {

            name = String.format(AttributeParser.ATTRIBUTE_NAME_TEMPLATE, AttributeParser.DEFAULT_PREFIX,
                    attr.getId());

            taxonAttr = new IndicatorSpeciesAttribute();
            taxonAttr.setAttribute(attr);

            if (AttributeType.IMAGE.equals(attr.getType()) || AttributeType.FILE.equals(attr.getType())) {
                byte[] data;
                String contentType;
                String filename;
                if (AttributeType.IMAGE.equals(attr.getType())) {
                    data = getRandomImage(testDataDirPref, 640, 480);
                    data = data == null ? createImage(640, 480, attr.getDescription()) : data;
                    contentType = "image/png";
                    filename = String.format("%s.png", attr.getName());
                } else {
                    data = generateDataFile();
                    contentType = "text/plain";
                    filename = String.format("%s.txt", attr.getName());
                }

                String attrFileKey = String.format(AttributeParser.ATTRIBUTE_FILE_NAME_TEMPLATE,
                        AttributeParser.DEFAULT_PREFIX, attr.getId());

                MockMultipartFile mockFileFile = new MockMultipartFile(attrFileKey, filename, contentType,
                        data);
                request.addFile(mockFileFile);
                taxonAttr.setStringValue(filename);

            } else {
                setValueForTaxonAttribute(taxonAttr);
            }
            request.addParameter(name, taxonAttr.getStringValue());
        }
    }
}

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

private MockHttpServletRequest createMockPostFileRequest(final String requestUri, final File file)
        throws IOException {
    MultipartFile multiFile = UploadRepoTest.createNewMultiFile(file);
    MockMultipartHttpServletRequest request = new MockMultipartHttpServletRequest();
    request.addFile(multiFile);
    request.setMethod("POST");
    request.setRequestURI(requestUri);//  www .  j  a  va  2s  .c o  m
    return request;
}

From source file:org.kuali.mobility.shared.controllers.FileControllerTest.java

@Test
public void testHandleFormUpload() {
    MockMultipartHttpServletRequest request = new MockMultipartHttpServletRequest();

    String viewName;/* w ww. ja  v  a  2  s  .  com*/
    try {
        InputStream in = this.getClass().getClassLoader().getResourceAsStream(FILE_NAME);

        MockMultipartFile mockFile = new MockMultipartFile(FORM_FILE_NAME, FILE_NAME, CONTENT_TYPE, in);

        request.addFile(mockFile);

        File file = new File(mockFile);

        when(getFileService().saveFile(file)).thenReturn(Long.valueOf(42));

        viewName = getController().handleFormUpload(request);
    } catch (IOException ioe) {
        LOG.error(ioe.getLocalizedMessage(), ioe);
        viewName = null;
    } catch (Exception e) {
        LOG.error(e.getLocalizedMessage(), e);
        viewName = null;
    }
    assertTrue("Failed to handle form upload.", viewName.contains(FILE_NAME));
}

From source file:org.openmrs.module.webservices.rest.web.v1_0.controller.openmrs1_9.ClobDatatypeStorageControllerTest.java

@Test
public void shouldAcceptAndStoreClobDataViaPost() throws Exception {
    long before = getAllCount();

    byte[] fileData = IOUtils.toByteArray(
            getClass().getClassLoader().getResourceAsStream(RestTestConstants1_9.TEST_RESOURCE_FILE));

    MockMultipartFile toUpload = new MockMultipartFile("file", "formresource.txt", "text/plain", fileData);

    MockMultipartHttpServletRequest request = new MockMultipartHttpServletRequest();
    request.setRequestURI(getBaseRestURI() + getURI());
    request.setMethod(RequestMethod.POST.name());
    request.addHeader("Content-Type", "multipart/form-data");

    request.addFile(toUpload);

    MockHttpServletResponse response = handle(request);

    Assert.assertEquals(HttpServletResponse.SC_CREATED, response.getStatus());
    Assert.assertEquals(before + 1, getAllCount());
}

From source file:org.openmrs.module.webservices.rest.web.v1_0.controller.openmrs1_9.FormResourceController1_9Test.java

@Test
public void shouldPostFormResourceValue() throws Exception {
    byte[] fileData = IOUtils.toByteArray(
            getClass().getClassLoader().getResourceAsStream(RestTestConstants1_9.TEST_RESOURCE_FILE));

    String valueReferenceBefore = formService.getFormResourceByUuid(getUuid()).getValueReference();

    MockMultipartFile toUpload = new MockMultipartFile("value", "formresource.txt", "text/plain", fileData);

    MockMultipartHttpServletRequest request = new MockMultipartHttpServletRequest();

    //Posting to uri of the form /ws/rest/v1/form/{uuid}/resource/{uuid}/value
    String uri = getBaseRestURI() + getURI() + "/" + getUuid() + "/value";
    request.setRequestURI(uri);/*from   w  w w .  ja v  a  2  s.c o  m*/
    request.setMethod(RequestMethod.POST.name());
    request.addHeader("Content-Type", "multipart/form-data");

    request.addFile(toUpload);

    MockHttpServletResponse response = handle(request);

    String valueReferenceAfter = formService.getFormResourceByUuid(getUuid()).getValueReference();

    Assert.assertNotEquals(valueReferenceBefore, valueReferenceAfter);
    Assert.assertNotNull(datatypeService.getClobDatatypeStorageByUuid(valueReferenceAfter));
    Assert.assertEquals(HttpServletResponse.SC_CREATED, response.getStatus());
}

From source file:org.springframework.cloud.netflix.zuul.filters.route.SimpleHostRoutingFilterTests.java

public void contentLengthTest(Long expectedContentLength, SimpleHostRoutingFilter filter,
        MockMultipartHttpServletRequest request) throws IOException {
    byte[] data = "poprqwueproqiwuerpoqweiurpo".getBytes();
    MockMultipartFile file = new MockMultipartFile("test.zip", "test.zip", "application/zip", data);
    String boundary = "q1w2e3r4t5y6u7i8o9";
    request.setContentType("multipart/form-data; boundary=" + boundary);
    request.setContent(createFileContent(data, boundary, "application/zip", "test.zip"));
    request.addFile(file);
    request.setMethod("POST");
    request.setParameter("variant", "php");
    request.setParameter("os", "mac");
    request.setParameter("version", "3.4");
    request.setRequestURI("/app/echo");

    MockHttpServletResponse response = new MockHttpServletResponse();
    RequestContext.getCurrentContext().setRequest(request);
    RequestContext.getCurrentContext().setResponse(new MockHttpServletResponse());
    URL url = new URL("http://localhost:" + this.port);
    RequestContext.getCurrentContext().set("routeHost", url);
    filter.run();/*from  ww  w.  jav a2 s  . c  o m*/

    String responseString = IOUtils.toString(
            new GZIPInputStream(((CloseableHttpResponse) RequestContext.getCurrentContext().get("zuulResponse"))
                    .getEntity().getContent()));
    assertTrue(!responseString.isEmpty());
    if (expectedContentLength < 0) {
        assertThat(responseString,
                containsString("\"" + HttpHeaders.TRANSFER_ENCODING.toLowerCase() + "\":\"chunked\""));
        assertThat(responseString, not(containsString(HttpHeaders.CONTENT_LENGTH.toLowerCase())));
    } else {
        assertThat(responseString, containsString(
                "\"" + HttpHeaders.CONTENT_LENGTH.toLowerCase() + "\":\"" + expectedContentLength + "\""));
    }
}