119 const std::string& msg = std::string(
"")) {
120 std::stringstream message;
121 message <<
"testToCooked failed for type " << typeName<T>() <<
" with input " << std::hex <<
"0x" << input << std::hex
122 <<
", expected 0x" << expectedValue << std::dec;
124 BOOST_TEST_CHECKPOINT(message.str());
128 message << std::hex <<
", output 0x" << output << std::dec;
131 message << std::hex <<
", output 0x" << output << std::dec <<
", " << msg;
134 BOOST_CHECK_MESSAGE(output == expectedValue, message.str());
139 const std::string& msg = std::string(
"")) {
140 std::stringstream message;
141 message <<
"testToRaw failed for type " << typeName<T>() <<
" with input 0x" << std::hex << input <<
", expected 0x"
142 << expectedValue << std::dec;
144 BOOST_TEST_CHECKPOINT(message.str());
146 uint32_t result = converter.
toRaw(input);
148 message << std::hex <<
", output 0x" << result << std::dec;
151 message << std::hex <<
", output 0x" << result << std::dec <<
", " << msg;
154 BOOST_CHECK_MESSAGE(result == expectedValue, message.str());
186 checkToCookedOverflowNeg<unsigned int>(converter, 0xAAAAAAAA);
187 checkToCooked(converter, 0x55555555, (
unsigned int)0x55555555);
188 checkToCookedOverflowNeg<short>(converter, 0xAAAAAAAA);
189 checkToCookedOverflowPos<short>(converter, 0x55555555);
190 checkToCookedOverflowNeg<unsigned short>(converter, 0xAAAAAAAA);
191 checkToCookedOverflowPos<unsigned short>(converter, 0x55555555);
202 checkToRaw(converter, (
int)0x55555555, 0x55555555);
203 checkToRaw(converter, (
int)0xAAAAAAAA, 0xAAAAAAAA);
204 checkToRaw(converter, (
unsigned int)0x55555555, 0x55555555);
205 checkToRaw(converter, (
unsigned int)0xAAAAAAAA, 0x7FFFFFFF);
207 checkToRaw(converter, (
short)0xAAAA, 0xFFFFAAAA);
208 checkToRaw(converter, (
unsigned short)0x5555, 0x5555);
209 checkToRaw(converter, (
unsigned short)0xAAAA, 0xAAAA);
210 checkToRaw(converter, (int64_t)0x5555, 0x5555);
211 checkToRaw(converter, (int64_t)0xFFFFFFFFFFFFAAAA, 0xFFFFAAAA);
212 checkToRaw(converter, (int64_t)0xFFFFFFFAAAAAAAAA,
214 checkToRaw(converter, (int64_t)0xFFFFFFFFF, 0x7FFFFFFF);
218 checkToCooked(converter, 0x55555555, std::string(
"1431655765"));
219 checkToRaw(converter, std::string(
"1431655765"), 0x55555555);
231 checkToCookedOverflowPos<int>(converter, 0xAAAAAAAA);
233 checkToCooked(converter, 0xAAAAAAAA, (
unsigned int)0xAAAAAAAA);
234 checkToCooked(converter, 0x55555555, (
unsigned int)0x55555555);
235 checkToCookedOverflowPos<short>(converter, 0xAAAAAAAA);
236 checkToCookedOverflowPos<unsigned short>(converter, 0x55555555);
249 checkToRaw(converter, (
int)0x55555555, 0x55555555);
251 checkToRaw(converter, (
unsigned int)0x55555555, 0x55555555);
252 checkToRaw(converter, (
unsigned int)0xAAAAAAAA, 0xAAAAAAAA);
255 checkToRaw(converter, (
unsigned short)0x5555, 0x5555);
256 checkToRaw(converter, (
unsigned short)0xAAAA, 0xAAAA);
257 checkToRaw(converter, (int64_t)0x5555, 0x5555);
260 checkToRaw(converter, (int64_t)0x100000000, 0xFFFFFFFF);
264 checkToCooked(converter, 0x55555555, std::string(
"1431655765"));
265 checkToRaw(converter, std::string(
"1431655765"), 0x55555555);
267 checkToCooked(converter, 0xAAAAAAAA, std::string(
"2863311530"));
268 checkToRaw(converter, std::string(
"2863311530"), 0xAAAAAAAA);
281 checkToCookedOverflowNeg<unsigned int>(converter, 0xAAAA);
285 checkToCookedOverflowNeg<unsigned short>(converter, 0xAAAA);
288 checkToCooked(converter, 0xAAAA,
static_cast<int64_t
>(
static_cast<int16_t
>(0xAAAA)));
291 checkToCookedOverflowNeg<uint64_t>(converter, 0xAAAA);
302 checkToRaw(converter, (
int)0x55555555, 0x7FFF);
303 checkToRaw(converter, (
int)0xAAAAAAAA, 0x8000);
304 checkToRaw(converter, (
unsigned int)0x55555555, 0x7FFF);
305 checkToRaw(converter, (
unsigned int)0xAAAAAAAA, 0x7FFF);
308 checkToRaw(converter, (
unsigned short)0x5555, 0x5555);
309 checkToRaw(converter, (
unsigned short)0xAAAA, 0x7FFF);
310 checkToRaw(converter, (int64_t)0x5555, 0x5555);
311 checkToRaw(converter,
static_cast<int64_t
>(
static_cast<int16_t
>(0xAAAA)), 0xAAAA);
312 checkToRaw(converter, (int64_t)0x555555, 0x7FFF);
313 checkToRaw(converter,
static_cast<int64_t
>(
static_cast<int32_t
>(0xAAAAAAAA)), 0x8000);
314 checkToRaw(converter, (uint64_t)0x5555, 0x5555);
316 checkToRaw(converter, (uint64_t)0xF555, 0x7FFF);
329 checkToCookedOverflowPos<short>(converter, 0xAAAA);
347 checkToRaw(converter, (
int)0x55555555, 0xFFFF);
349 checkToRaw(converter, (
unsigned int)0x55555555, 0xFFFF);
350 checkToRaw(converter, (
unsigned int)0xAAAAAAAA, 0xFFFF);
353 checkToRaw(converter, (
unsigned short)0x5555, 0x5555);
354 checkToRaw(converter, (
unsigned short)0xAAAA, 0xAAAA);
355 checkToRaw(converter, (int64_t)0x5555, 0x5555);
356 checkToRaw(converter,
static_cast<int64_t
>(
static_cast<int16_t
>(0xAAAA)), 0);
357 checkToRaw(converter, (int64_t)0x555555, 0xFFFF);
358 checkToRaw(converter, (uint64_t)0x5555, 0x5555);
360 checkToRaw(converter, (uint64_t)0xFF555, 0xFFFF);
371 checkToCookedOverflowNeg<unsigned int>(converter, 0xAA);
375 checkToCookedOverflowNeg<unsigned short>(converter, 0xAA);
378 checkToCooked(converter, 0xAA,
static_cast<int64_t
>(
static_cast<int8_t
>(0xAA)));
380 checkToCookedOverflowNeg<uint64_t>(converter, 0xAA);
393 checkToRaw(converter, (
unsigned int)0x55555555, 0x7F);
394 checkToRaw(converter, (
unsigned int)0xAAAAAAAA, 0x7F);
397 checkToRaw(converter, (
unsigned short)0x5555, 0x7F);
398 checkToRaw(converter, (
unsigned short)0xAAAA, 0x7F);
401 checkToRaw(converter,
static_cast<int64_t
>(
static_cast<int8_t
>(0xAA)), 0xAA);
403 checkToRaw(converter,
static_cast<int64_t
>(
static_cast<int32_t
>(0xAAAAAAAA)), 0x80);
438 checkToRaw(converter, (
unsigned int)0x55555555, 0xFF);
439 checkToRaw(converter, (
unsigned int)0xAAAAAAAA, 0xFF);
442 checkToRaw(converter, (
unsigned short)0x5555, 0xFF);
443 checkToRaw(converter, (
unsigned short)0xAAAA, 0xFF);
445 checkToRaw(converter,
static_cast<int64_t
>(
static_cast<int16_t
>(0xAAAA)), 0);
446 checkToRaw(converter, (int64_t)0x555555, 0xFF);
449 checkToRaw(converter, (uint64_t)0xFF555, 0xFF);
459 checkToCookedOverflowPos<int>(converter, 0x000AAAAA);
462 checkToCookedOverflowNeg<unsigned int>(converter, 0xFFFAAAAA);
463 checkToCooked(converter, 0x00055555, (
unsigned int)0x55555000);
464 checkToCooked(converter, 0x000AAAAA, (
unsigned int)0xAAAAA000);
465 checkToCooked(converter, 0xAAAAAAAA, (int64_t)0xFFFFFAAAAAAAA000);
466 checkToCooked(converter, 0x55555555, (int64_t)0x55555555000);
467 checkToCooked(converter, 0x55555555, (uint64_t)0x55555555000);
468 checkToCookedOverflowNeg<uint64_t>(converter, 0xAAAAAAAA);
479 checkToRaw(converter, (
int)0x55555555, 0x00055555);
481 checkToRaw(converter, (
int)0xAAAAAAAA, 0xFFFAAAAB);
482 checkToRaw(converter, (
unsigned int)0x55555555, 0x00055555);
483 checkToRaw(converter, (
unsigned int)0xAAAAAAAA, 0x000AAAAB);
484 checkToRaw(converter, (
short)0x5555, 0x00000005);
485 checkToRaw(converter, (
short)0xAAAA, 0xFFFFFFFB);
486 checkToRaw(converter, (
unsigned short)0x5555, 0x00000005);
487 checkToRaw(converter, (
unsigned short)0xAAAA, 0x0000000B);
488 checkToRaw(converter, (int64_t)0x55555555, 0x00055555);
489 checkToRaw(converter,
static_cast<int64_t
>(
static_cast<int32_t
>(0xAAAAAAAA)), 0XFFFAAAAB);
490 checkToRaw(converter, (int64_t)0x5555555555555, 0x7fffffff);
491 checkToRaw(converter, (int64_t)0xFFFFA55555555555, 0x80000000);
492 checkToRaw(converter, (uint64_t)0x55555, 0x00000055);
493 checkToRaw(converter, (uint64_t)0x5555555555555, 0X7FFFFFFF);
503 checkToCookedOverflowPos<int>(converter, 0x000AAAAA);
505 checkToCooked(converter, 0x00055555, (
unsigned int)0x55555000);
506 checkToCooked(converter, 0x000AAAAA, (
unsigned int)0xAAAAA000);
507 checkToCookedOverflowPos<unsigned short>(converter, 0x000AAAAA);
510 checkToCooked(converter, 0xAAAAAAAA, (int64_t)0xAAAAAAAA000);
512 checkToCooked(converter, 0xAAAAAAAA, (uint64_t)0xAAAAAAAA000);
523 checkToRaw(converter, (
int)0x55555555, 0x00055555);
525 checkToRaw(converter, (
unsigned int)0x55555555, 0x00055555);
526 checkToRaw(converter, (
unsigned int)0xAAAAAAAA, 0x000AAAAB);
527 checkToRaw(converter, (
short)0x5555, 0x00000005);
529 checkToRaw(converter, (
unsigned short)0x5555, 0x00000005);
530 checkToRaw(converter, (
unsigned short)0xAAAA, 0x0000000B);
531 checkToRaw(converter, (int64_t)0x55555555, 0x00055555);
532 checkToRaw(converter,
static_cast<int64_t
>(
static_cast<int32_t
>(0xAAAAAAAA)), 0x0);
533 checkToRaw(converter, (int64_t)0x5555555555555, 0xFFFFFFFF);
534 checkToRaw(converter, (uint64_t)0x55555, 0x00000055);
535 checkToRaw(converter, (uint64_t)0x5555555555555, 0XFFFFFFFF);
544 checkToCookedOverflowNeg<int>(converter, 0xAAAAAAAA);
545 checkToCookedOverflowPos<int>(converter, 0x55555555);
547 checkToCookedOverflowNeg<unsigned int>(converter, 0xAAAAAAAA);
548 checkToCooked(converter, 0x55555555, (
unsigned int)0xAAAAAAAA);
549 checkToCooked(converter, 0x22222202, (
unsigned int)0x44444404);
550 checkToCooked(converter, 0x7FFFFFFF, (
unsigned int)0xFFFFFFFE);
551 checkToCooked(converter, 0xAAAAAAAA, (int64_t)0xFFFFFFFF55555554);
565 checkToRaw(converter, (
int)0x55555554, 0x2AAAAAAA);
566 checkToRaw(converter, (
int)0x55555555, 0x2AAAAAAB);
567 checkToRaw(converter, (
int)0x55555556, 0x2AAAAAAB);
568 checkToRaw(converter, (
int)0xAAAAAAAA, 0xD5555555);
569 checkToRaw(converter, (
unsigned int)0x55555555, 0x2AAAAAAB);
570 checkToRaw(converter, (
unsigned int)0xAAAAAAAA, 0x55555555);
571 checkToRaw(converter, (
short)0x5555, 0x00002AAB);
572 checkToRaw(converter, (
short)0xAAAA, 0xFFFFD555);
573 checkToRaw(converter, (
unsigned short)0x5555, 0x00002AAB);
574 checkToRaw(converter, (
unsigned short)0xAAAA, 0x00005555);
575 checkToRaw(converter,
static_cast<int64_t
>(
static_cast<int32_t
>(0xAAAAAAAA)), 0xD5555555);
576 checkToRaw(converter,
static_cast<uint64_t
>(0xAAAAAAAA), 0x55555555);
587 checkToCooked(converter, 0x55555555, (
unsigned int)0xAAAAAAAA);
588 checkToCooked(converter, 0x22222202, (
unsigned int)0x44444404);
602 checkToRaw(converter, (
int)0x55555555, 0x2AAAAAAB);
604 checkToRaw(converter, (
unsigned int)0x55555555, 0x2AAAAAAB);
605 checkToRaw(converter, (
unsigned int)0xAAAAAAAA, 0x55555555);
606 checkToRaw(converter, (
short)0x5555, 0x00002AAB);
608 checkToRaw(converter, (
unsigned short)0x5555, 0x00002AAB);
609 checkToRaw(converter, (
unsigned short)0xAAAA, 0x00005555);
614 "Variable16minus1signed", 16, -1);
618 checkToCookedOverflowNeg<int16_t>(converter, 0xAAAAAAAA);
619 checkToCookedOverflowPos<int16_t>(converter, 0x55555555);
621 checkToCookedOverflowNeg<unsigned int>(converter, 0xAAAA);
625 checkToCooked(converter, 0xAAAAAAAA, (int64_t)0xFFFFFFFFFFFF5554);
642 checkToRaw(converter, (
int)0xFFFFAAAA, 0xD555);
643 checkToRaw(converter, (
unsigned int)0x5555, 0x2AAB);
644 checkToRaw(converter, (
unsigned int)0xAAAA, 0x5555);
645 checkToRaw(converter, (
short)0x5555, 0x00002AAB);
647 checkToRaw(converter, (
unsigned short)0x5555, 0x00002AAB);
648 checkToRaw(converter, (
unsigned short)0xAAAA, 0x00005555);
649 checkToRaw(converter,
static_cast<int64_t
>(
static_cast<int32_t
>(0xFFFFAAAA)), 0xD555);
650 checkToRaw(converter,
static_cast<uint64_t
>(0xAAAA), 0x5555);
700 checkToCooked(converter, 0x55555555, (
unsigned int)0x2AAAAAAB);
701 checkToCooked(converter, 0x22222202, (
unsigned int)0x11111101);
702 checkToCooked(converter, 0xAAAAAAAA, (int64_t)0xFFFFFFFFD5555555);
715 checkToRaw(converter, (
int)0x55555555, 0x7FFFFFFF);
716 checkToRaw(converter, (
int)0xAAAAAAAA, 0x80000000);
717 checkToRaw(converter, (
int)0x22222202, 0x44444404);
718 checkToRaw(converter, (
int)0xE2222202, 0xC4444404);
719 checkToRaw(converter, (
unsigned int)0x55555555, 0x7FFFFFFF);
720 checkToRaw(converter, (
unsigned int)0xAAAAAAAA, 0x7FFFFFFF);
721 checkToRaw(converter, (
unsigned int)0x22222202, 0x44444404);
722 checkToRaw(converter, (
unsigned int)0xE2222202, 0x7FFFFFFF);
723 checkToRaw(converter, (
short)0x5555, 0x0000AAAA);
724 checkToRaw(converter, (
short)0xAAAA, 0xFFFF5554);
725 checkToRaw(converter, (
unsigned short)0x5555, 0x0000AAAA);
726 checkToRaw(converter, (
unsigned short)0xAAAA, 0x00015554);
727 checkToRaw(converter,
static_cast<int64_t
>(
static_cast<int32_t
>(0xFAAAAAAA)), 0XF5555554);
728 checkToRaw(converter,
static_cast<uint64_t
>(0xAAAAAAA), 0X15555554);
740 checkToCooked(converter, 0xAAAAAAAA, (
unsigned int)0x55555555);
741 checkToCooked(converter, 0x55555555, (
unsigned int)0x2AAAAAAB);
742 checkToCooked(converter, 0x22222202, (
unsigned int)0x11111101);
756 checkToRaw(converter, (
int)0x55555555, 0xAAAAAAAA);
758 checkToRaw(converter, (
int)0x22222202, 0x44444404);
760 checkToRaw(converter, (
unsigned int)0x55555555, 0xAAAAAAAA);
761 checkToRaw(converter, (
unsigned int)0xAAAAAAAA, 0xFFFFFFFF);
762 checkToRaw(converter, (
unsigned int)0x22222202, 0x44444404);
763 checkToRaw(converter, (
unsigned int)0xE2222202, 0xFFFFFFFF);
764 checkToRaw(converter, (
short)0x5555, 0x0000AAAA);
766 checkToRaw(converter, (
unsigned short)0x5555, 0x0000AAAA);
767 checkToRaw(converter, (
unsigned short)0xAAAA, 0x00015554);
768 checkToRaw(converter,
static_cast<int64_t
>(
static_cast<int32_t
>(0xFAAAAAAA)), 0x0);
769 checkToRaw(converter,
static_cast<uint64_t
>(0xFAAAAAAA), 0XFFFFFFFF);
790 checkToCooked(converter, 0x55555555, (
unsigned int)0x00AAAAAB);
791 checkToCooked(converter, 0x22220222, (
unsigned int)0x00444404);
803 checkToRaw(converter, (
int)0x55555555, 0x7FFFFFFF);
804 checkToRaw(converter, (
int)0xAAAAAAAA, 0x80000000);
805 checkToRaw(converter, (
int)0x00888808, 0x44440400);
806 checkToRaw(converter, (
int)0xFF888808, 0xC4440400);
807 checkToRaw(converter, (
unsigned int)0x55555555, 0x7FFFFFFF);
808 checkToRaw(converter, (
unsigned int)0xAAAAAAAA, 0x7FFFFFFF);
809 checkToRaw(converter, (
unsigned int)0x00888808, 0x44440400);
810 checkToRaw(converter, (
unsigned int)0xFF888808, 0x7FFFFFFF);
811 checkToRaw(converter, (
short)0x5555, 0x002AAA80);
812 checkToRaw(converter, (
short)0xAAAA, 0xFFD55500);
813 checkToRaw(converter, (
unsigned short)0x5555, 0x002AAA80);
814 checkToRaw(converter, (
unsigned short)0xAAAA, 0x00555500);
817 checkToRaw(converter, std::string(
"0.25"), 0x20);
829 checkToCooked(converter, 0xAAAAAAAA, (
unsigned int)0x01555555);
830 checkToCooked(converter, 0x55555555, (
unsigned int)0x00AAAAAB);
831 checkToCooked(converter, 0x22220222, (
unsigned int)0x00444404);
843 checkToRaw(converter, (
int)0x55555555, 0xFFFFFFFF);
845 checkToRaw(converter, (
int)0x00888808, 0x44440400);
847 checkToRaw(converter, (
unsigned int)0x55555555, 0xFFFFFFFF);
848 checkToRaw(converter, (
unsigned int)0xAAAAAAAA, 0xFFFFFFFF);
849 checkToRaw(converter, (
unsigned int)0x00888808, 0x44440400);
850 checkToRaw(converter, (
unsigned int)0xFF888808, 0xFFFFFFFF);
851 checkToRaw(converter, (
short)0x5555, 0x002AAA80);
853 checkToRaw(converter, (
unsigned short)0x5555, 0x002AAA80);
854 checkToRaw(converter, (
unsigned short)0xAAAA, 0x00555500);
866 checkToCookedOverflowNeg<unsigned int>(converter, 0xAAAAAAAA);
871 checkToCookedOverflowNeg<unsigned short>(converter, 0xAAAAAAAA);
890 checkToRaw(converter, (
int)0x55555555, 0x7FFFFFFF);
891 checkToRaw(converter, (
int)0xAAAAAAAA, 0x80000000);
894 checkToRaw(converter, (
unsigned int)0x55555555, 0x7FFFFFFF);
895 checkToRaw(converter, (
short)0x5555, 0x7FFFFFFF);
896 checkToRaw(converter, (
short)0xAAAA, 0x80000000);
898 checkToRaw(converter, (
unsigned short)0x5555, 0x7FFFFFFF);
934 checkToRaw(converter, (
int)0x55555555, 0xFFFFFFFF);
937 checkToRaw(converter, (
unsigned int)0x55555555, 0xFFFFFFFF);
938 checkToRaw(converter, (
unsigned int)1, 0x80000000);
939 checkToRaw(converter, (
short)0x5555, 0xFFFFFFFF);
942 checkToRaw(converter, (
unsigned short)0x5555, 0xFFFFFFFF);
943 checkToRaw(converter, (
unsigned short)1, 0x80000000);
961 checkToRaw(converter, 0.25, 0x40000000,
"ToRaw1");
962 checkToRaw(converter, -0.25, 0xC0000000,
"ToRaw2");
965 checkToRaw(converter, 0.75, 0x7FFFFFFF,
"ToRaw3");
966 checkToRaw(converter, -0.75, 0x80000000,
"ToRaw4");
967 checkToRaw(converter, 3.25, 0x7FFFFFFF,
"ToRaw5");
968 checkToRaw(converter, -3.25, 0x80000000,
"ToRaw6");
969 checkToRaw(converter, 5.75, 0x7FFFFFFF,
"ToRaw7");
970 checkToRaw(converter, -5.75, 0x80000000,
"ToRaw8");
975 checkToRaw(converter, (
int)0x55555555, 0x7FFFFFFF,
"ToRaw9");
976 checkToRaw(converter, (
int)0xAAAAAAAA, 0x80000000,
"ToRaw10");
978 checkToRaw(converter, (
int)1, 0x7FFFFFFF,
"ToRaw12");
979 checkToRaw(converter, (
int)-1, 0x80000000,
"ToRaw13");
981 checkToRaw(converter, (
short)0x5555, 0x7FFFFFFF);
982 checkToRaw(converter, (
short)0xAAAA, 0x80000000,
"ToRaw14");
983 checkToRaw(converter, (
short)-1, 0x80000000,
"ToRaw15");
1016 checkToRaw(converter, (
int)0x55555555, 0xFFFFFFFF);
1020 checkToRaw(converter, (
unsigned int)0x55555555, 0xFFFFFFFF);
1021 checkToRaw(converter, (
short)0x5555, 0xFFFFFFFF);
1024 checkToRaw(converter, (
unsigned short)0x5555, 0xFFFFFFFF);
1188 checkToCooked(converter, 0x2AAAA, (int64_t)0xFFFFFFFFFFFEAAAA);
1202 checkToRaw(converter, (
int)0xFFFEAAAA, 0x2AAAA);
1203 checkToRaw(converter, (
int)0x00015555, 0x15555);
1204 checkToRaw(converter, (
unsigned int)0x00015555, 0x15555);
1205 checkToRaw(converter, (
short)0xA000, 0x3A000);
1206 checkToRaw(converter, (
short)0x5000, 0x05000);
1207 checkToRaw(converter, (
unsigned short)0xA000, 0x0A000);
1209 checkToRaw(converter, (int64_t)0xFFFFFFFFFFFFA000, 0x3A000);
1210 checkToRaw(converter, (int64_t)0xA000, 0xA000);
1211 checkToRaw(converter, (uint64_t)0xA000, 0x0A000);
1272 checkToRaw(converter, (
int)0xFFFFFD55, 0x2AA80);
1274 checkToRaw(converter, (
unsigned int)0x2AA, 0x15500);
1275 checkToRaw(converter, (
short)0xFFAA, 0x3D500);
1276 checkToRaw(converter, (
short)0x0055, 0x02A80);
1277 checkToRaw(converter, (
unsigned short)0x0055, 0x02A80);
1500 checkToCookedOverflowNeg<int16_t>(converter, 0xAAAAAAAA);
1501 checkToCookedOverflowPos<int16_t>(converter, 0x55555555);
1510 checkToRaw(converter, (int16_t)0x7FFF, 0x7FFF);
1511 checkToRaw(converter, (int16_t)0x8000, 0xFFFF8000);
1512 checkToRaw(converter, (int16_t)0xFFFF, 0xFFFFFFFF);
1536 checkToRaw(converter, (int32_t)0x1FFFF, 0x1FFFF);
1537 checkToRaw(converter, (int32_t)0x20000, 0x1FFFF);
1539 checkToRaw(converter, (int32_t)-0x20000, 0x20000);
1544 "signedToUnsigned");
1550 checkToCookedOverflowNeg<uint32_t>(converter, 0xFFFFFFFF);
1551 checkToCookedOverflowNeg<uint16_t>(converter, 0xFFFFFFFA);
1552 checkToCookedOverflowNeg<uint16_t>(converter, 0xAAAAAAAA);
1559 checkToRaw(converter, (uint32_t)0x7FFFFFFF, 0x7FFFFFFF);
1560 checkToRaw(converter, (uint32_t)0x80000000, 0x7FFFFFFF);
1561 checkToRaw(converter, (uint32_t)0xFFFFFFFF, 0x7FFFFFFF);
1569 checkToCookedOverflowNeg<uint16_t>(converter, 0xFFFFFFFF);
1573 checkToCookedOverflowNeg<int16_t>(converter, 0x55555555);
1579 checkToRaw(converter, (uint16_t)0x7FFF, 0x7FFF);
1580 checkToRaw(converter, (uint16_t)0x8000, 0x8000);
1581 checkToRaw(converter, (uint16_t)0xFFFF, 0xFFFF);
1750 float testValue = 3.25;
1752 memcpy(&rawValue, &testValue,
sizeof(
float));
1754 BOOST_CHECK_CLOSE(converter.
scalarToCooked<
float>(rawValue), 3.25, 0.0001);
1755 BOOST_CHECK_CLOSE(converter.
scalarToCooked<
double>(rawValue), 3.25, 0.0001);
1756 BOOST_CHECK_EQUAL(converter.
scalarToCooked<int8_t>(rawValue), 3);
1757 BOOST_CHECK_EQUAL(converter.
scalarToCooked<uint8_t>(rawValue), 3);
1758 BOOST_CHECK_EQUAL(converter.
scalarToCooked<int16_t>(rawValue), 3);
1759 BOOST_CHECK_EQUAL(converter.
scalarToCooked<uint16_t>(rawValue), 3);
1760 BOOST_CHECK_EQUAL(converter.
scalarToCooked<int32_t>(rawValue), 3);
1761 BOOST_CHECK_EQUAL(converter.
scalarToCooked<uint32_t>(rawValue), 3);
1762 BOOST_CHECK_EQUAL(converter.
scalarToCooked<int64_t>(rawValue), 3);
1763 BOOST_CHECK_EQUAL(converter.
scalarToCooked<uint64_t>(rawValue), 3);
1773 float testValue = 60000.7;
1775 memcpy(&rawValue, &testValue,
sizeof(
float));
1777 BOOST_CHECK_CLOSE(converter.
scalarToCooked<
float>(rawValue), 60000.7, 0.0001);
1778 BOOST_CHECK_CLOSE(converter.
scalarToCooked<
double>(rawValue), 60000.7, 0.0001);
1779 BOOST_CHECK_EQUAL(converter.
scalarToCooked<int8_t>(rawValue), 127);
1780 BOOST_CHECK_EQUAL(converter.
scalarToCooked<uint8_t>(rawValue), 255);
1781 BOOST_CHECK_EQUAL(converter.
scalarToCooked<int16_t>(rawValue), 32767);
1782 BOOST_CHECK_EQUAL(converter.
scalarToCooked<uint16_t>(rawValue), 60001);
1783 BOOST_CHECK_EQUAL(converter.
scalarToCooked<int32_t>(rawValue), 60001);
1784 BOOST_CHECK_EQUAL(converter.
scalarToCooked<uint32_t>(rawValue), 60001);
1785 BOOST_CHECK_EQUAL(converter.
scalarToCooked<int64_t>(rawValue), 60001);
1786 BOOST_CHECK_EQUAL(converter.
scalarToCooked<uint64_t>(rawValue), 60001);
1794 float testValue = -240.6;
1796 memcpy(&rawValue, &testValue,
sizeof(
float));
1798 BOOST_CHECK_CLOSE(converter.
scalarToCooked<
float>(rawValue), -240.6, 0.0001);
1799 BOOST_CHECK_CLOSE(converter.
scalarToCooked<
double>(rawValue), -240.6, 0.0001);
1800 BOOST_CHECK_EQUAL(converter.
scalarToCooked<int8_t>(rawValue), -128);
1801 BOOST_CHECK_EQUAL(converter.
scalarToCooked<uint8_t>(rawValue), 0);
1802 BOOST_CHECK_EQUAL(converter.
scalarToCooked<int16_t>(rawValue), -241);
1803 BOOST_CHECK_EQUAL(converter.
scalarToCooked<uint16_t>(rawValue), 0);
1804 BOOST_CHECK_EQUAL(converter.
scalarToCooked<int32_t>(rawValue), -241);
1805 BOOST_CHECK_EQUAL(converter.
scalarToCooked<uint32_t>(rawValue), 0);
1806 BOOST_CHECK_EQUAL(converter.
scalarToCooked<int64_t>(rawValue), -241);
1807 BOOST_CHECK_EQUAL(converter.
scalarToCooked<uint64_t>(rawValue), 0);