commit | 0a2d42f58a73fbc2ef997abc0296c1ff47c304a3 | [log] [tgz] |
---|---|---|
author | Georg Neis <neis@chromium.org> | Tue Feb 13 02:05:10 2024 |
committer | Chromium LUCI CQ <chromium-scoped@luci-project-accounts.iam.gserviceaccount.com> | Tue Feb 13 02:05:10 2024 |
tree | 056c4fd0f6635f81d990c04ae820b837efbc138d | |
parent | 43b9a8028263154fe8e5b103fc40b91bcf7f46c0 [diff] |
Reland^2 "Lacros testing: Make browser init param overriding more robust" This is a reland of commit c37505129ee027a86b3416141230a27516fba43b, which was reverted because of unit test failures in CI. These failures did actually happen in CQ but were hidden there because later reruns of the tests in isolation passed. The only change is the weakening of a CHECK in chromeos/startup/browser_init_params.cc that is necessary as long as ViewTestsBase is used by both unit (crosapi disabled) and non-unit (crosapi enabled) tests. Original change's description: > Reland "Lacros testing: Make browser init param overriding more robust" > > This is a reland of commit e5f6f1434e631cd1c8154a41ee95ce6126688e9a. > The only difference is: disabling a test that conflicts with > the new implementation (see b/323984075). > > Original change's description: > > Lacros testing: Make browser init param overriding more robust > > > > See chromium:1508245 for context. > > > > - Decide whether crosapi is enabled based on the command line > > switches. In particular, make it independent of when/whether > > BrowserTestBase::SetUp gets called. > > We still provide DisableCrosapiForTesting for legacy reasons, > > as some tests need to ovrerride it. > > > > - This, plus some new checks, make it hard for tests > > * to accidentally and silently override the Ash-provided init > > params with mostly empty ones, or > > * to accidentally and silently prevent the Ash-provided params > > from even being read. > > > > - Address a TODO in InProcessBrowserTest thanks to these changes. > > > > - Call DisableCrosapiForTesting in ViewsTestBase-derived tests that > > run with crosapi enabled but are not prepared to set it up (and thus > > would fail one of the new checks) and in fact don't need crosapi. > > > > - Remove InProcessBrowserTest::IsCrosapiEnabled() in favor of > > !chromeos::BrowserParamsProxy::IsCrosapiDisabledForTesting(). There > > is no need to have the InProcessBrowserTest predicate and it's not > > an InProcessBrowserTest level concept. > > > > - Remove ScopedDisableCrosapiForTesting class, as there is no need for > > a scope. Tests should either not call DisableCrosapiForTesting at > > all or should do it very early on (CHECK'd). Undoing it is not > > supported and it's not neceesary because tests run in separate > > processes. > > > > - Add documentation to startup/README.md. > > > > - Remove some uses of IsCrosapiDisabledForTesting from production code > > that are no longer needed. > > > > Bug: chromium:1508245 > > Change-Id: Id6b68a25dae4c50132f957f4b80879fdcde2e7b2 > > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5076190 > > Reviewed-by: Avi Drissman <avi@chromium.org> > > Reviewed-by: Hidehiko Abe <hidehiko@chromium.org> > > Commit-Queue: Georg Neis <neis@chromium.org> > > Cr-Commit-Position: refs/heads/main@{#1255430} > > Bug: chromium:1508245, b/323984075 > Change-Id: I8cced0fe121b3edb757aacc07a706205566cbf24 > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5267259 > Auto-Submit: Georg Neis <neis@chromium.org> > Commit-Queue: Avi Drissman <avi@chromium.org> > Reviewed-by: Avi Drissman <avi@chromium.org> > Reviewed-by: Hidehiko Abe <hidehiko@chromium.org> > Cr-Commit-Position: refs/heads/main@{#1257372} Bug: chromium:1508245, b/323984075, b/324418102 Change-Id: I49c61ddc09d610962cae6c7bed88f7663d6a7ca5 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5281235 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Hidehiko Abe <hidehiko@chromium.org> Reviewed-by: Avi Drissman <avi@chromium.org> Cr-Commit-Position: refs/heads/main@{#1259615}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
To check out the source code locally, don't use git clone
! Instead, follow the instructions on how to get the code.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure.
For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.
If you found a bug, please file it at https://crbug.com/new.