From 3791838339f8c75cdce0bf9615817b1263234314 Mon Sep 17 00:00:00 2001 From: Fred Drake Date: Thu, 16 Aug 2001 18:36:59 +0000 Subject: [PATCH] New unit test for the mimetypes module, to avoid future regressions. --- Lib/test/test_mimetypes.py | 42 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 Lib/test/test_mimetypes.py diff --git a/Lib/test/test_mimetypes.py b/Lib/test/test_mimetypes.py new file mode 100644 index 0000000000..9b9d3396ef --- /dev/null +++ b/Lib/test/test_mimetypes.py @@ -0,0 +1,42 @@ +import mimetypes +import StringIO +import unittest + +import test_support + +# Tell it we don't know about external files: +mimetypes.knownfiles = [] + + +class MimeTypesTestCase(unittest.TestCase): + def setUp(self): + self.db = mimetypes.MimeTypes() + + def test_default_data(self): + self.assertEqual(self.db.guess_type("foo.html"), + ("text/html", None)) + self.assertEqual(self.db.guess_type("foo.tgz"), + ("application/x-tar", "gzip")) + self.assertEqual(self.db.guess_type("foo.tar.gz"), + ("application/x-tar", "gzip")) + self.assertEqual(self.db.guess_type("foo.tar.Z"), + ("application/x-tar", "compress")) + + def test_data_urls(self): + self.assertEqual(self.db.guess_type("data:,thisIsTextPlain"), + ("text/plain", None)) + self.assertEqual(self.db.guess_type("data:;base64,thisIsTextPlain"), + ("text/plain", None)) + self.assertEqual(self.db.guess_type("data:text/x-foo,thisIsTextXFoo"), + ("text/x-foo", None)) + + def test_file_parsing(self): + sio = StringIO.StringIO("x-application/x-unittest pyunit\n") + self.db.readfp(sio) + self.assertEqual(self.db.guess_type("foo.pyunit"), + ("x-application/x-unittest", None)) + self.assertEqual(self.db.guess_extension("x-application/x-unittest"), + ".pyunit") + + +test_support.run_unittest(MimeTypesTestCase) -- 2.40.0