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_srcdir = $(abspath @top_srcdir@)
|
||||||
top_builddir = $(abspath @top_builddir@)
|
top_builddir = $(abspath @top_builddir@)
|
||||||
|
|
||||||
|
C_TEST_CASES += \
|
||||||
|
scilab_enums
|
||||||
|
|
||||||
CPP_STD_TEST_CASES += \
|
CPP_STD_TEST_CASES += \
|
||||||
primitive_types \
|
primitive_types \
|
||||||
|
inout \
|
||||||
|
|
||||||
TEST_DIR = $*.dir
|
TEST_DIR = $*.dir
|
||||||
RUNME_SCRIPT = $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX)
|
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