scilab: new test scilab_enums (enums mapped to variable with scilabconst(1))
This commit is contained in:
parent
1222a28af6
commit
423192a9f0
3 changed files with 69 additions and 0 deletions
|
|
@ -10,8 +10,12 @@ srcdir = $(abspath @srcdir@)
|
|||
top_srcdir = $(abspath @top_srcdir@)
|
||||
top_builddir = $(abspath @top_builddir@)
|
||||
|
||||
C_TEST_CASES += \
|
||||
scilab_enums
|
||||
|
||||
CPP_STD_TEST_CASES += \
|
||||
primitive_types \
|
||||
inout \
|
||||
|
||||
TEST_DIR = $*.dir
|
||||
RUNME_SCRIPT = $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX)
|
||||
|
|
|
|||
27
Examples/test-suite/scilab/scilab_enums_runme.sci
Normal file
27
Examples/test-suite/scilab/scilab_enums_runme.sci
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
exec("swigtest.start", -1);
|
||||
|
||||
function checkEnum(enum_val, expected_enum_val)
|
||||
if typeof(enum_val) <> "constant" then swigtesterror(); end
|
||||
if enum_val <> expected_enum_val then swigtesterror(); end
|
||||
endfunction
|
||||
|
||||
checkEnum(ENUM_1, 0);
|
||||
checkEnum(ENUM_2, 1);
|
||||
|
||||
checkEnum(ENUM_EXPLICIT_1_1, 5);
|
||||
checkEnum(ENUM_EXPLICIT_1_2, 6);
|
||||
|
||||
checkEnum(ENUM_EXPLICIT_2_1, 0);
|
||||
checkEnum(ENUM_EXPLICIT_2_2, 10);
|
||||
|
||||
checkEnum(ENUM_EXPLICIT_3_1, 2);
|
||||
checkEnum(ENUM_EXPLICIT_3_2, 5);
|
||||
checkEnum(ENUM_EXPLICIT_3_3, 8);
|
||||
|
||||
checkEnum(TYPEDEF_ENUM_1_1, 21);
|
||||
checkEnum(TYPEDEF_ENUM_1_2, 22);
|
||||
|
||||
checkEnum(TYPEDEF_ENUM_2_1, 31);
|
||||
checkEnum(TYPEDEF_ENUM_2_2, 32);
|
||||
|
||||
exec("swigtest.quit", -1);
|
||||
38
Examples/test-suite/scilab_enums.i
Normal file
38
Examples/test-suite/scilab_enums.i
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
%module scilab_enums
|
||||
|
||||
%scilabconst(1);
|
||||
|
||||
%inline %{
|
||||
|
||||
enum ENUM {
|
||||
ENUM_1,
|
||||
ENUM_2
|
||||
};
|
||||
|
||||
enum ENUM_EXPLICIT_1 {
|
||||
ENUM_EXPLICIT_1_1 = 5,
|
||||
ENUM_EXPLICIT_1_2
|
||||
};
|
||||
|
||||
enum ENUM_EXPLICIT_2 {
|
||||
ENUM_EXPLICIT_2_1,
|
||||
ENUM_EXPLICIT_2_2 = 10
|
||||
};
|
||||
|
||||
enum ENUM_EXPLICIT_3 {
|
||||
ENUM_EXPLICIT_3_1 = 2,
|
||||
ENUM_EXPLICIT_3_2 = 5,
|
||||
ENUM_EXPLICIT_3_3 = 8
|
||||
};
|
||||
|
||||
typedef enum {
|
||||
TYPEDEF_ENUM_1_1 = 21,
|
||||
TYPEDEF_ENUM_1_2 = 22
|
||||
} TYPEDEF_ENUM_1;
|
||||
|
||||
typedef enum TYPEDEF_ENUM_2 {
|
||||
TYPEDEF_ENUM_2_1 = 31,
|
||||
TYPEDEF_ENUM_2_2 = 32
|
||||
} TYPEDEF_ENUM_2;
|
||||
|
||||
%}
|
||||
Loading…
Add table
Add a link
Reference in a new issue