aboutsummaryrefslogtreecommitdiffstats
path: root/tests/samplebinding/typesystem_sample.xml
diff options
context:
space:
mode:
authorMarcelo Lira <marcelo.lira@openbossa.org>2010-02-08 20:27:33 -0300
committerMarcelo Lira <marcelo.lira@openbossa.org>2010-02-08 20:30:00 -0300
commit3b98369c971d23b8a45cfbf1b3a60f6ccee1f7ab (patch)
treea71e9f2db33127ecbec84fe5f25f0fdcc6a3ec48 /tests/samplebinding/typesystem_sample.xml
parent46eeae2c1bf48b221a6b97f7b9369e0d7e0f8a06 (diff)
Adds test for argument removal plus argument type modification.
Diffstat (limited to 'tests/samplebinding/typesystem_sample.xml')
-rw-r--r--tests/samplebinding/typesystem_sample.xml17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/samplebinding/typesystem_sample.xml b/tests/samplebinding/typesystem_sample.xml
index 1531d6b08..292f6f10b 100644
--- a/tests/samplebinding/typesystem_sample.xml
+++ b/tests/samplebinding/typesystem_sample.xml
@@ -592,6 +592,23 @@
Various tests for inject codes.
Note: Some uses of inject code here are used just for testing purposes, consider using the add-function tag.
-->
+
+ <modify-function signature="arrayMethod(int, int*) const">
+ <modify-argument index="1">
+ <remove-argument/>
+ </modify-argument>
+ <modify-argument index="2">
+ <replace-type modified-type="PySequence"/>
+ </modify-argument>
+ <inject-code class="target" position="beginning">
+ int numItems = PySequence_Size(%PYARG_1);
+ int cppItems[numItems];
+ for (int i = 0; i &lt; numItems; i++)
+ cppItems[i] = %CONVERTTOCPP[int](PySequence_GetItem(%PYARG_1, i));
+ %PYARG_0 = %CONVERTTOPYTHON[int](%CPPSELF.%FUNCTION_NAME(numItems, cppItems));
+ </inject-code>
+ </modify-function>
+
<!--
Inject the tp_str method using this alternative way
Tested in InjectCodeTest.testTypeNativeBeginning_TypeTargetBeginning: