Skip to content

Refactor migration specs - #577

Open
ITaluone wants to merge 3 commits into
Fallout-build:mainfrom
ITaluone:refactor-migration-specs
Open

Refactor migration specs#577
ITaluone wants to merge 3 commits into
Fallout-build:mainfrom
ITaluone:refactor-migration-specs

Conversation

@ITaluone

@ITaluone ITaluone commented Jul 27, 2026

Copy link
Copy Markdown
Collaborator

Refactors all Fallout.Migrate.Specs step tests to exercise the full Migration pipeline instead of calling steps directly, and applies the AV1600 behavior-focused naming convention.

What changed

  • RewriteCsprojsStepSpecs, RewriteCsFilesStepSpecs, BumpDotNetVersionStepSpecs, ScriptRewriterSpecs now write real files to a temp directory, run them through Migration.RunAsync(), and assert on the file content read back, instead of calling RewriteCsprojsStep/RewriteCsFilesStep/BumpDotNetVersionStep/ScriptRewriter directly.
  • Renamed all [Fact]/[Theory] methods in RewriteCsFilesStepSpecs, BumpDotNetVersionStepSpecs, and ScriptRewriterSpecs to short, present-tense, snake_case descriptions of observable behavior, matching docs/agents/conventions.md's AV1600 convention already used elsewhere.

Why?

Calling steps in isolation let the specs drift from what the real migration pipeline produces (e.g. hardcoded version strings that don't match ResolveFalloutVersionStep's live resolution.

Verification

  • Traced each test's input through the full pipeline manually to confirm expected edit counts/content.
  • All Migration.Specs green

Additional things to mention:

Does not refactor the BumpDotNetVersionStepSpecs in favor of #572

From: #519 (comment)

@ITaluone
ITaluone requested a review from a team as a code owner July 27, 2026 06:10
@ITaluone
ITaluone force-pushed the refactor-migration-specs branch from b3517e9 to 0c8d921 Compare July 27, 2026 06:16
@ITaluone
ITaluone force-pushed the refactor-migration-specs branch from 0c8d921 to 1434e95 Compare July 27, 2026 06:24
@ITaluone
ITaluone force-pushed the refactor-migration-specs branch from 1434e95 to ce1f0e6 Compare July 27, 2026 06:30
@ITaluone
ITaluone force-pushed the refactor-migration-specs branch from ce1f0e6 to 8032c64 Compare July 27, 2026 06:44
@ITaluone ITaluone added target/vCurrent Targets the current version skip-changelog AI code Contains AI code labels Jul 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

AI code Contains AI code skip-changelog target/vCurrent Targets the current version

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant