Re: posting xml in functional test


#1

If “an exception is generated” then it would be good to knwo the
details of said exception.
Sorry - here it is

  1. Error:
    test_create(PersonControllerTest):
    NoMethodError: undefined method symbolize_keys' for "<person><name>John</name></persion>":String /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.12.1/lib/action_controller/test_process.rb:99:inassign_parameters’
    /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.12.1/lib/action_controller/test_process.rb:358:in
    process' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.12.1/lib/action_controller/test_process.rb:336:inpost’
    test/functional/person _controller_test.rb:21:in `test_person’

I’m not sure how to fix it but I believe you stuck that xml in the post
query string, not the post body.

I agree, that looks likely. Can someone tell me how to add data to the
post body, or point me in the direction of the approproate docs ?

thanks.

  • Hello,
    >
    > I’m trying to write a functional test for a simple CRUD controller
    which
    > accepts / emits xml in a REST- like fashion. However the following
    code
    > won’t work for me - an exception is generated
    >
    > def test_create
    > post :create, ‘john’,
    > {‘Content-Type’=>‘application/xml’}
    > assert_response 200
    > end
    *> thanks in advance

#2

justin worrall wrote:

  1. Error:
    test_create(PersonControllerTest):
    NoMethodError: undefined method `symbolize_keys’ for
    “John”:String

Yes, it definately wants a hash in that spot, not a string. Maybe the
rails post method simply doesnt support request bodies? If so, that
would be sad, as there would be no way to test REST.

I’m eagerly awaiting the solution to this as well.