Skip to content

Commit 985a4c2

Browse files
committed
Correct handling for to-one nil relationships.
1 parent c8979e9 commit 985a4c2

2 files changed

Lines changed: 11 additions & 0 deletions

File tree

lib/jsonapi/resource_serializer.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,8 @@ def process_primary(source, requested_associations)
110110
add_included_object(@primary_class_name, id, object_hash(resource, requested_associations), true)
111111
end
112112
else
113+
return {} if source.nil?
114+
113115
resource = source
114116
id = resource.id
115117
# ToDo: See if this is actually needed

test/unit/serializer/serializer_test.rb

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,15 @@ def test_serializer
5757
)
5858
end
5959

60+
def test_serializer_nil_handling
61+
assert_hash_equals(
62+
{
63+
data: nil
64+
},
65+
JSONAPI::ResourceSerializer.new(PostResource).serialize_to_hash(nil)
66+
)
67+
end
68+
6069
def test_serializer_namespaced_resource
6170
assert_hash_equals(
6271
{

0 commit comments

Comments
 (0)