aboutsummaryrefslogtreecommitdiffstats
path: root/tests/QtCore/qmodelindex_internalpointer_test.py
diff options
context:
space:
mode:
authorRenato Filho <renato.filho@openbossa.org>2010-06-07 14:43:45 -0300
committerRenato Filho <renato.filho@openbossa.org>2010-06-07 16:57:11 -0300
commitab918abc1e103e0ca86939f7d057e8a44ac8a4ef (patch)
tree53c6f57d089dcf5e145d766b1ceef704714046d8 /tests/QtCore/qmodelindex_internalpointer_test.py
parent471486732b03cbb42b884158604a59d5a18e8a35 (diff)
Created new unittest model.
Separete unittest for module. Only run unittest for compiled modules. Reviewer: Marcelo Lira <marcelo.lira@openbossa.org>, Luciano Wolf <luciano.wolf@openbossa.org>
Diffstat (limited to 'tests/QtCore/qmodelindex_internalpointer_test.py')
-rw-r--r--tests/QtCore/qmodelindex_internalpointer_test.py50
1 files changed, 50 insertions, 0 deletions
diff --git a/tests/QtCore/qmodelindex_internalpointer_test.py b/tests/QtCore/qmodelindex_internalpointer_test.py
new file mode 100644
index 000000000..015d1c926
--- /dev/null
+++ b/tests/QtCore/qmodelindex_internalpointer_test.py
@@ -0,0 +1,50 @@
+# -*- coding: utf-8 -*-
+
+''' Test case for QAbstractListModel.createIndex and QModelIndex.internalPointer'''
+
+import sys
+import unittest
+from PySide.QtCore import *
+
+class MyModel (QAbstractListModel):
+ pass
+
+class TestQModelIndexInternalPointer(unittest.TestCase):
+ ''' Test case for QAbstractListModel.createIndex and QModelIndex.internalPointer'''
+
+ def setUp(self):
+ #Acquire resources
+ self.model = MyModel()
+
+ def tearDown(self):
+ #Release resources
+ del self.model
+
+ def testInternalPointer(self):
+ #Test QAbstractListModel.createIndex and
+ #QModelIndex.internalPointer with regular
+ #Python objects
+ idx = self.model.createIndex(0, 0, "Hello")
+ self.assertEqual("Hello", idx.internalPointer())
+ a = [1, 2, 3]
+ idx = self.model.createIndex(0, 0, a)
+ self.assertEqual(a, idx.internalPointer())
+
+ def testReferenceCounting(self):
+ #Test reference counting when retrieving data with
+ #QModelIndex.internalPointer
+ a = [1, 2, 3]
+ a_refcnt = sys.getrefcount(a)
+ idx = self.model.createIndex(0, 0, a)
+ ptr = idx.internalPointer()
+ self.assertEqual(sys.getrefcount(a), a_refcnt + 1)
+
+ def testIndexForDefaultDataArg(self):
+ #Test QAbstractListModel.createIndex with a default
+ #value for data argument
+ idx = self.model.createIndex(0, 0)
+ self.assertEqual(None, idx.internalPointer())
+
+if __name__ == '__main__':
+ unittest.main()
+