[go: up one dir, main page]

Ensure native BrowserTests tear down activity properly

Our historical call to Activity#finish in NativeTest.java didn't
actually do anything, because we immediately crash during activity teardown because browsertests tear down everything including features
and PostTask.

This means we need to finish the Activity before browser test teardown,
and fix a few tests that were unintentionally relying on the browser
not being torn down.

This is mainly needed for PRE_ tests which often rely on a clean
browser teardown to save state for the following test.

Bug: 40200835
Change-Id: Ifcfd024466ab98899fd418ee3d218180ac6243dd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7003215
Commit-Queue: Michael Thiessen <mthiesse@chromium.org>
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Mikel Astiz <mastiz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1527520}
NOKEYCHECK=True
GitOrigin-RevId: a229d33e80ffa267211146c4abf62ee3a34fd5e6
1 file changed
tree: ee61f5af8ae411ddb9305b63b0662ea1eb866a4a
  1. 3pp_common/
  2. android/
  3. apple/
  4. args/
  5. autoroll/
  6. chromeos/
  7. cipd/
  8. config/
  9. docs/
  10. fuchsia/
  11. gn_ast/
  12. internal/
  13. ios/
  14. linux/
  15. mac/
  16. mcp_servers/
  17. modules/
  18. private_code_test/
  19. rust/
  20. sanitizers/
  21. skia_gold_common/
  22. toolchain/
  23. util/
  24. win/
  25. .clang-tidy
  26. .clangd
  27. .git-blame-ignore-revs
  28. .gitignore
  29. .style.yapf
  30. action_helpers.py
  31. action_helpers_unittest.py
  32. add_rts_filters.py
  33. build-ctags.sh
  34. BUILD.gn
  35. build_config.h
  36. buildflag.h
  37. buildflag_header.gni
  38. check_gn_headers.py
  39. check_gn_headers_allowlist.txt
  40. check_gn_headers_unittest.py
  41. check_return_value.py
  42. ciopfs.sha1
  43. clobber.py
  44. clobber_unittest.py
  45. compiled_action.gni
  46. compute_build_timestamp.py
  47. copy_test_data_ios.py
  48. cp.py
  49. DEPS
  50. detect_host_arch.py
  51. DIR_METADATA
  52. dotfile_settings.gni
  53. env_dump.py
  54. extract_from_cab.py
  55. extract_partition.py
  56. find_depot_tools.py
  57. fix_gn_headers.py
  58. gdb-add-index
  59. get_landmines.py
  60. get_symlink_targets.py
  61. gn_editor
  62. gn_helpers.py
  63. gn_helpers_unittest.py
  64. gn_logs.gni
  65. gn_run_binary.py
  66. install-build-deps.py
  67. install-build-deps.sh
  68. install-chroot.sh
  69. landmine_utils.py
  70. landmines.py
  71. locale_tool.py
  72. mac_toolchain.py
  73. metadata.json.in
  74. nocompile.gni
  75. noop.py
  76. OWNERS
  77. OWNERS.setnoparent
  78. OWNERS.status
  79. partitioned_shared_library.gni
  80. precompile.cc
  81. precompile.h
  82. PRESUBMIT.py
  83. PRESUBMIT_test.py
  84. print_python_deps.py
  85. protoc_java.py
  86. protoc_java.pydeps
  87. README.md
  88. redirect_stdout.py
  89. rm.py
  90. sample_arg_file.gn
  91. sanitize-mac-build-log.sed
  92. sanitize-mac-build-log.sh
  93. sanitize-win-build-log.sed
  94. sanitize-win-build-log.sh
  95. shim_headers.gni
  96. symlink.gni
  97. symlink.py
  98. timestamp.gni
  99. tree_truth.sh
  100. update-linux-sandbox.sh
  101. vs_toolchain.py
  102. whitespace_file.txt
  103. write_buildflag_header.py
  104. xcode_binaries.yaml
  105. zip_helpers.py
  106. zip_helpers_unittest.py
README.md

About

//build contains:

  • Core GN templates and configuration
  • Core Python build scripts

Since this directory is DEPS'ed in by some other repositories (webrtc, pdfium, v8, etc), it should be kept as self-contained as possible by not referring to files outside of it. Some exceptions exist (//testing, select //third_party subdirectories), but new dependencies tend to break these other projects, and so should be avoided.

Changes to //build should be landed in the Chromium repo. They will then be replicated to the stand-alone build repo by the gsubtreed tool. Note: You can find all directories already available through gsubtreed in the list of all chromium repos.

Contents

  • //build/config - Common templates via .gni files.
  • //build/toolchain - GN toolchain definitions.
  • Other .py files - Some are used by GN/Ninja. Some by gclient hooks, some are just random utilities.

Files referenced by //.gn:

  • //build/BUILDCONFIG.gn - Included by all BUILD.gn files.
  • //build/secondary - An overlay for BUILD.gn files. Enables adding BUILD.gn to directories that live in sub-repositories.
  • //build_overrides - Refer to //build_overrides/README.md.

Docs