67 lines
2.3 KiB
Scilab
67 lines
2.3 KiB
Scilab
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);
|
|
|