]> granicus.if.org Git - python/commitdiff
test_guess_all_types(): Use a more robust test for checking that
authorBarry Warsaw <barry@python.org>
Sun, 23 Nov 2003 16:21:55 +0000 (16:21 +0000)
committerBarry Warsaw <barry@python.org>
Sun, 23 Nov 2003 16:21:55 +0000 (16:21 +0000)
guess_all_extensions() returns (at least) what we expect.  As Jeff
Epler suggests in

http://mail.python.org/pipermail/python-dev/2003-September/038264.html

We use a set to test the results.  This fixes the test when
test_urllib2 is run before test_mimetypes.

Lib/test/test_mimetypes.py

index fed0bf581e0479867cd0826af968f89a6a6dcc77..5939ff521253fe5cbbcfe78c1861ada86d3ac56e 100644 (file)
@@ -1,6 +1,7 @@
 import mimetypes
 import StringIO
 import unittest
+from sets import Set
 
 from test import test_support
 
@@ -46,10 +47,12 @@ class MimeTypesTestCase(unittest.TestCase):
 
     def test_guess_all_types(self):
         eq = self.assertEqual
-        # First try strict
-        all = self.db.guess_all_extensions('text/plain', strict=True)
-        all.sort()
-        eq(all, ['.bat', '.c', '.h', '.ksh', '.pl', '.txt'])
+        unless = self.failUnless
+        # First try strict.  Use a set here for testing the results because if
+        # test_urllib2 is run before test_mimetypes, global state is modified
+        # such that the 'all' set will have more items in it.
+        all = Set(self.db.guess_all_extensions('text/plain', strict=True))
+        unless(all >= Set(['.bat', '.c', '.h', '.ksh', '.pl', '.txt']))
         # And now non-strict
         all = self.db.guess_all_extensions('image/jpg', strict=False)
         all.sort()