From 0506f32d5fb90a092eae909bf7abc280de6ca820 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sun, 1 Mar 2026 00:11:12 +0000 Subject: [PATCH 1/2] Automated bump of chrome version --- eng/testing/BrowserVersions.props | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/eng/testing/BrowserVersions.props b/eng/testing/BrowserVersions.props index 03836531def48a..dd5f54e162bf27 100644 --- a/eng/testing/BrowserVersions.props +++ b/eng/testing/BrowserVersions.props @@ -1,17 +1,17 @@ - 143.0.7499.40 - 1536371 - https://storage.googleapis.com/chromium-browser-snapshots/Linux_x64/1536376 - 14.3.127 + 145.0.7632.116 + 1568190 + https://storage.googleapis.com/chromium-browser-snapshots/Linux_x64/1568190 + 14.5.201 143.0.7499.40 1536371 https://storage.googleapis.com/chromium-browser-snapshots/Mac_Arm/1536376 14.3.127 - 143.0.7499.40 - 1536371 - https://storage.googleapis.com/chromium-browser-snapshots/Win_x64/1536376 - 14.3.127 + 146.0.7680.31 + 1582197 + https://storage.googleapis.com/chromium-browser-snapshots/Win_x64/1582218 + 14.6.202 125.0.1 0.34.0 125.0.1 From 5e210f760483f29ab328bf6a8f0816e553b5635c Mon Sep 17 00:00:00 2001 From: Ilona Tomkowicz Date: Mon, 9 Mar 2026 12:44:23 +0100 Subject: [PATCH 2/2] Wait for Blazor rendering before interacting with page in tests DOMContentLoaded fires when the initial HTML skeleton is parsed, but Blazor WebAssembly still needs to download the runtime, managed assemblies, and render the component tree. Tests that immediately try to click elements after DOMContentLoaded can fail on slow CI machines because the Blazor content hasn't replaced the loading spinner yet. Add a wait for the Blazor-rendered '.page' element inside '#app' to appear before executing any page interactions. This ensures Blazor has fully initialized and the navigation links are actually present and interactive. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../Templates/WasmTemplateTestsBase.cs | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/mono/wasm/Wasm.Build.Tests/Templates/WasmTemplateTestsBase.cs b/src/mono/wasm/Wasm.Build.Tests/Templates/WasmTemplateTestsBase.cs index 820e4464de9eab..ccfd5c57babee1 100644 --- a/src/mono/wasm/Wasm.Build.Tests/Templates/WasmTemplateTestsBase.cs +++ b/src/mono/wasm/Wasm.Build.Tests/Templates/WasmTemplateTestsBase.cs @@ -419,6 +419,19 @@ protected async Task BrowserRun(ToolCommand cmd, string runArgs, RunO _testOutput.WriteLine("Waiting for page to load"); await page.WaitForLoadStateAsync(LoadState.DOMContentLoaded, new() { Timeout = 1 * 60 * 1000 }); + if (runOptions is BlazorRunOptions) + { + // DOMContentLoaded fires as soon as the initial HTML is parsed, + // but Blazor WebAssembly still needs to download the runtime, + // assemblies, and render the component tree. Wait for actual + // Blazor content to appear before interacting with the page. + // The ".page" class comes from MainLayout.razor and is only + // present after Blazor has rendered (client-side apps) or is + // included in the initial server-rendered HTML (Blazor Web apps). + _testOutput.WriteLine("Waiting for Blazor to finish rendering"); + await page.Locator(".page").WaitForAsync(new() { Timeout = 1 * 60 * 1000 }); + } + if (runOptions.ExecuteAfterLoaded is not null) { await runOptions.ExecuteAfterLoaded(runOptions, page);