Sha256: 0b893f6e20cd5908489c203e5dfac06a9a13fb8efebc8873ba00b494aaa4f4d1

Contents?: true

Size: 1.74 KB

Versions: 25

Compression:

Stored size: 1.74 KB

Contents

# -*- ruby encoding: utf-8 -*-

require 'mime/types'
require 'minitest_helper'

class TestMIMETypesLoader < Minitest::Test
  def setup
    @path     = File.expand_path('../fixture', __FILE__)
    @loader   = MIME::Types::Loader.new(@path)
    @bad_path = File.expand_path('../bad-fixtures', __FILE__)
  end

  def assert_correctly_loaded(types)
    assert_includes(types, 'application/1d-interleaved-parityfec')
    assert_deprecated('MIME::Type#references') do
      assert_empty types['application/acad'].first.references
    end
    assert_deprecated('MIME::Type#urls') do
      assert_empty types['audio/webm'].first.urls
    end
    assert_equal(%w(webm), types['audio/webm'].first.extensions)
    refute(types['audio/webm'].first.registered?)

    assert_equal('Fixes a bug with IE6 and progressive JPEGs',
                 types['image/pjpeg'].first.docs)

    assert_deprecated('MIME::Type#system?') do
      refute types['application/x-apple-diskimage'].first.system?
    end
    assert_deprecated('MIME::Type#system') do
      assert_nil types['application/x-apple-diskimage'].first.system
    end

    assert(types['audio/vnd.qcelp'].first.obsolete?)
    assert_equal('audio/QCELP', types['audio/vnd.qcelp'].first.use_instead)
  end

  def test_load_yaml
    assert_correctly_loaded(@loader.load_yaml)
  end

  def test_load_json
    assert_correctly_loaded(@loader.load_json)
  end

  def test_load_v1
    assert_deprecated('MIME::Types::Loader.load_v1') do
      assert_correctly_loaded(@loader.load_v1)
    end
  end

  def test_malformed_v1
    assert_output(nil, /1: Parsing error in v1 MIME type definition/) {
      assert_raises(MIME::Types::Loader::BadV1Format) {
        MIME::Types::Loader.load_from_v1(File.join(@bad_path, 'malformed'))
      }
    }
  end
end

Version data entries

25 entries across 23 versions & 5 rubygems

Version Path
mrcooper-logstash-output-azuresearch-0.2.2 vendor/jruby/2.5.0/gems/mime-types-2.99.3/test/test_mime_types_loader.rb
tdiary-5.0.8 vendor/bundle/gems/tdiary-5.0.7/vendor/bundle/gems/mime-types-2.99.3/test/test_mime_types_loader.rb
tdiary-5.0.7 vendor/bundle/gems/mime-types-2.99.3/test/test_mime_types_loader.rb
tdiary-5.0.6 vendor/bundle/gems/mime-types-2.99.3/test/test_mime_types_loader.rb
tdiary-5.0.5 vendor/bundle/gems/tdiary-5.0.4/vendor/bundle/gems/mime-types-2.99.3/test/test_mime_types_loader.rb
tdiary-5.0.5 vendor/bundle/gems/mime-types-2.99.3/test/test_mime_types_loader.rb
tdiary-5.0.4 vendor/bundle/gems/mime-types-2.99.3/test/test_mime_types_loader.rb
vagrant-unbundled-1.9.1.1 vendor/bundle/ruby/2.4.0/gems/mime-types-2.99.3/test/test_mime_types_loader.rb
tdiary-5.0.2 vendor/bundle/gems/mime-types-2.99.2/test/test_mime_types_loader.rb
vagrant-compose-yaml-0.1.3 vendor/bundle/ruby/2.2.0/gems/mime-types-2.99.2/test/test_mime_types_loader.rb
vagrant-compose-yaml-0.1.2 vendor/bundle/ruby/2.2.0/gems/mime-types-2.99.2/test/test_mime_types_loader.rb
vagrant-compose-yaml-0.1.1 vendor/bundle/ruby/2.2.0/gems/mime-types-2.99.2/test/test_mime_types_loader.rb
vagrant-compose-yaml-0.1.0 vendor/bundle/ruby/2.2.0/gems/mime-types-2.99.2/test/test_mime_types_loader.rb
mime-types-2.99.3 test/test_mime_types_loader.rb
vagrant-unbundled-1.8.5.2 vendor/bundle/ruby/2.3.0/gems/mime-types-2.99.2/test/test_mime_types_loader.rb
vagrant-unbundled-1.8.5.1 vendor/bundle/ruby/2.3.0/gems/mime-types-2.99.2/test/test_mime_types_loader.rb
vagrant-unbundled-1.8.4.2 vendor/bundle/ruby/2.3.0/gems/mime-types-2.99.2/test/test_mime_types_loader.rb
vagrant-unbundled-1.8.4.1 vendor/bundle/ruby/2.3.0/gems/mime-types-2.99.2/test/test_mime_types_loader.rb
tdiary-5.0.1 vendor/bundle/gems/mime-types-2.99.2/test/test_mime_types_loader.rb
mime-types-2.99.2 test/test_mime_types_loader.rb