From 2cd44fb4367379b8d4775ce3c58300ff3ab7cd1d Mon Sep 17 00:00:00 2001 From: Netzenbot Date: Thu, 7 May 2026 11:55:53 -0400 Subject: [PATCH] Fix flaky EmailAliasesBrowserTest.ContextMenuAuthorized (#36161) The test intermittently failed with "deepQuery is not defined" because InjectHelpers() could execute on the bubble's WebContents before its WebUI page (chrome://email-aliases.panel/) had finished loading. When the WebUI document committed after injection, the JavaScript context was replaced and deepQuery was lost. Add WaitForLoadStop() in InjectHelpers() to ensure the target WebContents has finished loading before injecting helper functions. This matches the pattern used by brave_wallet_tab_helper_browsertest. Resolves brave/brave-browser#54889 --- browser/email_aliases/email_aliases_browsertest.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/browser/email_aliases/email_aliases_browsertest.cc b/browser/email_aliases/email_aliases_browsertest.cc index 27bc2374381..850d16302d1 100644 --- a/browser/email_aliases/email_aliases_browsertest.cc +++ b/browser/email_aliases/email_aliases_browsertest.cc @@ -178,6 +178,7 @@ class EmailAliasesBrowserTestBase : public InProcessBrowserTest { } void InjectHelpers(content::WebContents* contents) { + ASSERT_TRUE(content::WaitForLoadStop(contents)); constexpr char kDeepQuery[] = R"js( function deepQuery(selector) { const query = (root, selector) =>{