[web-devel] wai-test, does it accept multipart/form-data too?

Nubis nubis at woobiz.com.ar
Tue Jan 3 08:39:32 CET 2012

Forget about this, I was creating a wrong lazy bytestring and that was
being used to create the enumerator.


On Mon, Jan 2, 2012 at 11:31 PM, Nubis <nubis at woobiz.com.ar> wrote:
> Hi guys, I'm building a yesod testing tool, in part building on top of
> wai-test for interacting with the yesod application. But I'm noticing
> that sending multipart/form-data requests using wai-test is not
> working. url-encoded requests are working as expected, both get and
> post. The symptom I'm seeing is that both the result of
> lookupPostParams and lookupFiles for the parameter I'm sending return
> empty lists. I dug through wai, wai-extra, and yesod handler code and
> as it seems, yesod's code should be taking care of using
> wai-extra.parse  to get the FileInfo's.
> I don't want to bother you with the details yet, but I just wanted to
> know if this is a 'known limitation' of wai-test. More specifically,
> given this function:
> srequest :: SRequest -> Session SResponse
> srequest (SRequest req bod) = do
>    app <- ask
>    res <- liftIO $ run_ $ enumList 4 (L.toChunks bod) $$ app req
>    sres <- liftIO $ runResponse res
>    return sres
> If 'app' is the wai Application (gotten through toWaiApp), and that
> app works well with url-encoded. And bod is a lazy char8 bytestring
> containing a well formed multi-part request body, then my yesod
> handler should end up having the file data available? right?
> Also, are there any tests you recommend I do to figure what's going wrong?
> I can alternatively just publish this testing library/framework now
> with the broken functionality so you can fork it from github.
> cheers!
> ----nubis :)

More information about the web-devel mailing list