#include "absl/strings/internal/cordz_info.h"
#include <vector>
#include "gmock/gmock.h"
#include "gtest/gtest.h"
#include "absl/base/config.h"
#include "absl/debugging/stacktrace.h"
#include "absl/debugging/symbolize.h"
#include "absl/strings/cordz_test_helpers.h"
#include "absl/strings/internal/cord_rep_flat.h"
#include "absl/strings/internal/cordz_handle.h"
#include "absl/strings/internal/cordz_statistics.h"
#include "absl/strings/internal/cordz_update_tracker.h"
#include "absl/strings/str_cat.h"
#include "absl/types/span.h"
namespace absl {
ABSL_NAMESPACE_BEGIN
namespace cord_internal {
namespace {
ElementsAre;
Eq;
HasSubstr;
Ne;
SizeIs;
auto constexpr kUnknownMethod = …;
auto constexpr kTrackCordMethod = …;
auto constexpr kChildMethod = …;
auto constexpr kUpdateMethod = …;
std::vector<const CordzHandle*> DeleteQueue() { … }
std::string FormatStack(absl::Span<void* const> raw_stack) { … }
TEST(CordzInfoTest, TrackCord) { … }
TEST(CordzInfoTest, MaybeTrackChildCordWithoutSampling) { … }
TEST(CordzInfoTest, MaybeTrackChildCordWithSampling) { … }
TEST(CordzInfoTest, MaybeTrackChildCordWithoutSamplingParentSampled) { … }
TEST(CordzInfoTest, MaybeTrackChildCordWithoutSamplingChildSampled) { … }
TEST(CordzInfoTest, MaybeTrackChildCordWithSamplingChildSampled) { … }
TEST(CordzInfoTest, UntrackCord) { … }
TEST(CordzInfoTest, UntrackCordWithSnapshot) { … }
TEST(CordzInfoTest, SetCordRep) { … }
TEST(CordzInfoTest, SetCordRepNullUntracksCordOnUnlock) { … }
TEST(CordzInfoTest, RefCordRep) { … }
#if GTEST_HAS_DEATH_TEST
TEST(CordzInfoTest, SetCordRepRequiresMutex) { … }
#endif
TEST(CordzInfoTest, TrackUntrackHeadFirstV2) { … }
TEST(CordzInfoTest, TrackUntrackTailFirstV2) { … }
TEST(CordzInfoTest, StackV2) { … }
CordzInfo* TrackChildCord(InlineData& data, const InlineData& parent) { … }
CordzInfo* TrackParentCord(InlineData& data) { … }
TEST(CordzInfoTest, GetStatistics) { … }
TEST(CordzInfoTest, LockCountsMethod) { … }
TEST(CordzInfoTest, FromParent) { … }
}
}
ABSL_NAMESPACE_END
}