#include <cstdint>
#include <memory>
#include <optional>
#include <ostream>
#include <tuple>
#include <vector>
#include "src/trace_processor/importers/common/args_tracker.h"
#include "src/trace_processor/importers/common/args_translation_table.h"
#include "src/trace_processor/importers/common/slice_tracker.h"
#include "src/trace_processor/importers/common/slice_translation_table.h"
#include "src/trace_processor/storage/trace_storage.h"
#include "src/trace_processor/tables/slice_tables_py.h"
#include "src/trace_processor/types/trace_processor_context.h"
#include "src/trace_processor/types/variadic.h"
#include "test/gtest_and_gmock.h"
namespace perfetto::trace_processor {
namespace {
ElementsAre;
Eq;
struct SliceInfo { … };
inline void PrintTo(const SliceInfo& info, ::std::ostream* os) { … }
std::vector<SliceInfo> ToSliceInfo(const tables::SliceTable& slices) { … }
class SliceTrackerTest : public ::testing::Test { … };
TEST_F(SliceTrackerTest, OneSliceDetailed) { … }
TEST_F(SliceTrackerTest, OneSliceDetailedWithTranslatedName) { … }
TEST_F(SliceTrackerTest, NegativeTimestamps) { … }
TEST_F(SliceTrackerTest, OneSliceWithArgs) { … }
TEST_F(SliceTrackerTest, OneSliceWithArgsWithTranslatedName) { … }
TEST_F(SliceTrackerTest, TwoSliceDetailed) { … }
TEST_F(SliceTrackerTest, Scoped) { … }
TEST_F(SliceTrackerTest, ScopedWithTranslatedName) { … }
TEST_F(SliceTrackerTest, ParentId) { … }
TEST_F(SliceTrackerTest, IgnoreMismatchedEnds) { … }
TEST_F(SliceTrackerTest, ZeroLengthScoped) { … }
TEST_F(SliceTrackerTest, DifferentTracks) { … }
TEST_F(SliceTrackerTest, EndEventOutOfOrder) { … }
TEST_F(SliceTrackerTest, GetTopmostSliceOnTrack) { … }
TEST_F(SliceTrackerTest, OnSliceBeginCallback) { … }
}
}