You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(#208): migrate remaining mirrored tests off dist and retire dist-requiring integration tests
Convert the last 11 mirrored private-helper tests (scaffold, quality,
build, update) to the dot-source-first pattern so `nova test` no longer
requires a prior `Invoke-NovaBuild`. Retire nine legacy integration and
guardrail tests (Module, OutputFiles, BuildOptions, CiCoverage,
CliHelperCoverage, CliSharedParser, PackageLatestPolicy, PreambleBuild,
UpdateNotification) and their TestSupport sidecars to `tests/_legacy/`
with the `.LegacyReference.ps1` suffix so Pester discovery skips them.
Their behavior is now covered by the mirrored source-file tests added
in #200 – #207.
Copy file name to clipboardExpand all lines: CHANGELOG.md
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -31,7 +31,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
31
31
32
32
33
33
### Changed
34
-
- Retired the pre-migration broad coverage-bucket suites (`CoverageGaps*`, `CoverageCompletion*`, `Remaining*Coverage*`, broad `NovaCommandModel*`) by moving them to `tests/_legacy/` and renaming the `.Tests.ps1` suffix to `.LegacyReference.ps1` so Pester discovery no longer runs them. The mirrored `tests/public/` and `tests/private/<domain>/` suites added in #200 – #206 now own that coverage; the retired files stay readable as a reference until coverage measurement is re-enabled and confirms no regression. Active tests that still consume `RemainingHelperCoverage.TestSupport.ps1` (`PackageLatestPolicy.Tests.ps1`) and `CoverageGaps.Cli.TestSupport.ps1` (`CliHelperCoverage.Tests.ps1`, `CliSharedParser.Tests.ps1`) keep their existing support files in place.
34
+
- Retired the pre-migration broad coverage-bucket suites (`CoverageGaps*`, `CoverageCompletion*`, `Remaining*Coverage*`, broad `NovaCommandModel*`) by moving them to `tests/_legacy/` and renaming the `.Tests.ps1` suffix to `.LegacyReference.ps1` so Pester discovery no longer runs them. The mirrored `tests/public/` and `tests/private/<domain>/` suites added in #200 – #206 now own that coverage; the retired files stay readable as a reference until coverage measurement is re-enabled and confirms no regression.
35
+
- Migrated the remaining mirrored private-helper tests (`tests/private/update/`, `tests/private/quality/`, `tests/private/build/InvokeNovaBuildWorkflow.Tests.ps1`, and `tests/private/scaffold/`) off the legacy `Import-Module dist + InModuleScope` pattern to the dot-source-first model, so the full mirrored test suite runs against `src/**/*.ps1` directly and does not require a prior `Invoke-NovaBuild`.
36
+
- Retired the dist-requiring integration and guardrail tests (`Module`, `OutputFiles`, `BuildOptions`, `CiCoverage`, `CliHelperCoverage`, `CliSharedParser`, `PackageLatestPolicy`, `PreambleBuild`, `UpdateNotification`) by moving them to `tests/_legacy/` with the `.LegacyReference.ps1` suffix and moving their `*TestSupport.ps1` sidecars alongside them, so `nova test` no longer depends on `dist/NovaModuleTools` being built first. Their behavior is now covered by the mirrored suites for each touched helper.
35
37
- Test-loading guidance for NovaModuleTools' own tests and for generated Agentic Copilot scaffolds now follows a source-mirrored, dot-source-first pattern: new mirrored tests dot-source the relevant `src/**/*.ps1` files directly in `BeforeAll` instead of importing the built `dist` module or wrapping assertions in `InModuleScope`, so tests run against source files and JaCoCo coverage references real source paths.
36
38
-`project.json``Pester.CodeCoverage.Enabled` is temporarily `false` while the existing test suite migrates to the new dot-source pattern; the configured `90` percent target stays in place and is re-enabled once migration completes.
37
39
- The architect/design flow now surfaces settled vs unresolved design items before finalization, offers explicit choices for full finalization vs design-package-only handoff, clarifies how to use design notes versus the paste-ready GitHub issue draft, and requires finalization output to follow the project Markdown authoring guidance.
0 commit comments