run.c 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. #include <ccan/tap/tap.h>
  2. #include <stdarg.h>
  3. #include <stdio.h>
  4. #include <ccan/argcheck/argcheck.h>
  5. int main(void)
  6. {
  7. int a = 0;
  8. const int flag = 0x1;
  9. const int invalid_flag = 0x0;
  10. int *ptr = NULL,
  11. *ptr_not_null = &a;
  12. const char *str = "hello",
  13. *str_zero = "\0",
  14. *str_null = NULL;
  15. plan_tests(60);
  16. ok1(!argcheck_int_eq(a, 1));
  17. ok1(argcheck_int_eq(a, 0));
  18. ok1(!argcheck_int_ne(a, 0));
  19. ok1(argcheck_int_ne(a, 10));
  20. ok1(!argcheck_int_ge(a, 1));
  21. ok1(argcheck_int_ge(a, 0));
  22. ok1(argcheck_int_ge(a, -1));
  23. ok1(!argcheck_int_gt(a, 1));
  24. ok1(!argcheck_int_gt(a, 0));
  25. ok1(argcheck_int_gt(a, -1));
  26. ok1(!argcheck_int_le(a, -1));
  27. ok1(argcheck_int_le(a, 0));
  28. ok1(argcheck_int_le(a, 1));
  29. ok1(!argcheck_int_lt(a, -1));
  30. ok1(!argcheck_int_lt(a, 0));
  31. ok1(argcheck_int_lt(a, 1));
  32. ok1(!argcheck_int_range(a, 0, -1));
  33. ok1(!argcheck_int_range(a, -3, -1));
  34. ok1(argcheck_int_range(a, 0, 1));
  35. ok1(argcheck_int_range(a, -1, 0));
  36. ok1(!argcheck_flag_set(a, invalid_flag));
  37. ok1(!argcheck_flag_set(a, flag));
  38. ok1(argcheck_flag_set(a | flag, flag));
  39. ok1(!argcheck_flag_unset(a, invalid_flag));
  40. ok1(!argcheck_flag_unset(a | flag, flag));
  41. ok1(argcheck_flag_unset(a, flag));
  42. ok1(argcheck_ptr_null(ptr));
  43. ok1(!argcheck_ptr_not_null(ptr));
  44. ok1(!argcheck_ptr_null(ptr_not_null));
  45. ok1(argcheck_ptr_not_null(ptr_not_null));
  46. ok1(argcheck_str_null(str_null));
  47. ok1(!argcheck_str_not_null(str_null));
  48. ok1(!argcheck_str_null(str));
  49. ok1(argcheck_str_not_null(str));
  50. ok1(!argcheck_str_null(str_zero));
  51. ok1(argcheck_str_not_null(str_zero));
  52. ok1(!argcheck_str_zero_len(str_null));
  53. ok1(argcheck_str_zero_len(str_zero));
  54. ok1(!argcheck_str_zero_len(str));
  55. ok1(!argcheck_str_not_zero_len(str_null));
  56. ok1(!argcheck_str_not_zero_len(str_zero));
  57. ok1(argcheck_str_not_zero_len(str));
  58. ok1(!argcheck_str_min_len(str_null, 1));
  59. ok1(!argcheck_str_min_len(str_zero, 1));
  60. ok1(argcheck_str_min_len(str, 1));
  61. ok1(!argcheck_str_max_len(str_null, 1));
  62. ok1(argcheck_str_max_len(str_zero, 1));
  63. ok1(!argcheck_str_max_len(str, 1));
  64. ok1(argcheck_str_null_or_zero_len(str_null));
  65. ok1(argcheck_str_null_or_zero_len(str_zero));
  66. ok1(!argcheck_str_null_or_zero_len(str));
  67. ok1(argcheck_str_null_or_not_zero_len(str_null));
  68. ok1(!argcheck_str_null_or_not_zero_len(str_zero));
  69. ok1(argcheck_str_null_or_not_zero_len(str));
  70. ok1(argcheck_str_null_or_min_len(str_null, 1));
  71. ok1(!argcheck_str_null_or_min_len(str_zero, 1));
  72. ok1(argcheck_str_null_or_min_len(str, 1));
  73. ok1(argcheck_str_null_or_max_len(str_null, 1));
  74. ok1(argcheck_str_null_or_max_len(str_zero, 1));
  75. ok1(!argcheck_str_null_or_max_len(str, 1));
  76. return exit_status();
  77. }