diff options
author | Renato Araujo Oliveira Filho <renato.araujo@kdab.com> | 2019-02-18 14:43:41 -0300 |
---|---|---|
committer | Renato Araujo Oliveira Filho <renato.araujo@kdab.com> | 2019-02-26 18:02:21 +0000 |
commit | 2dd12f480d35194eaa2c97638cf972a09803c68a (patch) | |
tree | b3eca28cdd9aaf496bc4a925d38e101839d94b14 /sources/shiboken2/tests/smartbinding/smart_pointer_test.py | |
parent | c6c1a3e099a8139137d6ef133d1d399ba1ee38bd (diff) |
Fix conversions of list of smart pointers to python
While converting smart pointers do not initialize the object with
default/minimal constructor.
Change-Id: Ie9400d8487accc0c90b0f0b31b855038ae698b5c
Task-Id: PYSIDE-947
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Diffstat (limited to 'sources/shiboken2/tests/smartbinding/smart_pointer_test.py')
-rw-r--r-- | sources/shiboken2/tests/smartbinding/smart_pointer_test.py | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/sources/shiboken2/tests/smartbinding/smart_pointer_test.py b/sources/shiboken2/tests/smartbinding/smart_pointer_test.py index 62bfc0500..e07856e61 100644 --- a/sources/shiboken2/tests/smartbinding/smart_pointer_test.py +++ b/sources/shiboken2/tests/smartbinding/smart_pointer_test.py @@ -156,5 +156,24 @@ class SmartPointerTests(unittest.TestCase): integer = ptrToInteger.data() self.assertTrue(integer) + def testListOfSmartPointers(self): + # Create the main object + o = Obj() + + # Create a list of shared objects + ptrToObjList = o.giveSharedPtrToObjList(10) + self.assertEqual(len(ptrToObjList), 10) + self.assertEqual(objCount(), 11) + + # Remove one from the list + ptrToObjList.pop() + self.assertEqual(len(ptrToObjList), 9) + self.assertEqual(objCount(), 10) + + # clear and delete all objects in the list + ptrToObjList.clear() + self.assertEqual(len(ptrToObjList), 0) + self.assertEqual(objCount(), 1) + if __name__ == '__main__': unittest.main() |