#include "src/trace_processor/containers/interval_intersector.h"
#include <cstddef>
#include <cstdint>
#include <numeric>
#include <random>
#include <tuple>
#include <utility>
#include <vector>
#include "perfetto/base/compiler.h"
#include "test/gtest_and_gmock.h"
namespace perfetto::trace_processor {
inline bool operator==(const Interval& a, const Interval& b) { … }
namespace {
Interval;
IsEmpty;
UnorderedElementsAre;
std::vector<Interval> CreateIntervals(
std::vector<std::pair<uint32_t, uint32_t>> periods) { … }
TEST(IntervalIntersector, IntervalTree_EmptyInput) { … }
TEST(IntervalIntersector, IntervalTree_SingleIntervalFullOverlap) { … }
TEST(IntervalIntersector, IntervalTree_MultipleOverlaps) { … }
TEST(IntervalIntersector, IntervalTree_NoOverlap) { … }
TEST(IntervalIntersector, BinarySearch_EmptyInput) { … }
TEST(IntervalIntersector, BinarySearch_SingleIntervalFullOverlap) { … }
TEST(IntervalIntersector, BinarySearch_MultipleOverlaps) { … }
TEST(IntervalIntersector, BinarySearch_NoOverlap) { … }
TEST(IntervalIntersector, LinearScan_EmptyInput) { … }
TEST(IntervalIntersector, LinearScan_SingleIntervalFullOverlap) { … }
TEST(IntervalIntersector, LinearScan_MultipleOverlaps) { … }
TEST(IntervalIntersector, LinearScan_NoOverlap) { … }
}
}