Skip to content

Commit d79d5c9

Browse files
author
Tim Ebbeke
committed
adds more tests with const trees
1 parent 5cb9c3f commit d79d5c9

File tree

2 files changed

+39
-22
lines changed

2 files changed

+39
-22
lines changed

tests/find_tests.hpp

Lines changed: 10 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,15 @@ TEST_F(FindTests, WillFindRoot)
3232
EXPECT_EQ(tree.find({0, 1}), std::begin(tree));
3333
}
3434

35+
TEST_F(FindTests, WillFindRootOnConstTree)
36+
{
37+
tree.insert({0, 1});
38+
[](auto const& tree)
39+
{
40+
EXPECT_EQ(tree.find({0, 1}), std::begin(tree));
41+
}(tree);
42+
}
43+
3544
TEST_F(FindTests, WillFindInBiggerTree)
3645
{
3746
tree.insert({16, 21});
@@ -156,24 +165,4 @@ TEST_F(FindTests, CanFindAllOnConstTree)
156165

157166
ASSERT_EQ(intervals.size(), 1);
158167
EXPECT_EQ(intervals[0], targetInterval);
159-
}
160-
161-
TEST_F(FindTests, CanOverlapFindAllOnConstTree)
162-
{
163-
const auto targetInterval = lib_interval_tree::make_safe_interval(16, 21);
164-
tree.insert(targetInterval);
165-
tree.insert({8, 9});
166-
tree.insert({25, 30});
167-
std::vector <decltype(tree)::interval_type> intervals;
168-
auto findWithConstTree = [&intervals, &targetInterval](auto const& tree)
169-
{
170-
tree.overlap_find_all(targetInterval, [&intervals](auto const& iter) {
171-
intervals.emplace_back(*iter);
172-
return true;
173-
});
174-
};
175-
findWithConstTree(tree);
176-
177-
ASSERT_EQ(intervals.size(), 1);
178-
EXPECT_EQ(intervals[0], targetInterval);
179-
}
168+
}

tests/overlap_find_tests.hpp

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,14 @@ TEST_F(OverlapFindTests, WillFindOverlapWithRoot)
2828
EXPECT_EQ(tree.overlap_find({2, 7}), std::begin(tree));
2929
}
3030

31+
TEST_F(OverlapFindTests, WillFindOverlapWithRootOnConstTree)
32+
{
33+
tree.insert({2, 4});
34+
[](auto const& tree) {
35+
EXPECT_EQ(tree.overlap_find({2, 7}), std::begin(tree));
36+
}(tree);
37+
}
38+
3139
TEST_F(OverlapFindTests, WillFindOverlapWithRootIfMatchingExactly)
3240
{
3341
tree.insert({2, 7});
@@ -149,4 +157,24 @@ TEST_F(OverlapFindTests, WillFindSingleOverlapInBiggerTree)
149157
EXPECT_NE(iter, std::end(tree));
150158
EXPECT_EQ(iter->low(), 1000);
151159
EXPECT_EQ(iter->high(), 2000);
152-
}
160+
}
161+
162+
TEST_F(FindTests, CanOverlapFindAllOnConstTree)
163+
{
164+
const auto targetInterval = lib_interval_tree::make_safe_interval(16, 21);
165+
tree.insert(targetInterval);
166+
tree.insert({8, 9});
167+
tree.insert({25, 30});
168+
std::vector <decltype(tree)::interval_type> intervals;
169+
auto findWithConstTree = [&intervals, &targetInterval](auto const& tree)
170+
{
171+
tree.overlap_find_all(targetInterval, [&intervals](auto const& iter) {
172+
intervals.emplace_back(*iter);
173+
return true;
174+
});
175+
};
176+
findWithConstTree(tree);
177+
178+
ASSERT_EQ(intervals.size(), 1);
179+
EXPECT_EQ(intervals[0], targetInterval);
180+
}

0 commit comments

Comments
 (0)