Fix QTreeWidget parent rules.
QTreeWidget.clear() - remove all child ref from the current widget QTreeWidgetItem.parent() - use default policy for returned value Fix bug #547 Reviewer: Marcelo Lira <marcelo.lira@openbossa.org> Hugo Parente Lima <hugo.pl@gmail.com>
This commit is contained in:
parent
656be4ec98
commit
a74d92adce
3 changed files with 60 additions and 0 deletions
|
|
@ -21,6 +21,7 @@ PYSIDE_TEST(bug_480.py)
|
|||
PYSIDE_TEST(bug_500.py)
|
||||
PYSIDE_TEST(bug_512.py)
|
||||
PYSIDE_TEST(bug_525.py)
|
||||
PYSIDE_TEST(bug_547.py)
|
||||
PYSIDE_TEST(bug_549.py)
|
||||
PYSIDE_TEST(customproxywidget_test.py)
|
||||
PYSIDE_TEST(deepcopy_test.py)
|
||||
|
|
|
|||
39
tests/QtGui/bug_547.py
Normal file
39
tests/QtGui/bug_547.py
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
""" Unittest for bug #547 """
|
||||
""" http://bugs.openbossa.org/show_bug.cgi?id=547 """
|
||||
|
||||
from PySide import QtGui
|
||||
import sys
|
||||
import unittest
|
||||
|
||||
class MyMainWindow(unittest.TestCase):
|
||||
def testClearFunction(self):
|
||||
app = QtGui.QApplication(sys.argv)
|
||||
self._tree = QtGui.QTreeWidget()
|
||||
self._tree.setColumnCount(2)
|
||||
self._i1 = None
|
||||
self._i11 = None
|
||||
|
||||
self._updateTree()
|
||||
self.assertEqual(sys.getrefcount(self._i1), 3)
|
||||
self.assertEqual(sys.getrefcount(self._i11), 3)
|
||||
|
||||
self._i11.parent().setExpanded(True)
|
||||
self._i11.setExpanded(True)
|
||||
|
||||
self._updateTree()
|
||||
self.assertEqual(sys.getrefcount(self._i1), 3)
|
||||
self.assertEqual(sys.getrefcount(self._i11), 3)
|
||||
|
||||
|
||||
def _updateTree(self):
|
||||
self._tree.clear()
|
||||
if self._i1 and self._i11:
|
||||
self.assertEqual(sys.getrefcount(self._i1), 2)
|
||||
self.assertEqual(sys.getrefcount(self._i11), 2)
|
||||
|
||||
self._i1 = QtGui.QTreeWidgetItem(self._tree, ['1', ])
|
||||
self._i11 = QtGui.QTreeWidgetItem(self._i1, ['11', ])
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue