blob: 47d1c4fc24b23cdbc70754b7ec6eabb3e4ef598f [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 "garnet/bin/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