diff options
author | Chris Eppstein <chris@eppsteins.net> | 2010-11-05 10:28:35 +0800 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2010-11-06 06:56:36 +0800 |
commit | b1667c7c2c1aba4a2adb5f36ad9499c01763655d (patch) | |
tree | 46911924dd1177ca0b6a59a10bac44f242e8dfa5 /actionpack/test/controller | |
parent | 06d518a32398a4dc7564f45aa19575ea7fa702da (diff) | |
download | rails-b1667c7c2c1aba4a2adb5f36ad9499c01763655d.tar.gz rails-b1667c7c2c1aba4a2adb5f36ad9499c01763655d.tar.bz2 rails-b1667c7c2c1aba4a2adb5f36ad9499c01763655d.zip |
Correctly handle the case of an API response that returns a hash by treating a single hash argument as the resource instead of as options.
Diffstat (limited to 'actionpack/test/controller')
-rw-r--r-- | actionpack/test/controller/mime_responds_test.rb | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/actionpack/test/controller/mime_responds_test.rb b/actionpack/test/controller/mime_responds_test.rb index a898ef76e5..b6ce9f7d34 100644 --- a/actionpack/test/controller/mime_responds_test.rb +++ b/actionpack/test/controller/mime_responds_test.rb @@ -487,6 +487,10 @@ class RespondWithController < ActionController::Base respond_with(resource) end + def using_hash_resource + respond_with({:result => resource}) + end + def using_resource_with_block respond_with(resource) do |format| format.csv { render :text => "CSV" } @@ -587,6 +591,18 @@ class RespondWithControllerTest < ActionController::TestCase end end + def test_using_hash_resource + @request.accept = "application/xml" + get :using_hash_resource + assert_equal "application/xml", @response.content_type + assert_equal "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<hash>\n <name>david</name>\n</hash>\n", @response.body + + @request.accept = "application/json" + get :using_hash_resource + assert_equal "application/json", @response.content_type + assert_equal %Q[{"result":["david",13]}], @response.body + end + def test_using_resource_with_block @request.accept = "*/*" get :using_resource_with_block |