Sha256: 8ccc545bc434cdcf0cfc5271d6196b40b9022f8b5f07f764deda2249f987763d

Contents?: true

Size: 1.09 KB

Versions: 11

Compression:

Stored size: 1.09 KB

Contents

require 'helper'
require 'parser_shared_example'

class MockDecoder; end

describe "MultiXml" do
  context "Parsers" do
    it "should default to the best available gem" do
      pending
      MultiXml.parser.name.should be == 'MultiXml::Parsers::Rexml'
      require 'nokogiri'
      MultiXml.parser.name.should be == 'MultiXml::Parsers::Nokogiri'
      require 'libxml'
      MultiXml.parser.name.should == 'MultiXml::Parsers::Libxml'
    end

    it "should be settable via a symbol" do
      MultiXml.parser = :nokogiri
      MultiXml.parser.name.should == 'MultiXml::Parsers::Nokogiri'
    end

    it "should be settable via a class" do
      MultiXml.parser = MockDecoder
      MultiXml.parser.name.should == 'MockDecoder'
    end
  end

  [['LibXML', 'libxml'],
   ['REXML', 'rexml/document'],
   ['Nokogiri', 'nokogiri'],
   ['Ox', 'ox']].each do |parser|
    begin
      require parser.last
      context "#{parser.first} parser" do
        it_should_behave_like "a parser", parser.first
      end
    rescue LoadError => e
      puts "Tests not run for #{parser.first} due to a LoadError"
    end
  end
end

Version data entries

11 entries across 11 versions & 2 rubygems

Version Path
multi_xml-0.4.4 spec/multi_xml_spec.rb
multi_xml-0.4.3 spec/multi_xml_spec.rb
multi_xml-0.4.2 spec/multi_xml_spec.rb
nutshell-crm-0.0.6.alpha vendor/bundle/gems/multi_xml-0.4.1/spec/multi_xml_spec.rb
nutshell-crm-0.0.5 vendor/bundle/gems/multi_xml-0.4.1/spec/multi_xml_spec.rb
nutshell-crm-0.0.4 vendor/bundle/gems/multi_xml-0.4.1/spec/multi_xml_spec.rb
nutshell-crm-0.0.3 vendor/bundle/gems/multi_xml-0.4.1/spec/multi_xml_spec.rb
nutshell-crm-0.0.2 vendor/bundle/gems/multi_xml-0.4.1/spec/multi_xml_spec.rb
nutshell-crm-0.0.1 vendor/bundle/gems/multi_xml-0.4.1/spec/multi_xml_spec.rb
multi_xml-0.4.1 spec/multi_xml_spec.rb
multi_xml-0.4.0 spec/multi_xml_spec.rb