aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken6/tests/minimalbinding
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2023-01-10 15:14:13 +0100
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2023-01-11 15:28:28 +0100
commit4c2c58511df05febd7f51fe41c8e377435f9271e (patch)
tree046fc150014aad7f34372e18544d9a05bbcfbfea /sources/shiboken6/tests/minimalbinding
parent2f0061786046f0855373eb4e099a8bfe0e7b7c2a (diff)
shiboken6/libminimal: Add std::array (C++ 11)
[ChangeLog][shiboken6] Support for std::array has been added. Task-number: PYSIDE-1605 Task-number: PYSIDE-2174 Change-Id: I5192dfe1fa88d794856169638bb97abfc916bcf5 Reviewed-by: Christian Tismer <tismer@stackless.com>
Diffstat (limited to 'sources/shiboken6/tests/minimalbinding')
-rw-r--r--sources/shiboken6/tests/minimalbinding/containeruser_test.py11
-rw-r--r--sources/shiboken6/tests/minimalbinding/typesystem_minimal.xml7
2 files changed, 18 insertions, 0 deletions
diff --git a/sources/shiboken6/tests/minimalbinding/containeruser_test.py b/sources/shiboken6/tests/minimalbinding/containeruser_test.py
index b08989d2f..25d683957 100644
--- a/sources/shiboken6/tests/minimalbinding/containeruser_test.py
+++ b/sources/shiboken6/tests/minimalbinding/containeruser_test.py
@@ -28,6 +28,17 @@ class ContainerTest(unittest.TestCase):
oc[0] = 42
self.assertEqual(cu.intVector()[0], 42)
+ def testArrayConversion(self):
+ v = ContainerUser.createIntArray()
+ self.assertEqual(ContainerUser.sumIntArray(v), 6)
+
+ def testArrayOpaqueContainer(self):
+ cu = ContainerUser()
+ oc = cu.intArray()
+ self.assertEqual(oc[0], 1)
+ oc[0] = 42
+ self.assertEqual(cu.intArray()[0], 42)
+
if __name__ == '__main__':
unittest.main()
diff --git a/sources/shiboken6/tests/minimalbinding/typesystem_minimal.xml b/sources/shiboken6/tests/minimalbinding/typesystem_minimal.xml
index 1b16e0709..e73ddc228 100644
--- a/sources/shiboken6/tests/minimalbinding/typesystem_minimal.xml
+++ b/sources/shiboken6/tests/minimalbinding/typesystem_minimal.xml
@@ -19,6 +19,8 @@
<opaque-container name="std::vector" opaque-containers="int:StdIntVector"/>
+ <opaque-container name="std::array" opaque-containers="int,3:StdIntArray"/>
+
<object-type name="Obj"/>
<value-type name="Val">
<enum-type name="ValEnum"/>
@@ -44,6 +46,11 @@
<replace-type modified-type="StdIntVector"/>
</modify-argument>
</modify-function>
+ <modify-function signature="intArray()">
+ <modify-argument index="return">
+ <replace-type modified-type="StdIntArray"/>
+ </modify-argument>
+ </modify-function>
</value-type>
<!-- Test wrapping of a typedef -->