diff options
Diffstat (limited to 'setuptools/tests')
| -rw-r--r-- | setuptools/tests/__init__.py | 12 | ||||
| -rw-r--r-- | setuptools/tests/test_resources.py | 33 |
2 files changed, 39 insertions, 6 deletions
diff --git a/setuptools/tests/__init__.py b/setuptools/tests/__init__.py index 913c65bf..7db37888 100644 --- a/setuptools/tests/__init__.py +++ b/setuptools/tests/__init__.py @@ -1,6 +1,6 @@ """Tests for the 'setuptools' package""" -from unittest import TestSuite, TestCase, makeSuite +from unittest import TestSuite, TestCase, makeSuite, defaultTestLoader import distutils.core, distutils.cmd from distutils.errors import DistutilsOptionError, DistutilsPlatformError from distutils.errors import DistutilsSetupError @@ -409,13 +409,13 @@ class TestCommandTests(TestCase): testClasses = (DependsTests, DistroTests, FeatureTests, TestCommandTests) +testNames = ["setuptools.tests.test_resources"] def test_suite(): - return TestSuite([makeSuite(t,'test') for t in testClasses]) - - - - + return TestSuite( + [makeSuite(t,'test') for t in testClasses]+ + [defaultTestLoader.loadTestsFromName(n) for n in testNames] + ) diff --git a/setuptools/tests/test_resources.py b/setuptools/tests/test_resources.py new file mode 100644 index 00000000..f918d21b --- /dev/null +++ b/setuptools/tests/test_resources.py @@ -0,0 +1,33 @@ +from unittest import TestCase, makeSuite +from pkg_resources import * +import pkg_resources + +class DistroTests(TestCase): + def testEmptyiter(self): + # empty path should produce no distributions + self.assertEqual(list(iter_distributions(path=[])), []) + +class ParseTests(TestCase): + def testEmptyParse(self): + self.assertEqual(list(parse_requirements('')), []) + + def testYielding(self): + for inp,out in [ + ([], []), ('x',['x']), ([[]],[]), (' x\n y', ['x','y']), + (['x\n\n','y'], ['x','y']), + ]: + self.assertEqual(list(pkg_resources.yield_lines(inp)),out) + + def testSimple(self): + self.assertEqual( + list(parse_requirements('Twis-Ted>=1.2')), + [('Twis_Ted',[('>=','1.2')])] + ) + self.assertEqual( + list(parse_requirements('Twisted >=1.2, \ # more\n<2.0')), + [('Twisted',[('>=','1.2'),('<','2.0')])] + ) + self.assertRaises(ValueError,lambda:list(parse_requirements(">=2.3"))) + self.assertRaises(ValueError,lambda:list(parse_requirements("x\\"))) + self.assertRaises(ValueError,lambda:list(parse_requirements("x==2 q"))) + |
