Issue #27196: Stop 'application destroyed' warnings when running IDLE tests.
The update_idletasks solution was provided by Serhiy Storchaka.
This commit is contained in:
parent
75cbeb5dac
commit
6047b55372
|
@ -71,9 +71,15 @@ deleted BEFORE root is destroyed. See https://bugs.python.org/issue20567.
|
|||
@classmethod
|
||||
def tearDownClass(cls):
|
||||
del cls.text
|
||||
cls.root.update_idletasks()
|
||||
cls.root.destroy()
|
||||
del cls.root
|
||||
|
||||
The update_idletasks call is sometimes needed to prevent the following warning
|
||||
either when running a test alone or as part of the test suite (#27196).
|
||||
can't invoke "event" command: application has been destroyed
|
||||
...
|
||||
"ttk::ThemeChanged"
|
||||
|
||||
Requires('gui') causes the test(s) it guards to be skipped if any of
|
||||
these conditions are met:
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
'''Unittests for idlelib/configHandler.py
|
||||
|
||||
Coverage: 46% just by creating dialog. The other half is change code.
|
||||
'''Test idlelib.configHandler.
|
||||
|
||||
Coverage: 46% just by creating dialog.
|
||||
The other half is code for working with user customizations.
|
||||
'''
|
||||
import unittest
|
||||
from test.support import requires
|
||||
|
@ -20,11 +20,12 @@ class ConfigDialogTest(unittest.TestCase):
|
|||
|
||||
@classmethod
|
||||
def tearDownClass(cls):
|
||||
cls.root.update_idletasks()
|
||||
cls.root.destroy()
|
||||
del cls.root
|
||||
|
||||
def test_dialog(self):
|
||||
d=ConfigDialog(self.root, 'Test', _utest=True)
|
||||
d = ConfigDialog(self.root, 'Test', _utest=True)
|
||||
d.remove_var_callbacks()
|
||||
d.destroy()
|
||||
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
"""Test idlelib.ParenMatch."""
|
||||
# This must currently be a gui test because ParenMatch methods use
|
||||
# several text methods not defined on idlelib.idle_test.mock_tk.Text.
|
||||
'''Test idlelib.ParenMatch.
|
||||
|
||||
This must currently be a gui test because ParenMatch methods use
|
||||
several text methods not defined on idlelib.idle_test.mock_tk.Text.
|
||||
'''
|
||||
from test.support import requires
|
||||
requires('gui')
|
||||
|
||||
|
@ -29,6 +31,7 @@ class ParenMatchTest(unittest.TestCase):
|
|||
@classmethod
|
||||
def tearDownClass(cls):
|
||||
del cls.text, cls.editwin
|
||||
cls.root.update_idletasks()
|
||||
cls.root.destroy()
|
||||
del cls.root
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
'''Test the functions and main class method of textView.py.
|
||||
'''Test idlelib.textView.
|
||||
|
||||
Since all methods and functions create (or destroy) a TextViewer, which
|
||||
is a widget containing multiple widgets, all tests must be gui tests.
|
||||
|
@ -24,6 +24,7 @@ def setUpModule():
|
|||
def tearDownModule():
|
||||
global root, TV
|
||||
del TV
|
||||
root.update_idletasks()
|
||||
root.destroy() # pyflakes falsely sees root as undefined
|
||||
del root
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
"""Unittest for idlelib.WidgetRedirector
|
||||
'''Test idlelib.WidgetRedirector.
|
||||
|
||||
100% coverage
|
||||
"""
|
||||
'''
|
||||
from test.support import requires
|
||||
import unittest
|
||||
from idlelib.idle_test.mock_idle import Func
|
||||
|
@ -49,6 +49,7 @@ class WidgetRedirectorTest(unittest.TestCase):
|
|||
@classmethod
|
||||
def tearDownClass(cls):
|
||||
del cls.text
|
||||
cls.root.update_idletasks()
|
||||
cls.root.destroy()
|
||||
del cls.root
|
||||
|
||||
|
|
Loading…
Reference in New Issue