Sha256: 8750ae288cd79a9283f03063458a8f2932cdaeef2ef9013a68bae28fb6113112

Contents?: true

Size: 1.46 KB

Versions: 23

Compression:

Stored size: 1.46 KB

Contents

require 'test/unit'
require 'axlsx.rb'

class TestDefault < Test::Unit::TestCase
  def setup    
  end
  def teardown
  end
  def test_initialization_requires_Extension_and_ContentType
    assert_raise(ArgumentError, "raises argument error if Extension and/or ContentType are not specified") { Axlsx::Default.new }
    assert_raise(ArgumentError, "raises argument error if Extension and/or ContentType are not specified") { Axlsx::Default.new :Extension=>"xml" }
    assert_raise(ArgumentError, "raises argument error if Extension and/or ContentType are not specified") { Axlsx::Default.new :ContentType=>"asdf" }

    assert_nothing_raised {Axlsx::Default.new :Extension=>"foo", :ContentType=>Axlsx::XML_CT}

  end
  def test_content_type_restriction
    assert_raise(ArgumentError, "raises argument error if invlalid ContentType is") { Axlsx::Default.new :ContentType=>"asdf" }
  end
  
  def test_to_xml
    schema = Nokogiri::XML::Schema(File.open(Axlsx::CONTENT_TYPES_XSD))
    type = Axlsx::Default.new :Extension=>"xml", :ContentType=>Axlsx::XML_CT
    builder = Nokogiri::XML::Builder.new(:encoding => Axlsx::ENCODING) do |xml|
      xml.Types(:xmlns => Axlsx::XML_NS_T) {
        type.to_xml(xml)
      }
    end
    doc = Nokogiri::XML(builder.to_xml)
    errors = []
    schema.validate(doc).each do |error|
      puts error.message
      errors << error
    end
    assert_equal(errors.size, 0, "[Content Types].xml Invalid" + errors.map{ |e| e.message }.to_s)
    
  end


end

Version data entries

23 entries across 16 versions & 1 rubygems

Version Path
axlsx-1.0.16 test/content_type/tc_default.rb
axlsx-1.0.15 test/content_type/tc_default.rb
axlsx-1.0.14 test/content_type/tc_default.rb
axlsx-1.0.12 test/content_type/tc_default.rb
axlsx-1.0.11 test/content_type/tc_default.rb
axlsx-1.0.10 test/content_type/tc_default.rb
axlsx-1.0.10a test/content_type/tc_default.rb
axlsx-1.0.9 test/content_type/tc_default.rb
axlsx-1.0.8 test/content_type/tc_default.rb
axlsx-1.0.7 test/content_type/tc_default.rb
axlsx-1.0.7 test/content_type/tc_default.rb~
axlsx-1.0.6 test/content_type/tc_default.rb
axlsx-1.0.6 test/content_type/tc_default.rb~
axlsx-1.0.5 test/content_type/tc_default.rb
axlsx-1.0.5 test/content_type/tc_default.rb~
axlsx-1.0.4 test/content_type/tc_default.rb
axlsx-1.0.4 test/content_type/tc_default.rb~
axlsx-1.0.3 test/content_type/tc_default.rb
axlsx-1.0.3 test/content_type/tc_default.rb~
axlsx-1.0.1 test/content_type/tc_default.rb~