changeset: 93421:b3a5b53173c0 branch: 2.7 parent: 93418:14a69e40dbb0 user: Serhiy Storchaka date: Fri Nov 07 12:02:11 2014 +0200 files: Lib/lib-tk/test/test_ttk/test_widgets.py Lib/lib-tk/ttk.py Misc/NEWS description: Issue #22769: Fixed ttk.Treeview.tag_has() when called without arguments. diff -r 14a69e40dbb0 -r b3a5b53173c0 Lib/lib-tk/test/test_ttk/test_widgets.py --- a/Lib/lib-tk/test/test_ttk/test_widgets.py Thu Nov 06 14:56:47 2014 +0100 +++ b/Lib/lib-tk/test/test_ttk/test_widgets.py Fri Nov 07 12:02:11 2014 +0200 @@ -1,5 +1,6 @@ import unittest import Tkinter as tkinter +from Tkinter import TclError import ttk from test.test_support import requires, run_unittest import sys @@ -1564,6 +1565,21 @@ 'blue') self.assertIsInstance(self.tv.tag_configure('test'), dict) + def test_tag_has(self): + item1 = self.tv.insert('', 'end', text='Item 1', tags=['tag1']) + item2 = self.tv.insert('', 'end', text='Item 2', tags=['tag2']) + self.assertRaises(TypeError, self.tv.tag_has) + self.assertRaises(TclError, self.tv.tag_has, 'tag1', 'non-existing') + self.assertTrue(self.tv.tag_has('tag1', item1)) + self.assertFalse(self.tv.tag_has('tag1', item2)) + self.assertFalse(self.tv.tag_has('tag2', item1)) + self.assertTrue(self.tv.tag_has('tag2', item2)) + self.assertFalse(self.tv.tag_has('tag3', item1)) + self.assertFalse(self.tv.tag_has('tag3', item2)) + self.assertEqual(self.tv.tag_has('tag1'), (item1,)) + self.assertEqual(self.tv.tag_has('tag2'), (item2,)) + self.assertEqual(self.tv.tag_has('tag3'), ()) + @add_standard_options(StandardTtkOptionsTests) class SeparatorTest(AbstractWidgetTest, unittest.TestCase): diff -r 14a69e40dbb0 -r b3a5b53173c0 Lib/lib-tk/ttk.py --- a/Lib/lib-tk/ttk.py Thu Nov 06 14:56:47 2014 +0100 +++ b/Lib/lib-tk/ttk.py Fri Nov 07 12:02:11 2014 +0200 @@ -1458,7 +1458,11 @@ all items which have the specified tag. * Availability: Tk 8.6""" - return self.tk.getboolean( + if item is None: + return self.tk.splitlist( + self.tk.call(self._w, "tag", "has", tagname)) + else: + return self.tk.getboolean( self.tk.call(self._w, "tag", "has", tagname, item)) diff -r 14a69e40dbb0 -r b3a5b53173c0 Misc/NEWS --- a/Misc/NEWS Thu Nov 06 14:56:47 2014 +0100 +++ b/Misc/NEWS Fri Nov 07 12:02:11 2014 +0200 @@ -37,6 +37,8 @@ Library ------- +- Issue #22769: Fixed ttk.Treeview.tag_has() when called without arguments. + - Issue #22787: Allow the keyfile argument of SSLContext.load_cert_chain to be None.