@@ -169,12 +169,13 @@ def to_json(*)
169169 expect ( MultiJson . load ( '{"abc":"def"}' ) ) . to eq ( 'abc' => 'def' )
170170 end
171171
172- it 'raises MultiJson::ParseError on blank input or invalid input' do
173- [ nil , '{"abc"}' , ' ' , "\t \t \t " , "\n " , "\x82 \xAC \xEF " , StringIO . new ( '' ) ] . each do |input |
174- if input == "\x82 \xAC \xEF "
175- pending 'GSON bug: https://github.com/avsej/gson.rb/issues/3' if adapter . name =~ /Gson/
176- end
172+ examples = [ nil , '{"abc"}' , ' ' , "\t \t \t " , "\n " , StringIO . new ( '' ) ]
173+ #
174+ # GSON bug: https://github.com/avsej/gson.rb/issues/3
175+ examples << "\x82 \xAC \xEF " unless adapter . name =~ /Gson/
177176
177+ examples . each do |input |
178+ it "raises MultiJson::ParseError on invalid input: #{ input . inspect } " do
178179 expect { MultiJson . load ( input ) } . to raise_error ( MultiJson ::ParseError )
179180 end
180181 end
@@ -183,21 +184,21 @@ def to_json(*)
183184 data = '{invalid}'
184185 exception = get_exception ( MultiJson ::ParseError ) { MultiJson . load data }
185186 expect ( exception . data ) . to eq ( data )
186- expect ( exception . cause ) . to be_kind_of ( MultiJson . adapter ::ParseError )
187+ expect ( exception . cause ) . to match ( MultiJson . adapter ::ParseError )
187188 end
188189
189190 it 'catches MultiJson::DecodeError for legacy support' do
190191 data = '{invalid}'
191192 exception = get_exception ( MultiJson ::DecodeError ) { MultiJson . load data }
192193 expect ( exception . data ) . to eq ( data )
193- expect ( exception . cause ) . to be_kind_of ( MultiJson . adapter ::ParseError )
194+ expect ( exception . cause ) . to match ( MultiJson . adapter ::ParseError )
194195 end
195196
196197 it 'catches MultiJson::LoadError for legacy support' do
197198 data = '{invalid}'
198199 exception = get_exception ( MultiJson ::LoadError ) { MultiJson . load data }
199200 expect ( exception . data ) . to eq ( data )
200- expect ( exception . cause ) . to be_kind_of ( MultiJson . adapter ::ParseError )
201+ expect ( exception . cause ) . to match ( MultiJson . adapter ::ParseError )
201202 end
202203
203204 it 'stringifys symbol keys when encoding' do
0 commit comments