From a04060fb6fe006b1dbc224263dd6c39525733c6d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jos=C3=A9=20Valim?= <jose.valim@gmail.com>
Date: Tue, 8 Jun 2010 01:02:45 +0200
Subject: Really make include_root_in_json default to true [#3770
 state:resolved]

---
 .../serializeration/json_serialization_test.rb     | 36 +++++++++++++---------
 1 file changed, 21 insertions(+), 15 deletions(-)

(limited to 'activemodel/test')

diff --git a/activemodel/test/cases/serializeration/json_serialization_test.rb b/activemodel/test/cases/serializeration/json_serialization_test.rb
index 7e89815c96..04b50e5bb8 100644
--- a/activemodel/test/cases/serializeration/json_serialization_test.rb
+++ b/activemodel/test/cases/serializeration/json_serialization_test.rb
@@ -22,35 +22,41 @@ class JsonSerializationTest < ActiveModel::TestCase
   end
 
   test "should include root in json" do
+    json = @contact.to_json
+
+    assert_match %r{^\{"contact":\{}, json
+    assert_match %r{"name":"Konata Izumi"}, json
+    assert_match %r{"age":16}, json
+    assert json.include?(%("created_at":#{ActiveSupport::JSON.encode(Time.utc(2006, 8, 1))}))
+    assert_match %r{"awesome":true}, json
+    assert_match %r{"preferences":\{"shows":"anime"\}}, json
+  end
+
+  test "should not include root in json" do
     begin
-      Contact.include_root_in_json = true
+      Contact.include_root_in_json = false
       json = @contact.to_json
 
-      assert_match %r{^\{"contact":\{}, json
+      assert_no_match %r{^\{"contact":\{}, json
       assert_match %r{"name":"Konata Izumi"}, json
       assert_match %r{"age":16}, json
       assert json.include?(%("created_at":#{ActiveSupport::JSON.encode(Time.utc(2006, 8, 1))}))
       assert_match %r{"awesome":true}, json
       assert_match %r{"preferences":\{"shows":"anime"\}}, json
     ensure
-      Contact.include_root_in_json = false
+      Contact.include_root_in_json = true
     end
   end
 
   test "should include custom root in json" do
-    begin
-      Contact.include_root_in_json = true
-      json = @contact.to_json(:root => 'json_contact')
+    json = @contact.to_json(:root => 'json_contact')
 
-      assert_match %r{^\{"json_contact":\{}, json
-      assert_match %r{"name":"Konata Izumi"}, json
-      assert_match %r{"age":16}, json
-      assert json.include?(%("created_at":#{ActiveSupport::JSON.encode(Time.utc(2006, 8, 1))}))
-      assert_match %r{"awesome":true}, json
-      assert_match %r{"preferences":\{"shows":"anime"\}}, json
-    ensure
-      Contact.include_root_in_json = false
-    end
+    assert_match %r{^\{"json_contact":\{}, json
+    assert_match %r{"name":"Konata Izumi"}, json
+    assert_match %r{"age":16}, json
+    assert json.include?(%("created_at":#{ActiveSupport::JSON.encode(Time.utc(2006, 8, 1))}))
+    assert_match %r{"awesome":true}, json
+    assert_match %r{"preferences":\{"shows":"anime"\}}, json
   end
 
   test "should encode all encodable attributes" do
-- 
cgit v1.2.3