diff options
| author | luwenpeng <[email protected]> | 2024-03-25 17:30:48 +0800 |
|---|---|---|
| committer | luwenpeng <[email protected]> | 2024-03-25 17:30:48 +0800 |
| commit | 5b92d6d8de214f92f5cc0babcaa54ddc2caf2f56 (patch) | |
| tree | aac7b4a6a93ad921796735b44da0fd79c5efecfd /deps | |
| parent | 2ad811f68dd02c80464e38338f0282696bb6dac4 (diff) | |
Add tcp reassembly test case
Diffstat (limited to 'deps')
| -rw-r--r-- | deps/interval_tree/interval.cpp | 2 | ||||
| -rw-r--r-- | deps/interval_tree/test/gtest_interval_tree.cpp | 27 |
2 files changed, 19 insertions, 10 deletions
diff --git a/deps/interval_tree/interval.cpp b/deps/interval_tree/interval.cpp index bdcebaa..4fc7ddf 100644 --- a/deps/interval_tree/interval.cpp +++ b/deps/interval_tree/interval.cpp @@ -67,5 +67,5 @@ int interval_overlap(const interval_t *i1, const interval_t *i2) int interval_equal(const interval_t *i1, const interval_t *i2) { - return i1->low == i2->low && i1->high == i2->high; + return i1->low == i2->low && i1->high == i2->high && i1->data == i2->data; } diff --git a/deps/interval_tree/test/gtest_interval_tree.cpp b/deps/interval_tree/test/gtest_interval_tree.cpp index 70c26ca..7fe0fbc 100644 --- a/deps/interval_tree/test/gtest_interval_tree.cpp +++ b/deps/interval_tree/test/gtest_interval_tree.cpp @@ -4,15 +4,11 @@ void *my_dup(void *p) { - return p ? strdup((const char *)p) : NULL; + return p; } void my_rel(void *p) { - if (p) - { - free(p); - } } // find overlap @@ -23,6 +19,7 @@ TEST(INTERVAL_TREE, FIND) interval_t *result; interval_t query; interval_t segment; + void *data = (void *)"Hello"; // new tree = itree_new(my_dup, my_rel); @@ -33,7 +30,7 @@ TEST(INTERVAL_TREE, FIND) segment = { .low = 5, .high = 9, - .data = (void *)"Hello", + .data = data, }; EXPECT_TRUE(itree_insert(tree, &segment) == 1); EXPECT_TRUE(itree_size(tree) == 1); @@ -118,6 +115,7 @@ TEST(INTERVAL_TREE, DELETE) itree_t *tree; interval_t query; interval_t segment; + void *data = (void *)"Hello"; // new tree = itree_new(my_dup, my_rel); @@ -128,7 +126,7 @@ TEST(INTERVAL_TREE, DELETE) segment = { .low = 5, .high = 9, - .data = (void *)"Hello", + .data = data, }; EXPECT_TRUE(itree_insert(tree, &segment) == 1); EXPECT_TRUE(itree_size(tree) == 1); @@ -145,6 +143,7 @@ TEST(INTERVAL_TREE, DELETE) query = { .low = 9, .high = 9, + .data = data, }; EXPECT_TRUE(itree_remove(tree, &query) == 0); EXPECT_TRUE(itree_size(tree) == 1); @@ -153,6 +152,7 @@ TEST(INTERVAL_TREE, DELETE) query = { .low = 1, .high = 20, + .data = data, }; EXPECT_TRUE(itree_remove(tree, &query) == 0); EXPECT_TRUE(itree_size(tree) == 1); @@ -161,6 +161,7 @@ TEST(INTERVAL_TREE, DELETE) query = { .low = 5, .high = 9, + .data = data, }; EXPECT_TRUE(itree_remove(tree, &query) == 1); EXPECT_TRUE(itree_size(tree) == 0); @@ -175,6 +176,8 @@ TEST(INTERVAL_TREE, REPEAT1) itree_t *tree; interval_t segment; interval_t query; + void *data1 = (void *)"Hello"; + void *data2 = (void *)"World"; // new tree = itree_new(my_dup, my_rel); @@ -185,7 +188,7 @@ TEST(INTERVAL_TREE, REPEAT1) segment = { .low = 5, .high = 9, - .data = (void *)"Hello", + .data = data1, }; EXPECT_TRUE(itree_insert(tree, &segment) == 1); EXPECT_TRUE(itree_size(tree) == 1); @@ -194,7 +197,7 @@ TEST(INTERVAL_TREE, REPEAT1) segment = { .low = 5, .high = 9, - .data = (void *)"World", + .data = data2, }; EXPECT_TRUE(itree_insert(tree, &segment) == 1); EXPECT_TRUE(itree_size(tree) == 2); @@ -203,9 +206,15 @@ TEST(INTERVAL_TREE, REPEAT1) query = { .low = 5, .high = 9, + .data = data1, }; EXPECT_TRUE(itree_remove(tree, &query) == 1); EXPECT_TRUE(itree_size(tree) == 1); + query = { + .low = 5, + .high = 9, + .data = data2, + }; EXPECT_TRUE(itree_remove(tree, &query) == 1); EXPECT_TRUE(itree_size(tree) == 0); |
