Skip to content

Commit 1cc2e04

Browse files
committed
Address issues in 50950d9 #1340
- Add changelog entry - Remove superseded and incorrect tests - Fix array serialization test
1 parent 50950d9 commit 1cc2e04

File tree

3 files changed

+9
-19
lines changed

3 files changed

+9
-19
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
Breaking changes:
44
Features:
55
- [#1018](https://github.com/rails-api/active_model_serializers/pull/1018) Add more tests and docs for top-level links (@leandrocp)
6+
- [#1340](https://github.com/rails-api/active_model_serializers/pull/1340) Add support for resource-level meta (@beauby)
67
Fixes:
78
- [#1501](https://github.com/rails-api/active_model_serializers/pull/1501) Adds tests for SerializableResource::use_adapter?,doc typos (@domitian)
89
- [#1488](https://github.com/rails-api/active_model_serializers/pull/1488) Require ActiveSupport's string inflections (@nate00)

test/adapter/json_api/resource_meta_test.rb

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,15 +46,20 @@ def test_meta_block_object_resource
4646
end
4747

4848
def test_meta_object_resource_in_array
49+
post2 = Post.new(id: 1339, comments: [Comment.new])
50+
posts = [@post, post2]
4951
hash = ActiveModel::SerializableResource.new(
50-
[@post, @post],
52+
posts,
5153
each_serializer: MetaBlockPostSerializer,
5254
adapter: :json_api
5355
).serializable_hash
5456
expected = {
55-
comments_count: @post.comments.count
57+
:data => [
58+
{ :id => '1337', :type => 'posts', :meta => { :comments_count => 0 } },
59+
{ :id => '1339', :type => 'posts', :meta => { :comments_count => 1 } }
60+
]
5661
}
57-
assert_equal([expected, expected], hash[:data].map { |obj| obj[:meta] })
62+
assert_equal(expected, hash)
5863
end
5964
end
6065
end

test/serializers/meta_test.rb

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33
module ActiveModel
44
class Serializer
55
class MetaTest < ActiveSupport::TestCase
6-
MetaBlogSerializer = Class.new(ActiveModel::Serializer)
7-
86
def setup
97
@blog = Blog.new(id: 1,
108
name: 'AMS Hints',
@@ -127,20 +125,6 @@ def test_meta_is_present_on_arrays_with_root
127125
}
128126
assert_equal(expected, actual)
129127
end
130-
131-
def test_meta_is_set_with_direct_attributes
132-
MetaBlogSerializer.meta stuff: 'value'
133-
blog_meta_serializer = MetaBlogSerializer.new(@blog)
134-
assert_equal(blog_meta_serializer.meta, stuff: 'value')
135-
end
136-
137-
def test_meta_is_set_with_block
138-
MetaBlogSerializer.meta do
139-
{ articles_count: object.articles.count }
140-
end
141-
blog_meta_serializer = MetaBlogSerializer.new(@blog)
142-
assert_equal(blog_meta_serializer.meta, articles_count: @blog.articles.count)
143-
end
144128
end
145129
end
146130
end

0 commit comments

Comments
 (0)