Validate all public samples in CI - #11689
Amaury Levé (Evangelink) merged 9 commits into
Conversation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 53a51fa8-6bc5-490c-9e84-9a748692d467
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
CI gating, change classification, Visual Studio discovery, and MSBuild property override issues remain unresolved.
Review effort: Balanced
Findings: 4
Open (4)
What changed in this PR
Adds comprehensive CI validation for all public samples, including UWP packaged and command-line execution paths.
Changes:
- Adds a classified 28-invocation sample test matrix.
- Builds standalone projects omitted from solutions.
- Enables dual packaged/code-only UWP validation.
Confidence at a glance
🟡 Build, CI, and sample execution
Four actionable CI and MSBuild issues require resolution.| File | Description |
|---|---|
samples/public/UwpMtpApp/UwpMtpApp.csproj |
Configures packaged and code-only builds. |
samples/public/UwpMtpApp/UnitTests.cs |
Adds host and dispatcher-aware tests. |
samples/public/UwpMtpApp/README.md |
Documents both execution paths. |
samples/public/UwpMtpApp/MainPage.cs |
Supports operation without compiled XAML. |
samples/public/UwpMtpApp/App.cs |
Makes packaged activation conditional. |
samples/public/mstest-runner/runner_vs_vstest/10C_100M/10C100M.csproj |
Suppresses intentional constant assertions. |
samples/public/mstest-runner/runner_vs_vstest/100C_100M/100C100M.csproj |
Suppresses intentional constant assertions. |
samples/public/mstest-runner/runner_vs_vstest/1000C_100M/1000C100M.csproj |
Suppresses intentional constant assertions. |
samples/public/Directory.Build.targets |
Adjusts Windows VSTest recipe generation. |
eng/test-samples.ps1 |
Adds the sample execution matrix. |
eng/build-samples.ps1 |
Builds projects omitted from solutions. |
azure-pipelines.yml |
Runs sample tests in Windows CI. |
💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
…gelink/testfx into dev/amauryleve/fix-pr-11689-errors
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
This comment has been minimized.
This comment has been minimized.
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
This comment has been minimized.
This comment has been minimized.
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Copilot review overview
🟢 Approval recommended
The implementation consistently covers public sample discovery, execution, and Windows application-model validation without unresolved defects.
Review effort: Balanced
Findings: None
Resolved since last review (1)
|
/azp run microsoft.testfx |
|
Azure Pipelines: Successfully started running 1 pipeline(s). |
|
Final test-triage resolution — Azure Pipelines build 1620910 This supersedes any earlier preliminary comment for this build. Re-verified immediately before posting: PR #11689 head Status: Clearing — isolated, non-reproducing timeout; no issue warranted.Signal: Matrix: The same test passed on Windows Debug net8.0 (518ms) and net462 (610ms, 699ms) in this same build, and was (expectedly) skipped on Linux via History: Across the 5 most-recent completed builds in Issue search: No open or closed issue references this test or this exact timeout message. A superficially related closed issue (#11631) covers a different test ( Assessment: This looks like a one-off, agent-load-sensitive timing issue: the test spawns a real child process and powershell client over TCP loopback with a generous 10s allowance, and that allowance was still exceeded on this single Windows Release leg while an equivalent net462 run on the same job succeeded. No deterministic code defect is indicated, and the durable recurrence threshold (two independent builds/commits, or a proven fail-then-pass recovery) is not met. Next step if this recurs: If this signature reappears in a future
|


Summary
dotnet testwork for the modern UWP MTP sample while preserving its real packaged AppContainer validation path.Validation
eng\build-samples.ps1 -Configuration Release -TreatWarningsAsErrors -BinaryLogDirectory Q:\dev\testfx\artifacts\log\ReleaseSamplesBuildeng\test-samples.ps1 -Configuration Release -BinaryLogDirectory Q:\dev\testfx\artifacts\log\ReleaseSamplesTestFinal— 28/28 sample invocations validated.dotnet test -bl:{{}}fromsamples\public\UwpMtpApp— 1 passed, 2 inconclusive, 0 failed.