@@ -14,6 +14,7 @@ TEST(ValueTest, DefaultConstructor)
1414 ASSERT_FALSE (v.isNaN ());
1515 ASSERT_TRUE (v.isNumber ());
1616 ASSERT_TRUE (v.isValidNumber ());
17+ ASSERT_TRUE (v.isInt ());
1718 ASSERT_FALSE (v.isBool ());
1819 ASSERT_FALSE (v.isString ());
1920}
@@ -29,6 +30,7 @@ TEST(ValueTest, FloatConstructor)
2930 ASSERT_FALSE (v.isNaN ());
3031 ASSERT_TRUE (v.isNumber ());
3132 ASSERT_TRUE (v.isValidNumber ());
33+ ASSERT_FALSE (v.isInt ());
3234 ASSERT_FALSE (v.isBool ());
3335 ASSERT_FALSE (v.isString ());
3436 }
@@ -81,6 +83,21 @@ TEST(ValueTest, DoubleConstructor)
8183 ASSERT_FALSE (v.isNaN ());
8284 ASSERT_TRUE (v.isNumber ());
8385 ASSERT_TRUE (v.isValidNumber ());
86+ ASSERT_FALSE (v.isInt ());
87+ ASSERT_FALSE (v.isBool ());
88+ ASSERT_FALSE (v.isString ());
89+ }
90+
91+ {
92+ Value v (static_cast <double >(-5.0 ));
93+ ASSERT_EQ (v.toDouble (), -5.0 );
94+ ASSERT_EQ (v.type (), Value::Type::Double);
95+ ASSERT_FALSE (v.isInfinity ());
96+ ASSERT_FALSE (v.isNegativeInfinity ());
97+ ASSERT_FALSE (v.isNaN ());
98+ ASSERT_TRUE (v.isNumber ());
99+ ASSERT_TRUE (v.isValidNumber ());
100+ ASSERT_TRUE (v.isInt ());
84101 ASSERT_FALSE (v.isBool ());
85102 ASSERT_FALSE (v.isString ());
86103 }
@@ -132,6 +149,7 @@ TEST(ValueTest, IntConstructor)
132149 ASSERT_FALSE (v.isNaN ());
133150 ASSERT_TRUE (v.isNumber ());
134151 ASSERT_TRUE (v.isValidNumber ());
152+ ASSERT_TRUE (v.isInt ());
135153 ASSERT_FALSE (v.isBool ());
136154 ASSERT_FALSE (v.isString ());
137155}
@@ -146,6 +164,7 @@ TEST(ValueTest, SizeTConstructor)
146164 ASSERT_FALSE (v.isNaN ());
147165 ASSERT_TRUE (v.isNumber ());
148166 ASSERT_TRUE (v.isValidNumber ());
167+ ASSERT_TRUE (v.isInt ());
149168 ASSERT_FALSE (v.isBool ());
150169 ASSERT_FALSE (v.isString ());
151170}
@@ -160,6 +179,7 @@ TEST(ValueTest, LongConstructor)
160179 ASSERT_FALSE (v.isNaN ());
161180 ASSERT_TRUE (v.isNumber ());
162181 ASSERT_TRUE (v.isValidNumber ());
182+ ASSERT_TRUE (v.isInt ());
163183 ASSERT_FALSE (v.isBool ());
164184 ASSERT_FALSE (v.isString ());
165185}
@@ -175,6 +195,7 @@ TEST(ValueTest, BoolConstructor)
175195 ASSERT_FALSE (v.isNaN ());
176196 ASSERT_FALSE (v.isNumber ());
177197 ASSERT_TRUE (v.isValidNumber ());
198+ ASSERT_TRUE (v.isInt ());
178199 ASSERT_TRUE (v.isBool ());
179200 ASSERT_FALSE (v.isString ());
180201 }
@@ -188,6 +209,7 @@ TEST(ValueTest, BoolConstructor)
188209 ASSERT_FALSE (v.isNaN ());
189210 ASSERT_FALSE (v.isNumber ());
190211 ASSERT_TRUE (v.isValidNumber ());
212+ ASSERT_TRUE (v.isInt ());
191213 ASSERT_TRUE (v.isBool ());
192214 ASSERT_FALSE (v.isString ());
193215 }
@@ -204,6 +226,7 @@ TEST(ValueTest, StdStringConstructor)
204226 ASSERT_FALSE (v.isNaN ());
205227 ASSERT_FALSE (v.isNumber ());
206228 ASSERT_FALSE (v.isValidNumber ());
229+ ASSERT_TRUE (v.isInt ());
207230 ASSERT_FALSE (v.isBool ());
208231 ASSERT_TRUE (v.isString ());
209232 }
@@ -217,6 +240,7 @@ TEST(ValueTest, StdStringConstructor)
217240 ASSERT_FALSE (v.isNaN ());
218241 ASSERT_FALSE (v.isNumber ());
219242 ASSERT_TRUE (v.isValidNumber ());
243+ ASSERT_TRUE (v.isInt ());
220244 ASSERT_FALSE (v.isBool ());
221245 ASSERT_TRUE (v.isString ());
222246 }
@@ -231,6 +255,7 @@ TEST(ValueTest, StdStringConstructor)
231255 ASSERT_FALSE (v.isNaN ());
232256 ASSERT_FALSE (v.isNumber ());
233257 ASSERT_TRUE (v.isValidNumber ());
258+ ASSERT_FALSE (v.isInt ());
234259 ASSERT_FALSE (v.isBool ());
235260 ASSERT_TRUE (v.isString ());
236261 }
@@ -244,6 +269,7 @@ TEST(ValueTest, StdStringConstructor)
244269 ASSERT_FALSE (v.isNaN ());
245270 ASSERT_FALSE (v.isNumber ());
246271 ASSERT_FALSE (v.isValidNumber ());
272+ ASSERT_TRUE (v.isInt ());
247273 ASSERT_FALSE (v.isBool ());
248274 ASSERT_TRUE (v.isString ());
249275 }
@@ -258,6 +284,7 @@ TEST(ValueTest, StdStringConstructor)
258284 ASSERT_FALSE (v.isNaN ());
259285 ASSERT_FALSE (v.isNumber ());
260286 ASSERT_TRUE (v.isValidNumber ());
287+ ASSERT_TRUE (v.isInt ());
261288 ASSERT_FALSE (v.isBool ());
262289 ASSERT_TRUE (v.isString ());
263290 }
@@ -272,6 +299,7 @@ TEST(ValueTest, StdStringConstructor)
272299 ASSERT_FALSE (v.isNaN ());
273300 ASSERT_FALSE (v.isNumber ());
274301 ASSERT_FALSE (v.isValidNumber ());
302+ ASSERT_TRUE (v.isInt ());
275303 ASSERT_FALSE (v.isBool ());
276304 ASSERT_TRUE (v.isString ());
277305 }
@@ -324,6 +352,7 @@ TEST(ValueTest, CStringConstructor)
324352 ASSERT_FALSE (v.isNaN ());
325353 ASSERT_FALSE (v.isNumber ());
326354 ASSERT_FALSE (v.isValidNumber ());
355+ ASSERT_TRUE (v.isInt ());
327356 ASSERT_FALSE (v.isBool ());
328357 ASSERT_TRUE (v.isString ());
329358 }
@@ -374,6 +403,7 @@ TEST(ValueTest, InfinityConstructor)
374403 ASSERT_FALSE (v.isNaN ());
375404 ASSERT_FALSE (v.isNumber ());
376405 ASSERT_TRUE (v.isValidNumber ());
406+ ASSERT_TRUE (v.isInt ());
377407 ASSERT_FALSE (v.isBool ());
378408 ASSERT_FALSE (v.isString ());
379409}
@@ -387,6 +417,7 @@ TEST(ValueTest, NegativeInfinityConstructor)
387417 ASSERT_FALSE (v.isNaN ());
388418 ASSERT_FALSE (v.isNumber ());
389419 ASSERT_TRUE (v.isValidNumber ());
420+ ASSERT_TRUE (v.isInt ());
390421 ASSERT_FALSE (v.isBool ());
391422 ASSERT_FALSE (v.isString ());
392423}
@@ -400,6 +431,7 @@ TEST(ValueTest, NaNConstructor)
400431 ASSERT_TRUE (v.isNaN ());
401432 ASSERT_FALSE (v.isNumber ());
402433 ASSERT_FALSE (v.isValidNumber ());
434+ ASSERT_TRUE (v.isInt ());
403435 ASSERT_FALSE (v.isBool ());
404436 ASSERT_FALSE (v.isString ());
405437}
0 commit comments