Start GUI test coverage: XAML schemas and restore-dialog logic - #81
Merged
Merged
Conversation
The WPF GUI had no automated coverage. This is the first slice. - Test-GuiXamlSchemas.ps1 loads every file in Schemas the way the app does, with XamlReader, and fails if any does not build. A malformed element or an unknown type in a window used to surface only when a user opened that window. Each load runs in its own STA runspace so it works under the pwsh unit job, which is multi-threaded. Confirmed to fail on deliberately broken markup. - Test-RestoreBackupFeatureLists.ps1 covers the restore dialog's pure feature classification: which backed-up features are shown, and which can be reverted automatically (they have an apply .reg file) versus by hand. These functions take data and return data, no WPF, and had no test. Both are wired into the unit workflow.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
First slice of GUI test coverage (Epic Q). The 20 files in
Scripts/GUIhad no automated tests.Test-GuiXamlSchemas.ps1loads all 9 files inSchemasthroughXamlReader, the way the app builds its windows, and fails if any does not construct. A malformed element or an unknown type previously surfaced only when a user opened that window. Each load runs in its own STA runspace, so it works under thepwshunit job (MTA) as well as a normal STA console. Confirmed to fail on deliberately broken markup ("Cannot create unknown type").Test-RestoreBackupFeatureLists.ps1covers the restore dialog's pure feature-classification logic: which backed-up features appear in the overview, and which are auto-revertible (have an apply.reg) versus manual. Pure data in, data out; no WPF.Deferred to a later slice: functions that take live WPF controls (e.g.
ConvertTo-NormalizedCheckboxState), which need a constructed control rather than a data object.Both wired into
test.yml. Test-only; no product change, no release.Local: static validation clean (136 files), full
Tests\Unitsuite 232 passed / 0 failed (20 new).