aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside2/tests/QtWidgets/qvariant_test.py
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2018-07-06 14:59:57 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2018-07-06 15:00:02 +0200
commite2805675caca2f275f7074e94e3cf04de55f0b3a (patch)
tree6f5bc7b2272815f503e62d99ca2e70a93893cfd4 /sources/pyside2/tests/QtWidgets/qvariant_test.py
parente729091759156f417d987ede9de8961d33f28079 (diff)
parentb20dfab4bc9a4887160e359b8d23dd25760ff948 (diff)
Merge remote-tracking branch 'origin/5.11' into dev
Diffstat (limited to 'sources/pyside2/tests/QtWidgets/qvariant_test.py')
-rw-r--r--sources/pyside2/tests/QtWidgets/qvariant_test.py42
1 files changed, 34 insertions, 8 deletions
diff --git a/sources/pyside2/tests/QtWidgets/qvariant_test.py b/sources/pyside2/tests/QtWidgets/qvariant_test.py
index a595f405b..907e6d9ed 100644
--- a/sources/pyside2/tests/QtWidgets/qvariant_test.py
+++ b/sources/pyside2/tests/QtWidgets/qvariant_test.py
@@ -27,8 +27,10 @@
#############################################################################
import unittest
-from PySide2.QtCore import *
-from PySide2.QtWidgets import *
+from PySide2.QtWidgets import (QApplication, QComboBox, QGraphicsScene,
+ QGraphicsRectItem)
+
+from helper import UsesQApplication
class MyDiagram(QGraphicsScene):
pass
@@ -37,14 +39,38 @@ class MyItem(QGraphicsRectItem):
def itemChange(self, change, value):
return value;
-class QGraphicsSceneOnQVariantTest(unittest.TestCase):
+class Sequence(object):
+ # Having the __getitem__ method on a class transform the Python
+ # type to a PySequence.
+ # Before the patch: aa75437f9119d997dd290471ac3e2cc88ca88bf1
+ # "Fix QVariant conversions when using PySequences"
+ # one could not use an object from this class, because internally
+ # we were requiring that the PySequence was finite.
+ def __getitem__(self, key):
+ raise IndexError()
+
+class QGraphicsSceneOnQVariantTest(UsesQApplication):
"""Test storage ot QGraphicsScene into QVariants"""
+ def setUp(self):
+ super(QGraphicsSceneOnQVariantTest, self).setUp()
+ self.s = MyDiagram()
+ self.i = MyItem()
+ self.combo = QComboBox()
+
+ def tearDown(self):
+ del self.s
+ del self.i
+ del self.combo
+ super(QGraphicsSceneOnQVariantTest, self).tearDown()
+
def testIt(self):
- app = QApplication([])
- s = MyDiagram()
- i = MyItem()
- s.addItem(i)
- self.assertEqual(len(s.items()), 1)
+ self.s.addItem(self.i)
+ self.assertEqual(len(self.s.items()), 1)
+
+ def testSequence(self):
+ # PYSIDE-641
+ self.combo.addItem("test", userData=Sequence())
+ self.assertTrue(isinstance(self.combo.itemData(0), Sequence))
if __name__ == '__main__':
unittest.main()