diff options
Diffstat (limited to 'src/distutils2/tests')
| -rw-r--r-- | src/distutils2/tests/test_test.py | 16 | ||||
| -rw-r--r-- | src/distutils2/tests/with_support.py | 7 |
2 files changed, 21 insertions, 2 deletions
diff --git a/src/distutils2/tests/test_test.py b/src/distutils2/tests/test_test.py index 7159af6..da60d92 100644 --- a/src/distutils2/tests/test_test.py +++ b/src/distutils2/tests/test_test.py @@ -4,6 +4,7 @@ from os.path import join from StringIO import StringIO from distutils2.tests.support import unittest, TempdirManager from distutils2.command.test import test +from distutils2.dist import Distribution import subprocess try: @@ -83,8 +84,19 @@ class TestTest(TempdirManager, unittest.TestCase): def _test_works_with_2to3(self): pass - def _test_downloads_test_requires(self): - pass + @unittest.skipUnless(sys.version > '2.6', 'Need >= 2.6') + def test_checks_requires(self): + from distutils2.tests.with_support import examine_warnings + dist = Distribution() + dist.tests_require = ['ohno_ohno-impossible_1234-name_stop-that!'] + cmd = test(dist) + def examinator(ws): + cmd.ensure_finalized() + self.assertEqual(1, len(ws)) + warning = ws[0] + self.assertIs(warning.category, RuntimeWarning) + + examine_warnings(examinator) def test_suite(): return unittest.makeSuite(TestTest) diff --git a/src/distutils2/tests/with_support.py b/src/distutils2/tests/with_support.py new file mode 100644 index 0000000..bca0197 --- /dev/null +++ b/src/distutils2/tests/with_support.py @@ -0,0 +1,7 @@ +def examine_warnings(examinator): + """Given an examinator function calls it as if the code was under with + catch_warnings block. Useful for testing older Python versions""" + import warnings + warnings.simplefilter('default') + with warnings.catch_warnings(record=True) as ws: + examinator(ws) |
