(DISTFILES): Comment out a few missing files.
[mono-project.git] / mcs / class / corlib / Test / System / SingleFormatterTest.cs
blob66a064d783ffe96415d847526f76666a8cd1e141
1 //
2 // SingleFormatterTest.cs - NUnit Test Cases for System.SingleFormatter
3 //
4 // Author:
5 // Patrick Kalkman kalkman@cistron.nl
6 //
7 // (C) 2003 Patrick Kalkman
8 //
9 using NUnit.Framework;
10 using System;
11 using System.Threading;
12 using System.Globalization;
14 namespace MonoTests.System {
16 [TestFixture]
17 public class SingleFormatterTest
19 [SetUp]
20 public void GetReady()
22 CultureInfo EnUs = new CultureInfo ("en-us", false);
23 EnUs.NumberFormat.CurrencyNegativePattern = 0; // -1 = (1)
24 EnUs.NumberFormat.CurrencyDecimalSeparator = ".";
25 EnUs.NumberFormat.NumberGroupSeparator = ",";
26 EnUs.NumberFormat.NumberNegativePattern = 1; // -1 = -1
27 EnUs.NumberFormat.NumberDecimalDigits = 2;
30 //Set this culture for the current thread.
31 Thread.CurrentThread.CurrentCulture = EnUs;
34 [TearDown]
35 public void Clean() {}
37 [Test]
38 [ExpectedException(typeof(FormatException))]
39 public void TestToDecimal()
41 Single x = 1.0000001F;
42 string Result = x.ToString ("D2"); //To Decimal is for integral types only.
45 [Test]
46 [ExpectedException(typeof(FormatException))]
47 public void TestToHex()
49 Single x = 1.212121F;
50 string Result = x.ToString ("X2"); //To Hex is for integral types only.
53 [Test]
54 [ExpectedException(typeof(FormatException))]
55 public void TestToUnknown()
57 Single x = 1.212121F;
58 string Result = x.ToString ("L2"); //Invalid format.
61 private void FormatStringTest(int TestNumber, float Number, string Format, string ExpectedResult)
63 Assertion.AssertEquals ("SngF #" + TestNumber, ExpectedResult, Number.ToString(Format));
66 string GetPercent (string s)
68 switch (NumberFormatInfo.CurrentInfo.PercentPositivePattern) {
69 case 0: return s + " %";
70 case 1: return s + "%";
71 default: return "%" + s;
75 [Test]
76 public void TestFormatStrings()
78 FormatStringTest (0, 121212F, "C", "$121,212.00");
79 FormatStringTest (1, 121212F, "C0", "$121,212");
80 FormatStringTest (2, 121212F, "C1", "$121,212.0");
81 FormatStringTest (3, 121212F, "C2", "$121,212.00");
82 FormatStringTest (4, 121212F, "C3", "$121,212.000");
83 FormatStringTest (5, 121212F, "C4", "$121,212.0000");
84 FormatStringTest (6, 121212F, "C5", "$121,212.00000");
85 FormatStringTest (7, 121212F, "C6", "$121,212.000000");
86 FormatStringTest (8, 121212F, "C7", "$121,212.0000000");
87 FormatStringTest (9, 121212F, "C8", "$121,212.00000000");
88 FormatStringTest (10, 121212F, "C9", "$121,212.000000000");
89 FormatStringTest (11, 121212F, "C67", "$121,212.0000000000000000000000000000000000000000000000000000000000000000000");
90 FormatStringTest (12, 121212F, "E", "1.212120E+005");
91 FormatStringTest (13, 121212F, "E0", "1E+005");
92 FormatStringTest (14, 121212F, "E1", "1.2E+005");
93 FormatStringTest (15, 121212F, "E2", "1.21E+005");
94 FormatStringTest (16, 121212F, "E3", "1.212E+005");
95 FormatStringTest (17, 121212F, "E4", "1.2121E+005");
96 FormatStringTest (18, 121212F, "E5", "1.21212E+005");
97 FormatStringTest (19, 121212F, "E6", "1.212120E+005");
98 FormatStringTest (20, 121212F, "E7", "1.2121200E+005");
99 FormatStringTest (21, 121212F, "E8", "1.21212000E+005");
100 FormatStringTest (22, 121212F, "E9", "1.212120000E+005");
101 FormatStringTest (23, 121212F, "E67", "1.2121200000000000000000000000000000000000000000000000000000000000000E+005");
102 FormatStringTest (24, 121212F, "F", "121212.00");
103 FormatStringTest (25, 121212F, "F0", "121212");
104 FormatStringTest (26, 121212F, "F1", "121212.0");
105 FormatStringTest (27, 121212F, "F2", "121212.00");
106 FormatStringTest (28, 121212F, "F3", "121212.000");
107 FormatStringTest (29, 121212F, "F4", "121212.0000");
108 FormatStringTest (30, 121212F, "F5", "121212.00000");
109 FormatStringTest (31, 121212F, "F6", "121212.000000");
110 FormatStringTest (32, 121212F, "F7", "121212.0000000");
111 FormatStringTest (33, 121212F, "F8", "121212.00000000");
112 FormatStringTest (34, 121212F, "F9", "121212.000000000");
113 FormatStringTest (35, 121212F, "F67", "121212.0000000000000000000000000000000000000000000000000000000000000000000");
114 FormatStringTest (36, 121212F, "G", "121212");
115 FormatStringTest (37, 121212F, "G0", "121212");
116 FormatStringTest (38, 121212F, "G1", "1E+05");
117 FormatStringTest (39, 121212F, "G2", "1.2E+05");
118 FormatStringTest (40, 121212F, "G3", "1.21E+05");
119 FormatStringTest (41, 121212F, "G4", "1.212E+05");
120 FormatStringTest (42, 121212F, "G5", "1.2121E+05");
121 FormatStringTest (43, 121212F, "G6", "121212");
122 FormatStringTest (44, 121212F, "G7", "121212");
123 FormatStringTest (45, 121212F, "G8", "121212");
124 FormatStringTest (46, 121212F, "G9", "121212");
125 FormatStringTest (47, 121212F, "G67", "121212");
126 FormatStringTest (48, 121212F, "N", "121,212.00");
127 FormatStringTest (49, 121212F, "N0", "121,212");
128 FormatStringTest (50, 121212F, "N1", "121,212.0");
129 FormatStringTest (51, 121212F, "N2", "121,212.00");
130 FormatStringTest (52, 121212F, "N3", "121,212.000");
131 FormatStringTest (53, 121212F, "N4", "121,212.0000");
132 FormatStringTest (54, 121212F, "N5", "121,212.00000");
133 FormatStringTest (55, 121212F, "N6", "121,212.000000");
134 FormatStringTest (56, 121212F, "N7", "121,212.0000000");
135 FormatStringTest (57, 121212F, "N8", "121,212.00000000");
136 FormatStringTest (58, 121212F, "N9", "121,212.000000000");
137 FormatStringTest (59, 121212F, "N67", "121,212.0000000000000000000000000000000000000000000000000000000000000000000");
138 FormatStringTest (60, 121212F, "P", GetPercent ("12,121,200.00"));
139 FormatStringTest (61, 121212F, "P0", GetPercent ("12,121,200"));
140 FormatStringTest (62, 121212F, "P1", GetPercent ("12,121,200.0"));
141 FormatStringTest (63, 121212F, "P2", GetPercent ("12,121,200.00"));
142 FormatStringTest (64, 121212F, "P3", GetPercent ("12,121,200.000"));
143 FormatStringTest (65, 121212F, "P4", GetPercent ("12,121,200.0000"));
144 FormatStringTest (66, 121212F, "P5", GetPercent ("12,121,200.00000"));
145 FormatStringTest (67, 121212F, "P6", GetPercent ("12,121,200.000000"));
146 FormatStringTest (68, 121212F, "P7", GetPercent ("12,121,200.0000000"));
147 FormatStringTest (69, 121212F, "P8", GetPercent ("12,121,200.00000000"));
148 FormatStringTest (70, 121212F, "P9", GetPercent ("12,121,200.000000000"));
149 FormatStringTest (71, 121212F, "P67", GetPercent ("12,121,200.0000000000000000000000000000000000000000000000000000000000000000000"));
150 FormatStringTest (72, 3.402823E+38F, "C", "$340,282,300,000,000,000,000,000,000,000,000,000,000.00");
151 FormatStringTest (73, 3.402823E+38F, "C0", "$340,282,300,000,000,000,000,000,000,000,000,000,000");
152 FormatStringTest (74, 3.402823E+38F, "C1", "$340,282,300,000,000,000,000,000,000,000,000,000,000.0");
153 FormatStringTest (75, 3.402823E+38F, "C2", "$340,282,300,000,000,000,000,000,000,000,000,000,000.00");
154 FormatStringTest (76, 3.402823E+38F, "C3", "$340,282,300,000,000,000,000,000,000,000,000,000,000.000");
155 FormatStringTest (77, 3.402823E+38F, "C4", "$340,282,300,000,000,000,000,000,000,000,000,000,000.0000");
156 FormatStringTest (78, 3.402823E+38F, "C5", "$340,282,300,000,000,000,000,000,000,000,000,000,000.00000");
157 FormatStringTest (79, 3.402823E+38F, "C6", "$340,282,300,000,000,000,000,000,000,000,000,000,000.000000");
158 FormatStringTest (80, 3.402823E+38F, "C7", "$340,282,300,000,000,000,000,000,000,000,000,000,000.0000000");
159 FormatStringTest (81, 3.402823E+38F, "C8", "$340,282,300,000,000,000,000,000,000,000,000,000,000.00000000");
160 FormatStringTest (82, 3.402823E+38F, "C9", "$340,282,300,000,000,000,000,000,000,000,000,000,000.000000000");
161 FormatStringTest (83, 3.402823E+38F, "C67", "$340,282,300,000,000,000,000,000,000,000,000,000,000.0000000000000000000000000000000000000000000000000000000000000000000");
162 FormatStringTest (84, 3.402823E+38F, "E", "3.402823E+038");
163 FormatStringTest (85, 3.402823E+38F, "E0", "3E+038");
164 FormatStringTest (86, 3.402823E+38F, "E1", "3.4E+038");
165 FormatStringTest (87, 3.402823E+38F, "E2", "3.40E+038");
166 FormatStringTest (88, 3.402823E+38F, "E3", "3.403E+038");
167 FormatStringTest (89, 3.402823E+38F, "E4", "3.4028E+038");
168 FormatStringTest (90, 3.402823E+38F, "E5", "3.40282E+038");
169 FormatStringTest (91, 3.402823E+38F, "E6", "3.402823E+038");
170 FormatStringTest (92, 3.402823E+38F, "E7", "3.4028231E+038");
171 FormatStringTest (93, 3.402823E+38F, "E8", "3.40282306E+038");
172 FormatStringTest (94, 3.402823E+38F, "E9", "3.402823060E+038");
173 FormatStringTest (95, 3.402823E+38F, "E67", "3.4028230600000000000000000000000000000000000000000000000000000000000E+038");
174 FormatStringTest (96, 3.402823E+38F, "F", "340282300000000000000000000000000000000.00");
175 FormatStringTest (97, 3.402823E+38F, "F0", "340282300000000000000000000000000000000");
176 FormatStringTest (98, 3.402823E+38F, "F1", "340282300000000000000000000000000000000.0");
177 FormatStringTest (99, 3.402823E+38F, "F2", "340282300000000000000000000000000000000.00");
178 FormatStringTest (100, 3.402823E+38F, "F3", "340282300000000000000000000000000000000.000");
179 FormatStringTest (101, 3.402823E+38F, "F4", "340282300000000000000000000000000000000.0000");
180 FormatStringTest (102, 3.402823E+38F, "F5", "340282300000000000000000000000000000000.00000");
181 FormatStringTest (103, 3.402823E+38F, "F6", "340282300000000000000000000000000000000.000000");
182 FormatStringTest (104, 3.402823E+38F, "F7", "340282300000000000000000000000000000000.0000000");
183 FormatStringTest (105, 3.402823E+38F, "F8", "340282300000000000000000000000000000000.00000000");
184 FormatStringTest (106, 3.402823E+38F, "F9", "340282300000000000000000000000000000000.000000000");
185 FormatStringTest (107, 3.402823E+38F, "F67", "340282300000000000000000000000000000000.0000000000000000000000000000000000000000000000000000000000000000000");
186 FormatStringTest (108, 3.402823E+38F, "G", "3.402823E+38");
187 FormatStringTest (109, 3.402823E+38F, "G0", "3.402823E+38");
188 FormatStringTest (110, 3.402823E+38F, "G1", "3E+38");
189 FormatStringTest (111, 3.402823E+38F, "G2", "3.4E+38");
190 FormatStringTest (112, 3.402823E+38F, "G3", "3.4E+38");
191 FormatStringTest (113, 3.402823E+38F, "G4", "3.403E+38");
192 FormatStringTest (114, 3.402823E+38F, "G5", "3.4028E+38");
193 FormatStringTest (115, 3.402823E+38F, "G6", "3.40282E+38");
194 FormatStringTest (116, 3.402823E+38F, "G7", "3.402823E+38");
195 FormatStringTest (117, 3.402823E+38F, "G8", "3.4028231E+38");
196 FormatStringTest (118, 3.402823E+38F, "G9", "3.40282306E+38");
197 FormatStringTest (119, 3.402823E+38F, "G67", "340282306000000000000000000000000000000");
198 FormatStringTest (120, 3.402823E+38F, "N", "340,282,300,000,000,000,000,000,000,000,000,000,000.00");
199 FormatStringTest (121, 3.402823E+38F, "N0", "340,282,300,000,000,000,000,000,000,000,000,000,000");
200 FormatStringTest (122, 3.402823E+38F, "N1", "340,282,300,000,000,000,000,000,000,000,000,000,000.0");
201 FormatStringTest (123, 3.402823E+38F, "N2", "340,282,300,000,000,000,000,000,000,000,000,000,000.00");
202 FormatStringTest (124, 3.402823E+38F, "N3", "340,282,300,000,000,000,000,000,000,000,000,000,000.000");
203 FormatStringTest (125, 3.402823E+38F, "N4", "340,282,300,000,000,000,000,000,000,000,000,000,000.0000");
204 FormatStringTest (126, 3.402823E+38F, "N5", "340,282,300,000,000,000,000,000,000,000,000,000,000.00000");
205 FormatStringTest (127, 3.402823E+38F, "N6", "340,282,300,000,000,000,000,000,000,000,000,000,000.000000");
206 FormatStringTest (128, 3.402823E+38F, "N7", "340,282,300,000,000,000,000,000,000,000,000,000,000.0000000");
207 FormatStringTest (129, 3.402823E+38F, "N8", "340,282,300,000,000,000,000,000,000,000,000,000,000.00000000");
208 FormatStringTest (130, 3.402823E+38F, "N9", "340,282,300,000,000,000,000,000,000,000,000,000,000.000000000");
209 FormatStringTest (131, 3.402823E+38F, "N67", "340,282,300,000,000,000,000,000,000,000,000,000,000.0000000000000000000000000000000000000000000000000000000000000000000");
210 FormatStringTest (132, 3.402823E+38F, "P", GetPercent ("34,028,230,000,000,000,000,000,000,000,000,000,000,000.00"));
211 FormatStringTest (133, 3.402823E+38F, "P0", GetPercent ("34,028,230,000,000,000,000,000,000,000,000,000,000,000"));
212 FormatStringTest (134, 3.402823E+38F, "P1", GetPercent ("34,028,230,000,000,000,000,000,000,000,000,000,000,000.0"));
213 FormatStringTest (135, 3.402823E+38F, "P2", GetPercent ("34,028,230,000,000,000,000,000,000,000,000,000,000,000.00"));
214 FormatStringTest (136, 3.402823E+38F, "P3", GetPercent ("34,028,230,000,000,000,000,000,000,000,000,000,000,000.000"));
215 FormatStringTest (137, 3.402823E+38F, "P4", GetPercent ("34,028,230,000,000,000,000,000,000,000,000,000,000,000.0000"));
216 FormatStringTest (138, 3.402823E+38F, "P5", GetPercent ("34,028,230,000,000,000,000,000,000,000,000,000,000,000.00000"));
217 FormatStringTest (139, 3.402823E+38F, "P6", GetPercent ("34,028,230,000,000,000,000,000,000,000,000,000,000,000.000000"));
218 FormatStringTest (140, 3.402823E+38F, "P7", GetPercent ("34,028,230,000,000,000,000,000,000,000,000,000,000,000.0000000"));
219 FormatStringTest (141, 3.402823E+38F, "P8", GetPercent ("34,028,230,000,000,000,000,000,000,000,000,000,000,000.00000000"));
220 FormatStringTest (142, 3.402823E+38F, "P9", GetPercent ("34,028,230,000,000,000,000,000,000,000,000,000,000,000.000000000"));
221 FormatStringTest (143, 3.402823E+38F, "P67", GetPercent ("34,028,230,000,000,000,000,000,000,000,000,000,000,000.0000000000000000000000000000000000000000000000000000000000000000000"));
222 FormatStringTest (144, -3.402823E+38F, "C", "($340,282,300,000,000,000,000,000,000,000,000,000,000.00)");
223 FormatStringTest (145, -3.402823E+38F, "C0", "($340,282,300,000,000,000,000,000,000,000,000,000,000)");
224 FormatStringTest (146, -3.402823E+38F, "C1", "($340,282,300,000,000,000,000,000,000,000,000,000,000.0)");
225 FormatStringTest (147, -3.402823E+38F, "C2", "($340,282,300,000,000,000,000,000,000,000,000,000,000.00)");
226 FormatStringTest (148, -3.402823E+38F, "C3", "($340,282,300,000,000,000,000,000,000,000,000,000,000.000)");
227 FormatStringTest (149, -3.402823E+38F, "C4", "($340,282,300,000,000,000,000,000,000,000,000,000,000.0000)");
228 FormatStringTest (150, -3.402823E+38F, "C5", "($340,282,300,000,000,000,000,000,000,000,000,000,000.00000)");
229 FormatStringTest (151, -3.402823E+38F, "C6", "($340,282,300,000,000,000,000,000,000,000,000,000,000.000000)");
230 FormatStringTest (152, -3.402823E+38F, "C7", "($340,282,300,000,000,000,000,000,000,000,000,000,000.0000000)");
231 FormatStringTest (153, -3.402823E+38F, "C8", "($340,282,300,000,000,000,000,000,000,000,000,000,000.00000000)");
232 FormatStringTest (154, -3.402823E+38F, "C9", "($340,282,300,000,000,000,000,000,000,000,000,000,000.000000000)");
233 FormatStringTest (155, -3.402823E+38F, "C67", "($340,282,300,000,000,000,000,000,000,000,000,000,000.0000000000000000000000000000000000000000000000000000000000000000000)");
234 FormatStringTest (156, -3.402823E+38F, "E", "-3.402823E+038");
235 FormatStringTest (157, -3.402823E+38F, "E0", "-3E+038");
236 FormatStringTest (158, -3.402823E+38F, "E1", "-3.4E+038");
237 FormatStringTest (159, -3.402823E+38F, "E2", "-3.40E+038");
238 FormatStringTest (160, -3.402823E+38F, "E3", "-3.403E+038");
239 FormatStringTest (161, -3.402823E+38F, "E4", "-3.4028E+038");
240 FormatStringTest (162, -3.402823E+38F, "E5", "-3.40282E+038");
241 FormatStringTest (163, -3.402823E+38F, "E6", "-3.402823E+038");
242 FormatStringTest (164, -3.402823E+38F, "E7", "-3.4028231E+038");
243 FormatStringTest (165, -3.402823E+38F, "E8", "-3.40282306E+038");
244 FormatStringTest (166, -3.402823E+38F, "E9", "-3.402823060E+038");
245 FormatStringTest (167, -3.402823E+38F, "E67", "-3.4028230600000000000000000000000000000000000000000000000000000000000E+038");
246 FormatStringTest (168, -3.402823E+38F, "F", "-340282300000000000000000000000000000000.00");
247 FormatStringTest (169, -3.402823E+38F, "F0", "-340282300000000000000000000000000000000");
248 FormatStringTest (170, -3.402823E+38F, "F1", "-340282300000000000000000000000000000000.0");
249 FormatStringTest (171, -3.402823E+38F, "F2", "-340282300000000000000000000000000000000.00");
250 FormatStringTest (172, -3.402823E+38F, "F3", "-340282300000000000000000000000000000000.000");
251 FormatStringTest (173, -3.402823E+38F, "F4", "-340282300000000000000000000000000000000.0000");
252 FormatStringTest (174, -3.402823E+38F, "F5", "-340282300000000000000000000000000000000.00000");
253 FormatStringTest (175, -3.402823E+38F, "F6", "-340282300000000000000000000000000000000.000000");
254 FormatStringTest (176, -3.402823E+38F, "F7", "-340282300000000000000000000000000000000.0000000");
255 FormatStringTest (177, -3.402823E+38F, "F8", "-340282300000000000000000000000000000000.00000000");
256 FormatStringTest (178, -3.402823E+38F, "F9", "-340282300000000000000000000000000000000.000000000");
257 FormatStringTest (179, -3.402823E+38F, "F67", "-340282300000000000000000000000000000000.0000000000000000000000000000000000000000000000000000000000000000000");
258 FormatStringTest (180, -3.402823E+38F, "G", "-3.402823E+38");
259 FormatStringTest (181, -3.402823E+38F, "G0", "-3.402823E+38");
260 FormatStringTest (182, -3.402823E+38F, "G1", "-3E+38");
261 FormatStringTest (183, -3.402823E+38F, "G2", "-3.4E+38");
262 FormatStringTest (184, -3.402823E+38F, "G3", "-3.4E+38");
263 FormatStringTest (185, -3.402823E+38F, "G4", "-3.403E+38");
264 FormatStringTest (186, -3.402823E+38F, "G5", "-3.4028E+38");
265 FormatStringTest (187, -3.402823E+38F, "G6", "-3.40282E+38");
266 FormatStringTest (188, -3.402823E+38F, "G7", "-3.402823E+38");
267 FormatStringTest (189, -3.402823E+38F, "G8", "-3.4028231E+38");
268 FormatStringTest (190, -3.402823E+38F, "G9", "-3.40282306E+38");
269 FormatStringTest (191, -3.402823E+38F, "G67", "-340282306000000000000000000000000000000");
270 FormatStringTest (192, -3.402823E+38F, "N", "-340,282,300,000,000,000,000,000,000,000,000,000,000.00");
271 FormatStringTest (193, -3.402823E+38F, "N0", "-340,282,300,000,000,000,000,000,000,000,000,000,000");
272 FormatStringTest (194, -3.402823E+38F, "N1", "-340,282,300,000,000,000,000,000,000,000,000,000,000.0");
273 FormatStringTest (195, -3.402823E+38F, "N2", "-340,282,300,000,000,000,000,000,000,000,000,000,000.00");
274 FormatStringTest (196, -3.402823E+38F, "N3", "-340,282,300,000,000,000,000,000,000,000,000,000,000.000");
275 FormatStringTest (197, -3.402823E+38F, "N4", "-340,282,300,000,000,000,000,000,000,000,000,000,000.0000");
276 FormatStringTest (198, -3.402823E+38F, "N5", "-340,282,300,000,000,000,000,000,000,000,000,000,000.00000");
277 FormatStringTest (199, -3.402823E+38F, "N6", "-340,282,300,000,000,000,000,000,000,000,000,000,000.000000");
278 FormatStringTest (200, -3.402823E+38F, "N7", "-340,282,300,000,000,000,000,000,000,000,000,000,000.0000000");
279 FormatStringTest (201, -3.402823E+38F, "N8", "-340,282,300,000,000,000,000,000,000,000,000,000,000.00000000");
280 FormatStringTest (202, -3.402823E+38F, "N9", "-340,282,300,000,000,000,000,000,000,000,000,000,000.000000000");
281 FormatStringTest (203, -3.402823E+38F, "N67", "-340,282,300,000,000,000,000,000,000,000,000,000,000.0000000000000000000000000000000000000000000000000000000000000000000");
282 FormatStringTest (204, -3.402823E+38F, "P", GetPercent ("-34,028,230,000,000,000,000,000,000,000,000,000,000,000.00"));
283 FormatStringTest (205, -3.402823E+38F, "P0", GetPercent ("-34,028,230,000,000,000,000,000,000,000,000,000,000,000"));
284 FormatStringTest (206, -3.402823E+38F, "P1", GetPercent ("-34,028,230,000,000,000,000,000,000,000,000,000,000,000.0"));
285 FormatStringTest (207, -3.402823E+38F, "P2", GetPercent ("-34,028,230,000,000,000,000,000,000,000,000,000,000,000.00"));
286 FormatStringTest (208, -3.402823E+38F, "P3", GetPercent ("-34,028,230,000,000,000,000,000,000,000,000,000,000,000.000"));
287 FormatStringTest (209, -3.402823E+38F, "P4", GetPercent ("-34,028,230,000,000,000,000,000,000,000,000,000,000,000.0000"));
288 FormatStringTest (210, -3.402823E+38F, "P5", GetPercent ("-34,028,230,000,000,000,000,000,000,000,000,000,000,000.00000"));
289 FormatStringTest (211, -3.402823E+38F, "P6", GetPercent ("-34,028,230,000,000,000,000,000,000,000,000,000,000,000.000000"));
290 FormatStringTest (212, -3.402823E+38F, "P7", GetPercent ("-34,028,230,000,000,000,000,000,000,000,000,000,000,000.0000000"));
291 FormatStringTest (213, -3.402823E+38F, "P8", GetPercent ("-34,028,230,000,000,000,000,000,000,000,000,000,000,000.00000000"));
292 FormatStringTest (214, -3.402823E+38F, "P9", GetPercent ("-34,028,230,000,000,000,000,000,000,000,000,000,000,000.000000000"));
293 FormatStringTest (215, -3.402823E+38F, "P67", GetPercent ("-34,028,230,000,000,000,000,000,000,000,000,000,000,000.0000000000000000000000000000000000000000000000000000000000000000000"));
294 FormatStringTest (216, 1E-10F, "C", "$0.00");
295 FormatStringTest (217, 1E-10F, "C0", "$0");
296 FormatStringTest (218, 1E-10F, "C1", "$0.0");
297 FormatStringTest (219, 1E-10F, "C2", "$0.00");
298 FormatStringTest (220, 1E-10F, "C3", "$0.000");
299 FormatStringTest (221, 1E-10F, "C4", "$0.0000");
300 FormatStringTest (222, 1E-10F, "C5", "$0.00000");
301 FormatStringTest (223, 1E-10F, "C6", "$0.000000");
302 FormatStringTest (224, 1E-10F, "C7", "$0.0000000");
303 FormatStringTest (225, 1E-10F, "C8", "$0.00000000");
304 FormatStringTest (226, 1E-10F, "C9", "$0.000000000");
305 FormatStringTest (227, 1E-10F, "C67", "$0.0000000001000000000000000000000000000000000000000000000000000000000");
306 FormatStringTest (228, 1E-10F, "E", "1.000000E-010");
307 FormatStringTest (229, 1E-10F, "E0", "1E-010");
308 FormatStringTest (230, 1E-10F, "E1", "1.0E-010");
309 FormatStringTest (231, 1E-10F, "E2", "1.00E-010");
310 FormatStringTest (232, 1E-10F, "E3", "1.000E-010");
311 FormatStringTest (233, 1E-10F, "E4", "1.0000E-010");
312 FormatStringTest (234, 1E-10F, "E5", "1.00000E-010");
313 FormatStringTest (235, 1E-10F, "E6", "1.000000E-010");
314 FormatStringTest (236, 1E-10F, "E7", "1.0000000E-010");
315 FormatStringTest (237, 1E-10F, "E8", "1.00000001E-010");
316 FormatStringTest (238, 1E-10F, "E9", "1.000000010E-010");
317 FormatStringTest (239, 1E-10F, "E67", "1.0000000100000000000000000000000000000000000000000000000000000000000E-010");
318 FormatStringTest (240, 1E-10F, "F", "0.00");
319 FormatStringTest (241, 1E-10F, "F0", "0");
320 FormatStringTest (242, 1E-10F, "F1", "0.0");
321 FormatStringTest (243, 1E-10F, "F2", "0.00");
322 FormatStringTest (244, 1E-10F, "F3", "0.000");
323 FormatStringTest (245, 1E-10F, "F4", "0.0000");
324 FormatStringTest (246, 1E-10F, "F5", "0.00000");
325 FormatStringTest (247, 1E-10F, "F6", "0.000000");
326 FormatStringTest (248, 1E-10F, "F7", "0.0000000");
327 FormatStringTest (249, 1E-10F, "F8", "0.00000000");
328 FormatStringTest (250, 1E-10F, "F9", "0.000000000");
329 FormatStringTest (251, 1E-10F, "F67", "0.0000000001000000000000000000000000000000000000000000000000000000000");
330 FormatStringTest (252, 1E-10F, "G", "1E-10");
331 FormatStringTest (253, 1E-10F, "G0", "1E-10");
332 FormatStringTest (254, 1E-10F, "G1", "1E-10");
333 FormatStringTest (255, 1E-10F, "G2", "1E-10");
334 FormatStringTest (256, 1E-10F, "G3", "1E-10");
335 FormatStringTest (257, 1E-10F, "G4", "1E-10");
336 FormatStringTest (258, 1E-10F, "G5", "1E-10");
337 FormatStringTest (259, 1E-10F, "G6", "1E-10");
338 FormatStringTest (260, 1E-10F, "G7", "1E-10");
339 FormatStringTest (261, 1E-10F, "G8", "1E-10");
340 FormatStringTest (262, 1E-10F, "G9", "1.00000001E-10");
341 FormatStringTest (263, 1E-10F, "G67", "1.00000001E-10");
342 FormatStringTest (264, 1E-10F, "N", "0.00");
343 FormatStringTest (265, 1E-10F, "N0", "0");
344 FormatStringTest (266, 1E-10F, "N1", "0.0");
345 FormatStringTest (267, 1E-10F, "N2", "0.00");
346 FormatStringTest (268, 1E-10F, "N3", "0.000");
347 FormatStringTest (269, 1E-10F, "N4", "0.0000");
348 FormatStringTest (270, 1E-10F, "N5", "0.00000");
349 FormatStringTest (271, 1E-10F, "N6", "0.000000");
350 FormatStringTest (272, 1E-10F, "N7", "0.0000000");
351 FormatStringTest (273, 1E-10F, "N8", "0.00000000");
352 FormatStringTest (274, 1E-10F, "N9", "0.000000000");
353 FormatStringTest (275, 1E-10F, "N67", "0.0000000001000000000000000000000000000000000000000000000000000000000");
354 FormatStringTest (276, 1E-10F, "P", GetPercent ("0.00"));
355 FormatStringTest (277, 1E-10F, "P0", GetPercent ("0"));
356 FormatStringTest (278, 1E-10F, "P1", GetPercent ("0.0"));
357 FormatStringTest (279, 1E-10F, "P2", GetPercent ("0.00"));
358 FormatStringTest (280, 1E-10F, "P3", GetPercent ("0.000"));
359 FormatStringTest (281, 1E-10F, "P4", GetPercent ("0.0000"));
360 FormatStringTest (282, 1E-10F, "P5", GetPercent ("0.00000"));
361 FormatStringTest (283, 1E-10F, "P6", GetPercent ("0.000000"));
362 FormatStringTest (284, 1E-10F, "P7", GetPercent ("0.0000000"));
363 FormatStringTest (285, 1E-10F, "P8", GetPercent ("0.00000001"));
364 FormatStringTest (286, 1E-10F, "P9", GetPercent ("0.000000010"));
365 FormatStringTest (287, 1E-10F, "P67", GetPercent ("0.0000000100000000000000000000000000000000000000000000000000000000000"));