Merge with 3.3

This commit is contained in:
Terry Jan Reedy 2014-02-27 18:48:13 -05:00
commit 78c330d714
6 changed files with 14 additions and 3 deletions

View File

@ -41,9 +41,10 @@ idle class. For the benefit of buildbot machines that do not have a graphics
screen, gui tests must be 'guarded' by "requires('gui')" in a setUp screen, gui tests must be 'guarded' by "requires('gui')" in a setUp
function or method. This will typically be setUpClass. function or method. This will typically be setUpClass.
All gui objects must be destroyed by the end of the test, perhaps in a tearDown To avoid interfering with other gui tests, all gui objects must be destroyed
function. Creating the Tk root directly in a setUp allows a reference to be saved and deleted by the end of the test. If a widget, such as a Tk root, is created
so it can be properly destroyed in the corresponding tearDown. in a setUpX function, destroy it in the corresponding tearDownX. For module
and class attributes, also delete the widget.
--- ---
@classmethod @classmethod
def setUpClass(cls): def setUpClass(cls):
@ -53,6 +54,7 @@ so it can be properly destroyed in the corresponding tearDown.
@classmethod @classmethod
def tearDownClass(cls): def tearDownClass(cls):
cls.root.destroy() cls.root.destroy()
del cls.root
--- ---
Support.requires('gui') returns true if it is either called in a main module Support.requires('gui') returns true if it is either called in a main module

View File

@ -277,6 +277,9 @@ class FormatEventTest(unittest.TestCase):
@classmethod @classmethod
def tearDownClass(cls): def tearDownClass(cls):
cls.root.destroy() cls.root.destroy()
del cls.root
del cls.text
del cls.formatter
def test_short_line(self): def test_short_line(self):
self.text.insert('1.0', "Short line\n") self.text.insert('1.0', "Short line\n")

View File

@ -80,6 +80,7 @@ class FetchTest(unittest.TestCase):
@classmethod @classmethod
def tearDownClass(cls): def tearDownClass(cls):
cls.root.destroy() cls.root.destroy()
del cls.root
def fetch_test(self, reverse, line, prefix, index, *, bell=False): def fetch_test(self, reverse, line, prefix, index, *, bell=False):
# Perform one fetch as invoked by Alt-N or Alt-P # Perform one fetch as invoked by Alt-N or Alt-P

View File

@ -64,6 +64,7 @@ class GetSelectionTest(unittest.TestCase):
## @classmethod ## @classmethod
## def tearDownClass(cls): ## def tearDownClass(cls):
## cls.root.destroy() ## cls.root.destroy()
## del cls.root
def test_get_selection(self): def test_get_selection(self):
# text = Text(master=self.root) # text = Text(master=self.root)
@ -219,6 +220,7 @@ class SearchTest(unittest.TestCase):
## @classmethod ## @classmethod
## def tearDownClass(cls): ## def tearDownClass(cls):
## cls.root.destroy() ## cls.root.destroy()
## del cls.root
def test_search(self): def test_search(self):
Equal = self.assertEqual Equal = self.assertEqual
@ -261,6 +263,7 @@ class ForwardBackwardTest(unittest.TestCase):
## @classmethod ## @classmethod
## def tearDownClass(cls): ## def tearDownClass(cls):
## cls.root.destroy() ## cls.root.destroy()
## del cls.root
@classmethod @classmethod
def setUpClass(cls): def setUpClass(cls):

View File

@ -221,6 +221,7 @@ class TkTextTest(TextTest, unittest.TestCase):
@classmethod @classmethod
def tearDownClass(cls): def tearDownClass(cls):
cls.root.destroy() cls.root.destroy()
del cls.root
if __name__ == '__main__': if __name__ == '__main__':

View File

@ -14,6 +14,7 @@ if use_resources and 'gui' in use_resources:
try: try:
root = tk.Tk() root = tk.Tk()
root.destroy() root.destroy()
del root
except tk.TclError: except tk.TclError:
while 'gui' in use_resources: while 'gui' in use_resources:
use_resources.remove('gui') use_resources.remove('gui')