You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

test_int_add.c 1.2 kB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #include <assert.h>
  2. #include <stdio.h>
  3. #include "json.h"
  4. int main(int argc, char **argv)
  5. {
  6. json_object *tmp = json_object_new_int(123);
  7. json_object_add_int(tmp, 123);
  8. assert(json_object_get_int(tmp) == 246);
  9. json_object_put(tmp);
  10. printf("INT ADD PASSED\n");
  11. tmp = json_object_new_int(INT32_MAX);
  12. json_object_add_int(tmp, 100);
  13. assert(json_object_get_int(tmp) == INT32_MAX);
  14. json_object_put(tmp);
  15. printf("INT ADD OVERFLOW PASSED\n");
  16. tmp = json_object_new_int(INT32_MIN);
  17. json_object_add_int(tmp, -100);
  18. assert(json_object_get_int(tmp) == INT32_MIN);
  19. json_object_put(tmp);
  20. printf("INT ADD UNDERFLOW PASSED\n");
  21. tmp = json_object_new_int64(321321321);
  22. json_object_add_int(tmp, 321321321);
  23. assert(json_object_get_int(tmp) == 642642642);
  24. json_object_put(tmp);
  25. printf("INT64 ADD PASSED\n");
  26. tmp = json_object_new_int64(INT64_MAX);
  27. json_object_add_int64(tmp, 100);
  28. assert(json_object_get_int64(tmp) == INT64_MAX);
  29. json_object_put(tmp);
  30. printf("INT64 ADD OVERFLOW PASSED\n");
  31. tmp = json_object_new_int64(INT64_MIN);
  32. json_object_add_int64(tmp, -100);
  33. assert(json_object_get_int64(tmp) == INT64_MIN);
  34. json_object_put(tmp);
  35. printf("INT64 ADD UNDERFLOW PASSED\n");
  36. printf("PASSED\n");
  37. return 0;
  38. }