arg-test.cpp 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. #include "test_common.h"
  2. TEST_START
  3. TEST(arg_test, cache_) {
  4. Arg* arg1 = arg_newInt(1);
  5. arg_deinit(arg1);
  6. Arg* arg2 = arg_newInt(2);
  7. int val = arg_getInt(arg2);
  8. EXPECT_EQ(val, 2);
  9. arg_deinit(arg2);
  10. EXPECT_EQ(pikaMemNow(), 0);
  11. }
  12. TEST(arg_test, int_) {
  13. Arg* arg = New_arg(NULL);
  14. arg = arg_setInt(arg, "test", 1);
  15. int a = arg_getInt(arg);
  16. EXPECT_EQ(a, 1);
  17. arg_deinit(arg);
  18. EXPECT_EQ(pikaMemNow(), 0);
  19. }
  20. TEST(arg_test, bool_) {
  21. Arg* arg = New_arg(NULL);
  22. arg = arg_setBool(arg, "test", PIKA_TRUE);
  23. PIKA_BOOL a = arg_getBool(arg);
  24. EXPECT_EQ(a, PIKA_TRUE);
  25. arg_deinit(arg);
  26. EXPECT_EQ(pikaMemNow(), 0);
  27. }
  28. TEST(arg_test, float_) {
  29. Arg* arg = New_arg(NULL);
  30. arg = arg_setFloat(arg, "test", 1.01);
  31. float a = arg_getFloat(arg);
  32. EXPECT_EQ(a, (float)1.01);
  33. arg_deinit(arg);
  34. EXPECT_EQ(pikaMemNow(), 0);
  35. }
  36. TEST(arg_test, str_) {
  37. Arg* arg = New_arg(NULL);
  38. arg = arg_setStr(arg, "test", "test str");
  39. char* a = arg_getStr(arg);
  40. EXPECT_EQ(strEqu(a, "test str"), 1);
  41. arg_deinit(arg);
  42. EXPECT_EQ(pikaMemNow(), 0);
  43. }
  44. TEST(arg_test, ptr) {
  45. Arg* arg = New_arg(NULL);
  46. int a = 1;
  47. arg = arg_setPtr(arg, "test", ARG_TYPE_POINTER, &a);
  48. int* pa = (int*)arg_getPtr(arg);
  49. EXPECT_EQ(*pa, 1);
  50. arg_deinit(arg);
  51. EXPECT_EQ(pikaMemNow(), 0);
  52. }
  53. TEST(arg_test, name) {
  54. Arg* arg = New_arg(NULL);
  55. arg = arg_setName(arg, "test");
  56. Hash nameHash = arg_getNameHash(arg);
  57. EXPECT_EQ(hash_time33("test"), nameHash);
  58. arg_deinit(arg);
  59. EXPECT_EQ(pikaMemNow(), 0);
  60. }
  61. TEST(arg_test, type) {
  62. Arg* arg = arg_newInt(1);
  63. pika_assert(NULL != arg);
  64. arg_setType(arg, ARG_TYPE_NONE);
  65. ArgType type = arg_getType(arg);
  66. EXPECT_EQ(ARG_TYPE_NONE, type);
  67. arg_deinit(arg);
  68. EXPECT_EQ(pikaMemNow(), 0);
  69. }
  70. TEST(arg_test, null) {
  71. Arg* arg = New_arg(NULL);
  72. arg = arg_setNull(arg);
  73. ArgType type = arg_getType(arg);
  74. EXPECT_EQ(ARG_TYPE_NONE, type);
  75. arg_deinit(arg);
  76. EXPECT_EQ(pikaMemNow(), 0);
  77. }
  78. Arg* arg_strAppend(Arg* arg_in, char* str_to_append);
  79. TEST(arg_test, append) {
  80. Arg* arg = arg_newStr("test");
  81. arg = arg_strAppend(arg, "hello");
  82. EXPECT_STREQ(arg_getStr(arg), "testhello");
  83. arg_deinit(arg);
  84. EXPECT_EQ(pikaMemNow(), 0);
  85. }
  86. TEST(arg_test, hash_1) {
  87. EXPECT_EQ(hash_time33("print"), 271190290);
  88. }
  89. TEST_END