From 10de1d3813d11d0d0850a981cd63fcbb38452b0b Mon Sep 17 00:00:00 2001 From: Marcelo Matus Date: Thu, 7 Oct 2004 18:56:17 +0000 Subject: [PATCH] added kwargs.i test git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@6358 626c5289-ae23-0410-ae9c-e8d60b6d4f22 --- SWIG/Examples/test-suite/python/Makefile.in | 1 + SWIG/Examples/test-suite/python/kwargs.i | 30 +++++++++++++++++++ .../test-suite/python/kwargs_runme.py | 7 +++++ 3 files changed, 38 insertions(+) create mode 100644 SWIG/Examples/test-suite/python/kwargs.i create mode 100644 SWIG/Examples/test-suite/python/kwargs_runme.py diff --git a/SWIG/Examples/test-suite/python/Makefile.in b/SWIG/Examples/test-suite/python/Makefile.in index 4f7ea10c9..5594e778b 100644 --- a/SWIG/Examples/test-suite/python/Makefile.in +++ b/SWIG/Examples/test-suite/python/Makefile.in @@ -20,6 +20,7 @@ CPP_TEST_CASES += \ implicittest \ inout \ inplaceadd \ + kwargs \ lib_std_except \ lib_std_vectora \ lib_std_map \ diff --git a/SWIG/Examples/test-suite/python/kwargs.i b/SWIG/Examples/test-suite/python/kwargs.i new file mode 100644 index 000000000..c33a5be70 --- /dev/null +++ b/SWIG/Examples/test-suite/python/kwargs.i @@ -0,0 +1,30 @@ +%module kwargs + +%feature("kwargs"); + +// +// No warnings nor overload methods should be generated here +// + +%extend Foo +{ + int efoo(int a =1, int b = 0) {return a + b; } + static int sfoo(int a =1, int b = 0) { return a + b; } +} + +%inline %{ + + + int foo(int a =1, int b = 0) {return a + b; } + + + + struct Foo + { + Foo(int a, int b = 0){} + + int foo(int a =1, int b = 0) {return a + b; } + static int bar(int a =1, int b = 0) {return a + b; } + }; + +%} diff --git a/SWIG/Examples/test-suite/python/kwargs_runme.py b/SWIG/Examples/test-suite/python/kwargs_runme.py new file mode 100644 index 000000000..f174642c9 --- /dev/null +++ b/SWIG/Examples/test-suite/python/kwargs_runme.py @@ -0,0 +1,7 @@ +import kwargs + +if kwargs.foo(a=1,b=2) != 3: + raise RuntimeError + +if kwargs.foo(b=2) != 3: + raise RuntimeError