Files
linguist/test/test_mime.rb
2011-06-06 12:54:42 -05:00

141 lines
4.9 KiB
Ruby

require 'linguist/mime'
require 'test/unit'
class TestMime < Test::Unit::TestCase
include Linguist
def test_mime
assert_equal 'text/plain', Mime.mime_for(nil)
assert_equal 'text/plain', Mime.mime_for("")
assert_equal 'application/ruby', Mime.mime_for(".rb")
assert_equal 'application/javascript', Mime.mime_for(".js")
assert_equal 'application/python', Mime.mime_for(".py")
assert_equal 'text/plain', Mime.mime_for(".kt")
assert_equal 'text/html', Mime.mime_for(".html")
assert_equal 'text/cache-manifest', Mime.mime_for(".manifest")
assert_equal 'application/sh', Mime.mime_for(".sh")
assert_equal 'application/latex', Mime.mime_for(".latex")
assert_equal 'application/vnd.adobe.air-application-installer-package+zip',
Mime.mime_for(".air")
assert_equal 'application/shockwave-flash', Mime.mime_for(".swf")
assert_equal 'application/chrome-extension', Mime.mime_for(".crx")
assert_equal 'application/debian-package', Mime.mime_for(".deb")
assert_equal 'application/silverlight-app', Mime.mime_for(".xap")
assert_equal 'application/xaml+xml', Mime.mime_for(".xaml")
assert_equal 'application/ms-xbap', Mime.mime_for(".xbap")
assert_equal 'video/quicktime', Mime.mime_for(".mov")
assert_equal 'application/postscript', Mime.mime_for(".ai")
assert_equal 'application/postscript', Mime.mime_for(".eps")
assert_equal 'application/postscript', Mime.mime_for(".ps")
assert_equal 'application/octet-stream', Mime.mime_for(".dmg")
assert_equal 'application/octet-stream', Mime.mime_for(".exe")
assert_equal 'application/octet-stream', Mime.mime_for(".dll")
assert_equal 'application/java-archive', Mime.mime_for(".jar")
assert_equal 'application/java-archive', Mime.mime_for(".ear")
assert_equal 'application/java-archive', Mime.mime_for(".war")
end
def test_binary
assert !Mime.binary?(nil)
assert !Mime.binary?("")
assert Mime.binary?("application/octet-stream")
assert !Mime.binary?("text/plain")
assert Mime.binary?("application/java-archive")
assert Mime.binary?("application/ogg")
assert Mime.binary?("application/pdf")
assert Mime.binary?("application/postscript")
assert Mime.binary?("application/x-gzip")
assert Mime.binary?("application/x-shockwave-flash")
assert Mime.binary?("application/x-silverlight-app")
assert Mime.binary?("application/zip")
assert Mime.binary?("audio/mp4")
assert Mime.binary?("image/gif")
assert Mime.binary?("image/jpeg")
assert Mime.binary?("image/png")
assert Mime.binary?(".a")
assert Mime.binary?(".air")
assert Mime.binary?(".blend")
assert Mime.binary?(".crx")
assert Mime.binary?(".deb")
assert Mime.binary?(".dmg")
assert Mime.binary?(".exe")
assert Mime.binary?(".gem")
assert Mime.binary?(".graffle")
assert Mime.binary?(".gz")
assert Mime.binary?(".icns")
assert Mime.binary?(".ipa")
assert Mime.binary?(".lib")
assert Mime.binary?(".mcz")
assert Mime.binary?(".mov")
assert Mime.binary?(".mp3")
assert Mime.binary?(".nib")
assert Mime.binary?(".o")
assert Mime.binary?(".odp")
assert Mime.binary?(".ods")
assert Mime.binary?(".odt")
assert Mime.binary?(".ogg")
assert Mime.binary?(".ogv")
assert Mime.binary?(".otf")
assert Mime.binary?(".pfx")
assert Mime.binary?(".pigx")
assert Mime.binary?(".plgx")
assert Mime.binary?(".pptx")
assert Mime.binary?(".psd")
assert Mime.binary?(".sib")
assert Mime.binary?(".so")
assert Mime.binary?(".spl")
assert Mime.binary?(".sqlite3")
assert Mime.binary?(".swc")
assert Mime.binary?(".swf")
assert Mime.binary?(".tar")
assert Mime.binary?(".ucode")
assert Mime.binary?(".xpi")
assert Mime.binary?(".zip")
assert !Mime.binary?("application/atom+xml")
assert !Mime.binary?("application/javascript")
assert !Mime.binary?("application/json")
assert !Mime.binary?("application/rdf+xml")
assert !Mime.binary?("application/sh")
assert !Mime.binary?("application/x-ms-xbap")
assert !Mime.binary?("application/x-perl")
assert !Mime.binary?("application/x-python")
assert !Mime.binary?("application/x-ruby")
assert !Mime.binary?("application/xaml+xml")
assert !Mime.binary?("application/xhtml+xml")
assert !Mime.binary?("application/xml")
assert !Mime.binary?("text/css")
assert !Mime.binary?("text/csv")
assert !Mime.binary?("text/html")
assert !Mime.binary?("text/javascript")
assert !Mime.binary?("text/plain")
assert !Mime.binary?(".js")
assert !Mime.binary?(".latex")
assert !Mime.binary?(".ms")
assert !Mime.binary?(".nc")
assert !Mime.binary?(".pl")
assert !Mime.binary?(".py")
assert !Mime.binary?(".rb")
assert !Mime.binary?(".sh")
assert !Mime.binary?(".src")
assert !Mime.binary?(".tcl")
assert !Mime.binary?(".texi")
assert !Mime.binary?(".texinfo")
assert !Mime.binary?(".xul")
end
end