test: remove vacuous blog-migration integration test (#25)#179
Merged
Conversation
src/tests/integration/migration.test.ts (541 lines, 16 tests) imported ZERO application source — only vitest/fs/path — and asserted against inline mock objects it defined itself. It "tested" a blog content-migration subsystem that was never built (issue #25 US4), so it passed regardless of the codebase and gave false coverage confidence. Delete it rather than leave a green test that guards nothing. Surfaced during the #38/#35/#25 gap audit. The named migration feature (US4) is fork-scope, not template scaffolding — see #25. Two sibling integration tests (auto-generation, enhanced-processing) share the same zero-import mock pattern and are flagged separately for a scoping decision rather than swept up here. Refs #25 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
TortoiseWolfe
added a commit
that referenced
this pull request
Jul 5, 2026
…orts) (#180) auto-generation.test.ts (261 lines, 11 tests) and enhanced-processing.test.ts (637 lines, 21 tests) are the same false-coverage pattern as the migration test removed in #179: they import ZERO application source and assert against inline mock objects they define themselves (mockFileWatcher, local RemarkResult/ RehypeResult interfaces). They test the tests' own mocks, not the codebase — green regardless of what ships. Delete rather than keep coverage that guards nothing. This leaves src/tests/integration/ with only payment-isolation.test.ts, which is real (imports @/lib/supabase/types and exercises actual RLS behavior). Follow-up to #179 (flagged there as a scoping decision). Co-authored-by: TurtleWolfe <TurtleWolfe@users.noreply.github.com> Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
3 tasks
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.
What
Deletes
src/tests/integration/migration.test.ts— a 541-line, 16-test file that provided false coverage confidence.Why
The file imports zero application source (only
vitest/fs/path) and asserts against inline mock objects it constructs itself. It "tests" a blog content-migration subsystem (issue #25, User Story 4) that was never built — so it passes regardless of the codebase and would keep passing even if all (nonexistent) migration code were removed. A green test that guards nothing is worse than no test: it implies coverage that doesn't exist.Surfaced during the #38/#35/#25 gap audit. The named migration feature is fork-scope, not template scaffolding (see #25) — the template ships a trustworthy read-only markdown blog; one-time, source-format-specific (Jekyll/Hugo/WordPress) migration tooling is something a concrete fork owns.
Verification
pnpm type-checkclean (nothing imported the deleted file).vitest liststill collects the suite; the 3 real integration tests remain.Flagged separately (not in this PR)
Two sibling integration tests —
auto-generation.test.tsandenhanced-processing.test.ts— share the same zero-import mock pattern (32 passing tests, no application imports). They're the same class of false-coverage debt but deleting them is a broader scoping call, so they're left for a separate decision rather than swept up here.Refs #25
🤖 Generated with Claude Code