diff options
Diffstat (limited to 'libbacktrace/backtrace_test.cpp')
-rw-r--r-- | libbacktrace/backtrace_test.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/libbacktrace/backtrace_test.cpp b/libbacktrace/backtrace_test.cpp index 4af6592..ebcb1f8 100644 --- a/libbacktrace/backtrace_test.cpp +++ b/libbacktrace/backtrace_test.cpp @@ -771,6 +771,7 @@ TEST(libbacktrace, format_test) { // Check map name empty, but exists. frame.map.start = 1; frame.map.end = 1; + frame.map.load_base = 0; #if defined(__LP64__) EXPECT_EQ("#01 pc 0000000000000001 <unknown>", #else @@ -808,6 +809,16 @@ TEST(libbacktrace, format_test) { EXPECT_EQ("#01 pc 12345678 MapFake (ProcFake+645)", #endif backtrace->FormatFrameData(&frame)); + + // Check func_name is set, func offset is non-zero, and load_base is non-zero. + frame.func_offset = 645; + frame.map.load_base = 100; +#if defined(__LP64__) + EXPECT_EQ("#01 pc 00000000123456dc MapFake (ProcFake+645)", +#else + EXPECT_EQ("#01 pc 123456dc MapFake (ProcFake+645)", +#endif + backtrace->FormatFrameData(&frame)); } struct map_test_t { |