scilab: implement default_args test
This commit is contained in:
parent
18e3f1fe5f
commit
a00354f2e3
1 changed files with 67 additions and 0 deletions
67
Examples/test-suite/scilab/default_args_runme.sci
Normal file
67
Examples/test-suite/scilab/default_args_runme.sci
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
exec("swigtest.start", -1);
|
||||
|
||||
checkequal(anonymous(), 7771, "anonymous()");
|
||||
checkequal(anonymous(1234), 1234, "anonymous(1234)");
|
||||
|
||||
checkequal(booltest(), %T, "booltest()");
|
||||
checkequal(booltest(%T), %T, "booltest(%T)");
|
||||
checkequal(booltest(%F), %F, "booltest(%T)");
|
||||
|
||||
ec = new_EnumClass();
|
||||
checkequal(EnumClass_blah(ec), %T, "EnumClass_blah(ec)");
|
||||
|
||||
checkequal(casts1(), [], "casts1()");
|
||||
checkequal(casts1("Ciao"), "Ciao", "casts1(""Ciao"")");
|
||||
checkequal(casts2(), "Hello", "casts2()");
|
||||
checkequal(chartest1(), 'x', "chartest1()");
|
||||
checkequal(chartest2(), '', "chartest2()");
|
||||
checkequal(chartest1('y'), 'y', "chartest1(''y'')");
|
||||
checkequal(reftest1(), 42, "reftest1()");
|
||||
checkequal(reftest1(400), 400, "reftest1(400)");
|
||||
checkequal(reftest2(), "hello", "reftest2()");
|
||||
|
||||
// Rename
|
||||
f = new_Foo();
|
||||
Foo_newname(f);
|
||||
Foo_newname(f, 10);
|
||||
Foo_renamed3arg(f, 10, 10.0);
|
||||
Foo_renamed2arg(f, 10);
|
||||
Foo_renamed1arg(f);
|
||||
delete_Foo(f);
|
||||
|
||||
// Static functions
|
||||
checkequal(Statics_staticmethod(), 10+20+30, "Statics_staticmethod()");
|
||||
checkequal(Statics_staticmethod(100), 100+20+30, "Statics_staticmethod(100)");
|
||||
checkequal(Statics_staticmethod(100, 200, 300), 100+200+300, "Statics_staticmethod(100, 200, 300)");
|
||||
|
||||
tricky = new_Tricky();
|
||||
checkequal(Tricky_privatedefault(tricky), 200, "Tricky_privatedefault(tricky)");
|
||||
checkequal(Tricky_protectedint(tricky), 2000, "Tricky_protectedint(tricky)");
|
||||
checkequal(Tricky_protecteddouble(tricky), 987.654, "Tricky_protecteddouble(tricky)");
|
||||
checkequal(Tricky_functiondefault(tricky), 500, "Tricky_functiondefault(tricky)");
|
||||
checkequal(Tricky_contrived(tricky), 'X', "Tricky_contrived(tricky)");
|
||||
delete_Tricky(tricky);
|
||||
|
||||
// Default argument is a constructor
|
||||
k = constructorcall();
|
||||
checkequal(Klass_val_get(k), -1, "Klass_constructorcall()");
|
||||
delete_Klass(k);
|
||||
k = constructorcall(new_Klass(2222));
|
||||
checkequal(Klass_val_get(k), 2222, "Klass_constructorcall(new Klass(2222)");
|
||||
delete_Klass(k);
|
||||
k = constructorcall(new_Klass());
|
||||
checkequal(Klass_val_get(k), -1, "Klass_constructorcall(new_Klass()");
|
||||
delete_Klass(k);
|
||||
|
||||
// Const methods
|
||||
cm = new_ConstMethods();
|
||||
checkequal(ConstMethods_coo(cm), 20, "ConstMethods_coo()");
|
||||
checkequal(ConstMethods_coo(cm, 1.0), 20, "ConstMethods_coo(1.0)");
|
||||
|
||||
// C linkage (extern "C")
|
||||
checkequal(cfunc1(1), 2, "cfunc1(1)");
|
||||
checkequal(cfunc2(1), 3, "cfunc2(1)");
|
||||
checkequal(cfunc3(1), 4, "cfunc3(1)");
|
||||
|
||||
exec("swigtest.quit", -1);
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue