bpo-34189: Fix checking for bugfix Tcl version. (GH-8397)

This commit is contained in:
Serhiy Storchaka 2018-07-22 21:41:48 +03:00 committed by GitHub
parent e271ca78e3
commit c75c1e0e8a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 14 additions and 4 deletions

View File

@ -1,3 +1,4 @@
import functools
import re
import tkinter
import unittest
@ -54,9 +55,20 @@ import _tkinter
tcl_version = tuple(map(int, _tkinter.TCL_VERSION.split('.')))
def requires_tcl(*version):
return unittest.skipUnless(tcl_version >= version,
if len(version) <= 2:
return unittest.skipUnless(tcl_version >= version,
'requires Tcl version >= ' + '.'.join(map(str, version)))
def deco(test):
@functools.wraps(test)
def newtest(self):
if get_tk_patchlevel() < (8, 6, 5):
self.skipTest('requires Tcl version >= ' +
'.'.join(map(str, get_tk_patchlevel())))
test(self)
return newtest
return deco
_tk_patchlevel = None
def get_tk_patchlevel():
global _tk_patchlevel

View File

@ -717,9 +717,7 @@ class ListboxTest(AbstractWidgetTest, unittest.TestCase):
self.checkEnumParam(widget, 'activestyle',
'dotbox', 'none', 'underline')
@requires_tcl(8, 6, 5)
def test_justify(self):
AbstractWidgetTest.test_justify(self)
test_justify = requires_tcl(8, 6, 5)(StandardOptionsTests.test_justify)
def test_listvariable(self):
widget = self.create()