aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorMarcelo Lira <marcelo.lira@openbossa.org>2010-02-17 17:54:31 -0300
committerMarcelo Lira <marcelo.lira@openbossa.org>2010-02-17 17:54:31 -0300
commitfa6756f52b368270b6e8e0ee4adb499a2afd5499 (patch)
treef4457552602f908b6c5df0bf3c46e10927eb5b0f /tests
parent16b2d0e370d4c7f69e846a90737ca56e010cf609 (diff)
Fixes type system for QAbstractTransition.setTargetState.
And also for QAbstractTransition.targetState method. The test cases for it were expanded.
Diffstat (limited to 'tests')
-rw-r--r--tests/qtcore/qabstracttransition_test.py23
1 files changed, 22 insertions, 1 deletions
diff --git a/tests/qtcore/qabstracttransition_test.py b/tests/qtcore/qabstracttransition_test.py
index d7e7f0738..a45a7d824 100644
--- a/tests/qtcore/qabstracttransition_test.py
+++ b/tests/qtcore/qabstracttransition_test.py
@@ -1,6 +1,8 @@
#!/usr/bin/python
import unittest
-from PySide.QtCore import QObject, QState, QFinalState, SIGNAL, QCoreApplication, QTimer, QStateMachine, QSignalTransition, QVariant, QParallelAnimationGroup
+from sys import getrefcount
+from PySide.QtCore import QObject, SIGNAL, QCoreApplication, QTimer, QVariant
+from PySide.QtCore import QState, QFinalState, QStateMachine, QParallelAnimationGroup, QEventTransition
def addStates(transition):
sx = QState()
@@ -47,5 +49,24 @@ class QAbstractTransitionTest(unittest.TestCase):
QTimer.singleShot(100, app.quit)
app.exec_()
+ def testRefCountOfTargetState(self):
+ transition = QEventTransition()
+ state1 = QState()
+ refcount1 = getrefcount(state1)
+ transition.setTargetState(state1)
+ self.assertEqual(transition.targetState(), state1)
+ self.assertEqual(getrefcount(transition.targetState()), refcount1 + 1)
+
+ state2 = QState()
+ refcount2 = getrefcount(state2)
+ transition.setTargetState(state2)
+ self.assertEqual(transition.targetState(), state2)
+ self.assertEqual(getrefcount(transition.targetState()), refcount2 + 1)
+ self.assertEqual(getrefcount(state1), refcount1)
+
+ del transition
+ self.assertEqual(getrefcount(state2), refcount2)
+
if __name__ == '__main__':
unittest.main()
+