aboutsummaryrefslogtreecommitdiff
path: root/src/processor/minidump_processor_unittest.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/processor/minidump_processor_unittest.cc')
-rw-r--r--src/processor/minidump_processor_unittest.cc23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/processor/minidump_processor_unittest.cc b/src/processor/minidump_processor_unittest.cc
index 8fd21fbd..85a60726 100644
--- a/src/processor/minidump_processor_unittest.cc
+++ b/src/processor/minidump_processor_unittest.cc
@@ -245,6 +245,24 @@ TEST_F(MinidumpProcessorTest, TestSymbolSupplierLookupCounts) {
google_breakpad::PROCESS_OK);
}
+TEST_F(MinidumpProcessorTest, TestExploitilityEngine) {
+ TestSymbolSupplier supplier;
+ BasicSourceLineResolver resolver;
+ MinidumpProcessor processor(&supplier, &resolver, true);
+
+ string minidump_file = string(getenv("srcdir") ? getenv("srcdir") : ".") +
+ "/src/processor/testdata/minidump2.dmp";
+
+ ProcessState state;
+ ASSERT_EQ(processor.Process(minidump_file, &state),
+ google_breakpad::PROCESS_OK);
+
+ // Test that exploitability module correctly fails to supply
+ // an engine for this platform
+ ASSERT_EQ(google_breakpad::EXPLOITABILITY_ERR_NOENGINE,
+ state.exploitability());
+}
+
TEST_F(MinidumpProcessorTest, TestBasicProcessing) {
TestSymbolSupplier supplier;
BasicSourceLineResolver resolver;
@@ -315,6 +333,11 @@ TEST_F(MinidumpProcessorTest, TestBasicProcessing) {
ASSERT_EQ(state.modules()->GetModuleForAddress(0x77d43210)->version(),
"5.1.2600.2622");
+ // Test that disabled exploitability engine defaults to
+ // EXPLOITABILITY_NOT_ANALYZED.
+ ASSERT_EQ(google_breakpad::EXPLOITABILITY_NOT_ANALYZED,
+ state.exploitability());
+
// Test that the symbol supplier can interrupt processing
state.Clear();
supplier.set_interrupt(true);