diff --git a/lib/httparty/parser.rb b/lib/httparty/parser.rb index 44451ce4..8301b451 100644 --- a/lib/httparty/parser.rb +++ b/lib/httparty/parser.rb @@ -119,7 +119,7 @@ def parse def xml require 'multi_xml' - MultiXml.parse(body) + (defined?(MultiXML) ? MultiXML : MultiXml).parse(body) end UTF8_BOM = "\xEF\xBB\xBF" diff --git a/spec/httparty/parser_spec.rb b/spec/httparty/parser_spec.rb index a23597fc..281ae018 100644 --- a/spec/httparty/parser_spec.rb +++ b/spec/httparty/parser_spec.rb @@ -165,8 +165,9 @@ def self.name HTTParty::Parser.new('body', nil) end - it "parses xml with MultiXml" do - expect(MultiXml).to receive(:parse).with('body') + it "parses xml with MultiXML" do + xml_parser = defined?(MultiXML) ? MultiXML : MultiXml + expect(xml_parser).to receive(:parse).with('body') subject.send(:xml) end