summaryrefslogtreecommitdiff
path: root/Lib/test/decimaltestdata/class.decTest
blob: fa5bc3a12f0291916cf4ff479a7777aae072c382 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
------------------------------------------------------------------------
-- class.decTest -- Class operations                                  --
-- Copyright (c) IBM Corporation, 1981, 2008.  All rights reserved.   --
------------------------------------------------------------------------
-- Please see the document "General Decimal Arithmetic Testcases"     --
-- at http://www2.hursley.ibm.com/decimal for the description of      --
-- these testcases.                                                   --
--                                                                    --
-- These testcases are experimental ('beta' versions), and they       --
-- may contain errors.  They are offered on an as-is basis.  In       --
-- particular, achieving the same results as the tests here is not    --
-- a guarantee that an implementation complies with any Standard      --
-- or specification.  The tests are not exhaustive.                   --
--                                                                    --
-- Please send comments, suggestions, and corrections to the author:  --
--   Mike Cowlishaw, IBM Fellow                                       --
--   IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK         --
--   mfc@uk.ibm.com                                                   --
------------------------------------------------------------------------
version: 2.59

-- [New 2006.11.27]

precision:   9
maxExponent: 999
minExponent: -999
extended:    1
clamp:       1
rounding:    half_even

clasx001  class    0                        -> +Zero
clasx002  class    0.00                     -> +Zero
clasx003  class    0E+5                     -> +Zero
clasx004  class    1E-1007                  -> +Subnormal
clasx005  class  0.1E-999                   -> +Subnormal
clasx006  class  0.99999999E-999            -> +Subnormal
clasx007  class  1.00000000E-999            -> +Normal
clasx008  class   1E-999                    -> +Normal
clasx009  class   1E-100                    -> +Normal
clasx010  class   1E-10                     -> +Normal
clasx012  class   1E-1                      -> +Normal
clasx013  class   1                         -> +Normal
clasx014  class   2.50                      -> +Normal
clasx015  class   100.100                   -> +Normal
clasx016  class   1E+30                     -> +Normal
clasx017  class   1E+999                    -> +Normal
clasx018  class   9.99999999E+999           -> +Normal
clasx019  class   Inf                       -> +Infinity

clasx021  class   -0                        -> -Zero
clasx022  class   -0.00                     -> -Zero
clasx023  class   -0E+5                     -> -Zero
clasx024  class   -1E-1007                  -> -Subnormal
clasx025  class  -0.1E-999                  -> -Subnormal
clasx026  class  -0.99999999E-999           -> -Subnormal
clasx027  class  -1.00000000E-999           -> -Normal
clasx028  class  -1E-999                    -> -Normal
clasx029  class  -1E-100                    -> -Normal
clasx030  class  -1E-10                     -> -Normal
clasx032  class  -1E-1                      -> -Normal
clasx033  class  -1                         -> -Normal
clasx034  class  -2.50                      -> -Normal
clasx035  class  -100.100                   -> -Normal
clasx036  class  -1E+30                     -> -Normal
clasx037  class  -1E+999                    -> -Normal
clasx038  class  -9.99999999E+999           -> -Normal
clasx039  class  -Inf                       -> -Infinity

clasx041  class   NaN                       -> NaN
clasx042  class  -NaN                       -> NaN
clasx043  class  +NaN12345                  -> NaN
clasx044  class   sNaN                      -> sNaN
clasx045  class  -sNaN                      -> sNaN
clasx046  class  +sNaN12345                 -> sNaN


-- decimal64 bounds

precision:   16
maxExponent: 384
minExponent: -383
clamp:       1
rounding:    half_even

clasx201  class    0                        -> +Zero
clasx202  class    0.00                     -> +Zero
clasx203  class    0E+5                     -> +Zero
clasx204  class    1E-396                   -> +Subnormal
clasx205  class  0.1E-383                   -> +Subnormal
clasx206  class  0.999999999999999E-383     -> +Subnormal
clasx207  class  1.000000000000000E-383     -> +Normal
clasx208  class   1E-383                    -> +Normal
clasx209  class   1E-100                    -> +Normal
clasx210  class   1E-10                     -> +Normal
clasx212  class   1E-1                      -> +Normal
clasx213  class   1                         -> +Normal
clasx214  class   2.50                      -> +Normal
clasx215  class   100.100                   -> +Normal
clasx216  class   1E+30                     -> +Normal
clasx217  class   1E+384                    -> +Normal
clasx218  class   9.999999999999999E+384    -> +Normal
clasx219  class   Inf                       -> +Infinity

clasx221  class   -0                        -> -Zero
clasx222  class   -0.00                     -> -Zero
clasx223  class   -0E+5                     -> -Zero
clasx224  class   -1E-396                   -> -Subnormal
clasx225  class  -0.1E-383                  -> -Subnormal
clasx226  class  -0.999999999999999E-383    -> -Subnormal
clasx227  class  -1.000000000000000E-383    -> -Normal
clasx228  class  -1E-383                    -> -Normal
clasx229  class  -1E-100                    -> -Normal
clasx230  class  -1E-10                     -> -Normal
clasx232  class  -1E-1                      -> -Normal
clasx233  class  -1                         -> -Normal
clasx234  class  -2.50                      -> -Normal
clasx235  class  -100.100                   -> -Normal
clasx236  class  -1E+30                     -> -Normal
clasx237  class  -1E+384                    -> -Normal
clasx238  class  -9.999999999999999E+384    -> -Normal
clasx239  class  -Inf                       -> -Infinity

clasx241  class   NaN                       -> NaN
clasx242  class  -NaN                       -> NaN
clasx243  class  +NaN12345                  -> NaN
clasx244  class   sNaN                      -> sNaN
clasx245  class  -sNaN                      -> sNaN
clasx246  class  +sNaN12345                 -> sNaN