From 21edd6299700dfdd44a82a4bf2b1c0fc84df0157 Mon Sep 17 00:00:00 2001 From: Siddhartha Gairola Date: Wed, 14 Jun 2017 22:35:16 +0530 Subject: [PATCH] Adding new tests for mxIsNumeric Change-Id: I8104ff4850909ca31463445a4e0ed7fb3de7316f --- .../mexlib/tests/unit_tests/mxIsNumeric.dia.ref | 44 +++++++++++++++ .../mexlib/tests/unit_tests/mxIsNumeric.tst | 57 ++++++++++++++++++++ 2 files changed, 101 insertions(+) create mode 100644 scilab/modules/mexlib/tests/unit_tests/mxIsNumeric.dia.ref create mode 100644 scilab/modules/mexlib/tests/unit_tests/mxIsNumeric.tst diff --git a/scilab/modules/mexlib/tests/unit_tests/mxIsNumeric.dia.ref b/scilab/modules/mexlib/tests/unit_tests/mxIsNumeric.dia.ref new file mode 100644 index 0000000..0ebf4c2 --- /dev/null +++ b/scilab/modules/mexlib/tests/unit_tests/mxIsNumeric.dia.ref @@ -0,0 +1,44 @@ +// ============================================================================ +// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +// Copyright (C) Gsoc 2017 - Siddhartha Gairola +// +// This file is distributed under the same license as the Scilab package. +// ============================================================================ + +// <-- CLI SHELL MODE --> +// ============================================================================ +// Unitary tests for mxIsNumeric mex function +// ============================================================================ +cd(TMPDIR); +ilib_verbose(0); +mputl(["#include ""mex.h"""; +"void mexFunction(int nlhs, mxArray *plhs[], int nrhs, mxArray *prhs[])"; +"{"; +" bool isNumeric = mxIsNumeric(prhs[0]);"; +" mxArray* pOut = mxCreateLogicalScalar(isNumeric);"; +" plhs[0] = pOut;"; +"}"],"mexisNumeric.c"); +ilib_mex_build("libmextest",["isNumeric","mexisNumeric","cmex"], "mexisNumeric.c",[]); +exec("loader.sce"); +res = isNumeric(1); +assert_checktrue(res); +res_int8 = isNumeric(int8(1)); +assert_checktrue(res_int8); +res_int16 = isNumeric(int16(1)); +assert_checktrue(res_int16); +res_int32 = isNumeric(int32(1)); +assert_checktrue(res_int32); +res_int64 = isNumeric(int64(1)); +assert_checktrue(res_int64); +res_uint8 = isNumeric(uint8(1)); +assert_checktrue(res_uint8); +res_uint16 = isNumeric(uint16(1)); +assert_checktrue(res_uint16); +res_uint32 = isNumeric(uint32(1)); +assert_checktrue(res_uint32); +res_uint64 = isNumeric(uint64(1)); +assert_checktrue(res_uint64); +res_double = isNumeric(2.0); +assert_checktrue(res_double); +res_char = isNumeric("a"); +assert_checkfalse(res_char); diff --git a/scilab/modules/mexlib/tests/unit_tests/mxIsNumeric.tst b/scilab/modules/mexlib/tests/unit_tests/mxIsNumeric.tst new file mode 100644 index 0000000..7c0147c --- /dev/null +++ b/scilab/modules/mexlib/tests/unit_tests/mxIsNumeric.tst @@ -0,0 +1,57 @@ +// ============================================================================ +// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab +// Copyright (C) Gsoc 2017 - Siddhartha Gairola +// +// This file is distributed under the same license as the Scilab package. +// ============================================================================ + +// <-- CLI SHELL MODE --> +// ============================================================================ +// Unitary tests for mxIsNumeric mex function +// ============================================================================ + +cd(TMPDIR); +ilib_verbose(0); +mputl(["#include ""mex.h"""; +"void mexFunction(int nlhs, mxArray *plhs[], int nrhs, mxArray *prhs[])"; +"{"; +" bool isNumeric = mxIsNumeric(prhs[0]);"; +" mxArray* pOut = mxCreateLogicalScalar(isNumeric);"; +" plhs[0] = pOut;"; +"}"],"mexisNumeric.c"); + +ilib_mex_build("libmextest",["isNumeric","mexisNumeric","cmex"], "mexisNumeric.c",[]); +exec("loader.sce"); + +res = isNumeric(1); +assert_checktrue(res); + +res_int8 = isNumeric(int8(1)); +assert_checktrue(res_int8); + +res_int16 = isNumeric(int16(1)); +assert_checktrue(res_int16); + +res_int32 = isNumeric(int32(1)); +assert_checktrue(res_int32); + +res_int64 = isNumeric(int64(1)); +assert_checktrue(res_int64); + +res_uint8 = isNumeric(uint8(1)); +assert_checktrue(res_uint8); + +res_uint16 = isNumeric(uint16(1)); +assert_checktrue(res_uint16); + +res_uint32 = isNumeric(uint32(1)); +assert_checktrue(res_uint32); + +res_uint64 = isNumeric(uint64(1)); +assert_checktrue(res_uint64); + +res_double = isNumeric(2.0); +assert_checktrue(res_double); + +res_char = isNumeric("a"); +assert_checkfalse(res_char); -- 1.7.9.5