Scilab - pass tests on 5.5.2, 6.0.2 and 6.1.0
This commit is contained in:
parent
f93f8ad1d5
commit
62d3bc04ff
5 changed files with 57 additions and 19 deletions
|
|
@ -21,10 +21,10 @@ checkequal(PubBase_virtualMethod(pubBase), "PublicBase", "PubBase_virtualMethod(
|
|||
class = PubBase_instanceMethod(pubBase, klass);
|
||||
checkequal(Klass_getName(class), "allprotected_klass", "Klass_getName(PubBase_instanceMethod(pubBase, klass))");
|
||||
|
||||
class = PubBase_instanceOverload(pubBase, klass);
|
||||
class = PubBase_instanceOverloaded(pubBase, klass);
|
||||
checkequal(Klass_getName(class), "allprotected_klass", "Klass_getName(PubBase_instanceOverloaded(pubBase, klass))");
|
||||
|
||||
class = PubBase_instanceOverload(pubBase, klass, "allprotected_klass2");
|
||||
class = PubBase_instanceOverloaded(pubBase, klass, "allprotected_klass2");
|
||||
checkequal(Klass_getName(class), "allprotected_klass2", "Klass_getName(PubBase_instanceOverloaded(pubBase, klass, ""allprotected_klass2""))");
|
||||
|
||||
class = PubBase_staticMethod(klass);
|
||||
|
|
@ -40,12 +40,22 @@ checkequal(Klass_getName(class), "allprotected_klass3", "Klass_getName(PubBase_s
|
|||
checkequal(PubBase_EnumVal1_get(), 0, "PubBase_EnumVal1_get()");
|
||||
checkequal(PubBase_EnumVal2_get(), 1, "(PubBase_EnumVal2_get()");
|
||||
|
||||
v=getversion("scilab");
|
||||
if v(1) < 6 then
|
||||
PubBase_instanceMemb_set(pubBase, 12);
|
||||
checkequal(PubBase_instanceMemb_get(pubBase), 12, "PubBase_instanceMemb_get(pubBase)");
|
||||
else
|
||||
PubBase_instanceMemberVariable_set(pubBase, 12);
|
||||
checkequal(PubBase_instanceMemberVariable_get(pubBase), 12, "PubBase_instanceMemberVariable_get(pubBase)");
|
||||
end
|
||||
|
||||
PubBase_instanceMemb_set(pubBase, 12);
|
||||
checkequal(PubBase_instanceMemb_get(pubBase), 12, "PubBase_instanceMemb_get(pubBase)");
|
||||
|
||||
checkequal(PubBase_staticConstM_get(), 20, "PubBase_staticConstM_get()");
|
||||
checkequal(PubBase_staticMember_get(), 10, "PubBase_staticMember_get()")
|
||||
if v(1) < 6 then
|
||||
checkequal(PubBase_staticConstM_get(), 20, "PubBase_staticConstMemberVariable_get()");
|
||||
checkequal(PubBase_staticMember_get(), 10, "PubBase_staticMemberVariable_get()")
|
||||
else
|
||||
checkequal(PubBase_staticConstMemberVariable_get(), 20, "PubBase_staticConstMemberVariable_get()");
|
||||
checkequal(PubBase_staticMemberVariable_get(), 10, "PubBase_staticMemberVariable_get()")
|
||||
end
|
||||
|
||||
PubBase_stringMember_set(pubBase, "dummy");
|
||||
checkequal(PubBase_stringMember_get(pubBase), "dummy", "PubBase_stringMember_get()");
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ checkException('Test_throw_domain_error(t)', 20009, 'ValueError: oops');
|
|||
|
||||
checkException('Test_throw_exception(t)', 20010, 'SystemError: std::exception');
|
||||
|
||||
checkException('Test_throw_invalid_argum(t)', 20009, 'ValueError: oops');
|
||||
checkException('Test_throw_invalid_argument(t)', 20009, 'ValueError: oops');
|
||||
|
||||
checkException('Test_throw_length_error(t)', 20004, 'IndexError: oops');
|
||||
|
||||
|
|
@ -22,7 +22,7 @@ checkException('Test_throw_logic_error(t)', 20003, 'RuntimeError: oops');
|
|||
|
||||
checkException('Test_throw_out_of_range(t)', 20004, 'IndexError: oops');
|
||||
|
||||
checkException('Test_throw_overflow_erro(t)', 20007, 'OverflowError: oops');
|
||||
checkException('Test_throw_overflow_error(t)', 20007, 'OverflowError: oops');
|
||||
|
||||
checkException('Test_throw_range_error(t)', 20007, 'OverflowError: oops');
|
||||
|
||||
|
|
|
|||
|
|
@ -42,8 +42,12 @@ checkequal(Structure_StaticStr2_get(), "static member string 2", "Structure_Stat
|
|||
Structure_StaticStr2_set(s);
|
||||
checkequal(Structure_StaticStr2_get(), s, "Structure_StaticStr2_get()");
|
||||
|
||||
checkequal(Structure_ConstStati_get(), "const static member string", "Structure_ConstStaticStr_get()");
|
||||
|
||||
v = getversion("scilab");
|
||||
if v(1) < 6 then
|
||||
checkequal(Structure_ConstStati_get(), "const static member string", "Structure_ConstStati_get()");
|
||||
else
|
||||
checkequal(Structure_ConstStaticStr_get(), "const static member string", "Structure_ConstStaticStr_get()");
|
||||
end
|
||||
|
||||
checkequal(stdstring_empty(), "", "stdstring_empty()");
|
||||
checkequal(c_empty(), "", "c_empty()");
|
||||
|
|
|
|||
|
|
@ -1,29 +1,46 @@
|
|||
exec("swigtest.start", -1);
|
||||
|
||||
v = getversion("scilab");
|
||||
|
||||
// Test truncating variables, constants, functions identifier names
|
||||
// Test truncating variables, constants, functions identifier names in Scilab 5
|
||||
// not truncated
|
||||
gvar_identifier_name_set(-101);
|
||||
checkequal(gvar_identifier_name_get(), -101, "gvar_identifier_name_get()");
|
||||
checkequal(CONS_IDENTIFIER_NAME_get(), -11, "CONS_IDENTIFIER_NAME_get()");
|
||||
checkequal(function_identifier_name(), -21, "function_identifier_name()");
|
||||
|
||||
// truncated
|
||||
// truncated in Scilab 5
|
||||
if v(1) < 6 then
|
||||
too_long_gvar_identi_set(101);
|
||||
checkequal(too_long_gvar_identi_get(), 101, "too_long_variable_id_get()");
|
||||
checkequal(TOO_LONG_CONST_IDENT_get(), 11, "TOO_LONG_CONST_IDENT_get()");
|
||||
checkequal(too_long_function_identi(), 21, "too_long_function_identi()");
|
||||
checkequal(TOO_LONG_CONST_IDENT_get(), 11, "TOO_LONG_CONST_IDENTIFIER_NAME_1_get");
|
||||
checkequal(too_long_function_identi(), 21, "too_long_function_identifier_name_1()");
|
||||
else
|
||||
too_long_gvar_identifier_name_1_set(101);
|
||||
checkequal(too_long_gvar_identifier_name_1_get(), 101, "too_long_variable_id_get()");
|
||||
checkequal(TOO_LONG_CONST_IDENTIFIER_NAME_1_get(), 11, "TOO_LONG_CONST_IDENTIFIER_NAME_1_get");
|
||||
checkequal(too_long_function_identifier_name_1(), 21, "too_long_function_identifier_name_1()");
|
||||
end
|
||||
|
||||
// Test truncating when %scilabconst mode is activated
|
||||
checkequal(SC_CONST_IDENTIFIER_NAME, int32(-12), "SC_TOO_LONG_IDENTIF");
|
||||
checkequal(SC_TOO_LONG_CONST_IDENTI, int32(14), "SC_TOO_LONG_IDENTIF");
|
||||
checkequal(SC_CONST_IDENTIFIER_NAME, int32(-12), "SC_CONST_IDENTIFIER_NAME");
|
||||
if v(1) < 6 then
|
||||
checkequal(SC_TOO_LONG_CONST_IDENTI, int32(14), "SC_TOO_LONG_CONST_IDENTIFIER_NAME_2");
|
||||
else
|
||||
checkequal(SC_TOO_LONG_CONST_IDENTIFIER_NAME_2, int32(14), "SC_TOO_LONG_CONST_IDENTIFIER_NAME_2");
|
||||
end
|
||||
|
||||
// Test truncating in the case of struct
|
||||
st = new_st();
|
||||
st_m_identifier_name_set(st, 15);
|
||||
checkequal(st_m_identifier_name_get(st), 15, "st_m_identifier_name_get(st)");
|
||||
if v(1) < 6 then
|
||||
st_too_long_member_i_set(st, 25);
|
||||
checkequal(st_too_long_member_i_get(st), 25, "st_too_long_member_i_get(st)");
|
||||
checkequal(st_too_long_member_i_get(st), 25, "st_too_long_member_identifier_name_get(st)");
|
||||
else
|
||||
st_too_long_member_identifier_name_set(st, 25);
|
||||
checkequal(st_too_long_member_identifier_name_get(st), 25, "st_too_long_member_identifier_name_get(st)");
|
||||
end
|
||||
delete_st(st);
|
||||
|
||||
exec("swigtest.quit", -1);
|
||||
|
|
|
|||
|
|
@ -2,6 +2,8 @@ lines(0);
|
|||
warning('off');
|
||||
ilib_verbose(0);
|
||||
|
||||
ver = getversion('scilab');
|
||||
|
||||
// Get test name (used in swigtest.quit file)
|
||||
[units, typ, names] = file(1);
|
||||
swigtestname = strsubst(fileparts(names, "fname"), "_runme", "");
|
||||
|
|
@ -23,7 +25,12 @@ end
|
|||
|
||||
// Module initialization
|
||||
try
|
||||
moduleInit = sprintf("%s_Init()", swigtestname);
|
||||
if ver(1) < 6 then
|
||||
entry = stripblanks(part(swigtestname, 1:24-5));
|
||||
else
|
||||
entry = swigtestname;
|
||||
end
|
||||
moduleInit = sprintf("%s_Init()", entry);
|
||||
execstr(moduleInit);
|
||||
catch
|
||||
mfprintf(0, "*** MODULE INIT FAILED ***\n");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue