_itoa.cpp 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. #include "_itoa.h"
  2. #include "../../Source/NumberToString.h"
  3. /**
  4. * Test converting a char value into a string
  5. */
  6. void testNumberToString__itoa::testChar(void){
  7. //GetScopeCoverage(_itoa, true);
  8. assertEquals(sizeof(char), 1);
  9. assertEquals(NumberToString::_itoa<char>((char)127), JSON_TEXT("127"));
  10. assertEquals(NumberToString::_itoa<char>((char)15), JSON_TEXT("15"));
  11. assertEquals(NumberToString::_itoa<char>((char)0), JSON_TEXT("0"));
  12. assertEquals(NumberToString::_itoa<char>((char)-0), JSON_TEXT("0"));
  13. assertEquals(NumberToString::_itoa<char>((char)-15), JSON_TEXT("-15"));
  14. assertEquals(NumberToString::_itoa<char>((char)-127), JSON_TEXT("-127"));
  15. //AssertScopeCoverage(_itoa);
  16. }
  17. /**
  18. * Test converting a short value into a string
  19. */
  20. void testNumberToString__itoa::testShort(void){
  21. //GetScopeCoverage(_itoa, true);
  22. assertEquals(sizeof(short), 2);
  23. assertEquals(NumberToString::_itoa<short>((short)32767), JSON_TEXT("32767"));
  24. assertEquals(NumberToString::_itoa<short>((short)127), JSON_TEXT("127"));
  25. assertEquals(NumberToString::_itoa<short>((short)15), JSON_TEXT("15"));
  26. assertEquals(NumberToString::_itoa<short>((short)0), JSON_TEXT("0"));
  27. assertEquals(NumberToString::_itoa<short>((short)-0), JSON_TEXT("0"));
  28. assertEquals(NumberToString::_itoa<short>((short)-15), JSON_TEXT("-15"));
  29. assertEquals(NumberToString::_itoa<short>((short)-127), JSON_TEXT("-127"));
  30. assertEquals(NumberToString::_itoa<short>((short)-32767), JSON_TEXT("-32767"));
  31. //AssertScopeCoverage(_itoa);
  32. }
  33. /**
  34. * Test converting an int value into a string
  35. */
  36. void testNumberToString__itoa::testInt(void){
  37. //GetScopeCoverage(_itoa, true);
  38. assertEquals(sizeof(int), 4);
  39. assertEquals(NumberToString::_itoa<int>((int)2147483647), JSON_TEXT("2147483647"));
  40. assertEquals(NumberToString::_itoa<int>((int)32767), JSON_TEXT("32767"));
  41. assertEquals(NumberToString::_itoa<int>((int)127), JSON_TEXT("127"));
  42. assertEquals(NumberToString::_itoa<int>((int)15), JSON_TEXT("15"));
  43. assertEquals(NumberToString::_itoa<int>((int)0), JSON_TEXT("0"));
  44. assertEquals(NumberToString::_itoa<int>((int)-0), JSON_TEXT("0"));
  45. assertEquals(NumberToString::_itoa<int>((int)-15), JSON_TEXT("-15"));
  46. assertEquals(NumberToString::_itoa<int>((int)-127), JSON_TEXT("-127"));
  47. assertEquals(NumberToString::_itoa<int>((int)-32767), JSON_TEXT("-32767"));
  48. assertEquals(NumberToString::_itoa<int>((int)-2147483647), JSON_TEXT("-2147483647"));
  49. //AssertScopeCoverage(_itoa);
  50. }
  51. /**
  52. * Test converting a long value into a string
  53. */
  54. void testNumberToString__itoa::testLong(void){
  55. //GetScopeCoverage(_itoa, true);
  56. #ifdef TEST_LONG_EXTREMES
  57. if (sizeof(long) >= 8){
  58. assertEquals(NumberToString::_itoa<long>((long)9223372036854775807L), JSON_TEXT("9223372036854775807"));
  59. assertEquals(NumberToString::_itoa<long>((long)-9223372036854775807L), JSON_TEXT("-9223372036854775807"));
  60. }
  61. #endif
  62. assertEquals(NumberToString::_itoa<long>((long)2147483647), JSON_TEXT("2147483647"));
  63. assertEquals(NumberToString::_itoa<long>((long)32767), JSON_TEXT("32767"));
  64. assertEquals(NumberToString::_itoa<long>((long)127), JSON_TEXT("127"));
  65. assertEquals(NumberToString::_itoa<long>((long)15), JSON_TEXT("15"));
  66. assertEquals(NumberToString::_itoa<long>((long)0), JSON_TEXT("0"));
  67. assertEquals(NumberToString::_itoa<long>((long)-0), JSON_TEXT("0"));
  68. assertEquals(NumberToString::_itoa<long>((long)-15), JSON_TEXT("-15"));
  69. assertEquals(NumberToString::_itoa<long>((long)-127), JSON_TEXT("-127"));
  70. assertEquals(NumberToString::_itoa<long>((long)-32767), JSON_TEXT("-32767"));
  71. assertEquals(NumberToString::_itoa<long>((long)-2147483647), JSON_TEXT("-2147483647"));
  72. //AssertScopeCoverage(_itoa);
  73. }
  74. /**
  75. * Test converting a long long value into a string
  76. */
  77. void testNumberToString__itoa::testLongLong(void){
  78. #ifndef JSON_ISO_STRICT
  79. //GetScopeCoverage(_itoa, true);
  80. #ifdef TEST_LONG_EXTREMES
  81. if (sizeof(long long) >= 8){
  82. assertEquals(NumberToString::_itoa<long long>((long long)9223372036854775807L), JSON_TEXT("9223372036854775807"));
  83. assertEquals(NumberToString::_itoa<long long>((long long)-9223372036854775807L), JSON_TEXT("-9223372036854775807"));
  84. }
  85. #endif
  86. assertEquals(NumberToString::_itoa<long long>((long long)2147483647), JSON_TEXT("2147483647"));
  87. assertEquals(NumberToString::_itoa<long long>((long long)32767), JSON_TEXT("32767"));
  88. assertEquals(NumberToString::_itoa<long long>((long long)127), JSON_TEXT("127"));
  89. assertEquals(NumberToString::_itoa<long long>((long long)15), JSON_TEXT("15"));
  90. assertEquals(NumberToString::_itoa<long long>((long long)0), JSON_TEXT("0"));
  91. assertEquals(NumberToString::_itoa<long long>((long long)-0), JSON_TEXT("0"));
  92. assertEquals(NumberToString::_itoa<long long>((long long)-15), JSON_TEXT("-15"));
  93. assertEquals(NumberToString::_itoa<long long>((long long)-127), JSON_TEXT("-127"));
  94. assertEquals(NumberToString::_itoa<long long>((long long)-32767), JSON_TEXT("-32767"));
  95. assertEquals(NumberToString::_itoa<long long>((long long)-2147483647), JSON_TEXT("-2147483647"));
  96. //AssertScopeCoverage(_itoa);
  97. #endif
  98. }