First public contribution.
1 // Copyright (c) 1995-2009 Nokia Corporation and/or its subsidiary(-ies).
2 // All rights reserved.
3 // This component and the accompanying materials are made available
4 // under the terms of the License "Eclipse Public License v1.0"
5 // which accompanies this distribution, and is available
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
14 // e32test\math\t_float1.cpp
15 // File for T_FLOAT.CPP containing data for test1
16 // T_FLOAT.CPP split into header files because there seems to be too much static data for GCC
23 GLDEF_D RtoB_TEST testd[]=
25 // GENERAL format limited to 12 significant digits
26 // No triads, no three-digit exponents and no extra space for sign
27 RtoB_TEST(1.23456789012501,generalLimit,32,15,'.',',',3,_S("1.23456789013")),
28 RtoB_TEST(1.2345678901249,generalLimit,32,15,'.',',',3,_S("1.23456789012")),
29 RtoB_TEST(1.99999999996,generalLimit,32,15,'.',',',3,_S("1.99999999996")),
30 RtoB_TEST(1.999999999996,generalLimit,32,15,'.',',',3,_S("2")),
31 RtoB_TEST(1.9999999999996,generalLimit,32,15,'.',',',3,_S("2")),
32 RtoB_TEST(1.99999999999996,generalLimit,32,15,'.',',',3,_S("2")),
33 RtoB_TEST(1.99999999994,generalLimit,32,15,'.',',',3,_S("1.99999999994")),
34 RtoB_TEST(1.999999999994,generalLimit,32,15,'.',',',3,_S("1.99999999999")),
35 RtoB_TEST(1.9999999999994,generalLimit,32,15,'.',',',3,_S("2")),
36 RtoB_TEST(1.99999999999994,generalLimit,32,15,'.',',',3,_S("2")),
37 RtoB_TEST(1.99999999996E2,generalLimit,32,15,'.',',',3,_S("199.999999996")),
38 RtoB_TEST(1.999999999996E-2,generalLimit,32,15,'.',',',3,_S("0.02")),
39 RtoB_TEST(1.9999999999996E2,generalLimit,32,15,'.',',',3,_S("200")),
40 RtoB_TEST(1.99999999999996E-2,generalLimit,32,15,'.',',',3,_S("0.02")),
41 RtoB_TEST(1.99999999994E2,generalLimit,32,15,'.',',',3,_S("199.999999994")),
42 RtoB_TEST(1.999999999994E-2,generalLimit,32,15,'.',',',3,_S("0.0199999999999")),
43 RtoB_TEST(1.9999999999994E99,generalLimit,32,15,'.',',',3,_S("2E+99")),
44 RtoB_TEST(1.99999999999994E-99,generalLimit,32,15,'.',',',3,_S("2E-99")),
45 RtoB_TEST(0.0,generalLimit,32,15,'.',',',3,_S("0")),
47 RtoB_TEST(1.2E+99,generalLimit,8,15,'.','0',0,_S("1.2E+99")),
48 RtoB_TEST(1.2E-99,generalLimit,8,15,'.','0',0,_S("1.2E-99")),
49 RtoB_TEST(-1.2E+99,generalLimit,8,15,'.','0',0,_S("-1.2E+99")),
50 RtoB_TEST(-1.2E-99,generalLimit,8,15,'.','0',0,_S("-1.2E-99")),
52 RtoB_TEST(1.2E+99,generalLimit,6,15,'.','0',0,_S("1E+99")),
53 RtoB_TEST(1.2E-99,generalLimit,6,15,'.','0',0,_S("1E-99")),
54 RtoB_TEST(-1.2E+99,generalLimit,7,15,'.','0',0,_S("-1E+99")),
55 RtoB_TEST(-1.2E-99,generalLimit,7,15,'.','0',0,_S("-1E-99")),
57 RtoB_TEST(1.2E+99,generalLimit,5,15,'.','0',0,_S("1E+99")),
58 RtoB_TEST(1.2E-99,generalLimit,5,15,'.','0',0,_S("1E-99")),
59 RtoB_TEST(-1.2E+99,generalLimit,6,15,'.','0',0,_S("-1E+99")),
60 RtoB_TEST(-1.2E-99,generalLimit,6,15,'.','0',0,_S("-1E-99")),
62 RtoB_TEST(1E+99,generalLimit,8,15,'.','0',0,_S("1E+99")),
63 RtoB_TEST(1E-99,generalLimit,8,15,'.','0',0,_S("1E-99")),
64 RtoB_TEST(-1E+99,generalLimit,9,15,'.','0',0,_S("-1E+99")),
65 RtoB_TEST(-1E-99,generalLimit,9,15,'.','0',0,_S("-1E-99")),
67 RtoB_TEST(1E+99,generalLimit,7,15,'.','0',0,_S("1E+99")),
68 RtoB_TEST(1E-99,generalLimit,7,15,'.','0',0,_S("1E-99")),
69 RtoB_TEST(-1E+99,generalLimit,8,15,'.','0',0,_S("-1E+99")),
70 RtoB_TEST(-1E-99,generalLimit,8,15,'.','0',0,_S("-1E-99")),
72 RtoB_TEST(1E+99,generalLimit,6,15,'.','0',0,_S("1E+99")),
73 RtoB_TEST(1E-99,generalLimit,6,15,'.','0',0,_S("1E-99")),
74 RtoB_TEST(-1E+99,generalLimit,7,15,'.','0',0,_S("-1E+99")),
75 RtoB_TEST(-1E-99,generalLimit,7,15,'.','0',0,_S("-1E-99")),
77 RtoB_TEST(1E+99,generalLimit,5,15,'.','0',0,_S("1E+99")),
78 RtoB_TEST(1E-99,generalLimit,5,15,'.','0',0,_S("1E-99")),
79 RtoB_TEST(-1E+99,generalLimit,6,15,'.','0',0,_S("-1E+99")),
80 RtoB_TEST(-1E-99,generalLimit,6,15,'.','0',0,_S("-1E-99")),
82 RtoB_TEST(0,generalLimit,2,14,'.','0',0,_S("0")),
83 RtoB_TEST(1,generalLimit,2,14,'.','0',0,_S("1")),
84 RtoB_TEST(370,generalLimit,20,14,'.','0',0,_S("370")),
85 RtoB_TEST(-9E98,fixedLimitAndTriads,150,15,'.',',',3,_S("-900,000,000,000,000,000,000,\
86 000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,\
87 000,000,000,000,000,000,000.000000000000000")),
88 RtoB_TEST(9E98,fixedLimitAndTriads,150,15,'.',',',3,_S("900,000,000,000,000,000,000,\
89 000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,\
90 000,000,000,000,000,000,000.000000000000000")),
91 RtoB_TEST(90000000.0,generalLimit,20,3,'.','0',0,_S("90000000")),
92 RtoB_TEST(90000000.0,generalLimit,9,3,'.','0',0,_S("90000000")),
93 RtoB_TEST(90000000.0,generalLimit,7,3,'.','0',0,_S("9E+07")),
94 RtoB_TEST(90000000.0,generalLimit,6,3,'.','0',0,_S("9E+07")),
95 RtoB_TEST(-900,generalLimit,20,3,'.','0',0,_S("-900")),
96 RtoB_TEST(-90000000.0,generalLimit,20,3,'.','0',0,_S("-90000000")),
97 RtoB_TEST(-90000000.0,generalLimit,9,3,'.','0',0,_S("-90000000")),
98 RtoB_TEST(-90000000.0,generalLimit,8,3,'.','0',0,_S("-9E+07")),
99 RtoB_TEST(-90000000.0,generalLimit,6,3,'.','0',0,_S("-9E+07")),
100 RtoB_TEST(900,generalLimit,20,3,'.','0',0,_S("900")),
101 RtoB_TEST(-900,generalLimit,20,3,'.','0',0,_S("-900")),
102 RtoB_TEST(999,generalLimit,3,3,'.','0',0,_S("999")),
103 RtoB_TEST(999.1,generalLimit,3,3,'.','0',0,_S("999")),
104 RtoB_TEST(999.1,generalLimit,4,3,'.','0',0,_S("999")),
105 RtoB_TEST(-999.1,generalLimit,4,3,'.','0',0,_S("-999")),
106 RtoB_TEST(-300,generalLimit,10,3,'.','0',0,_S("-300")),
107 RtoB_TEST(-355555555.0,generalLimit,6,3,'.','0',0,_S("-4E+08")),
108 RtoB_TEST(355555555.0,generalLimit,7,3,'.','0',0,_S("3.6E+08")),
109 RtoB_TEST(355555555.0,generalLimit,6,3,'.','0',0,_S("4E+08")),
110 RtoB_TEST(123456.0,generalLimit,6,4,'.','0',0,_S("123456")),
111 RtoB_TEST(999999.0,generalLimit,6,4,'.','0',0,_S("999999")),
112 RtoB_TEST(12346.0,generalLimit,5,4,'.','0',0,_S("12346")),
113 RtoB_TEST(9999999.0,generalLimit,5,4,'.','0',0,_S("1E+07")),
115 RtoB_TEST(0.02,generalLimit,6,4,'.','0',0,_S("0.02")),
116 RtoB_TEST(0.04,generalLimit,9,0,'.','0',0,_S("0.04")),
117 RtoB_TEST(0.004,generalLimit,9,0,'.','0',0,_S("0.004")),
118 RtoB_TEST(0.0004,generalLimit,9,0,'.','0',0, _S("4E-04")),
119 RtoB_TEST(0.05,generalLimit,9,0,'.','0',0,_S("0.05")),
120 RtoB_TEST(9.999999999964E-2,generalLimit,9,0,'.','0',0,_S("0.1")),
121 RtoB_TEST(0.0000999,generalLimit,7,4,'.','0',0,_S("1E-04")),
124 // test -ve number < 1 with 0 dp
125 RtoB_TEST(-0.01,KRealFormatFixed,7,0,'.','0',0,_S("0")),
126 RtoB_TEST(-0.4999999999,KRealFormatFixed,7,0,'.','0',0,_S("0")),
127 RtoB_TEST(-0.9,KRealFormatFixed,7,0,'.','0',0,_S("-1")),
128 RtoB_TEST(-0.51,KRealFormatFixed,7,0,'.','0',0,_S("-1")),
129 // No Triad separators (because length zero), no space for sign
130 RtoB_TEST(0.0,KRealFormatFixed,7,0,'.','0',0,_S("0")),
131 RtoB_TEST(KNegZeroTReal64,KRealFormatFixed,7,0,'.','0',0,_S("0")),
132 RtoB_TEST(0.0,KRealFormatFixed,7,0,'.','0',0,_S("0")),
133 RtoB_TEST(0.0,KRealFormatFixed,7,2,'.','0',0,_S("0.00")),
134 RtoB_TEST(0.0,KRealFormatFixed,7,3,'.','0',0,_S("0.000")),
135 RtoB_TEST(0.0,KRealFormatFixed,7,4,'.','0',0,_S("0.0000")),
136 RtoB_TEST(3.0,KRealFormatFixed,7,3,'.','0',0,_S("3.000")),
137 RtoB_TEST(12.9999,KRealFormatFixed,6,3,'.','0',0,_S("13.000")),
138 RtoB_TEST(123456.789,KRealFormatFixed,9,2,'.','0',0,_S("123456.79")),
139 RtoB_TEST(123456.0,KRealFormatFixed,9,2,'.','0',0,_S("123456.00")),
140 RtoB_TEST(1234567890123.,KRealFormatFixed,18,1,'.',',',0,_S("1234567890123.0")),
141 RtoB_TEST(123456.789,KRealFormatFixed,9,2,'.',',',0,_S("123456.79")),
142 RtoB_TEST(123456.0,KRealFormatFixed,9,2,'.',',',0,_S("123456.00")),
143 RtoB_TEST(1234567890123.,KRealFormatFixed,18,1,'.','0',0,_S("1234567890123.0")),
144 RtoB_TEST(.0453,KRealFormatFixed,12,4,'.','0',0,_S("0.0453")),
145 RtoB_TEST(.0453,KRealFormatFixed,12,2,'.','0',0,_S("0.05")),
146 RtoB_TEST(.0453,KRealFormatFixed,12,5,'.','0',0,_S("0.04530")),
147 RtoB_TEST(.00000876,KRealFormatFixed,11,9,'.','0',0,_S("0.000008760")),
148 RtoB_TEST(.00000876,KRealFormatFixed,11,8,'.','0',0,_S("0.00000876")),
149 RtoB_TEST(.00000876,KRealFormatFixed,11,7,'.','0',0,_S("0.0000088")),
150 RtoB_TEST(.00000876,KRealFormatFixed,11,6,'.','0',0,_S("0.000009")),
151 RtoB_TEST(.00000876,KRealFormatFixed,11,5,'.','0',0,_S("0.00001")),
152 RtoB_TEST(.123,KRealFormatFixed,5,3,'.','0',0,_S("0.123")),
153 RtoB_TEST(.1235,KRealFormatFixed,5,3,'.','0',0,_S("0.124")),
154 RtoB_TEST(1.0E4,KRealFormatFixed,10,2,'.',',',0,_S("10000.00")),
155 RtoB_TEST(1.0E-4,KRealFormatFixed,10,2,'.',',',0,_S("0.00")),
156 // No triad separators (because flag not set), no space for sign
157 RtoB_TEST(123456.789,fixedNoTriads,9,2,'.','0',3,_S("123456.79")),
158 RtoB_TEST(123456.0,fixedNoTriads,9,2,'.','0',3,_S("123456.00")),
159 RtoB_TEST(1234567890123.,fixedNoTriads,18,1,'.',',',3,_S("1234567890123.0")),
160 RtoB_TEST(123456.789,fixedNoTriads,9,2,'.',',',3,_S("123456.79")),
161 RtoB_TEST(123456.0,fixedNoTriads,9,2,'.',',',3,_S("123456.00")),
162 RtoB_TEST(1234567890123.,fixedNoTriads,18,1,'.','0',3,_S("1234567890123.0")),
163 RtoB_TEST(.00000876,fixedNoTriads,11,9,'.','0',3,_S("0.000008760")),
164 RtoB_TEST(.00000876,fixedNoTriads,11,8,'.','0',3,_S("0.00000876")),
165 RtoB_TEST(.00000876,fixedNoTriads,11,7,'.','0',3,_S("0.0000088")),
166 RtoB_TEST(.00000876,fixedNoTriads,11,6,'.','0',3,_S("0.000009")),
167 RtoB_TEST(.00000876,fixedNoTriads,11,5,'.','0',3,_S("0.00001")),
168 // UK Triad separators, no space for sign
169 RtoB_TEST(0.0,KRealFormatFixed,9,2,'.',',',3,_S("0.00")),
170 RtoB_TEST(.00568,KRealFormatFixed,9,2,'.',',',3,_S("0.01")),
171 RtoB_TEST(12345.0,KRealFormatFixed,9,2,'.',',',3,_S("12,345.00")),
172 RtoB_TEST(12345.669,KRealFormatFixed,9,2,'.',',',3,_S("12,345.67")),
173 RtoB_TEST(100000.0,KRealFormatFixed,10,2,'.',',',3,_S("100,000.00")),
174 RtoB_TEST(99999.999,KRealFormatFixed,10,2,'.',',',3,_S("100,000.00")),
175 RtoB_TEST(1234567890.675,KRealFormatFixed,16,2,'.',',',3,_S("1,234,567,890.68")),
176 RtoB_TEST(1.0E3,KRealFormatFixed,10,2,'.',',',3,_S("1,000.00")),
177 // French Triad separators, no space for sign
178 RtoB_TEST(0.0,KRealFormatFixed,10,2,',',' ',4,_S("0,00")),
179 RtoB_TEST(.00568,KRealFormatFixed,10,2,',',' ',4,_S("0,01")),
180 RtoB_TEST(1.0E3,KRealFormatFixed,10,2,',',' ',4,_S("1000,00")),
181 RtoB_TEST(1234.0,KRealFormatFixed,10,2,',',' ',4,_S("1234,00")),
182 RtoB_TEST(12345.0,KRealFormatFixed,9,2,',',' ',4,_S("12 345,00")),
183 RtoB_TEST(12345.669,KRealFormatFixed,9,2,',',' ',4,_S("12 345,67")),
184 RtoB_TEST(100000.0,KRealFormatFixed,10,2,',',' ',4,_S("100 000,00")),
185 RtoB_TEST(99999.999,KRealFormatFixed,10,2,',',' ',4,_S("100 000,00")),
186 RtoB_TEST(1234567890.675,KRealFormatFixed,16,2,',',' ',4,_S("1 234 567 890,68")),
187 // '.' as triad separator, and ',' as decimal point, no space for sign
188 RtoB_TEST(1234.0,KRealFormatFixed,10,2,',','.',3,_S("1.234,00")),
189 RtoB_TEST(0.0,KRealFormatFixed,10,2,',','.',3,_S("0,00")),
190 RtoB_TEST(.00568,KRealFormatFixed,10,2,',','.',3,_S("0,01")),
191 RtoB_TEST(1.0E3,KRealFormatFixed,10,2,',','.',3,_S("1.000,00")),
192 RtoB_TEST(12345.669,KRealFormatFixed,9,2,',','.',3,_S("12.345,67")),
193 RtoB_TEST(12345.0,KRealFormatFixed,9,2,',','.',4,_S("12.345,00")),
194 RtoB_TEST(100000.0,KRealFormatFixed,10,2,',','.',3,_S("100.000,00")),
195 RtoB_TEST(99999.999,KRealFormatFixed,10,2,',','.',3,_S("100.000,00")),
196 RtoB_TEST(1234567890.675,KRealFormatFixed,16,2,',','.',3,_S("1.234.567.890,68")),
198 // no triads, space for sign
199 RtoB_TEST(0.0,fixedSpaceForSign,2,0,'.','0',0,_S("0")),
200 RtoB_TEST(3.0,fixedSpaceForSign,6,3,'.','0',0,_S("3.000")),
201 RtoB_TEST(-3.0,fixedSpaceForSign,6,3,'.','0',0,_S("-3.000")),
202 RtoB_TEST(12.9999,fixedSpaceForSign,7,3,'.','0',0,_S("13.000")),
203 RtoB_TEST(-12.9999,fixedSpaceForSign,7,3,'.','0',0,_S("-13.000")),
204 RtoB_TEST(123456.789,fixedSpaceForSign,10,2,'.','0',0,_S("123456.79")),
205 RtoB_TEST(-123456.789,fixedSpaceForSign,10,2,'.','0',0,_S("-123456.79")),
206 RtoB_TEST(1234567890123.,fixedSpaceForSign,16,1,'.','0',0,_S("1234567890123.0")),
207 RtoB_TEST(-1234567890123.,fixedSpaceForSign,16,1,'.','0',0,_S("-1234567890123.0")),
208 RtoB_TEST(.0453,fixedSpaceForSign,12,4,'.','0',0,_S("0.0453")),
209 RtoB_TEST(.0453,fixedSpaceForSign,12,2,'.','0',0,_S("0.05")),
210 RtoB_TEST(.0453,fixedSpaceForSign,12,5,'.','0',0,_S("0.04530")),
211 RtoB_TEST(.00000876,fixedSpaceForSign,11,8,'.','0',0,_S("0.00000876")),
212 RtoB_TEST(-.00000876,fixedSpaceForSign,11,8,'.','0',0,_S("-0.00000876")),
213 RtoB_TEST(.00000876,fixedSpaceForSign,9,6,'.','0',0,_S("0.000009")),
214 RtoB_TEST(-.00000876,fixedSpaceForSign,9,6,'.','0',0,_S("-0.000009")),
215 RtoB_TEST(.1235,fixedSpaceForSign,6,3,'.','0',0,_S("0.124")),
216 RtoB_TEST(-.1235,fixedSpaceForSign,6,3,'.','0',0,_S("-0.124")),
217 // UK triads and space for sign
218 RtoB_TEST(0.0,fixedTriadsAndSign,10,2,'.',',',3,_S("0.00")),
219 RtoB_TEST(.00568,fixedTriadsAndSign,10,2,'.',',',3,_S("0.01")),
220 RtoB_TEST(-.00568,fixedTriadsAndSign,10,2,'.',',',3,_S("-0.01")),
221 RtoB_TEST(12345.0,fixedTriadsAndSign,10,2,'.',',',3,_S("12,345.00")),
222 RtoB_TEST(-12345.0,fixedTriadsAndSign,10,2,'.',',',3,_S("-12,345.00")),
223 RtoB_TEST(100000.0,fixedTriadsAndSign,11,2,'.',',',3,_S("100,000.00")),
224 RtoB_TEST(99999.999,fixedTriadsAndSign,11,2,'.',',',3,_S("100,000.00")),
225 RtoB_TEST(-99999.999,fixedTriadsAndSign,11,2,'.',',',3,_S("-100,000.00")),
226 RtoB_TEST(1234567890.675,fixedTriadsAndSign,17,2,'.',',',3,_S("1,234,567,890.68")),
227 RtoB_TEST(-1234567890.675,fixedTriadsAndSign,17,2,'.',',',3,_S("-1,234,567,890.68")),
228 RtoB_TEST(1.0E3,fixedTriadsAndSign,9,2,'.',',',3,_S("1,000.00")),
229 RtoB_TEST(-1.0E3,fixedTriadsAndSign,9,2,'.',',',3,_S("-1,000.00")),
231 RtoB_TEST(1234.9876E-107,KRealFormatFixed,12,6,'.','0',0,_S("0.000000")),
232 RtoB_TEST(1234.9876E-109,KRealFormatFixed,12,6,'.','0',0,_S("0.000000")),
233 RtoB_TEST(1234.9876E-110,KRealFormatFixed,12,6,'.','0',0,_S("0.000000")),
234 RtoB_TEST(1234.9876E-200,KRealFormatFixed,12,6,'.','0',0,_S("0.000000")),
235 RtoB_TEST(1234.9876E-300,KRealFormatFixed,12,6,'.','0',0,_S("0.000000")),
239 RtoB_TEST(1.23456789012501,fixedLimit,32,15,'.',',',0,_S("1.234567890130000")),
240 RtoB_TEST(1.2345678901249,fixedLimit,32,15,'.',',',3,_S("1.234567890120000")),
241 RtoB_TEST(1.99999999996,fixedLimit,32,15,'.',',',0,_S("1.999999999960000")),
242 RtoB_TEST(1.999999999996,fixedLimit,32,15,'.',',',0,_S("2.000000000000000")),
243 RtoB_TEST(1.9999999999996,fixedLimit,32,15,'.',',',3,_S("2.000000000000000")),
244 RtoB_TEST(1.99999999999996,fixedLimit,32,15,'.',',',3,_S("2.000000000000000")),
246 RtoB_TEST(1.23456789012501E+6,fixedLimitAndTriads,32,9,'.',',',3,_S("1,234,567.890130000")),
247 RtoB_TEST(1.2345678901249E+8,fixedLimitAndTriads,32,7,'.',',',3,_S("123,456,789.0120000")),
248 RtoB_TEST(1.99999999996E+3,fixedLimitAndTriads,32,12,'.',',',3,_S("1,999.999999960000")),
249 RtoB_TEST(1.999999999996E+12,fixedLimitAndTriads,32,3,'.',',',3,_S("2,000,000,000,000.000")),
250 RtoB_TEST(1.9999999999996E+4,fixedLimitAndTriads,32,11,'.',',',3,_S("20,000.00000000000")),
251 RtoB_TEST(1.99999999999996E+13,fixedLimitAndTriads,32,2,'.',',',3,_S("20,000,000,000,000.00")),
253 RtoB_TEST(1.23456789012501,fixedLimitAndSpaceForSign,32,15,'.',',',0,_S("1.234567890130000")),
254 RtoB_TEST(1.2345678901249,fixedLimitAndSpaceForSign,32,15,'.',',',3,_S("1.234567890120000")),
255 RtoB_TEST(1.99999999996,fixedLimitAndSpaceForSign,32,15,'.',',',0,_S("1.999999999960000")),
256 RtoB_TEST(1.999999999996,fixedLimitAndSpaceForSign,32,15,'.',',',0,_S("2.000000000000000")),
257 RtoB_TEST(1.9999999999996,fixedLimitAndSpaceForSign,32,15,'.',',',3,_S("2.000000000000000")),
258 RtoB_TEST(1.99999999999996,fixedLimitAndSpaceForSign,32,15,'.',',',3,_S("2.000000000000000")),
263 RtoB_TEST(0.0,KRealFormatExponent,8,0,'.','0',0,_S("0E+00")),
264 RtoB_TEST(0.0,KRealFormatExponent,8,2,'.','0',0,_S("0.00E+00")),
265 RtoB_TEST(9.0,KRealFormatExponent,8,2,'.','0',0,_S("9.00E+00")),
266 RtoB_TEST(9.9,KRealFormatExponent,8,2,'.','0',0,_S("9.90E+00")),
267 RtoB_TEST(1234.9876E-3,KRealFormatExponent,12,6,'.','0',0,_S("1.234988E+00")),
268 // Positive Exponents, not allowing three-digit exponents
269 RtoB_TEST(123.098785,KRealFormatExponent,8,2,'.','0',0,_S("1.23E+02")),
270 RtoB_TEST(123.098785,KRealFormatExponent,12,3,'.','0',0,_S("1.231E+02")),
271 RtoB_TEST(123.098785,KRealFormatExponent,12,4,'.','0',0,_S("1.2310E+02")),
272 RtoB_TEST(123.098785,KRealFormatExponent,12,5,'.','0',0,_S("1.23099E+02")),
273 RtoB_TEST(123.098785,KRealFormatExponent,12,6,'.','0',0,_S("1.230988E+02")),
274 RtoB_TEST(98765.0,KRealFormatExponent,12,5,'.','0',0,_S("9.87650E+04")),
275 RtoB_TEST(10000000.0,KRealFormatExponent,8,2,'.','0',0,_S("1.00E+07")),
276 RtoB_TEST(100000000.0,KRealFormatExponent,12,6,'.','0',0,_S("1.000000E+08")),
277 RtoB_TEST(100000000.000087643,KRealFormatExponent,12,6,'.','0',0,_S("1.000000E+08")),
278 RtoB_TEST(999999999.999,KRealFormatExponent,8,2,'.','0',0,_S("1.00E+09")),
279 RtoB_TEST(1234567.8765E12,KRealFormatExponent,8,2,'.','0',0,_S("1.23E+18")),
280 RtoB_TEST(1234567.8765E12,KRealFormatExponent,12,6,'.','0',0,_S("1.234568E+18")),
281 RtoB_TEST(34574567645555555.0E35,KRealFormatExponent,12,6,'.','0',0,_S("3.457457E+51")),
282 RtoB_TEST(123.098785E56,KRealFormatExponent,12,6,'.','0',0,_S("1.230988E+58")),
283 RtoB_TEST(.99999999E99,KRealFormatExponent,12,6,'.','0',0,_S("1.000000E+99")),
284 RtoB_TEST(1.0E99,KRealFormatExponent,12,6,'.','0',0,_S("1.000000E+99")),
285 // Negative Exponents, not allowing three-digit exponents
286 RtoB_TEST(1234.9876E-4,KRealFormatExponent,12,6,'.','0',0,_S("1.234988E-01")),
287 RtoB_TEST(.0000000001235,KRealFormatExponent,8,2,'.','0',0,_S("1.24E-10")),
288 RtoB_TEST(.0000000001235,KRealFormatExponent,8,1,'.','0',0,_S("1.2E-10")),
289 RtoB_TEST(.0000000001235,KRealFormatExponent,9,3,'.','0',0,_S("1.235E-10")),
290 RtoB_TEST(.00000000999,KRealFormatExponent,8,2,'.','0',0,_S("9.99E-09")),
291 RtoB_TEST(.0000000001,KRealFormatExponent,12,6,'.','0',0,_S("1.000000E-10")),
292 RtoB_TEST(.00000000010001,KRealFormatExponent,12,6,'.','0',0,_S("1.000100E-10")),
293 RtoB_TEST(123.098785E-32,KRealFormatExponent,12,6,'.','0',0,_S("1.230988E-30")),
294 RtoB_TEST(123.098785E-87,KRealFormatExponent,12,6,'.','0',0,_S("1.230988E-85")),
295 RtoB_TEST(1.0E-99,KRealFormatExponent,12,6,'.','0',0,_S("1.000000E-99")),
297 // Positive Exponents, allowing three-digit exponents
298 RtoB_TEST(123.098785,exponentThreeDigitExp,12,6,'.','0',0,_S("1.230988E+02")),
299 RtoB_TEST(999999999.999,exponentThreeDigitExp,8,2,'.','0',0,_S("1.00E+09")),
300 RtoB_TEST(34574567645555555.0E35,exponentThreeDigitExp,12,6,'.','0',0,_S("3.457457E+51")),
301 RtoB_TEST(.99999999E99,exponentThreeDigitExp,12,6,'.','0',0,_S("1.000000E+99")),
302 RtoB_TEST(1.0E99,exponentThreeDigitExp,12,6,'.','0',0,_S("1.000000E+99")),
303 RtoB_TEST(1234.9876E-103,exponentThreeDigitExp,14,7,'.','0',0,_S("1.2349876E-100")),
304 RtoB_TEST(1234.9876E-107,exponentThreeDigitExp,14,6,'.','0',0,_S("1.234988E-104")),
305 RtoB_TEST(1234.9876E-109,exponentThreeDigitExp,14,7,'.','0',0,_S("1.2349876E-106")),
306 RtoB_TEST(1234.9876E-110,exponentThreeDigitExp,14,7,'.','0',0,_S("1.2349876E-107")),
307 RtoB_TEST(1234.9876E-200,exponentThreeDigitExp,14,7,'.','0',0,_S("1.2349876E-197")),
308 RtoB_TEST(1234.9876E-300,exponentThreeDigitExp,14,7,'.','0',0,_S("1.2349876E-297")),
309 RtoB_TEST(1234.9876E97,exponentThreeDigitExp,14,7,'.','0',0,_S("1.2349876E+100")),
310 RtoB_TEST(1234.9876E100,exponentThreeDigitExp,14,7,'.','0',0,_S("1.2349876E+103")),
311 RtoB_TEST(1234.9876E103,exponentThreeDigitExp,14,5,'.','0',0,_S("1.23499E+106")),
312 RtoB_TEST(1234.9876E200,exponentThreeDigitExp,14,7,'.','0',0,_S("1.2349876E+203")),
313 RtoB_TEST(1234.9876E300,exponentThreeDigitExp,14,7,'.','0',0,_S("1.2349876E+303")),
314 // Negative Exponents, allowing three-digit exponents
315 RtoB_TEST(1234.9876E-4,exponentThreeDigitExp,12,6,'.','0',0,_S("1.234988E-01")),
316 RtoB_TEST(.00000000999,exponentThreeDigitExp,8,2,'.','0',0,_S("9.99E-09")),
317 RtoB_TEST(123.098785E-32,exponentThreeDigitExp,12,6,'.','0',0,_S("1.230988E-30")),
318 RtoB_TEST(123.098785E-87,exponentThreeDigitExp,12,6,'.','0',0,_S("1.230988E-85")),
319 RtoB_TEST(1.0E-99,exponentThreeDigitExp,12,6,'.','0',0,_S("1.000000E-99")),
321 RtoB_TEST(1.23456789012501E24,exponentLimit,32,15,'.',',',3,_S("1.234567890130000E+24")),
322 RtoB_TEST(1.2345678901249E+97,exponentLimit,32,15,'.',',',3,_S("1.234567890120000E+97")),
323 RtoB_TEST(1.99999999996E-19,exponentLimit,32,15,'.',',',3,_S("1.999999999960000E-19")),
324 RtoB_TEST(1.999999999996E-53,exponentLimit,32,15,'.',',',3,_S("2.000000000000000E-53")),
325 RtoB_TEST(1.9999999999996E+46,exponentLimit,32,15,'.',',',3,_S("2.000000000000000E+46")),
326 RtoB_TEST(1.99999999999996,exponentLimit,32,15,'.',',',3,_S("2.000000000000000E+00")),
328 RtoB_TEST(1.23456789012501E24,exponentLimitAndThreeDigExp,32,15,'.',',',3,_S("1.234567890130000E+24")),
329 RtoB_TEST(1.2345678901249E+169,exponentLimitAndThreeDigExp,32,15,'.',',',3,_S("1.234567890120000E+169")),
330 RtoB_TEST(1.99999999996E-19,exponentLimitAndThreeDigExp,32,15,'.',',',3,_S("1.999999999960000E-19")),
331 RtoB_TEST(1.999999999996E-253,exponentLimitAndThreeDigExp,32,15,'.',',',3,_S("2.000000000000000E-253")),
332 RtoB_TEST(1.9999999999996E+246,exponentLimitAndThreeDigExp,32,15,'.',',',3,_S("2.000000000000000E+246")),
333 RtoB_TEST(1.99999999999996E-302,exponentLimitAndThreeDigExp,32,15,'.',',',3,_S("2.000000000000000E-302")),
337 // Fixed format, no space for sign
338 RtoB_TEST(0.000,KRealFormatGeneral,7,4,'.','0',0,_S("0")),
339 RtoB_TEST(98.000,KRealFormatGeneral,7,4,'.','0',0,_S("98")),
340 RtoB_TEST(12345.6700009,KRealFormatGeneral,12,4,'.','0',3,_S("12345.670001")),
341 RtoB_TEST(1.E2,KRealFormatGeneral,3,4,'.','0',0,_S("100")),
342 RtoB_TEST(1234.0,KRealFormatGeneral,4,4,'.','0',3,_S("1234")),
343 RtoB_TEST(1.2345,KRealFormatGeneral,4,4,'.','0',0,_S("1.23")),
344 RtoB_TEST(1.235,KRealFormatGeneral,4,4,'.','0',0,_S("1.24")),
345 RtoB_TEST(98765.0,KRealFormatGeneral,13,6,'.','0',0,_S("98765")),
346 RtoB_TEST(100000000.0,KRealFormatGeneral,13,6,'.','0',0,_S("100000000")),
347 RtoB_TEST(123.098785E00,KRealFormatGeneral,10,6,'.','0',0,_S("123.098785")),
348 RtoB_TEST(-123.098785E00,KRealFormatGeneral,10,6,'.','0',0,_S("-123.09879")),
349 RtoB_TEST(0.001209,KRealFormatGeneral,6,4,'.','0',0,_S("0.0012")),
350 RtoB_TEST(0.00100987,KRealFormatGeneral,7,4,'.','0',0,_S("0.00101")),
351 RtoB_TEST(1234.9876E-4,KRealFormatGeneral,13,6,'.','0',0,_S("0.12349876")),
352 RtoB_TEST(1234.9876E-5,KRealFormatGeneral,13,6,'.','0',0,_S("0.012349876")),
353 // Fixed format, space for sign
354 RtoB_TEST(0.000,generalSpaceForSign,7,4,'.','0',0,_S("0")),
355 RtoB_TEST(98.000,generalSpaceForSign,7,4,'.','0',0,_S("98")),
356 RtoB_TEST(12345.6700009,generalSpaceForSign,13,4,'.','0',3,_S("12345.670001")),
357 RtoB_TEST(-12345.6700009,generalSpaceForSign,13,4,'.','0',3,_S("-12345.670001")),
358 RtoB_TEST(1.E2,generalSpaceForSign,4,4,'.','0',0,_S("100")),
359 RtoB_TEST(1234.0,generalSpaceForSign,5,4,'.','0',3,_S("1234")),
360 RtoB_TEST(1.2345,generalSpaceForSign,5,4,'.','0',0,_S("1.23")),
361 RtoB_TEST(1.235,generalSpaceForSign,5,4,'.','0',0,_S("1.24")),
362 RtoB_TEST(-1.235,generalSpaceForSign,5,4,'.','0',0,_S("-1.24")),
363 RtoB_TEST(98765.0,generalSpaceForSign,13,6,'.','0',0,_S("98765")),
364 RtoB_TEST(100000000.0,generalSpaceForSign,13,6,'.','0',0,_S("100000000")),
365 RtoB_TEST(123.098785E00,generalSpaceForSign,11,6,'.','0',0,_S("123.098785")),
366 RtoB_TEST(-123.098785E00,generalSpaceForSign,11,6,'.','0',0,_S("-123.098785")),
367 RtoB_TEST(0.001209,generalSpaceForSign,7,4,'.','0',0,_S("0.0012")),
368 RtoB_TEST(0.00100987,generalSpaceForSign,8,4,'.','0',0,_S("0.00101")),
369 RtoB_TEST(1234.9876E-4,generalSpaceForSign,11,6,'.','0',0,_S("0.12349876")),
370 RtoB_TEST(-1234.9876E-4,generalSpaceForSign,11,6,'.','0',0,_S("-0.12349876")),
371 RtoB_TEST(1234.9876E-5,generalSpaceForSign,12,6,'.','0',0,_S("0.012349876")),
372 RtoB_TEST(-1234.9876E-5,generalSpaceForSign,12,6,'.','0',0,_S("-0.012349876")),
373 // Initially the format type is exponent, but after rounding
374 // it is changed to fixed
376 RtoB_TEST(0.00099,KRealFormatGeneral,5,5,'.','0',0,_S("0.001")),
377 RtoB_TEST(0.00099999109,KRealFormatGeneral,6,5,'.','0',0,_S("0.001")),
378 // space allowed for sign
379 RtoB_TEST(0.00099,generalSpaceForSign,6,5,'.','0',0,_S("0.001")),
380 RtoB_TEST(0.00099999109,generalSpaceForSign,7,5,'.','0',0,_S("0.001")),
381 // Exponent format, two digit exponent only
382 RtoB_TEST(10000000.0,KRealFormatGeneral,7,4,'.','0',0,_S("1E+07")),
383 RtoB_TEST(9999999.0,KRealFormatGeneral,6,4,'.','0',0,_S("1E+07")),
384 RtoB_TEST(1234567890123.0,KRealFormatGeneral,12,4,'.','0',0,_S("1.234568E+12")),
385 RtoB_TEST(1234567.8765E12,KRealFormatGeneral,10,6,'.','0',0,_S("1.2346E+18")),
386 RtoB_TEST(123.098785E56,KRealFormatGeneral,12,6,'.','0',0,_S("1.230988E+58")),
387 RtoB_TEST(0.0000678,KRealFormatGeneral,12,4,'.','0',0,_S("6.78E-05")),
388 RtoB_TEST(0.0000001234,KRealFormatGeneral,12,4,'.','0',0,_S("1.234E-07")),
389 RtoB_TEST(.99999999E99,KRealFormatGeneral,12,6,'.','0',0,_S("1E+99")),
390 RtoB_TEST(1.0E99,KRealFormatGeneral,12,6,'.','0',0,_S("1E+99")),
391 RtoB_TEST(.0000000001,KRealFormatGeneral,12,6,'.','0',0,_S("1E-10")),
392 RtoB_TEST(5384795.26E-52,KRealFormatGeneral,12,6,'.','0',0,_S("5.384795E-46")),
393 RtoB_TEST(123.098785E-87,KRealFormatGeneral,12,6,'.','0',0,_S("1.230988E-85")),
394 RtoB_TEST(.99999999E-99,KRealFormatGeneral,12,6,'.','0',0,_S("1E-99")),
395 RtoB_TEST(1.0E-99,KRealFormatGeneral,12,6,'.','0',0,_S("1E-99")),
396 // Exponent format, three-digit exponents allowed
397 RtoB_TEST(9999999.0,generalThreeDigitExp,6,4,'.','0',0,_S("1E+07")),
398 RtoB_TEST(1234567890123.0,generalThreeDigitExp,13,4,'.','0',0,_S("1234567890123")), // Leave room for three-digit exponent, so can have fixed numbers one digit longer
399 RtoB_TEST(1234567.8765E12,generalThreeDigitExp,11,6,'.','0',0,_S("1.23457E+18")),
400 RtoB_TEST(123.098785E56,generalThreeDigitExp,12,6,'.','0',0,_S("1.230988E+58")),
401 RtoB_TEST(.99999999E99,generalThreeDigitExp,12,6,'.','0',0,_S("1E+99")),
402 RtoB_TEST(1.0E99,generalThreeDigitExp,12,6,'.','0',0,_S("1E+99")),
403 RtoB_TEST(.0000000001,generalThreeDigitExp,12,6,'.','0',0,_S("1E-10")),
404 RtoB_TEST(5384795.26E-52,generalThreeDigitExp,12,6,'.','0',0,_S("5.384795E-46")),
405 RtoB_TEST(.99999999E-99,generalThreeDigitExp,12,6,'.','0',0,_S("1E-99")),
406 RtoB_TEST(1.0E-99,generalThreeDigitExp,12,6,'.','0',0,_S("1E-99")),
407 RtoB_TEST(1234.9876E-103,generalThreeDigitExp,12,15,'.','0',0,_S("1.23499E-100")),
408 RtoB_TEST(1234.9876E-107,generalThreeDigitExp,22,7,'.','0',0,_S("1.2349876E-104")),
409 RtoB_TEST(1234.9876E-109,generalThreeDigitExp,22,15,'.','0',0,_S("1.2349876E-106")),
410 RtoB_TEST(1234.9876E-110,generalThreeDigitExp,22,15,'.','0',0,_S("1.2349876E-107")),
411 RtoB_TEST(1234.9876E-200,generalThreeDigitExp,22,15,'.','0',0,_S("1.2349876E-197")),
412 RtoB_TEST(1234.9876E-300,generalThreeDigitExp,22,15,'.','0',0,_S("1.2349876E-297")),
413 RtoB_TEST(1234.9876E97,generalThreeDigitExp,12,15,'.','0',0,_S("1.23499E+100")),
414 RtoB_TEST(1234.9876E100,generalThreeDigitExp,22,15,'.','0',0,_S("1.2349876E+103")),
415 RtoB_TEST(1234.9876E103,generalThreeDigitExp,22,15,'.','0',0,_S("1.2349876E+106")),
416 RtoB_TEST(1234.9876E200,generalThreeDigitExp,22,15,'.','0',0,_S("1.2349876E+203")),
417 RtoB_TEST(1234.9876E300,generalThreeDigitExp,22,15,'.','0',0,_S("1.2349876E+303")),
419 RtoB_TEST(1.2E+100,generalThreeDigitExp,6,15,'.','0',0,_S("1E+100")),
420 RtoB_TEST(1.2E-100,generalThreeDigitExp,6,15,'.','0',0,_S("1E-100")),
421 RtoB_TEST(-1.2E+100,generalThreeDigitExp,7,15,'.','0',0,_S("-1E+100")),
422 RtoB_TEST(-1.2E-100,generalThreeDigitExp,7,15,'.','0',0,_S("-1E-100")),
423 RtoB_TEST(1.2E+100,generalThreeDigitExp,8,15,'.','0',0,_S("1.2E+100")),
424 RtoB_TEST(1.2E-100,generalThreeDigitExp,8,15,'.','0',0,_S("1.2E-100")),
425 RtoB_TEST(-1.2E+100,generalThreeDigitExp,9,15,'.','0',0,_S("-1.2E+100")),
426 RtoB_TEST(-1.2E-100,generalThreeDigitExp,9,15,'.','0',0,_S("-1.2E-100")),
427 RtoB_TEST(1E+100,generalThreeDigitExp,6,15,'.','0',0,_S("1E+100")),
428 RtoB_TEST(1E-100,generalThreeDigitExp,6,15,'.','0',0,_S("1E-100")),
429 RtoB_TEST(-1E+100,generalThreeDigitExp,7,15,'.','0',0,_S("-1E+100")),
430 RtoB_TEST(-1E-100,generalThreeDigitExp,7,15,'.','0',0,_S("-1E-100")),
431 RtoB_TEST(1E+100,generalThreeDigitExp,7,15,'.','0',0,_S("1E+100")),
432 RtoB_TEST(1E-100,generalThreeDigitExp,7,15,'.','0',0,_S("1E-100")),
433 RtoB_TEST(-1E+100,generalThreeDigitExp,8,15,'.','0',0,_S("-1E+100")),
434 RtoB_TEST(-1E-100,generalThreeDigitExp,8,15,'.','0',0,_S("-1E-100")),
436 RtoB_TEST(1.4E+308,generalThreeDigitExp,6,15,'.','0',0,_S("1E+308")),
437 RtoB_TEST(2.3E-308,generalThreeDigitExp,6,15,'.','0',0,_S("2E-308")),
438 RtoB_TEST(-1.4E+308,generalThreeDigitExp,7,15,'.','0',0,_S("-1E+308")),
439 RtoB_TEST(-2.3E-308,generalThreeDigitExp,7,15,'.','0',0,_S("-2E-308")),
440 RtoB_TEST(1.7E+308,generalThreeDigitExp,8,15,'.','0',0,_S("1.7E+308")),
441 RtoB_TEST(2.3E-308,generalThreeDigitExp,8,15,'.','0',0,_S("2.3E-308")),
442 RtoB_TEST(-1.7E+308,generalThreeDigitExp,9,15,'.','0',0,_S("-1.7E+308")),
443 RtoB_TEST(-2.3E-308,generalThreeDigitExp,9,15,'.','0',0,_S("-2.3E-308")),
444 RtoB_TEST(1.797693E+308,generalThreeDigitExp,15,15,'.','0',0,_S("1.797693E+308")),
445 RtoB_TEST(2.225074E-308,generalThreeDigitExp,15,15,'.','0',0,_S("2.225074E-308")),
446 RtoB_TEST(-1.797693E+308,generalThreeDigitExp,16,15,'.','0',0,_S("-1.797693E+308")),
447 RtoB_TEST(-2.225074E-308,generalThreeDigitExp,16,15,'.','0',0,_S("-2.225074E-308"))
450 GLDEF_D TUint size_testd=sizeof(testd);