aboutsummaryrefslogtreecommitdiff
path: root/src/processor/microdump_processor_unittest.cc
diff options
context:
space:
mode:
authorTobias Sargeant <tobiasjs@google.com>2017-08-18 17:29:38 +0100
committerTobias Sargeant <tobiasjs@chromium.org>2017-08-21 10:19:07 +0000
commit2b3be5179e18975b4f12a9ecdf91ea08f3bb9f4b (patch)
tree84b95876299103166d899835410cfd3033b20ab7 /src/processor/microdump_processor_unittest.cc
parentFix memory leak in ppc stackwalker (diff)
downloadbreakpad-2b3be5179e18975b4f12a9ecdf91ea08f3bb9f4b.tar.xz
Add crash reason extraction to microdump processor
BUG=754715 Change-Id: I00fe62ed06dbbab4c8f6c416d56e2d444be11571 Reviewed-on: https://chromium-review.googlesource.com/621307 Reviewed-by: Robert Sesek <rsesek@chromium.org>
Diffstat (limited to 'src/processor/microdump_processor_unittest.cc')
-rw-r--r--src/processor/microdump_processor_unittest.cc16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/processor/microdump_processor_unittest.cc b/src/processor/microdump_processor_unittest.cc
index 238b048c..029259f4 100644
--- a/src/processor/microdump_processor_unittest.cc
+++ b/src/processor/microdump_processor_unittest.cc
@@ -123,6 +123,22 @@ TEST_F(MicrodumpProcessorTest, TestProcess_Invalid) {
ASSERT_EQ(google_breakpad::PROCESS_ERROR_NO_THREAD_LIST, result);
}
+TEST_F(MicrodumpProcessorTest, TestProcess_WithoutCrashReason) {
+ ProcessState state;
+ AnalyzeDump("microdump-arm64.dmp", true /* omit_symbols */,
+ 2 /* expected_cpu_count */, &state);
+ ASSERT_EQ(state.crash_reason(), "");
+ ASSERT_EQ(state.crash_address(), 0x0u);
+}
+
+TEST_F(MicrodumpProcessorTest, TestProcess_WithCrashReason) {
+ ProcessState state;
+ AnalyzeDump("microdump-withcrashreason.dmp", true /* omit_symbols */,
+ 8 /* expected_cpu_count */, &state);
+ ASSERT_EQ(state.crash_reason(), "SIGTRAP");
+ ASSERT_EQ(state.crash_address(), 0x4A7CB000u);
+}
+
TEST_F(MicrodumpProcessorTest, TestProcess_MissingSymbols) {
ProcessState state;
AnalyzeDump("microdump-arm64.dmp", true /* omit_symbols */,