CI run for contributor PR #38607 - #38700
Draft
brave-builds wants to merge 1 commit into
Draft
Conversation
TestBlobsArePartitioned() closes the first a.com tab and then immediately expects every blob URL registered in that tab to be unfetchable. Closing the tab destroys the browser-side RenderFrameHosts synchronously, but the blob URL mappings are owned by the browser-side BlobURLStoreImpl objects, which drop their mappings only in ~BlobURLStoreImpl. Each of those objects is kept alive by its mojo receiver, so it is destroyed only after the closed document is torn down in its renderer (which resets the renderer's BlobURLStore remote) and the resulting pipe disconnect is processed in the browser. Nothing on the browser side reports that renderer-side teardown, so the assertions raced with it and intermittently observed the blob contents instead of "error" on macOS. The previous attempt (#35003) flushed the IO thread and ran all pending browser tasks, which cannot close this race: at that point the renderer has not sent the disconnect yet. Instead, poll each blob URL with the Fetch API until it stops resolving, bounded by TestTimeouts::action_max_timeout(), and only then run the existing strict check that also fetches through a dedicated worker. The polling loop calls EvalJs() directly instead of using base::test::RunUntil() because EvalJs() spins a nested run loop. The two fetches performed by FetchBlob() can legitimately disagree while a revocation is in flight, which is the second failure signature seen in the issue, and that is now avoided as well. Re-enable the four tests that were disabled on macOS in #38104. Resolves brave/brave-browser#57252
Contributor
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR is created to run CI on the changes proposed in PR #38607 by @netzenbot.
This PR should not be merged.