Issue #22173: Update lib2to3 tests to use unittest test discovery.

This commit is contained in:
Zachary Ware 2014-10-29 12:24:59 -05:00
parent b7354a65ce
commit 2acbae8016
7 changed files with 19 additions and 38 deletions

View File

@ -2,7 +2,7 @@
Main program for 2to3.
"""
from __future__ import with_statement
from __future__ import with_statement, print_function
import sys
import os

View File

@ -1,24 +1,9 @@
"""Make tests/ into a package. This allows us to "import tests" and
have tests.all_tests be a TestSuite representing all test cases
from all test_*.py files in tests/."""
# Author: Collin Winter
import os
import os.path
import unittest
import types
from . import support
from test.support import load_package_tests
all_tests = unittest.TestSuite()
tests_dir = os.path.join(os.path.dirname(__file__), '..', 'tests')
tests = [t[0:-3] for t in os.listdir(tests_dir)
if t.startswith('test_') and t.endswith('.py')]
loader = unittest.TestLoader()
for t in tests:
__import__("",globals(),locals(),[t],level=1)
mod = globals()[t]
all_tests.addTests(loader.loadTestsFromModule(mod))
def load_tests(*args):
return load_package_tests(os.path.dirname(__file__), *args)

View File

@ -0,0 +1,4 @@
from . import load_tests
import unittest
unittest.main()

View File

@ -4,6 +4,8 @@
"""Main program for testing the infrastructure."""
from __future__ import print_function
__author__ = "Guido van Rossum <guido@python.org>"
# Support imports (need to be imported first)

View File

@ -7,12 +7,14 @@ running time.
# Python imports
import unittest
import test.support
# Local imports
from lib2to3 import refactor
from . import support
@test.support.requires_resource('cpu')
class Test_all(support.TestCase):
def setUp(self):
@ -21,3 +23,6 @@ class Test_all(support.TestCase):
def test_all_project_files(self):
for filepath in support.all_project_files():
self.refactor.refactor_file(filepath)
if __name__ == '__main__':
unittest.main()

View File

@ -1,22 +1,5 @@
# Skipping test_parser and test_all_fixers
# because of running
from lib2to3.tests import (test_fixers, test_pytree, test_util, test_refactor,
test_parser,
test_main as test_main_)
from lib2to3.tests import load_tests
import unittest
from test.support import run_unittest
def suite():
tests = unittest.TestSuite()
loader = unittest.TestLoader()
for m in (test_fixers, test_pytree, test_util, test_refactor, test_parser,
test_main_):
tests.addTests(loader.loadTestsFromModule(m))
return tests
def test_main():
run_unittest(suite())
if __name__ == '__main__':
test_main()
unittest.main()

View File

@ -87,6 +87,8 @@ Library
Tests
-----
- Issue #22173: Update lib2to3 tests to use unittest test discovery.
- Issue #16000: Convert test_curses to use unittest.
- Issue #21456: Skip two tests in test_urllib2net.py if _ssl module not