diff options
Diffstat (limited to 'src/auxiliaryFunctions/rand/testRand.c')
-rw-r--r-- | src/auxiliaryFunctions/rand/testRand.c | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/src/auxiliaryFunctions/rand/testRand.c b/src/auxiliaryFunctions/rand/testRand.c new file mode 100644 index 00000000..7db8e656 --- /dev/null +++ b/src/auxiliaryFunctions/rand/testRand.c @@ -0,0 +1,82 @@ +/* + * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab + * Copyright (C) 2007-2008 - INRIA - Bruno JOFRET + * + * This file must be used under the terms of the CeCILL. + * This source file is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at + * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt + * + */ + +#include "testRand.h" + +int srandsTest() { + + float nan = 0. / 0.; + float result = nan; + + printf(">> Float \n"); + result = srands(); + + assert(&result != &nan); + return 0; +} + +int drandsTest() { + + double nan = 0. / 0.; + double result = nan; + + printf(">> Double\n"); + result = drands(); + + assert(&result != &nan); + + return 0; +} + +int crandsTest() { + + floatComplex nan_nan = FloatComplex(0./0., 0./0.); + floatComplex result = nan_nan; + + printf(">> Float Complex\n"); + result = crands(); + + assert(&result != &nan_nan); + + return 0; +} + +int zrandsTest() { + doubleComplex nan_nan = DoubleComplex(0./0., 0./0.); + doubleComplex result = nan_nan; + + printf(">> Double Complex\n"); + result = zrands(); + + assert(&result != &nan_nan); + + return 0; +} + + +int testRand() { + int srandsTestStatus, drandsTestStatus = 0; + int crandsTestStatus, zrandsTestStatus = 0; + printf("\n>>>> Rand Tests\n"); + srandsTestStatus = srandsTest(); + drandsTestStatus = drandsTest(); + crandsTestStatus = crandsTest(); + zrandsTestStatus = zrandsTest(); + + return (srandsTestStatus + drandsTestStatus + + crandsTestStatus + zrandsTestStatus); +} + +int main(void) { + assert(testRand() == 0); + return 0; +} |