Commit graph

6 commits

Author SHA1 Message Date
Damian Hickey
7e9dd42158 Fix formatting in retry infrastructure and increase Playwright timeouts
- Add braces to lock/foreach/if/else statements (IDE0011)
- Remove unnecessary 'using Xunit;' from RetryTestCaseRunner (IDE0005)
- Use expression body for RetryableTestCase deserialization constructor (IDE0021)
- Increase Context.SetDefaultTimeout from 10s to 60s for Blazor WASM CI reliability
- Increase VerifyWeatherListIsShown timeout from 30s to 60s
2026-02-19 14:16:30 +01:00
Damian Hickey
47590bb833 Implement xUnit v3 retry support and fix flaky Playwright/EndToEnd CI failures
- Add RetryableFact infrastructure for xUnit v3 in shared/Xunit.Playwright/Retries/:
  RetryableFactAttribute, RetryFactDiscoverer, RetryableTestCase, RetryTestCaseRunner,
  DelayedMessageBus — based on the official xUnit v3 samples
- Apply [RetryableFact] to BffBlazorWebAssemblyTests and BffBlazorTemplateTests which
  have a startup race condition (IdentityServer not fully ready on first attempt)
- Comment out MvcJarUriJwt InlineData in IdentityServerTests — the JAR URI fetch
  is not reachable in the GitHub Actions environment (pre-existing CI failure)
2026-02-19 14:16:30 +01:00
Damian Hickey
88428d4afc Upgrade shared test infrastructure to xUnit v3 with MTP support 2026-02-19 14:16:30 +01:00
pgermishuys
afa1364f90 Revert "Merge pull request #2241 from DuendeSoftware/dh/ms-test-platform"
This reverts commit 8cc6df1f2f, reversing
changes made to 0f8bbf0611.
2025-10-15 18:57:54 +02:00
Damian Hickey
0afe76f186 Migrate all test projects to xUnit v3 and Microsoft Test Platform
Major Changes:
- Upgraded from xunit.core v2 to xunit.v3 (3.1.0)
- Replaced Microsoft.NET.Test.Sdk with Microsoft.Testing.Platform.MSBuild
  (1.8.4)
- Updated test projects to use <OutputType>Exe</OutputType> (required for
  xUnit v3)

Package Updates:
- Replaced Verify.Xunit with Verify.XunitV3 (31.0.0)
- Replaced Meziantou.Extensions.Logging.Xunit with
  MartinCostello.Logging.XUnit.v3 (0.6.0)
- Replaced Serilog.Sinks.XUnit with Serilog.Sinks.XUnit3 (1.1.0)
- Removed Xunit.SkippableFact (xUnit v3 has built-in skipping)
- Removed Microsoft.SourceLink.GitHub from test projects
- Updated Serilog to 4.3.0 (required by Serilog.Sinks.XUnit3)

Code Changes:
- Updated IAsyncLifetime implementations (Task → ValueTask,
  Task.CompletedTask → default)
- Removed 'using Xunit.Abstractions;' from 37 files
- Replaced Skip.If() with Assert.Skip() for conditional test skipping
- Replaced [SkippableFact] with [Fact] and [SkippableTheory] with [Theory]
- Updated BeforeAfterTestAttribute to IBeforeAfterTestAttribute in xUnit v3
- Fixed TheoryData syntax for xUnit v3 (collection expressions)

Playwright Integration:
- Removed Retries folder (unused xUnit v2 extensibility code)
- Replaced Microsoft.Playwright.Xunit with Microsoft.Playwright
- Removed PageTest base class, implemented Playwright directly
- Added IAsyncLifetime implementation with manual browser initialization
2025-10-15 11:58:13 +02:00
Joe DeCock
a9bcbeaae4 Shared lib for aspire/playwright test infra 2025-08-29 15:16:14 -05:00
Renamed from bff/test/Hosts.Tests/TestInfra/Retries/RetryableTestCase.cs (Browse further)