[output_stream] fix tests
[scilab.git] / scilab / modules / output_stream / tests / nonreg_tests / bug_1371.tst
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2010 - INRIA - Serge Steer
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // =============================================================================
7
8 // <-- CLI SHELL MODE -->
9
10 // <-- Non-regression test for bug 1371 -->
11 //
12 // <-- Bugzilla URL -->
13 // http://bugzilla.scilab.org/show_bug.cgi?id=1371
14 //
15 // <-- Short Description -->
16 // Incorrect output representation of floating numbers with exponent larger than 100 or smaller than -100.
17 format(10,"e")
18 if string(1.78945d88)<>"1.789D+88"  then pause,end
19 if string(1.2345d123)<>"1.23D+123" then pause,end
20 if string(-1.78945d88)<>"-1.789D+88"  then pause,end
21 if string(-1.2345d123)<>"-1.23D+123" then pause,end
22
23
24 if string(1.78945d-88)<>"1.789D-88"  then pause,end
25 if string(1.2345d-123)<>"1.23D-123" then pause,end
26 if string(-1.78945d-88)<>"-1.789D-88"  then pause,end
27 if string(-1.2345d-123)<>"-1.23D-123" then pause,end
28
29 format(10,"v")
30 if string(1.78945d88+%i)<>"1.789D+88+%i"  then pause,end
31 if string(1.2345d123+%i)<>"1.23D+123+%i" then pause,end
32 if string(-1.78945d88-%i)<>"-1.789D+88-%i"  then pause,end
33 if string(-1.2345d123+3.33*%i)<>"-1.23D+123+%i*3.33" then pause,end
34 if string(1.2345d-123*%i)<>"%i*1.23D-123" then pause,end
35
36
37
38
39
40 format(15,"e")
41 if string(1.7894567d88)<>"1.78945670D+88"  then pause,end
42
43 if string(1.2345678d123)<>"1.2345678D+123" then pause,end
44 if string(-1.7894567d88)<>"-1.78945670D+88"  then pause,end
45
46 if string(-1.2345678d123)<>"-1.2345678D+123" then pause,end
47
48 if string(1.7894567d-88)<>"1.78945670D-88"  then pause,end
49
50 if string(1.2345678d-123)<>"1.2345678D-123" then pause,end
51 if string(-1.7894567d-88)<>"-1.78945670D-88"  then pause,end
52
53 if string(-1.2345678d-123)<>"-1.2345678D-123" then pause,end
54
55
56
57 format(10,"v")
58
59 A=[1.7894567d120  1.2345678d123
60 4.2345678d123 -7.7894567d120];
61 if or(string(A)<>["1.79D+120","1.23D+123";"4.23D+123","-7.79D+120"]) then pause,end
62
63
64 A=[1.7894567d120+%i  1.2345678*%i
65 4.2345678d123 -7.7894567d120-2.45*%i];
66 if or(string(A)<> ["1.79D+120+%i","%i*1.2345678";"4.23D+123","-7.79D+120-%i*2.45"]) then pause,end
67
68
69 P=1.2345678d-123-1.7894567d88*%s;
70 if or(string(P)<>"1.23D-123 -1.789D+88s" ) then pause,end