@@ -264,7 +264,7 @@ BOOST_AUTO_TEST_CASE(pack_convert_variant_float)
264
264
BOOST_CHECK (val2.is_double ());
265
265
BOOST_CHECK (fabs (12.34 - val2.as_double ()) <= kEPS );
266
266
BOOST_CHECK_NO_THROW (boost::get<double >(val2));
267
- BOOST_CHECK (fabs (val1 .as_double () - val2.as_double ()) <= kEPS );
267
+ BOOST_CHECK (fabs (val2 .as_double () - val2.as_double ()) <= kEPS );
268
268
}
269
269
270
270
BOOST_AUTO_TEST_CASE (object_variant_float)
@@ -277,8 +277,7 @@ BOOST_AUTO_TEST_CASE(object_variant_float)
277
277
BOOST_CHECK (val2.is_double ());
278
278
BOOST_CHECK (fabs (12.34 - val2.as_double ()) <= kEPS );
279
279
BOOST_CHECK_NO_THROW (boost::get<double >(val2));
280
- BOOST_CHECK (fabs (val1.as_double () - val2.as_double ()) <= kEPS );
281
- BOOST_CHECK (val1 == val2);
280
+ BOOST_CHECK (fabs (val2.as_double () - val2.as_double ()) <= kEPS );
282
281
}
283
282
284
283
BOOST_AUTO_TEST_CASE (object_with_zone_variant_float)
@@ -292,116 +291,7 @@ BOOST_AUTO_TEST_CASE(object_with_zone_variant_float)
292
291
BOOST_CHECK (val2.is_double ());
293
292
BOOST_CHECK (fabs (12.34 - val2.as_double ()) <= kEPS );
294
293
BOOST_CHECK_NO_THROW (boost::get<double >(val2));
295
- BOOST_CHECK (fabs (val1.as_double () - val2.as_double ()) <= kEPS );
296
- BOOST_CHECK (val1 == val2);
297
- }
298
-
299
- BOOST_AUTO_TEST_CASE (pack_convert_variant_float_zero_atdp_positive)
300
- {
301
- std::stringstream ss;
302
- msgpack::type::variant val1 = 12.0 ;
303
- BOOST_CHECK (val1.is_uint64_t ());
304
- BOOST_CHECK_EQUAL (val1.as_uint64_t (), 12 );
305
- BOOST_CHECK (fabs (12.0 - val1.as_double ()) <= kEPS );
306
-
307
- msgpack::pack (ss, val1);
308
-
309
- std::string const & str = ss.str ();
310
- msgpack::object_handle oh =
311
- msgpack::unpack (str.data (), str.size ());
312
- msgpack::type::variant val2 = oh.get ().as <msgpack::type::variant>();
313
- BOOST_CHECK (val2.is_uint64_t ());
314
- BOOST_CHECK_EQUAL (val2.as_uint64_t (), 12 );
315
- BOOST_CHECK_NO_THROW (boost::get<uint64_t >(val2));
316
- BOOST_CHECK (fabs (12.0 - val2.as_double ()) <= kEPS );
317
- BOOST_CHECK_EQUAL (val1.as_uint64_t (), val2.as_uint64_t ());
318
- }
319
-
320
- BOOST_AUTO_TEST_CASE (object_variant_float_zero_atdp_positive)
321
- {
322
- msgpack::type::variant val1 = 12.0 ;
323
- BOOST_CHECK (val1.is_uint64_t ());
324
- BOOST_CHECK_EQUAL (val1.as_uint64_t (), 12 );
325
- BOOST_CHECK (fabs (12.0 - val1.as_double ()) <= kEPS );
326
- msgpack::object obj (val1);
327
- msgpack::type::variant val2 = obj.as <msgpack::type::variant>();
328
- BOOST_CHECK (val2.is_uint64_t ());
329
- BOOST_CHECK_EQUAL (val2.as_uint64_t (), 12 );
330
- BOOST_CHECK_NO_THROW (boost::get<uint64_t >(val2));
331
- BOOST_CHECK (fabs (12.0 - val2.as_double ()) <= kEPS );
332
- BOOST_CHECK_EQUAL (val1.as_uint64_t (), val2.as_uint64_t ());
333
- BOOST_CHECK (val1 == val2);
334
- }
335
-
336
- BOOST_AUTO_TEST_CASE (object_with_zone_variant_float_zero_atdp_positive)
337
- {
338
- msgpack::zone z;
339
- msgpack::type::variant val1 = 12.0 ;
340
- BOOST_CHECK (val1.is_uint64_t ());
341
- BOOST_CHECK_EQUAL (val1.as_uint64_t (), 12 );
342
- BOOST_CHECK (fabs (12.0 - val1.as_double ()) <= kEPS );
343
- msgpack::object obj (val1, z);
344
- msgpack::type::variant val2 = obj.as <msgpack::type::variant>();
345
- BOOST_CHECK (val2.is_uint64_t ());
346
- BOOST_CHECK_EQUAL (val2.as_uint64_t (), 12 );
347
- BOOST_CHECK_NO_THROW (boost::get<uint64_t >(val2));
348
- BOOST_CHECK_EQUAL (val1.as_uint64_t (), val2.as_uint64_t ());
349
- BOOST_CHECK (fabs (12.0 - val2.as_double ()) <= kEPS );
350
- BOOST_CHECK (val1 == val2);
351
- }
352
-
353
- BOOST_AUTO_TEST_CASE (pack_convert_variant_float_zero_atdp_negative)
354
- {
355
- std::stringstream ss;
356
- msgpack::type::variant val1 = -12.0 ;
357
- BOOST_CHECK (val1.is_int64_t ());
358
- BOOST_CHECK_EQUAL (val1.as_int64_t (), -12 );
359
- BOOST_CHECK (fabs (-12.0 - val1.as_double ()) <= kEPS );
360
-
361
- msgpack::pack (ss, val1);
362
-
363
- std::string const & str = ss.str ();
364
- msgpack::object_handle oh =
365
- msgpack::unpack (str.data (), str.size ());
366
- msgpack::type::variant val2 = oh.get ().as <msgpack::type::variant>();
367
- BOOST_CHECK (val2.is_int64_t ());
368
- BOOST_CHECK_EQUAL (val2.as_int64_t (), -12 );
369
- BOOST_CHECK_NO_THROW (boost::get<int64_t >(val2));
370
- BOOST_CHECK (fabs (-12.0 - val2.as_double ()) <= kEPS );
371
- BOOST_CHECK_EQUAL (val1.as_int64_t (), val2.as_int64_t ());
372
- }
373
-
374
- BOOST_AUTO_TEST_CASE (object_variant_float_zero_atdp_negative)
375
- {
376
- msgpack::type::variant val1 = -12.0 ;
377
- BOOST_CHECK (val1.is_int64_t ());
378
- BOOST_CHECK_EQUAL (val1.as_int64_t (), -12 );
379
- BOOST_CHECK (fabs (-12.0 - val1.as_double ()) <= kEPS );
380
- msgpack::object obj (val1);
381
- msgpack::type::variant val2 = obj.as <msgpack::type::variant>();
382
- BOOST_CHECK (val2.is_int64_t ());
383
- BOOST_CHECK_EQUAL (val2.as_int64_t (), -12 );
384
- BOOST_CHECK_NO_THROW (boost::get<int64_t >(val2));
385
- BOOST_CHECK (fabs (-12.0 - val2.as_double ()) <= kEPS );
386
- BOOST_CHECK_EQUAL (val1.as_int64_t (), val2.as_int64_t ());
387
- BOOST_CHECK (val1 == val2);
388
- }
389
-
390
- BOOST_AUTO_TEST_CASE (object_with_zone_variant_float_zero_atdp_negative)
391
- {
392
- msgpack::zone z;
393
- msgpack::type::variant val1 = -12.0 ;
394
- BOOST_CHECK (val1.is_int64_t ());
395
- BOOST_CHECK_EQUAL (val1.as_int64_t (), -12 );
396
- BOOST_CHECK (fabs (-12.0 - val1.as_double ()) <= kEPS );
397
- msgpack::object obj (val1, z);
398
- msgpack::type::variant val2 = obj.as <msgpack::type::variant>();
399
- BOOST_CHECK (val2.is_int64_t ());
400
- BOOST_CHECK_EQUAL (val2.as_int64_t (), -12 );
401
- BOOST_CHECK_NO_THROW (boost::get<int64_t >(val2));
402
- BOOST_CHECK (fabs (-12.0 - val2.as_double ()) <= kEPS );
403
- BOOST_CHECK_EQUAL (val1.as_int64_t (), val2.as_int64_t ());
404
- BOOST_CHECK (val1 == val2);
294
+ BOOST_CHECK (fabs (val2.as_double () - val2.as_double ()) <= kEPS );
405
295
}
406
296
407
297
// str
0 commit comments