File tree Expand file tree Collapse file tree 3 files changed +30
-12
lines changed
lib/active_model/serializer Expand file tree Collapse file tree 3 files changed +30
-12
lines changed Original file line number Diff line number Diff line change 2
2
class ActiveModel ::Serializer
3
3
class ArraySerializer < CollectionSerializer
4
4
def initialize ( *)
5
- warn "Calling deprecated ArraySerializer in #{ caller [ 0 ] } . Please use CollectionSerializer"
5
+ warn "Calling deprecated ArraySerializer in #{ caller [ 0 .. 2 ] . join ( ', ' ) } . Please use CollectionSerializer"
6
6
super
7
7
end
8
8
end
Original file line number Diff line number Diff line change 3
3
4
4
module ActiveModel
5
5
class Serializer
6
- class ArraySerializerTest < CollectionSerializerTest
7
- extend ActiveSupport ::Testing ::Stream
8
- def self . run_one_method ( *)
9
- stderr = ( capture ( :stderr ) do
10
- super
11
- end )
12
- if stderr !~ /Calling deprecated ArraySerializer/
13
- fail Minitest ::Assertion , stderr
6
+ # Minitest.run_one_method isn't present in minitest 4
7
+ if $minitest_version > 4 # rubocop:disable Style/GlobalVars
8
+ class ArraySerializerTest < CollectionSerializerTest
9
+ extend ActiveSupport ::Testing ::Stream
10
+ def self . run_one_method ( *)
11
+ stderr = ( capture ( :stderr ) do
12
+ super
13
+ end )
14
+ if stderr !~ /Calling deprecated ArraySerializer/
15
+ fail Minitest ::Assertion , stderr
16
+ end
14
17
end
15
- end
16
18
17
- def collection_serializer
18
- ArraySerializer
19
+ def collection_serializer
20
+ ArraySerializer
21
+ end
22
+ end
23
+ else
24
+ class ArraySerializerTest < Minitest ::Test
25
+ extend ActiveSupport ::Testing ::Stream
26
+ def test_json_key_with_root_warns_when_using_array_serializer
27
+ stderr = ( capture ( :stderr ) do
28
+ comment = Comment . new
29
+ post = Post . new
30
+ serializer = ArraySerializer . new ( [ comment , post ] )
31
+ assert_equal serializer . json_key , 'comments'
32
+ end )
33
+ assert_match ( /Calling deprecated ArraySerializer/ , stderr )
34
+ end
19
35
end
20
36
end
21
37
end
Original file line number Diff line number Diff line change 25
25
require 'minitest/reporters'
26
26
Minitest ::Reporters . use!
27
27
if defined? ( Minitest ::Test )
28
+ $minitest_version = 5 # rubocop:disable Style/GlobalVars
28
29
# Minitest 5
29
30
# https://github.com/seattlerb/minitest/blob/e21fdda9d/lib/minitest/autorun.rb
30
31
# https://github.com/seattlerb/minitest/blob/e21fdda9d/lib/minitest.rb#L45-L59
31
32
else
33
+ $minitest_version = 4 # rubocop:disable Style/GlobalVars
32
34
# Minitest 4
33
35
# https://github.com/seattlerb/minitest/blob/644a52fd0/lib/minitest/autorun.rb
34
36
# https://github.com/seattlerb/minitest/blob/644a52fd0/lib/minitest/unit.rb#L768-L787
You can’t perform that action at this time.
0 commit comments