Run all Crashpad tests on the Chromium waterfall (try/build bots), on Windows and Mac |
||||
Issue descriptionhttps://crrev.com/00a0654929787f70b0cd81f30aa14e81c5e11b2f added crashpad_util_test to the Chromium GN build, and made it run on some Windows bots. We should add the rest of the Crashpad tests (crashpad_{client,handler,minidump,snapshot,test}_test), and make them run on some Mac bots too. To do this in Chromium, I plan on integrating all of Crashpad’s independent test executables into a single crashpad_tests monolithic test executable.
,
Oct 30 2017
Didn't mean to imply that it didn't. I meant it more in the sense that "it's running on some bots now, we should get it on some others too."
,
Oct 30 2017
Last I looked, some subset of the tests couldn't run under swarming on the /p/crashpad waterfall; might you need to fix that as part of this, or are we talking about different tests?
,
Oct 31 2017
Same tests. Last week, I “fixed” the 64-bit tests that also wanted 32-bit build test products under bug 743139 (you’re familiar with that one) at https://chromium.googlesource.com/crashpad/crashpad.git/+/5e9ed4cb9f69ffc60e47d7e5d8312f6417dcb323. The idea here is that if 32-bit build test products aren’t available, these “WoW64” tests dynamically disable themselves. I’m putting “fixed” in quotes because it doesn’t really (yet) solve the build-time problem of making those 32-bit build test products available in a 64-bit build, but it gets things to the point where we can at least deal with them being disabled under Swarming and have everything else pass. It may well be that getting the 32-bit products available in a 64-bit GN-based Chromium build is trivial (compared to the GYP-based Crashpad standalone build), in which case we should be able to make everything work nicely and properly for tests in Chromium, at least. Another part of getting these tests working under Swarming in Crashpad’s own waterfall may be dealing with the fact that Crashpad’s standalone build doesn’t have Chromium’s base::TestLauncher. I’m not sure if your comment at https://chromium-review.googlesource.com/c/chromium/src/+/737439#message-b243f73191860f3e83952f361c75cd34fac284d7 means that this is required for non-Chromium recipes or not. In any event, we should probably move discussion of that aspect to bug 743139.
,
Nov 1 2017
> I’m not sure if your comment at ... means that this is required for > non-Chromium recipes or not. //base/test/launcher is not required for non-Chromium recipes. A recipe can do more-or-less whatever it wants, that comment is just referring to a particular restriction of the chromium recipes.
,
Nov 1 2017
Excellent! Then we should circle back to bug 743139 to see if there’s anything else we can do to clean up our waterfalls and get our tests running on Swarming.
,
Nov 1 2017
The following revision refers to this bug: https://chromium.googlesource.com/crashpad/crashpad.git/+/a0f4f294b1e2bc242dd76a804706325257627832 commit a0f4f294b1e2bc242dd76a804706325257627832 Author: Mark Mentovai <mark@chromium.org> Date: Wed Nov 01 16:33:34 2017 win handler: Provide a wmain() entry point Crashpad’s own build always uses wWinMain(), the default entry point for /subsystem:windows, producing crashpad_handler.exe. crashpad_handler.com is a /subsystem:console version produced by running editbin on a copy of crashpad_handler.exe. This leaves the entry point intact, so both copies use wWinMain(). crashpad_handler.com does not use wmain() as traditionally used by /subsystem:console programs. For the in-Chromium build’s tests, it is conveient to produce the /subsystem:console version, crashpad_handler.com, directly as linker output, as opposed to using editbin to transform a /subsystem:windows version. This /subsystem:console version uses the normal wmain() entry point. By providing both wWinMain() and wmain(), both build types can be accommodated. Bug: chromium:779790 Change-Id: Ieb784db0cc245c6e4c12fb1dd83b8b95e159bdec Reviewed-on: https://chromium-review.googlesource.com/746161 Reviewed-by: Leonard Mosescu <mosescu@chromium.org> [modify] https://crrev.com/a0f4f294b1e2bc242dd76a804706325257627832/handler/main.cc
,
Nov 1 2017
The following revision refers to this bug: https://chromium.googlesource.com/crashpad/crashpad.git/+/a51e912004a63250bc9c7b0e43394b4c22ead8a0 commit a51e912004a63250bc9c7b0e43394b4c22ead8a0 Author: Mark Mentovai <mark@chromium.org> Date: Wed Nov 01 16:35:49 2017 Fix warnings produced by trunk clang in test code These are mostly -Wsign-compare warnings, with a -Wconstant-conversion and a -Wunguarded-availability thrown in. Bug: chromium:779790 Change-Id: Ic2103f3332ce57378db83eca7fa2569efec1a7b6 Reviewed-on: https://chromium-review.googlesource.com/746081 Reviewed-by: Leonard Mosescu <mosescu@chromium.org> [modify] https://crrev.com/a51e912004a63250bc9c7b0e43394b4c22ead8a0/minidump/minidump_file_writer_test.cc [modify] https://crrev.com/a51e912004a63250bc9c7b0e43394b4c22ead8a0/snapshot/mac/process_reader_test.cc [modify] https://crrev.com/a51e912004a63250bc9c7b0e43394b4c22ead8a0/snapshot/win/cpu_context_win_test.cc [modify] https://crrev.com/a51e912004a63250bc9c7b0e43394b4c22ead8a0/snapshot/win/crashpad_snapshot_test_image_reader.cc [modify] https://crrev.com/a51e912004a63250bc9c7b0e43394b4c22ead8a0/snapshot/win/exception_snapshot_win_test.cc [modify] https://crrev.com/a51e912004a63250bc9c7b0e43394b4c22ead8a0/snapshot/win/pe_image_reader_test.cc [modify] https://crrev.com/a51e912004a63250bc9c7b0e43394b4c22ead8a0/snapshot/win/process_reader_win_test.cc [modify] https://crrev.com/a51e912004a63250bc9c7b0e43394b4c22ead8a0/snapshot/win/process_snapshot_win_test.cc
,
Nov 1 2017
The following revision refers to this bug: https://chromium.googlesource.com/crashpad/crashpad.git/+/1669ca2bac66f2dde2f89aec7db2c9aecca93899 commit 1669ca2bac66f2dde2f89aec7db2c9aecca93899 Author: Mark Mentovai <mark@chromium.org> Date: Wed Nov 01 16:44:45 2017 test: Rework TestPaths interface for obtaining 32-bit build artifacts The design for running all Crashpad unit tests on Chromium’s try- and buildbots involves pulling all tests into a single monolithic crashpad_tests executable. Many Crashpad tests base the name of their child executables or modules on the name of the main test executable. Since the main test executable will have a different name in the in-Chromium build, knowledge of the test executable name (referred to as “module” here) needs to be added to the tests themselves. This introduces TestPaths::BuildArtifact(), which allows the module name to be specified. For Crashpad’s standalone build, the module name is verified against the main test executable’s name. TestPaths::BuildArtifact() can also locate paths in the alternate 32-bit output directory for 64-bit Windows tests, taking on the responsibility for what the new (5e9ed4cb9f69) TestPaths::Output32BitDirectory(), now obsolete, did. Bug: chromium:779790 Change-Id: I64c4a2190b6319e487c999812a7cfc512a75a700 Reviewed-on: https://chromium-review.googlesource.com/747536 Reviewed-by: Scott Graham <scottmg@chromium.org> [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/handler/crashpad_handler_test.cc [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/handler/win/crash_other_program.cc [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/snapshot/crashpad_info_client_options_test.cc [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/snapshot/mac/mach_o_image_annotations_reader_test.cc [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/snapshot/win/exception_snapshot_win_test.cc [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/snapshot/win/extra_memory_ranges_test.cc [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/snapshot/win/pe_image_annotations_reader_test.cc [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/snapshot/win/process_snapshot_win_test.cc [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/test/multiprocess_exec.h [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/test/multiprocess_exec_posix.cc [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/test/multiprocess_exec_test.cc [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/test/multiprocess_exec_win.cc [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/test/test_paths.cc [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/test/test_paths.h [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/test/win/child_launcher.cc [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/test/win/child_launcher.h [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/util/net/http_transport_test.cc [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/util/win/process_info_test.cc [modify] https://crrev.com/1669ca2bac66f2dde2f89aec7db2c9aecca93899/util/win/safe_terminate_process_test.cc
,
Nov 1 2017
The following revision refers to this bug: https://chromium.googlesource.com/crashpad/crashpad.git/+/43b798b492a2ac4d9aada4bc4135db3da11b8234 commit 43b798b492a2ac4d9aada4bc4135db3da11b8234 Author: Mark Mentovai <mark@chromium.org> Date: Wed Nov 01 17:00:30 2017 test: Fix paths for crashpad_tests monolith in Chromium Instead of individual per-directory test executables like crashpad_util_test, all Crashpad tests in Chromium will be run from a single crashpad_tests executable. Test: crashpad_util_test Paths.Executable, ProcessInfo.Self; crashpad_snapshot_test PEImageReader.DebugDirectory Bug: chromium:779790 Change-Id: If95272fd641734fbdb8e231fbcdc4e7ccb2cb822 Reviewed-on: https://chromium-review.googlesource.com/749303 Reviewed-by: Scott Graham <scottmg@chromium.org> [modify] https://crrev.com/43b798b492a2ac4d9aada4bc4135db3da11b8234/snapshot/win/pe_image_reader_test.cc [modify] https://crrev.com/43b798b492a2ac4d9aada4bc4135db3da11b8234/test/test_paths.cc [modify] https://crrev.com/43b798b492a2ac4d9aada4bc4135db3da11b8234/test/test_paths.h [modify] https://crrev.com/43b798b492a2ac4d9aada4bc4135db3da11b8234/util/misc/paths_test.cc [modify] https://crrev.com/43b798b492a2ac4d9aada4bc4135db3da11b8234/util/win/process_info_test.cc
,
Nov 2 2017
The following revision refers to this bug: https://chromium.googlesource.com/crashpad/crashpad.git/+/2db30e035a0084493ef44bdcc5887a8147f74add commit 2db30e035a0084493ef44bdcc5887a8147f74add Author: Mark Mentovai <mark@chromium.org> Date: Thu Nov 02 15:16:59 2017 win: Fix Clang -Wsign-compare warnings in new test code This test code appeared in 9609b7471676, and was missed by the similar warning cleanup of a51e912004a6, which was developed in parallel. Bug: crashpad:192 , chromium:779790 Change-Id: I4ed88ed025e4be4410c98ceaca395218f00007be Reviewed-on: https://chromium-review.googlesource.com/750024 Reviewed-by: Robert Sesek <rsesek@chromium.org> [modify] https://crrev.com/2db30e035a0084493ef44bdcc5887a8147f74add/snapshot/win/pe_image_annotations_reader_test.cc
,
Nov 6 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/efd8584f0232f3b7be704d8f329032bdcfc11214 commit efd8584f0232f3b7be704d8f329032bdcfc11214 Author: Mark Mentovai <mark@chromium.org> Date: Mon Nov 06 17:49:36 2017 Build all Crashpad tests in Chromium, and run on Chromium bots Until ef647b4938a6 and 00a065492978 last week, Crashpad tests did not build or run in Chromium. Since then, crashpad_util_test was buildable in Chromium, but was only run on Windows bots. Crashpad has many more tests than crashpad_util_test, and its tests run on both macOS and Windows. This change allows all of Crashpad’s unit tests to build in Chromium’s GN-based build, and runs them on macOS and Windows try- and buildbots. Rather than having individual module-specific test executables like crashpad_util_test, all unit tests are brought together into one monolithic “crashpad_tests” executable. On Windows, Crashpad also has an “end_to_end_test.py” which drives crashpad_handler and some test crasher programs, and verifies the produced minidump output by running the cdb debugger. That’s not currently accounted for in the Chromium build. As part of this change, additional Crashpad tools are also added to the Chromium build, including the generate_dump tool. Bug: 779790 Change-Id: I87104558c4e33d59b0c6a77bfe0f6f42009a4690 Reviewed-on: https://chromium-review.googlesource.com/751403 Reviewed-by: Dirk Pranke <dpranke@chromium.org> Reviewed-by: Robert Sesek <rsesek@chromium.org> Reviewed-by: Sigurður Ásgeirsson <siggi@chromium.org> Commit-Queue: Mark Mentovai <mark@chromium.org> Cr-Commit-Position: refs/heads/master@{#514167} [modify] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/BUILD.gn [add] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/build/secondary/third_party/crashpad/crashpad/BUILD.gn [modify] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/build/secondary/third_party/crashpad/crashpad/client/BUILD.gn [modify] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/build/secondary/third_party/crashpad/crashpad/compat/BUILD.gn [modify] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/build/secondary/third_party/crashpad/crashpad/handler/BUILD.gn [modify] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/build/secondary/third_party/crashpad/crashpad/minidump/BUILD.gn [modify] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/build/secondary/third_party/crashpad/crashpad/snapshot/BUILD.gn [modify] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/build/secondary/third_party/crashpad/crashpad/test/BUILD.gn [modify] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/build/secondary/third_party/crashpad/crashpad/third_party/zlib/BUILD.gn [modify] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/build/secondary/third_party/crashpad/crashpad/tools/BUILD.gn [modify] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/build/secondary/third_party/crashpad/crashpad/util/BUILD.gn [modify] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/components/browser_watcher/BUILD.gn [modify] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/components/crash/content/app/BUILD.gn [modify] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/testing/buildbot/chromium.clang.json [modify] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/testing/buildbot/chromium.fyi.json [modify] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/testing/buildbot/chromium.mac.json [modify] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/testing/buildbot/chromium.win.json [modify] https://crrev.com/efd8584f0232f3b7be704d8f329032bdcfc11214/testing/buildbot/gn_isolate_map.pyl
,
Nov 6 2017
,
Nov 6 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/49f5374a36de074d0b3edeb9f07d80468ec20caa commit 49f5374a36de074d0b3edeb9f07d80468ec20caa Author: meade_UTC10 <meade@chromium.org> Date: Mon Nov 06 23:44:36 2017 Revert "Build all Crashpad tests in Chromium, and run on Chromium bots" This reverts commit efd8584f0232f3b7be704d8f329032bdcfc11214. Reason for revert: Causes crashpad_tests failure on Win7 bot. First failure: https://build.chromium.org/p/chromium.win/builders/Win7%20Tests%20%28dbg%29%281%29/builds/64492 Original change's description: > Build all Crashpad tests in Chromium, and run on Chromium bots > > Until ef647b4938a6 and 00a065492978 last week, Crashpad tests did not > build or run in Chromium. Since then, crashpad_util_test was buildable > in Chromium, but was only run on Windows bots. > > Crashpad has many more tests than crashpad_util_test, and its tests run > on both macOS and Windows. This change allows all of Crashpad’s unit > tests to build in Chromium’s GN-based build, and runs them on macOS and > Windows try- and buildbots. > > Rather than having individual module-specific test executables like > crashpad_util_test, all unit tests are brought together into one > monolithic “crashpad_tests” executable. > > On Windows, Crashpad also has an “end_to_end_test.py” which drives > crashpad_handler and some test crasher programs, and verifies the > produced minidump output by running the cdb debugger. That’s not > currently accounted for in the Chromium build. > > As part of this change, additional Crashpad tools are also added to the > Chromium build, including the generate_dump tool. > > Bug: 779790 > Change-Id: I87104558c4e33d59b0c6a77bfe0f6f42009a4690 > Reviewed-on: https://chromium-review.googlesource.com/751403 > Reviewed-by: Dirk Pranke <dpranke@chromium.org> > Reviewed-by: Robert Sesek <rsesek@chromium.org> > Reviewed-by: Sigurður Ásgeirsson <siggi@chromium.org> > Commit-Queue: Mark Mentovai <mark@chromium.org> > Cr-Commit-Position: refs/heads/master@{#514167} TBR=dpranke@chromium.org,rsesek@chromium.org,mark@chromium.org,siggi@chromium.org Change-Id: I0f1298327e1a9069685811ac5e6eb27d92e7dceb No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 779790 , 782011 Reviewed-on: https://chromium-review.googlesource.com/756174 Reviewed-by: meade_UTC10 <meade@chromium.org> Commit-Queue: meade_UTC10 <meade@chromium.org> Cr-Commit-Position: refs/heads/master@{#514296} [modify] https://crrev.com/49f5374a36de074d0b3edeb9f07d80468ec20caa/BUILD.gn [delete] https://crrev.com/4ce143c7e55bf26819d521e51750675c5f374483/build/secondary/third_party/crashpad/crashpad/BUILD.gn [modify] https://crrev.com/49f5374a36de074d0b3edeb9f07d80468ec20caa/build/secondary/third_party/crashpad/crashpad/client/BUILD.gn [modify] https://crrev.com/49f5374a36de074d0b3edeb9f07d80468ec20caa/build/secondary/third_party/crashpad/crashpad/compat/BUILD.gn [modify] https://crrev.com/49f5374a36de074d0b3edeb9f07d80468ec20caa/build/secondary/third_party/crashpad/crashpad/handler/BUILD.gn [modify] https://crrev.com/49f5374a36de074d0b3edeb9f07d80468ec20caa/build/secondary/third_party/crashpad/crashpad/minidump/BUILD.gn [modify] https://crrev.com/49f5374a36de074d0b3edeb9f07d80468ec20caa/build/secondary/third_party/crashpad/crashpad/snapshot/BUILD.gn [modify] https://crrev.com/49f5374a36de074d0b3edeb9f07d80468ec20caa/build/secondary/third_party/crashpad/crashpad/test/BUILD.gn [modify] https://crrev.com/49f5374a36de074d0b3edeb9f07d80468ec20caa/build/secondary/third_party/crashpad/crashpad/third_party/zlib/BUILD.gn [modify] https://crrev.com/49f5374a36de074d0b3edeb9f07d80468ec20caa/build/secondary/third_party/crashpad/crashpad/tools/BUILD.gn [modify] https://crrev.com/49f5374a36de074d0b3edeb9f07d80468ec20caa/build/secondary/third_party/crashpad/crashpad/util/BUILD.gn [modify] https://crrev.com/49f5374a36de074d0b3edeb9f07d80468ec20caa/components/browser_watcher/BUILD.gn [modify] https://crrev.com/49f5374a36de074d0b3edeb9f07d80468ec20caa/components/crash/content/app/BUILD.gn [modify] https://crrev.com/49f5374a36de074d0b3edeb9f07d80468ec20caa/testing/buildbot/chromium.clang.json [modify] https://crrev.com/49f5374a36de074d0b3edeb9f07d80468ec20caa/testing/buildbot/chromium.fyi.json [modify] https://crrev.com/49f5374a36de074d0b3edeb9f07d80468ec20caa/testing/buildbot/chromium.mac.json [modify] https://crrev.com/49f5374a36de074d0b3edeb9f07d80468ec20caa/testing/buildbot/chromium.win.json [modify] https://crrev.com/49f5374a36de074d0b3edeb9f07d80468ec20caa/testing/buildbot/gn_isolate_map.pyl
,
Nov 7 2017
,
Nov 7 2017
The following revision refers to this bug: https://chromium.googlesource.com/crashpad/crashpad.git/+/d3b7463c7a48e83180a2619d00614a175641fb4e commit d3b7463c7a48e83180a2619d00614a175641fb4e Author: Mark Mentovai <mark@chromium.org> Date: Tue Nov 07 17:42:18 2017 win: Recognize nsi.dll presenting as VFT_DRV/VFT2_DRV_NETWORK This was previously proposed at https://chromium-review.googlesource.com/c/crashpad/crashpad/+/339103/2/util/win/pe_image_reader_test.cc#84. It didn’t land because the change was abandoned for other reasons, but the fix was valid. nsi.dll is not VFT_APP or VFT_DLL, and if it’s loaded, crashpad_snapshot_test PEImageReader.VSFixedFileInfo_AllModules fails. Although I can’t reproduce nsi.dll being loaded spontaneously in local testing or on trybots, it occurred in the monolithic crashpad_tests at https://build.chromium.org/p/chromium.win/builders/Win7%20Tests%20%28dbg%29%281%29/builds/64492: [ RUN ] PEImageReader.VSFixedFileInfo_AllModules ../../third_party/crashpad/crashpad/snapshot/win/pe_image_reader_test.cc(90): error: Value of: observed.dwFileType == VFT_APP || observed.dwFileType == VFT_DLL Actual: false Expected: true Google Test trace: ../../third_party/crashpad/crashpad/snapshot/win/pe_image_reader_test.cc(164): C:\Windows\syswow64\NSI.dll [ FAILED ] PEImageReader.VSFixedFileInfo_AllModules (11 ms) I can also reproduce locally by calling LoadLibrary(L"nsi.dll"). Bug: chromium:779790 , chromium:782011 Test: crashpad_snapshot_test PEImageReader.VSFixedFileInfo_AllModules Change-Id: I361c7d6521645913277a441ce38779aaa4a182c2 Reviewed-on: https://chromium-review.googlesource.com/757077 Reviewed-by: Scott Graham <scottmg@chromium.org> Commit-Queue: Mark Mentovai <mark@chromium.org> [modify] https://crrev.com/d3b7463c7a48e83180a2619d00614a175641fb4e/snapshot/win/pe_image_reader_test.cc
,
Nov 8 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/1782adb1a98dc011a10049787696bd70671c1d06 commit 1782adb1a98dc011a10049787696bd70671c1d06 Author: Mark Mentovai <mark@chromium.org> Date: Wed Nov 08 05:11:27 2017 Build all Crashpad tests in Chromium, and run on Chromium bots Originally landed at efd8584f0232 (https://chromium-review.googlesource.com/751403) and subsequently reverted at 49f5374a36de because of test failures. There are no changes to this reland, but the test failures are addressed by updating Crashpad to include https://chromium.googlesource.com/crashpad/crashpad/+/d3b7463c7a48. Until the recent ef647b4938a6 and 00a065492978, Crashpad tests did not build or run in Chromium. Since then, crashpad_util_test was buildable in Chromium, but was only run on Windows bots. Crashpad has many more tests than crashpad_util_test, and its tests run on both macOS and Windows. This change allows all of Crashpad’s unit tests to build in Chromium’s GN-based build, and runs them on macOS and Windows try- and buildbots. Rather than having individual module-specific test executables like crashpad_util_test, all unit tests are brought together into one monolithic “crashpad_tests” executable. On Windows, Crashpad also has an “end_to_end_test.py” which drives crashpad_handler and some test crasher programs, and verifies the produced minidump output by running the cdb debugger. That’s not currently accounted for in the Chromium build. As part of this change, additional Crashpad tools are also added to the Chromium build, including the generate_dump tool. Bug: 779790 , 782011 Change-Id: Id192c40a1e7db178bdb093cd050b7fc5a5a876c9 Reviewed-on: https://chromium-review.googlesource.com/757188 Commit-Queue: Mark Mentovai <mark@chromium.org> Reviewed-by: Sigurður Ásgeirsson <siggi@chromium.org> Reviewed-by: Dirk Pranke <dpranke@chromium.org> Cr-Commit-Position: refs/heads/master@{#514759} [modify] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/BUILD.gn [add] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/build/secondary/third_party/crashpad/crashpad/BUILD.gn [modify] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/build/secondary/third_party/crashpad/crashpad/client/BUILD.gn [modify] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/build/secondary/third_party/crashpad/crashpad/compat/BUILD.gn [modify] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/build/secondary/third_party/crashpad/crashpad/handler/BUILD.gn [modify] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/build/secondary/third_party/crashpad/crashpad/minidump/BUILD.gn [modify] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/build/secondary/third_party/crashpad/crashpad/snapshot/BUILD.gn [modify] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/build/secondary/third_party/crashpad/crashpad/test/BUILD.gn [modify] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/build/secondary/third_party/crashpad/crashpad/third_party/zlib/BUILD.gn [modify] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/build/secondary/third_party/crashpad/crashpad/tools/BUILD.gn [modify] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/build/secondary/third_party/crashpad/crashpad/util/BUILD.gn [modify] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/components/browser_watcher/BUILD.gn [modify] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/components/crash/content/app/BUILD.gn [modify] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/testing/buildbot/chromium.clang.json [modify] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/testing/buildbot/chromium.fyi.json [modify] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/testing/buildbot/chromium.mac.json [modify] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/testing/buildbot/chromium.win.json [modify] https://crrev.com/1782adb1a98dc011a10049787696bd70671c1d06/testing/buildbot/gn_isolate_map.pyl
,
Nov 8 2017
|
||||
►
Sign in to add a comment |
||||
Comment 1 by thakis@chromium.org
, Oct 30 2017