Skip to content

Commit 4d2978e

Browse files
committed
Fix tests to comply with new syntax + modify test which was expecting non-jsonapi-compliant behavior.
1 parent 82d7fc4 commit 4d2978e

File tree

6 files changed

+21
-22
lines changed

6 files changed

+21
-22
lines changed

test/action_controller/json_api/linked_test.rb

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -43,29 +43,29 @@ def render_resource_without_include
4343

4444
def render_resource_with_include
4545
setup_post
46-
render json: @post, include: 'author', adapter: :json_api
46+
render json: @post, include: [:author], adapter: :json_api
4747
end
4848

4949
def render_resource_with_nested_include
5050
setup_post
51-
render json: @post, include: 'comments.author', adapter: :json_api
51+
render json: @post, include: [comments: [:author]], adapter: :json_api
5252
end
5353

5454
def render_resource_with_nested_has_many_include
5555
setup_post
56-
render json: @post, include: ['author', 'author.roles'], adapter: :json_api
56+
render json: @post, include: [author: [:roles]], adapter: :json_api
5757
end
5858

5959
def render_resource_with_missing_nested_has_many_include
6060
setup_post
6161
@post.author = @author2 # author2 has no roles.
62-
render json: @post, include: 'author,author.roles', adapter: :json_api
62+
render json: @post, include: [author: [:roles]], adapter: :json_api
6363
end
6464

6565
def render_collection_with_missing_nested_has_many_include
6666
setup_post
6767
@post.author = @author2
68-
render json: [@post, @post2], include: 'author,author.roles', adapter: :json_api
68+
render json: [@post, @post2], include: [author: [:roles]], adapter: :json_api
6969
end
7070

7171
def render_collection_without_include
@@ -75,7 +75,7 @@ def render_collection_without_include
7575

7676
def render_collection_with_include
7777
setup_post
78-
render json: [@post], include: %w(author comments), adapter: :json_api
78+
render json: [@post], include: [:author, :comments], adapter: :json_api
7979
end
8080
end
8181

@@ -141,8 +141,7 @@ def test_render_resource_with_nested_include
141141
get :render_resource_with_nested_include
142142
response = JSON.parse(@response.body)
143143
assert response.key? 'included'
144-
assert_equal 1, response['included'].size
145-
assert_equal 'Anonymous', response['included'].first['attributes']['name']
144+
assert_equal 3, response['included'].size
146145
end
147146

148147
def test_render_collection_without_include

test/adapter/json_api/belongs_to_test.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ def test_includes_post_id
3838
end
3939

