Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1772)

Unified Diff: snapshot/win/end_to_end_test.py

Issue 1430773003: win: Handle binary with embedded CodeView debug record (Closed) Base URL: https://chromium.googlesource.com/crashpad/crashpad@master
Patch Set: rebase Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « handler/win/z7_test.dll ('k') | snapshot/win/module_snapshot_win.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: snapshot/win/end_to_end_test.py
diff --git a/snapshot/win/end_to_end_test.py b/snapshot/win/end_to_end_test.py
index 9ed5fda71faddb8b32ae552b6949df016db66df6..74cbc56edc17e047e5b428a7642e79e7fe06ac75 100644
--- a/snapshot/win/end_to_end_test.py
+++ b/snapshot/win/end_to_end_test.py
@@ -121,6 +121,10 @@ def GetDumpFromSelfDestroyingProgram(out_dir, pipe_name):
return GetDumpFromProgram(out_dir, pipe_name, 'self_destroying_program.exe')
+def GetDumpFromZ7Program(out_dir, pipe_name):
+ return GetDumpFromProgram(out_dir, pipe_name, 'crashy_z7_loader.exe')
+
+
class CdbRun(object):
"""Run cdb.exe passing it a cdb command and capturing the output.
`Check()` searches for regex patterns in sequence allowing verification of
@@ -155,7 +159,7 @@ class CdbRun(object):
sys.exit(1)
-def RunTests(cdb_path, dump_path, destroyed_dump_path, pipe_name):
+def RunTests(cdb_path, dump_path, destroyed_dump_path, z7_dump_path, pipe_name):
"""Runs various tests in sequence. Runs a new cdb instance on the dump for
each block of tests to reduce the chances that output from one command is
confused for output from another.
@@ -212,6 +216,15 @@ def RunTests(cdb_path, dump_path, destroyed_dump_path, pipe_name):
r'FreeOwnStackAndBreak.*\nquit:',
'at correct location, no additional stack entries')
+ if z7_dump_path:
+ out = CdbRun(cdb_path, z7_dump_path, '.ecxr;lm')
+ out.Check('This dump file has an exception of interest stored in it',
+ 'captured exception in z7 module')
+ out.Check(r'z7_test\+0x[0-8a-f]+:', 'exception in z7 at correct location')
+ out.Check(r'z7_test C \(codeview symbols\) z7_test.dll',
+ 'expected non-pdb symbol format')
+
+
def main(args):
try:
if len(args) != 1:
@@ -242,7 +255,14 @@ def main(args):
if not destroyed_dump_path:
return 1
- RunTests(cdb_path, crashy_dump_path, destroyed_dump_path, pipe_name)
+ z7_dump_path = None
+ if not args[0].endswith('x64'):
+ z7_dump_path = GetDumpFromZ7Program(args[0], pipe_name)
+ if not z7_dump_path:
+ return 1
+
+ RunTests(cdb_path, crashy_dump_path, destroyed_dump_path, z7_dump_path,
+ pipe_name)
return 0
finally:
« no previous file with comments | « handler/win/z7_test.dll ('k') | snapshot/win/module_snapshot_win.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698