use of org.apache.wicket.util.tester.MockFormFileUploadPage.MockDomainObjectFileUpload in project wicket by apache.
the class FormTesterTest method submitMultipartForm.
/**
* Test that formTester deal with Multipart form correctly when no actual upload
*/
@Test
public void submitMultipartForm() {
tester.startPage(MockFormFileUploadPage.class, new PageParameters().set("required", false));
MockFormFileUploadPage page = (MockFormFileUploadPage) tester.getLastRenderedPage();
MockDomainObjectFileUpload domainObject = page.getDomainObject();
Session.get().setLocale(Locale.US);
FormTester formTester = tester.newFormTester("form");
formTester.setValue("text", "Mock Value");
tester.getRequest().setUseMultiPartContentType(true);
formTester.submit();
assertFalse(formTester.getForm().hasError());
assertNull(page.getFileUpload());
assertEquals("Mock Value", domainObject.getText());
}
use of org.apache.wicket.util.tester.MockFormFileUploadPage.MockDomainObjectFileUpload in project wicket by apache.
the class FormTesterTest method addFile.
/**
* Test that the user can use
* {@link FormTester#setFile(String, org.apache.wicket.util.file.File, String)} to test that
* upload to a FileUploadField works.
*/
@Test
public void addFile() {
tester.startPage(MockFormFileUploadPage.class);
MockFormFileUploadPage page = (MockFormFileUploadPage) tester.getLastRenderedPage();
MockDomainObjectFileUpload domainObject = page.getDomainObject();
assertNull(page.getFileUpload());
assertNotNull(domainObject);
assertNull(domainObject.getText());
FormTester formTester = tester.newFormTester("form");
formTester.setFile("file", new File("pom.xml"), "text/xml");
formTester.setValue("text", "Mock value");
formTester.submit();
assertNotNull(domainObject);
assertNotNull(domainObject.getText());
assertEquals("Mock value", domainObject.getText());
FileUpload fileUpload = page.getFileUpload();
assertNotNull(fileUpload);
assertTrue("setFile failed, no upload content detected.", fileUpload.getBytes().length > 0);
assertEquals("pom.xml", fileUpload.getClientFileName());
assertEquals("text/xml", fileUpload.getContentType());
}
use of org.apache.wicket.util.tester.MockFormFileUploadPage.MockDomainObjectFileUpload in project wicket by apache.
the class FormTesterTest method addBinaryFile.
/**
* Test that the user can use
* {@link FormTester#setFile(String, org.apache.wicket.util.file.File, String)} to test that
* upload to a FileUploadField works.
*/
@Test
public void addBinaryFile() {
tester.startPage(MockFormFileUploadPage.class);
MockFormFileUploadPage page = (MockFormFileUploadPage) tester.getLastRenderedPage();
MockDomainObjectFileUpload domainObject = page.getDomainObject();
assertNull(page.getFileUpload());
assertNotNull(domainObject);
assertNull(domainObject.getText());
FormTester formTester = tester.newFormTester("form");
formTester.setFile("file", new File(getBasedir() + "src/test/java/org/apache/wicket/util/tester/bg.jpg"), "image/jpeg");
formTester.setValue("text", "Mock value");
formTester.submit();
assertNotNull(domainObject);
assertNotNull(domainObject.getText());
assertEquals("Mock value", domainObject.getText());
FileUpload fileUpload = page.getFileUpload();
assertNotNull(fileUpload);
assertTrue("uploaded content does not have the right size, expected 428, got " + fileUpload.getBytes().length, fileUpload.getBytes().length == 428);
assertEquals("bg.jpg", fileUpload.getClientFileName());
assertEquals("image/jpeg", fileUpload.getContentType());
}
Aggregations