Skip to content

Commit 578e858

Browse files
csharpfritzCopilot
andcommitted
Add 5 missing integration smoke tests (FritzAndFriends#358)
Add InlineData entries for ListView/CrudOperations, Label, Panel/BackImageUrl, LoginControls/Orientation, and DataGrid/Styles to existing Theory smoke tests in ControlSampleTests.cs. All 5 sample pages verified to exist. Build green. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 0e5aac9 commit 578e858

3 files changed

Lines changed: 41 additions & 0 deletions

File tree

.ai-team/agents/colossus/history.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,3 +50,12 @@ Audited all sample page `@page` routes against ControlSampleTests.cs and Interac
5050

5151
Team update (2026-02-25): M12 introduces Migration Analysis Tool PoC (`bwfc-migrate` CLI, regex-based ASPX parsing, 3-phase roadmap) decided by Forge
5252

53+
## Summary: Issue #358 — 5 Missing Smoke Tests (2026-02-25)
54+
55+
Added 5 missing smoke test InlineData entries to ControlSampleTests.cs covering all gaps identified in M9 audit: ListView/CrudOperations, Label, Panel/BackImageUrl, LoginControls/Orientation, DataGrid/Styles. All 5 sample pages verified to exist. Tests added as InlineData to existing Theory methods (EditorControl, DataControl, LoginControl). Build verified green (0 errors).
56+
57+
## Learnings
58+
59+
- Panel/BackImageUrl sample page uses external placeholder URLs (`via.placeholder.com`). The existing `VerifyPageLoadsWithoutErrors` filter for "Failed to load resource" handles this, so the smoke test works despite the team convention against external image URLs.
60+
- LoginControls/Orientation is at `/ControlSamples/LoginControls/Orientation` (not under `/ControlSamples/Login` or `/ControlSamples/ChangePassword` as initially suggested in the issue).
61+
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# Decision: All 5 Missing Smoke Tests Added (Issue #358)
2+
3+
**Decided by:** Colossus
4+
**Date:** 2026-02-25
5+
6+
## Context
7+
8+
M9 audit identified 5 sample pages without smoke tests. Issue #358 requested adding them.
9+
10+
## Decision
11+
12+
Added 5 InlineData entries to existing Theory smoke tests in `ControlSampleTests.cs`:
13+
14+
| Page | Theory Method | Route |
15+
|------|--------------|-------|
16+
| ListView CrudOperations | `DataControl_Loads_WithoutErrors` | `/ControlSamples/ListView/CrudOperations` |
17+
| Label | `EditorControl_Loads_WithoutErrors` | `/ControlSamples/Label` |
18+
| Panel BackImageUrl | `EditorControl_Loads_WithoutErrors` | `/ControlSamples/Panel/BackImageUrl` |
19+
| LoginControls Orientation | `LoginControl_Loads_WithoutErrors` | `/ControlSamples/LoginControls/Orientation` |
20+
| DataGrid Styles | `DataControl_Loads_WithoutErrors` | `/ControlSamples/DataGrid/Styles` |
21+
22+
## Notes
23+
24+
- All 5 sample pages confirmed to exist at their routes.
25+
- Panel/BackImageUrl uses external placeholder URLs — smoke test works due to existing "Failed to load resource" filter, but the page should be updated to use local images per team convention.
26+
- No new Fact tests needed; all fit cleanly as InlineData on existing Theory methods.
27+
- Build verified green.

samples/AfterBlazorServerSide.Tests/ControlSampleTests.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,9 @@ public ControlSampleTests(PlaywrightFixture fixture)
3434
[InlineData("/ControlSamples/Literal")]
3535
[InlineData("/ControlSamples/Localize")]
3636
[InlineData("/ControlSamples/MultiView")]
37+
[InlineData("/ControlSamples/Label")]
3738
[InlineData("/ControlSamples/Panel")]
39+
[InlineData("/ControlSamples/Panel/BackImageUrl")]
3840
[InlineData("/ControlSamples/PlaceHolder")]
3941
[InlineData("/ControlSamples/RadioButton")]
4042
[InlineData("/ControlSamples/RadioButtonList")]
@@ -50,6 +52,7 @@ public async Task EditorControl_Loads_WithoutErrors(string path)
5052
[InlineData("/ControlSamples/DataGrid")]
5153
[InlineData("/ControlSamples/DataGrid/AutoGeneratedColumns")]
5254
[InlineData("/ControlSamples/DataGrid/ShowHideHeader")]
55+
[InlineData("/ControlSamples/DataGrid/Styles")]
5356
[InlineData("/ControlSamples/DataList")]
5457
[InlineData("/ControlSamples/DataList/Flow")]
5558
[InlineData("/ControlSamples/DataList/RepeatColumns")]
@@ -62,6 +65,7 @@ public async Task EditorControl_Loads_WithoutErrors(string path)
6265
[InlineData("/ControlSamples/ListView/Grouping")]
6366
[InlineData("/ControlSamples/ListView/LayoutTest")]
6467
[InlineData("/ControlSamples/ListView/ModelBinding")]
68+
[InlineData("/ControlSamples/ListView/CrudOperations")]
6569
[InlineData("/ControlSamples/GridView")]
6670
[InlineData("/ControlSamples/GridView/AutoGeneratedColumns")]
6771
[InlineData("/ControlSamples/GridView/BindAttribute")]
@@ -182,6 +186,7 @@ public async Task ValidationControl_Loads_WithoutErrors(string path)
182186
[InlineData("/ControlSamples/ChangePassword")]
183187
[InlineData("/ControlSamples/CreateUserWizard")]
184188
[InlineData("/ControlSamples/PasswordRecovery")]
189+
[InlineData("/ControlSamples/LoginControls/Orientation")]
185190
public async Task LoginControl_Loads_WithoutErrors(string path)
186191
{
187192
await VerifyPageLoadsWithoutErrors(path);

0 commit comments

Comments
 (0)