mirror of https://github.com/python/cpython
Merged revisions 69060-69063 via svnmerge from
svn+ssh://pythondev/python/trunk ........ r69060 | guilherme.polo | 2009-01-28 17:23:28 -0200 (Wed, 28 Jan 2009) | 2 lines Added support for collecting tests only from specific packages. ........ r69061 | guilherme.polo | 2009-01-28 17:28:04 -0200 (Wed, 28 Jan 2009) | 4 lines * Renaming test_tk_* to test_ttk_* since that is what they are testing. * Added ttk tests to the expected skips mapping just like where test_tcl was expected to be skipped too. ........ r69062 | guilherme.polo | 2009-01-28 18:02:01 -0200 (Wed, 28 Jan 2009) | 1 line Make sure the root windows gets destroyed ........ r69063 | guilherme.polo | 2009-01-28 18:03:26 -0200 (Wed, 28 Jan 2009) | 2 lines Issue #5083: New 'gui' resource for regrtest. ........
This commit is contained in:
parent
a7d2797e80
commit
9de29afa7c
|
@ -123,6 +123,8 @@ resources to test. Currently only the following are defined:
|
|||
|
||||
urlfetch - It is okay to download files required on testing.
|
||||
|
||||
gui - Run tests that require a running GUI.
|
||||
|
||||
To enable all resources except one, use '-uall,-<resource>'. For
|
||||
example, to run all the tests except for the bsddb tests, give the
|
||||
option '-uall,-bsddb'.
|
||||
|
@ -176,7 +178,7 @@ if sys.platform == 'darwin':
|
|||
from test import support
|
||||
|
||||
RESOURCE_NAMES = ('audio', 'curses', 'largefile', 'network', 'bsddb',
|
||||
'decimal', 'compiler', 'subprocess', 'urlfetch')
|
||||
'decimal', 'compiler', 'subprocess', 'urlfetch', 'gui')
|
||||
|
||||
|
||||
def usage(msg):
|
||||
|
@ -1073,6 +1075,8 @@ _expectations = {
|
|||
test_pty
|
||||
test_socketserver
|
||||
test_tcl
|
||||
test_ttk_guionly
|
||||
test_ttk_textonly
|
||||
test_timeout
|
||||
test_urllibnet
|
||||
test_multiprocessing
|
||||
|
@ -1088,6 +1092,8 @@ _expectations = {
|
|||
test_kqueue
|
||||
test_ossaudiodev
|
||||
test_tcl
|
||||
test_ttk_guionly
|
||||
test_ttk_textonly
|
||||
test_zipimport
|
||||
test_zlib
|
||||
""",
|
||||
|
@ -1103,6 +1109,8 @@ _expectations = {
|
|||
test_ossaudiodev
|
||||
test_pep277
|
||||
test_tcl
|
||||
test_ttk_guionly
|
||||
test_ttk_textonly
|
||||
test_multiprocessing
|
||||
""",
|
||||
'netbsd3':
|
||||
|
@ -1117,6 +1125,8 @@ _expectations = {
|
|||
test_ossaudiodev
|
||||
test_pep277
|
||||
test_tcl
|
||||
test_ttk_guionly
|
||||
test_ttk_textonly
|
||||
test_multiprocessing
|
||||
""",
|
||||
}
|
||||
|
|
|
@ -1,5 +1,15 @@
|
|||
from test import support
|
||||
import os
|
||||
import sys
|
||||
from tkinter import ttk
|
||||
from tkinter.test import runtktests
|
||||
from _tkinter import TclError
|
||||
from test import support
|
||||
|
||||
try:
|
||||
ttk.Button()
|
||||
except TclError as msg:
|
||||
# assuming ttk is not available
|
||||
raise support.TestSkipped("ttk not available: %s" % msg)
|
||||
|
||||
def test_main(enable_gui=False):
|
||||
if enable_gui:
|
||||
|
@ -8,7 +18,8 @@ def test_main(enable_gui=False):
|
|||
elif 'gui' not in support.use_resources:
|
||||
support.use_resources.append('gui')
|
||||
|
||||
support.run_unittest(*runtktests.get_tests(text=False))
|
||||
support.run_unittest(
|
||||
*runtktests.get_tests(text=False, packages=['test_ttk']))
|
||||
|
||||
if __name__ == '__main__':
|
||||
test_main(enable_gui=True)
|
|
@ -1,8 +1,11 @@
|
|||
import os
|
||||
import sys
|
||||
from test import support
|
||||
from tkinter.test import runtktests
|
||||
|
||||
def test_main():
|
||||
support.run_unittest(*runtktests.get_tests(gui=False))
|
||||
support.run_unittest(
|
||||
*runtktests.get_tests(gui=False, packages=['test_ttk']))
|
||||
|
||||
if __name__ == '__main__':
|
||||
test_main()
|
|
@ -19,9 +19,13 @@ def is_package(path):
|
|||
return True
|
||||
return False
|
||||
|
||||
def get_tests_modules(basepath=this_dir_path, gui=True):
|
||||
def get_tests_modules(basepath=this_dir_path, gui=True, packages=None):
|
||||
"""This will import and yield modules whose names start with test_
|
||||
and are inside packages found in the path starting at basepath."""
|
||||
and are inside packages found in the path starting at basepath.
|
||||
|
||||
If packages is specified it should contain package names that
|
||||
want their tests collected.
|
||||
"""
|
||||
py_ext = '.py'
|
||||
|
||||
for dirpath, dirnames, filenames in os.walk(basepath):
|
||||
|
@ -31,6 +35,9 @@ def get_tests_modules(basepath=this_dir_path, gui=True):
|
|||
|
||||
if is_package(dirpath) and filenames:
|
||||
pkg_name = dirpath[len(basepath) + len(os.sep):].replace('/', '.')
|
||||
if packages and pkg_name not in packages:
|
||||
continue
|
||||
|
||||
filenames = filter(
|
||||
lambda x: x.startswith('test_') and x.endswith(py_ext),
|
||||
filenames)
|
||||
|
@ -48,7 +55,7 @@ def get_tests_modules(basepath=this_dir_path, gui=True):
|
|||
if gui:
|
||||
raise
|
||||
|
||||
def get_tests(text=True, gui=True):
|
||||
def get_tests(text=True, gui=True, packages=None):
|
||||
"""Yield all the tests in the modules found by get_tests_modules.
|
||||
|
||||
If nogui is True, only tests that do not require a GUI will be
|
||||
|
@ -58,7 +65,7 @@ def get_tests(text=True, gui=True):
|
|||
attrs.append('tests_nogui')
|
||||
if gui:
|
||||
attrs.append('tests_gui')
|
||||
for module in get_tests_modules(gui=gui):
|
||||
for module in get_tests_modules(gui=gui, packages=packages):
|
||||
for attr in attrs:
|
||||
for test in getattr(module, attr, ()):
|
||||
yield test
|
||||
|
|
|
@ -708,10 +708,13 @@ class NotebookTest(unittest.TestCase):
|
|||
class TreeviewTest(unittest.TestCase):
|
||||
|
||||
def setUp(self):
|
||||
self.tv = ttk.Treeview()
|
||||
self.root = support.get_tk_root()
|
||||
self.tv = ttk.Treeview(self.root)
|
||||
|
||||
def tearDown(self):
|
||||
self.tv.destroy()
|
||||
self.root.update_idletasks()
|
||||
self.root.destroy()
|
||||
|
||||
|
||||
def test_bbox(self):
|
||||
|
|
Loading…
Reference in New Issue