blob: 81e405f8f0704403a17de729eeb4ac205e68e7f3 [file] [log] [blame]
// Copyright 2019 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "src/developer/debug/zxdb/client/frame_fingerprint.h"
#include <gtest/gtest.h>
namespace zxdb {
TEST(FrameFingerprint, Newer) {
// Larger stack addresses mean older frames.
FrameFingerprint newer_physical(0x1000, 1);
FrameFingerprint older_physical(0x2000, 2);
EXPECT_TRUE(FrameFingerprint::Newer(newer_physical, older_physical));
EXPECT_FALSE(FrameFingerprint::Newer(older_physical, newer_physical));
// Identical stack pointers should check the inline counts. Higher counts are newer.
FrameFingerprint newer_inline(0x1000, 2);
FrameFingerprint older_inline(0x1000, 1);
EXPECT_TRUE(FrameFingerprint::Newer(newer_inline, older_inline));
EXPECT_FALSE(FrameFingerprint::Newer(older_inline, newer_inline));
}
} // namespace zxdb