content-test.cpp 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. #include "test_common.h"
  2. TEST_START
  3. #if 0
  4. TEST(content, init) {
  5. uint8_t contentIn[4] = {0};
  6. contentIn[0] = 1;
  7. contentIn[1] = 2;
  8. contentIn[2] = 3;
  9. contentIn[3] = 4;
  10. Arg* self = content_init("name", ARG_TYPE_NONE, contentIn, 4, NULL);
  11. uint16_t typeOffset = content_typeOffset(self);
  12. uint16_t sizeOffset = content_sizeOffset(self);
  13. uint16_t contentOffset = content_contentOffset(self);
  14. uint16_t totleSize = content_totleSize(self);
  15. Hash nameHash = content_getNameHash(self);
  16. ArgType type = content_getType(self);
  17. uint16_t size = content_getSize(self);
  18. uint8_t* content = content_getContent(self);
  19. ASSERT_EQ(contentOffset, 16);
  20. ASSERT_EQ(typeOffset, 20);
  21. ASSERT_EQ(sizeOffset, 8);
  22. ASSERT_EQ(size, 4);
  23. ASSERT_EQ(content[0], 1);
  24. ASSERT_EQ(content[1], 2);
  25. ASSERT_EQ(content[2], 3);
  26. ASSERT_EQ(content[3], 4);
  27. ASSERT_EQ(totleSize, 24);
  28. ASSERT_EQ(hash_time33("name"), nameHash);
  29. ASSERT_EQ(ARG_TYPE_NONE, type);
  30. arg_freeContent(self);
  31. EXPECT_EQ(pikaMemNow(), 0);
  32. }
  33. TEST(content, set) {
  34. uint8_t contentIn[4] = {0};
  35. contentIn[0] = 1;
  36. contentIn[1] = 2;
  37. contentIn[2] = 3;
  38. contentIn[3] = 4;
  39. Arg* self = content_init("", ARG_TYPE_NONE, NULL, 0, NULL);
  40. self = content_setName(self, "name");
  41. pika_assert(NULL != self);
  42. arg_setType(self, ARG_TYPE_NONE);
  43. self = content_setContent(self, contentIn, 4);
  44. uint16_t typeOffset = content_typeOffset(self);
  45. uint16_t sizeOffset = content_sizeOffset(self);
  46. uint16_t contentOffset = content_contentOffset(self);
  47. uint16_t totleSize = content_totleSize(self);
  48. Hash nameHash = content_getNameHash(self);
  49. ArgType type = content_getType(self);
  50. uint16_t size = content_getSize(self);
  51. uint8_t* content = content_getContent(self);
  52. ASSERT_EQ(contentOffset, 16);
  53. ASSERT_EQ(typeOffset, 20);
  54. ASSERT_EQ(sizeOffset, 8);
  55. ASSERT_EQ(size, 4);
  56. ASSERT_EQ(content[0], 1);
  57. ASSERT_EQ(content[1], 2);
  58. ASSERT_EQ(content[2], 3);
  59. ASSERT_EQ(content[3], 4);
  60. ASSERT_EQ(totleSize, 24);
  61. ASSERT_EQ(hash_time33("name"), nameHash);
  62. ASSERT_EQ(ARG_TYPE_NONE, type);
  63. arg_freeContent(self);
  64. EXPECT_EQ(pikaMemNow(), 0);
  65. }
  66. TEST(content, next) {
  67. uint8_t* c1 = content_init("c1", ARG_TYPE_NONE, NULL, 0, NULL);
  68. uint8_t* c2 = content_init("c2", ARG_TYPE_NONE, NULL, 0, c1);
  69. uint8_t* c3 = content_getNext(c2);
  70. ASSERT_EQ(c3, c1);
  71. arg_freeContent(c1);
  72. arg_freeContent(c2);
  73. EXPECT_EQ(pikaMemNow(), 0);
  74. }
  75. TEST(content, setNext) {
  76. uint8_t* c1 = content_init("c1", ARG_TYPE_NONE, NULL, 0, NULL);
  77. content_setNext(c1, content_init("c2", ARG_TYPE_NONE, NULL, 0, NULL));
  78. uint8_t* c2 = content_getNext(c1);
  79. Hash c2NameHash = content_getNameHash(c2);
  80. EXPECT_EQ(c2NameHash, hash_time33("c2"));
  81. arg_freeContent(c1);
  82. arg_freeContent(c2);
  83. EXPECT_EQ(pikaMemNow(), 0);
  84. }
  85. #endif
  86. TEST_END