From e0e451ae02739ba807d9937c75934a5fe814d95e Mon Sep 17 00:00:00 2001 From: Sven <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Mon, 2 Feb 2026 08:39:58 +0100 Subject: [PATCH 1/3] Update run_tests.yml --- .github/workflows/run_tests.yml | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/.github/workflows/run_tests.yml b/.github/workflows/run_tests.yml index 1fe3a46b..fd063688 100644 --- a/.github/workflows/run_tests.yml +++ b/.github/workflows/run_tests.yml @@ -34,15 +34,22 @@ jobs: - name: Wait for app to be ready run: | echo "Waiting for http://localhost:5132 to respond..." + success_count=0 for i in {1..60}; do if curl -sSf http://localhost:5132 >/dev/null; then - echo "App is ready" + success_count=$((success_count+1)) + echo "Health check passed ($success_count/5)" + if [ "$success_count" -ge 5 ]; then + echo "App is stable and ready" exit 0 fi - echo "Waiting for app to start ($i/60)..." + else + success_count=0 + echo "Not ready yet ($i/60)..." + fi sleep 2 done - echo "App failed to start after waiting" >&2 + echo "App never became ready" >&2 exit 1 shell: bash From 8edd24f39a2b922cccf506f5d3acb5f8cdc195f1 Mon Sep 17 00:00:00 2001 From: Sven <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Mon, 2 Feb 2026 08:49:15 +0100 Subject: [PATCH 2/3] Update MSTestSettings.cs --- AudioCuesheetEditor.End2EndTests/MSTestSettings.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AudioCuesheetEditor.End2EndTests/MSTestSettings.cs b/AudioCuesheetEditor.End2EndTests/MSTestSettings.cs index ceea514c..aaf278c8 100644 --- a/AudioCuesheetEditor.End2EndTests/MSTestSettings.cs +++ b/AudioCuesheetEditor.End2EndTests/MSTestSettings.cs @@ -1 +1 @@ -[assembly: Parallelize(Scope = ExecutionScope.ClassLevel)] +[assembly: Parallelize(Scope = ExecutionScope.MethodLevel)] From ac066d25e03a580a5de8d9c393a8c04a6afff549 Mon Sep 17 00:00:00 2001 From: Sven <40752681+NeoCoderMatrix86@users.noreply.github.com> Date: Mon, 2 Feb 2026 09:01:19 +0100 Subject: [PATCH 3/3] add check for loading state --- AudioCuesheetEditor.End2EndTests/Models/About.cs | 1 + AudioCuesheetEditor.End2EndTests/Models/DetailView.cs | 1 + AudioCuesheetEditor.End2EndTests/Models/ImportView.cs | 1 + AudioCuesheetEditor.End2EndTests/Models/RecordView.cs | 1 + 4 files changed, 4 insertions(+) diff --git a/AudioCuesheetEditor.End2EndTests/Models/About.cs b/AudioCuesheetEditor.End2EndTests/Models/About.cs index ae907b43..115417b5 100644 --- a/AudioCuesheetEditor.End2EndTests/Models/About.cs +++ b/AudioCuesheetEditor.End2EndTests/Models/About.cs @@ -30,6 +30,7 @@ internal async Task GotoAsync() await _page.GotoAsync(BaseUrl); await _page.WaitForURLAsync(BaseUrl); await _page.WaitForLoadStateAsync(LoadState.NetworkIdle); + await _page.WaitForFunctionAsync(@"() => window.Blazor !== undefined"); } } } diff --git a/AudioCuesheetEditor.End2EndTests/Models/DetailView.cs b/AudioCuesheetEditor.End2EndTests/Models/DetailView.cs index 473d78a4..ab75d268 100644 --- a/AudioCuesheetEditor.End2EndTests/Models/DetailView.cs +++ b/AudioCuesheetEditor.End2EndTests/Models/DetailView.cs @@ -37,6 +37,7 @@ internal async Task GotoAsync() await _page.GotoAsync(BaseUrl); await _page.WaitForURLAsync(BaseUrl); await _page.WaitForLoadStateAsync(LoadState.NetworkIdle); + await _page.WaitForFunctionAsync(@"() => window.Blazor !== undefined"); } internal async Task AddTrackAsync() diff --git a/AudioCuesheetEditor.End2EndTests/Models/ImportView.cs b/AudioCuesheetEditor.End2EndTests/Models/ImportView.cs index f6d65aa7..be0c6185 100644 --- a/AudioCuesheetEditor.End2EndTests/Models/ImportView.cs +++ b/AudioCuesheetEditor.End2EndTests/Models/ImportView.cs @@ -39,6 +39,7 @@ internal async Task GotoAsync() await _page.GotoAsync(BaseUrl); await _page.WaitForURLAsync(BaseUrl); await _page.WaitForLoadStateAsync(LoadState.NetworkIdle); + await _page.WaitForFunctionAsync(@"() => window.Blazor !== undefined"); await _page.GetByText("Import view").ClickAsync(); } diff --git a/AudioCuesheetEditor.End2EndTests/Models/RecordView.cs b/AudioCuesheetEditor.End2EndTests/Models/RecordView.cs index 17abe41c..7b83f47e 100644 --- a/AudioCuesheetEditor.End2EndTests/Models/RecordView.cs +++ b/AudioCuesheetEditor.End2EndTests/Models/RecordView.cs @@ -28,6 +28,7 @@ internal async Task GotoAsync() await _page.GotoAsync(BaseUrl); await _page.WaitForURLAsync(BaseUrl); await _page.WaitForLoadStateAsync(LoadState.NetworkIdle); + await _page.WaitForFunctionAsync(@"() => window.Blazor !== undefined"); await _page.GetByText("Record view").ClickAsync(); }