Catalyst uses HTTP::Body to decode incoming HTTP requests. This is particularly important for HTML form-based file uploads. It works great for me in any browser and when uploading text files. But when uploading binary files via Test::WWW::Mechanize::Catalyst, HTTP::Body over-reads the MIME part and drops the file upload.
I suspect its a problem with byte-length vs. character-length of a string, where my request has some UTF-8ness going on in the Test::W::M::C workflow (where the request never actually goes over the wire -- it stays in the same Perl process the whole time).
Has anyone else encountered this? I posted a workaround request to RT for HTTP::Body, but I'm not sure who's really at fault here: me, HTTP::Body or T::W::M::C.