aboutsummaryrefslogtreecommitdiffstats
path: root/activemodel/test/cases
diff options
context:
space:
mode:
authorJosé Valim <jose.valim@gmail.com>2011-09-30 03:42:53 -0700
committerJosé Valim <jose.valim@gmail.com>2011-09-30 03:42:53 -0700
commitafeb8976a34a3e3b4568357e08ea564d15d72d2f (patch)
tree1a516d33a844a7fc230c99a45ce136f42f29f868 /activemodel/test/cases
parentfe157a7475e825ae95fe73450f2c160b36a000e1 (diff)
parentda914fa35c014b7753e609e25c6a45d3cda11274 (diff)
downloadrails-afeb8976a34a3e3b4568357e08ea564d15d72d2f.tar.gz
rails-afeb8976a34a3e3b4568357e08ea564d15d72d2f.tar.bz2
rails-afeb8976a34a3e3b4568357e08ea564d15d72d2f.zip
Merge pull request #3175 from nhocki/as-json-patch
Allow default options for `as_json` method on models
Diffstat (limited to 'activemodel/test/cases')
-rw-r--r--activemodel/test/cases/serializers/json_serialization_test.rb10
1 files changed, 10 insertions, 0 deletions
diff --git a/activemodel/test/cases/serializers/json_serialization_test.rb b/activemodel/test/cases/serializers/json_serialization_test.rb
index 40fdcf20ca..a754d610b9 100644
--- a/activemodel/test/cases/serializers/json_serialization_test.rb
+++ b/activemodel/test/cases/serializers/json_serialization_test.rb
@@ -206,4 +206,14 @@ class JsonSerializationTest < ActiveModel::TestCase
assert_no_match %r{"preferences":}, json
end
+ test "custom as_json options should be extendible" do
+ def @contact.as_json(options = {}); super(options.merge(:only => [:name])); end
+ json = @contact.to_json
+
+ assert_match %r{"name":"Konata Izumi"}, json
+ assert_no_match %r{"created_at":#{ActiveSupport::JSON.encode(Time.utc(2006, 8, 1))}}, json
+ assert_no_match %r{"awesome":}, json
+ assert_no_match %r{"preferences":}, json
+ end
+
end