#ifdef UNSAFE_BUFFERS_BUILD
#pragma allow_unsafe_buffers
#endif
#include "base/profiler/stack_copier.h"
#include <cstring>
#include <iterator>
#include <memory>
#include <numeric>
#include "base/profiler/register_context.h"
#include "base/profiler/stack_buffer.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace base {
namespace {
class CopyFunctions : public StackCopier { … };
static constexpr size_t kTestStackBufferSize = …;
TestStackBuffer;
}
TEST(StackCopierTest, RewritePointerIfInOriginalStack_InStack) { … }
TEST(StackCopierTest, RewritePointerIfInOriginalStack_NotInStack) { … }
TEST(StackCopierTest, StackCopy) { … }
TEST(StackCopierTest, StackCopy_NonAlignedStackPointerCopy) { … }
TEST(StackCopierTest, StackCopy_NonAlignedStackPointerUnalignedRewriteAtStart) { … }
TEST(StackCopierTest,
StackCopy_NonAlignedStackPointerUnalignedRewriteAfterStart) { … }
TEST(StackCopierTest, StackCopy_NonAlignedStackPointerAlignedRewrite) { … }
TEST(StackCopierTest, CloneStack) { … }
}