I'd like to write a functional test of a RESTful web service I'm working on in a Ruby on Rails app.
The test is of a POST request where the body of the request is a plain XML doc and not a form. Any pointers on how to do this? The problem I'm encountering is how to specify the body XML in the call to the post method.
The following worked for me:
You may be able to do it by setting
@request.env['RAW_POST_BODY']
to the desired input stream.Check out shoulda's "should_be_restful" macro. This macro will soon be deprecated from shoulda and only available in the in woulda gem.
I just wrote a test script using Net:HTTP to test the REST service.
I found the following solution at http://de.softuses.com/6051
I actually defined
@xml_request_headers
in mysetup
method and can use it in all my tests in this file. Perhaps it would be a good idea to put it totest_helper.rb
if it is required by more files.