I would suggest using Canoo WebTest to test file-upload. There's a test demonstrating how to do it in web-tests.xml.
Matt P.S. I like the lingo. ;-) On 9/13/07, Yopy <[EMAIL PROTECTED]> wrote: > > Y halo thar, > > I've been working on a project using AppFuse, so far so good. I copied the > existing file upload sources into my own project, and have done some > adaptations (so that all the files are put into a single directory and given > an unique name), and I managed to get it to work - no problems there. > > Now, for completeness and such, I'm trying to write a unit test to test the > functionality. I've been Googling for an example (seeing that I'm too > inexperienced to come up with a test of my own), first looking for the > source of the file upload test in AppFuse itself (if any), but I didn't find > anything. So, next up a generic file upload test, and I found the following > thread > > http://forum.springframework.org/showthread.php?t=10154 > > from three years~ish ago, a possible solution being posted by mr. Raible > himself. I've copypasta'd the solution and did some tweaks (i.e. remove the > email bit), and it shoudl work largely now. However, when I try to run the > test, I get an error from > org.apache.commons.fileupload.FileUploadBase$UnknownSizeException: the > request was rejected because its size is unknown. > > Logically speaking, it would be a matter of adding a content-length to the > request, like so: > > request.addHeader("Content-length", 1234); > > buuut that don't work. So, I'd like to ask two questions: > > 1. How would I be able to solve this problem? > 2. Probably easier, where can I find the source for the file that tests the > default file upload controller in AppFuse? > > The test I have so far: > > public class XmlFileUploadControllerTest extends TestCase { > > > private XmlFileUploadController fileUpload = null; > > private static Log log = > LogFactory.getLog(XmlFileUploadControllerTest.class); > > public void setUp() { > > fileUpload = (XmlFileUploadController) new > XmlFileUploadController(); > > } > > public void testUpload() throws Exception { > log.debug("testing upload..."); > MockHttpServletRequest request = > new MockHttpServletRequest("POST", "/xmlfileupload.html"); > > MockCommonsMultipartResolver resolver = new > MockCommonsMultipartResolver(); > > > request.setContentType("multipart/form-data"); > request.addHeader("Content-type", "multipart/form-data"); > request.addHeader("Content-length", new Integer(0)); > > assertTrue(resolver.isMultipart(request)); > MultipartHttpServletRequest multipartRequest = > resolver.resolveMultipart(request); > > ModelAndView mav = > fileUpload.handleRequest(multipartRequest, new > MockHttpServletResponse()); > > log.debug("model: " + mav.getModel()); > > assertNotNull(request.getSession().getAttribute("message")); > > > } > > followed by some mocks, copypasta'd directly from the thread I posted > earlier. > > Any help, pointers (non-C plz), or pimpslaps would be appreciated. > > > -- > View this message in context: > http://www.nabble.com/Testing-File-Upload-tf4435990s2369.html#a12655704 > Sent from the AppFuse - User mailing list archive at Nabble.com. > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- http://raibledesigns.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
