From 2854ceef44e758f8cc85f4e0e7822e7bd386d1fc Mon Sep 17 00:00:00 2001 From: Joseph Wang Date: Mon, 12 Jan 2009 07:41:38 +0000 Subject: Add regression tests for R git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11057 626c5289-ae23-0410-ae9c-e8d60b6d4f22 --- Examples/test-suite/li_std_vector.i | 2 ++ Examples/test-suite/r/arrays_dimensionless_runme.R | 20 ++++++++++++++++++++ Examples/test-suite/template_typedef_funcptr.i | 5 +++++ Examples/test-suite/types_directive.i | 8 ++++++++ 4 files changed, 35 insertions(+) create mode 100644 Examples/test-suite/r/arrays_dimensionless_runme.R diff --git a/Examples/test-suite/li_std_vector.i b/Examples/test-suite/li_std_vector.i index 587ea2217..c6e2ea9ad 100644 --- a/Examples/test-suite/li_std_vector.i +++ b/Examples/test-suite/li_std_vector.i @@ -85,8 +85,10 @@ SWIG_STD_VECTOR_SPECIALIZE(SWIGTYPE_p_int, const int *) %template(StructureConstPtrVector) std::vector; #endif +#if !defined(SWIGR) %template(IntPtrVector) std::vector; %template(IntConstPtrVector) std::vector; +#endif %template(StructVector) std::vector; %template(StructPtrVector) std::vector; %template(StructConstPtrVector) std::vector; diff --git a/Examples/test-suite/r/arrays_dimensionless_runme.R b/Examples/test-suite/r/arrays_dimensionless_runme.R new file mode 100644 index 000000000..9b97de2d8 --- /dev/null +++ b/Examples/test-suite/r/arrays_dimensionless_runme.R @@ -0,0 +1,20 @@ +source("unittest.R") +dyn.load(paste("arrays_dimensionless", .Platform$dynlib.ext, sep="")) +source("arrays_dimensionless.R") +cacheMetaData(1) + +unittest(arr_short(1:4, 3), 6) +unittest(arr_ushort(1:4, 3), 6) +unittest(arr_int(1:4, 3), 6) +unittest(arr_uint(1:4, 3), 6) +unittest(arr_long(1:4, 3), 6) +unittest(arr_ulong(1:4, 3), 6) +unittest(arr_ll(1:4, 3), 6) +unittest(arr_ull(1:4, 3), 6) +unittest(arr_float(as.numeric(1:4), 3), 6) +unittest(arr_double(as.numeric(1:4), 3), 6) + +q(save="no") + + + diff --git a/Examples/test-suite/template_typedef_funcptr.i b/Examples/test-suite/template_typedef_funcptr.i index 0175c7516..cec43e7c8 100644 --- a/Examples/test-suite/template_typedef_funcptr.i +++ b/Examples/test-suite/template_typedef_funcptr.i @@ -2,6 +2,10 @@ //Bug #1832613 +#if !defined(SWIGR) +// R Swig fails on this test. Because it tries to return a nil SEXP in +// an error + %include %inline %{ @@ -46,3 +50,4 @@ typedef MCContractPtr* ContractPtrPtr; // Plain pointers were also causing problems... %template(MCContractFactory2) ContractFactory; +#endif diff --git a/Examples/test-suite/types_directive.i b/Examples/test-suite/types_directive.i index 44312263d..26cb6aeeb 100644 --- a/Examples/test-suite/types_directive.i +++ b/Examples/test-suite/types_directive.i @@ -1,5 +1,13 @@ %module types_directive +#if defined(SWIGR) +// Avoid conflict with Date class in R +#define Date DateSwig +%inline %{ +#define Date DateSwig +%} +#endif + %ignore Time2::operator Date *; %inline %{ -- cgit v1.2.1