4040
def test_includes_linked_post
41-
@adapter = ActiveModel::Serializer::Adapter::JsonApi.new(@serializer, include: 'post')
41+
@adapter = ActiveModel::Serializer::Adapter::JsonApi.new(@serializer, include: [:post])
4242
expected = [{
4343
id: '42',
4444
type: 'posts',
@@ -56,7 +56,7 @@ def test_includes_linked_post
5656
end
5757

5858
def test_limiting_linked_post_fields
59-
@adapter = ActiveModel::Serializer::Adapter::JsonApi.new(@serializer, include: 'post', fields: { post: [:title] })
59+
@adapter = ActiveModel::Serializer::Adapter::JsonApi.new(@serializer, include: [:post], fields: { post: [:title] })
6060
expected = [{
6161
id: '42',
6262
type: 'posts',
@@ -108,7 +108,7 @@ def test_include_type_for_association_when_different_than_name
108108

109109
def test_include_linked_resources_with_type_name
110110
serializer = BlogSerializer.new(@blog)
111-
adapter = ActiveModel::Serializer::Adapter::JsonApi.new(serializer, include: %w(writer articles))
111+
adapter = ActiveModel::Serializer::Adapter::JsonApi.new(serializer, include: [:writer, :articles])
112112
linked = adapter.serializable_hash[:included]
113113
expected = [
114114
{

test/adapter/json_api/has_many_explicit_serializer_test.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ def setup
2424
@serializer = PostPreviewSerializer.new(@post)
2525
@adapter = ActiveModel::Serializer::Adapter::JsonApi.new(
2626
@serializer,
27-
include: %w(comments author)
27+
include: [:comments, :author]
2828
)
2929
end
3030

test/adapter/json_api/has_many_test.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ def test_includes_comment_ids
4242
end
4343

4444
def test_includes_linked_comments
45-
@adapter = ActiveModel::Serializer::Adapter::JsonApi.new(@serializer, include: 'comments')
45+
@adapter = ActiveModel::Serializer::Adapter::JsonApi.new(@serializer, include: [:comments])
4646
expected = [{
4747
id: '1',
4848
type: 'comments',
@@ -68,7 +68,7 @@ def test_includes_linked_comments
6868
end
6969

7070
def test_limit_fields_of_linked_comments
71-
@adapter = ActiveModel::Serializer::Adapter::JsonApi.new(@serializer, include: 'comments', fields: { comment: [:id] })
71+
@adapter = ActiveModel::Serializer::Adapter::JsonApi.new(@serializer, include: [:comments], fields: { comment: [:id] })
7272
expected = [{
7373
id: '1',
7474
type: 'comments',

test/adapter/json_api/has_one_test.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ def setup
2828
@virtual_value = VirtualValue.new(id: 1)
2929

3030
@serializer = AuthorSerializer.new(@author)
31-
@adapter = ActiveModel::Serializer::Adapter::JsonApi.new(@serializer, include: 'bio,posts')
31+
@adapter = ActiveModel::Serializer::Adapter::JsonApi.new(@serializer, include: [:bio, :posts])
3232
end
3333

3434
def test_includes_bio_id
@@ -38,7 +38,7 @@ def test_includes_bio_id
3838
end
3939

4040
def test_includes_linked_bio
41-
@adapter = ActiveModel::Serializer::Adapter::JsonApi.new(@serializer, include: 'bio')
41+
@adapter = ActiveModel::Serializer::Adapter::JsonApi.new(@serializer, include: [:bio])
4242

4343
expected = [
4444
{

test/adapter/json_api/linked_test.rb

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,11 +43,11 @@ def test_include_multiple_posts_and_linked_array
4343
serializer = ArraySerializer.new([@first_post, @second_post])
4444
adapter = ActiveModel::Serializer::Adapter::JsonApi.new(
4545
serializer,
46-
include: ['author', 'author.bio', 'comments']
46+
include: [:comments, author: [:bio]]
4747
)
4848
alt_adapter = ActiveModel::Serializer::Adapter::JsonApi.new(
4949
serializer,
50-
include: 'author,author.bio,comments'
50+
include: [:comments, author: [:bio]]
5151
)
5252

5353
expected = {
@@ -153,11 +153,11 @@ def test_include_multiple_posts_and_linked
153153
serializer = BioSerializer.new @bio1
154154
adapter = ActiveModel::Serializer::Adapter::JsonApi.new(
155155
serializer,
156-
include: ['author', 'author.posts']
156+
include: [author: [:posts]]
157157
)
158158
alt_adapter = ActiveModel::Serializer::Adapter::JsonApi.new(
159159
serializer,
160-
include: 'author,author.posts'
160+
include: [author: [:posts]]
161161
)
162162

163163
expected = [
@@ -224,7 +224,7 @@ def test_multiple_references_to_same_resource
224224
serializer = ArraySerializer.new([@first_comment, @second_comment])
225225
adapter = ActiveModel::Serializer::Adapter::JsonApi.new(
226226
serializer,
227-
include: ['post']
227+
include: [:post]
228228
)
229229

230230
expected = [
@@ -257,7 +257,7 @@ def test_nil_link_with_specified_serializer
257257
serializer = PostPreviewSerializer.new(@first_post)
258258
adapter = ActiveModel::Serializer::Adapter::JsonApi.new(
259259
serializer,
260-
include: ['author']
260+
include: [:author]
261261
)
262262

263263
expected = {

0 commit comments

Comments
 (0)