我需要通过来自Cloudmailin的POST请求接收传入的电子邮件,作为multipart-formdata。该POST类似于以下内容:rspec/capybara:如何模拟传入的POST请求? (机架测试不起作用)
Parameters: {"to"=>"<[email protected]>", "from"=>"[email protected]", "subject"=>"my awesome subject line....
其实,接收并解析邮件是超级容易,因为邮件仅仅是张贴PARAMS:PARAMS [:对],则params [:从]等。但是,我该怎么办在rails中模拟这个POST请求?
我构建了一个虚拟导轨应用程序来测试Cloudmailin,所以我有一个实际的请求。但是,这是一个6k字符的文件,所以我想将这个文件作为POST请求的参数加载。我尝试过使用构建的rails post和post_via_redirect方法来加载文件,但它将所有参数(\“转换为\”)转义,这是不好的。有任何想法吗?
http://railscasts.com/episodes/276-testing-time-web-requests特别https://github.com/chrisk/fakeweb – rubish
谢谢你的评论。我相信fakeweb是为了测试从外部API获取。我需要测试传入的请求。其实,这不是事实。我只需要向控制器发布一些参数,其余的测试将确保创建适当的邮件。 – GoodGets
对不起,大概我应该睡了:) – rubish