mirror of
https://github.com/ditkrg/active_model_serializers.git
synced 2026-01-22 22:06:50 +00:00
Merge pull request #477 from gtd/fix-as-json-with-nil
Allow serializer#as_json to be called with nil
This commit is contained in:
commit
a9e7319c7b
@ -337,6 +337,7 @@ module ActiveModel
|
||||
# Returns a json representation of the serializable
|
||||
# object including the root.
|
||||
def as_json(options={})
|
||||
options ||= {}
|
||||
if root = options.fetch(:root, @options.fetch(:root, root_name))
|
||||
@options[:hash] = hash = {}
|
||||
@options[:unique_values] = {}
|
||||
|
||||
@ -1449,4 +1449,17 @@ class SerializerTest < ActiveModel::TestCase
|
||||
}
|
||||
}, post_serializer.as_json)
|
||||
end
|
||||
|
||||
def test_as_json_with_nil_options
|
||||
user = User.new
|
||||
user_serializer = DefaultUserSerializer.new(user, {})
|
||||
|
||||
# ActiveSupport 3.1 Object#to_json generates this downstream call
|
||||
assert_equal({
|
||||
:default_user => {
|
||||
:first_name => "Jose",
|
||||
:last_name => "Valim"
|
||||
}
|
||||
}, user_serializer.as_json(nil))
|
||||
end
|
||||
end
|
||||
|
||||
Loading…
Reference in New Issue
Block a user