@@ -34,54 +34,33 @@ TEST(IntervalsTest, TestOverlapFound) {
3434 ASSERT_EQ (IntervalProcessor::filterOverlaps (intervals), expected);
3535}
3636
37- TEST (IntervalsTest, TestOverlapFoundA ) {
37+ TEST (IntervalsTest, TestOverlapAscendingSequence ) {
3838 std::vector<Interval> intervals;
39- intervals.emplace_back (Interval{0 , 2 , 1 });
40- intervals.emplace_back (Interval{1 , 4 , 1 });
41- intervals.emplace_back (Interval{4 , 6 , 1 });
42- intervals.emplace_back (Interval{4 , 5 , 1 });
43- std::vector<int > expected{0 , 3 };
39+ intervals.emplace_back (Interval{0 , 3 , 6 });
40+ intervals.emplace_back (Interval{2 , 6 , 2 });
41+ intervals.emplace_back (Interval{3 , 15 , 5 });
42+ intervals.emplace_back (Interval{4 , 11 , 1 });
43+ intervals.emplace_back (Interval{6 , 20 , 15 });
44+ intervals.emplace_back (Interval{12 , 18 , 3 });
45+ intervals.emplace_back (Interval{14 , 21 , 5 });
46+ intervals.emplace_back (Interval{23 , 28 , 5 });
47+ std::vector<int > expected{4 , 3 , 7 };
4448 ASSERT_EQ (IntervalProcessor::filterOverlaps (intervals), expected);
4549}
4650
47- TEST (IntervalsTest, TestOverlapFoundB ) {
51+ TEST (IntervalsTest, TestOverlapDescendingSequence ) {
4852 std::vector<Interval> intervals;
49- intervals.emplace_back (Interval{0 , 3 , 4 });
50- intervals.emplace_back (Interval{3 , 6 , 2 });
51- intervals.emplace_back (Interval{6 , 10 , 3 });
53+ intervals.emplace_back (Interval{9 , 15 , 5 });
5254 intervals.emplace_back (Interval{8 , 11 , 1 });
53- intervals.emplace_back (Interval{7 , 15 , 5 });
54- std::vector<int > expected{0 , 1 , 4 };
55- ASSERT_EQ (IntervalProcessor::filterOverlaps (intervals), expected);
56- }
57-
58- TEST (IntervalsTest, TestOverlapFoundC) {
59- std::vector<Interval> intervals;
60- intervals.emplace_back (Interval{0 , 3 , 6 });
55+ intervals.emplace_back (Interval{3 , 15 , 5 });
6156 intervals.emplace_back (Interval{3 , 6 , 2 });
6257 intervals.emplace_back (Interval{2 , 10 , 3 });
63- intervals.emplace_back (Interval{8 , 11 , 1 });
64- intervals.emplace_back (Interval{9 , 15 , 5 });
65- intervals.emplace_back (Interval{3 , 15 , 5 });
66- std::vector<int > expected{0 , 5 };
67- ASSERT_EQ (IntervalProcessor::filterOverlaps (intervals), expected);
68- }
69-
70- TEST (IntervalsTest, TestOverlapFoundD) {
71- std::vector<Interval> intervals;
72- intervals.emplace_back (Interval{2 , 6 , 2 });
73- intervals.emplace_back (Interval{12 , 18 , 3 });
74- intervals.emplace_back (Interval{4 , 11 , 1 });
75- intervals.emplace_back (Interval{6 , 20 , 15 });
7658 intervals.emplace_back (Interval{0 , 3 , 6 });
77- intervals.emplace_back (Interval{3 , 15 , 5 });
78- intervals.emplace_back (Interval{14 , 21 , 5 });
79- intervals.emplace_back (Interval{23 , 28 , 5 });
80- std::vector<int > expected{4 , 3 , 7 };
59+ std::vector<int > expected{5 , 2 };
8160 ASSERT_EQ (IntervalProcessor::filterOverlaps (intervals), expected);
8261}
8362
84- TEST (IntervalsTest, TestOverlapFoundE ) {
63+ TEST (IntervalsTest, TestOverlapRandomSequence ) {
8564 std::vector<Interval> intervals;
8665 intervals.emplace_back (Interval{21 , 24 , 1 });
8766 intervals.emplace_back (Interval{0 , 5 , 1 });
@@ -95,27 +74,22 @@ TEST(IntervalsTest, TestOverlapFoundE) {
9574 ASSERT_EQ (IntervalProcessor::filterOverlaps (intervals), expected);
9675}
9776
98- TEST (IntervalsTest, TestOverlapFoundF ) {
77+ TEST (IntervalsTest, TestOverlapInnerNested ) {
9978 std::vector<Interval> intervals;
100- intervals.emplace_back (Interval{0 , 5 , 10 });
101- intervals.emplace_back (Interval{5 , 11 , 100 });
102- intervals.emplace_back (Interval{11 , 18 , 5 });
103- intervals.emplace_back (Interval{18 , 21 , 8 });
104- intervals.emplace_back (Interval{21 , 24 , 2 });
105- intervals.emplace_back (Interval{24 , 28 , 4 });
106- intervals.emplace_back (Interval{28 , 35 , 6 });
107- intervals.emplace_back (Interval{35 , 40 , 7 });
108- std::vector<int > expected{0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 };
79+ intervals.emplace_back (Interval{0 , 2 , 3 });
80+ intervals.emplace_back (Interval{2 , 4 , 2 });
81+ intervals.emplace_back (Interval{3 , 6 , 5 });
82+ intervals.emplace_back (Interval{6 , 15 , 4 });
83+ std::vector<int > expected{0 , 2 , 3 };
10984 ASSERT_EQ (IntervalProcessor::filterOverlaps (intervals), expected);
11085}
11186
112- TEST (IntervalsTest, TestOverlapFoundG ) {
87+ TEST (IntervalsTest, TestOverlapOuterNested ) {
11388 std::vector<Interval> intervals;
114- intervals.emplace_back (Interval{0 , 5 , 1 });
115- intervals.emplace_back (Interval{0 , 5 , 1 });
116- intervals.emplace_back (Interval{0 , 5 , 1 });
117- intervals.emplace_back (Interval{0 , 5 , 1 });
118- intervals.emplace_back (Interval{0 , 5 , 1 });
119- std::vector<int > expected{0 };
89+ intervals.emplace_back (Interval{0 , 3 , 6 });
90+ intervals.emplace_back (Interval{4 , 11 , 1 });
91+ intervals.emplace_back (Interval{12 , 18 , 3 });
92+ intervals.emplace_back (Interval{2 , 15 , 6 });
93+ std::vector<int > expected{0 , 1 , 2 };
12094 ASSERT_EQ (IntervalProcessor::filterOverlaps (intervals), expected);
12195}
0 commit comments