Skip to content

Commit f4e4c5d

Browse files
author
Ethan Langevin
committed
Added more tests
1 parent 68d6d95 commit f4e4c5d

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

test/formats_test.rb

+25
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,10 @@ module V1
1111
SingerRepresenter = Class.new
1212
BassistRepresenter = Class.new
1313
SingersRepresenter = Class.new
14+
15+
module Inner
16+
SingerRepresenter = Class.new
17+
end
1418
end
1519

1620
module V2
@@ -19,6 +23,15 @@ module V2
1923
SingersRepresenter = Class.new
2024
end
2125

26+
module Inner
27+
Singer = Class.new
28+
end
29+
30+
module Outer
31+
Singer = Class.new
32+
SingerRepresenter = Class.new
33+
end
34+
2235
Bassist = Class.new
2336

2437
class FormatsTest < MiniTest::Spec
@@ -106,6 +119,18 @@ class FormatsTest < MiniTest::Spec
106119
it 'finds the right class in another namespace' do
107120
subject.for(:json, V2::Singer.new, 'v1/singers').must_equal V2::SingerRepresenter
108121
end
122+
123+
it 'finds the right class in an inner namespace' do
124+
subject.for(:json, Inner::Singer.new, 'v1/singers').must_equal V1::Inner::SingerRepresenter
125+
end
126+
127+
it 'finds the right class from the root namespace' do
128+
subject.for(:json, Outer::Singer.new, 'v1/singers').must_equal Outer::SingerRepresenter
129+
end
130+
131+
it 'finds the right class in a deep namespace' do
132+
subject.for(:json, Singer.new, 'v1/inner/singers').must_equal V1::Inner::SingerRepresenter
133+
end
109134
end
110135
end
111136

0 commit comments

Comments
 (0)