Skip to content

test: remove vacuous blog-migration integration test (#25)#179

Merged
TortoiseWolfe merged 1 commit into
mainfrom
chore/remove-vacuous-migration-test
Jul 5, 2026
Merged

test: remove vacuous blog-migration integration test (#25)#179
TortoiseWolfe merged 1 commit into
mainfrom
chore/remove-vacuous-migration-test

Conversation

@TortoiseWolfe

Copy link
Copy Markdown
Owner

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-check clean (nothing imported the deleted file).
  • vitest list still collects the suite; the 3 real integration tests remain.
  • No config/CI reference to the file — it was glob-picked only.

Flagged separately (not in this PR)

Two sibling integration tests — auto-generation.test.ts and enhanced-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

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 TortoiseWolfe merged commit c805858 into main Jul 5, 2026
18 checks passed
@TortoiseWolfe TortoiseWolfe deleted the chore/remove-vacuous-migration-test branch July 5, 2026 02:58
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>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants