diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2014-07-24 14:48:28 (GMT) |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2014-07-24 14:48:28 (GMT) |
commit | 186f66540dfcce1abec59d87d24e944c7987a53c (patch) | |
tree | b72fe55efff6557d6ff27dcb8aac2e568f9c7f39 /Lib/lib-tk | |
parent | 63a474788a3f53f8edb62cf895aeb90508435c1d (diff) | |
download | cpython-186f66540dfcce1abec59d87d24e944c7987a53c.zip cpython-186f66540dfcce1abec59d87d24e944c7987a53c.tar.gz cpython-186f66540dfcce1abec59d87d24e944c7987a53c.tar.bz2 |
Issue #1730136: Fix comparison between a tk Font object and an object of a
different type.
Diffstat (limited to 'Lib/lib-tk')
-rw-r--r-- | Lib/lib-tk/test/test_tkinter/test_font.py | 35 | ||||
-rw-r--r-- | Lib/lib-tk/tkFont.py | 2 |
2 files changed, 36 insertions, 1 deletions
diff --git a/Lib/lib-tk/test/test_tkinter/test_font.py b/Lib/lib-tk/test/test_tkinter/test_font.py new file mode 100644 index 0000000..8e20f4d --- /dev/null +++ b/Lib/lib-tk/test/test_tkinter/test_font.py @@ -0,0 +1,35 @@ +import unittest +import Tkinter +#from Tkinter +import tkFont as font +from test.test_support import requires, run_unittest +import test_ttk.support as support + +requires('gui') + +class FontTest(unittest.TestCase): + + def setUp(self): + support.root_deiconify() + + def tearDown(self): + support.root_withdraw() + + def test_font_eq(self): + fontname = "TkDefaultFont" + try: + f = font.Font(name=fontname, exists=True) + except tkinter._tkinter.TclError: + f = font.Font(name=fontname, exists=False) + font1 = font.nametofont(fontname) + font2 = font.nametofont(fontname) + self.assertIsNot(font1, font2) + self.assertEqual(font1, font2) + self.assertNotEqual(font1, font1.copy()) + self.assertNotEqual(font1, 0) + self.assertNotIn(font1, [0]) + +tests_gui = (FontTest, ) + +if __name__ == "__main__": + run_unittest(*tests_gui) diff --git a/Lib/lib-tk/tkFont.py b/Lib/lib-tk/tkFont.py index 61c2f86..dfdee42 100644 --- a/Lib/lib-tk/tkFont.py +++ b/Lib/lib-tk/tkFont.py @@ -97,7 +97,7 @@ class Font: return self.name def __eq__(self, other): - return self.name == other.name and isinstance(other, Font) + return isinstance(other, Font) and self.name == other.name def __getitem__(self, key): return self.cget(key) |