mirror of https://github.com/swig/swig
Add testcase and info on python -builtin missing argument count check
This commit is contained in:
parent
8998f11ca3
commit
a3a0535229
|
@ -5,6 +5,10 @@ See the RELEASENOTES file for a summary of changes in each release.
|
|||
Version 3.0.0 (in progress)
|
||||
============================
|
||||
|
||||
2014-03-01: wsfulton
|
||||
[Python] SF patch #347 Fix missing argument count checking with -modern.
|
||||
Fixes regression introduced when builtin changes were introduced in SWIG-2.0.3.
|
||||
|
||||
2014-02-21: wsfulton
|
||||
[PHP] Fix warning suppression using %warnfilter for PHP reserved class names.
|
||||
|
||||
|
|
|
@ -577,6 +577,7 @@ C_TEST_CASES += \
|
|||
extern_declaration \
|
||||
funcptr \
|
||||
function_typedef \
|
||||
global_functions \
|
||||
immutable_values \
|
||||
inctest \
|
||||
integers \
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
%module global_functions
|
||||
|
||||
%inline %{
|
||||
void global_void(void) {}
|
||||
int global_one(int i) { return i; }
|
||||
int global_two(int i, int j) { return i+j; }
|
||||
%}
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
from global_functions import *
|
||||
|
||||
def check(a, b):
|
||||
if a != b:
|
||||
raise RuntimeError("Failed: " + str(a) + " != " + str(b))
|
||||
global_void()
|
||||
check(global_one(1), 1)
|
||||
check(global_two(2, 2), 4)
|
||||
|
||||
fail = True
|
||||
try:
|
||||
global_void(1)
|
||||
except TypeError, e:
|
||||
fail = False
|
||||
if fail:
|
||||
raise RuntimeError("argument count check failed")
|
||||
|
||||
fail = True
|
||||
try:
|
||||
global_one()
|
||||
except TypeError, e:
|
||||
fail = False
|
||||
if fail:
|
||||
raise RuntimeError("argument count check failed")
|
||||
|
||||
fail = True
|
||||
try:
|
||||
global_one(2, 2)
|
||||
except TypeError, e:
|
||||
fail = False
|
||||
|
||||
if fail:
|
||||
raise RuntimeError("argument count check failed")
|
||||
|
||||
fail = True
|
||||
try:
|
||||
global_two(1)
|
||||
except TypeError, e:
|
||||
fail = False
|
||||
|
||||
if fail:
|
||||
raise RuntimeError("argument count check failed")
|
||||
|
||||
fail = True
|
||||
try:
|
||||
global_two(3, 3, 3)
|
||||
except TypeError, e:
|
||||
fail = False
|
||||
|
||||
if fail:
|
||||
raise RuntimeError("argument count check failed")
|
||||
|
Loading…
Reference in New Issue