*Bug #13655 fixed - acos([2 %nan]) and asin([2 %nan]) returned wrong results (0 inste...
[scilab.git] / scilab / modules / elementary_functions / tests / nonreg_tests / bug_13655.tst
1 // ============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2015 - Scilab Enterprises - Adeline CARNIS
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // ============================================================================
7
8 // <-- Non-regression test for bug 13655 -->
9 //
10 // <-- Bugzilla URL -->
11 // http://bugzilla.scilab.org/show_bug.cgi?id=13655
12 //
13 // <-- Short Description -->
14 // acos and asin returned wrong results when input argument was a matrix of size
15 // greater than 1 and containing at least one NaN value.
16
17 assert_checkequal(acos(%nan), %nan);
18 assert_checkalmostequal(acos(2), 1.3169579*%i, [], 1.e-10);
19 expected = [1.3169579*%i %nan];
20 assert_checkalmostequal(acos([2, %nan]), expected, [], 1.e-10);
21 assert_checkalmostequal(acos([2; %nan]), expected.', [], 1.e-10);
22 assert_checkalmostequal(acos([0.5 %nan]), [1.0471976 %nan], [], 1.e-7);
23
24 assert_checkequal(asin(%nan), %nan);
25 assert_checkalmostequal(asin(2), %pi/2 - 1.3169579*%i, [], 1.e-10);
26 expected = [%pi/2 - 1.3169579*%i, %nan];
27 assert_checkalmostequal(asin([2 %nan]), expected, [], 1.e-10);
28 assert_checkalmostequal(asin([2 %nan]'), expected.', [], 1.e-10);