fix(test): mock action-imports in idea-timeline-merge test #16

Merged
janpeter merged 1 commit from fix/idea-timeline-test-prisma-import into main 2026-05-17 04:05:55 +02:00
Owner

Summary

  • __tests__/components/idea-timeline-merge.test.ts faalde op GitHub Actions met DATABASE_URL is not set.
  • Root cause: de test importeert mergeTimelineItems uit components/ideas/idea-timeline.tsx, dat transitief @/actions/questions + @/actions/user-questions binnenhaalt — die laden lib/prisma, dat bij module-init throwt zonder DATABASE_URL.
  • Fix: mock beide action-modules vóór de component-import (zelfde patroon als dialogs/answer-modal.test.tsx en split-pane.test.tsx).
  • Lokaal en op Forgejo viel het niet op omdat resp. .env aanwezig is en er geen Forgejo CI draait.

Test plan

  • npm test -- __tests__/components/idea-timeline-merge.test.ts → 2/2 groen
  • npm test full suite → 122/122 files, 1069/1069 tests groen
  • Clean-env simulatie (env -i NODE_ENV=test …) → groen zonder DATABASE_URL → bewijst transitive prisma-import is weg
## Summary - `__tests__/components/idea-timeline-merge.test.ts` faalde op GitHub Actions met `DATABASE_URL is not set`. - Root cause: de test importeert `mergeTimelineItems` uit `components/ideas/idea-timeline.tsx`, dat transitief `@/actions/questions` + `@/actions/user-questions` binnenhaalt — die laden `lib/prisma`, dat bij module-init throwt zonder DATABASE_URL. - Fix: mock beide action-modules vóór de component-import (zelfde patroon als `dialogs/answer-modal.test.tsx` en `split-pane.test.tsx`). - Lokaal en op Forgejo viel het niet op omdat resp. `.env` aanwezig is en er geen Forgejo CI draait. ## Test plan - [x] `npm test -- __tests__/components/idea-timeline-merge.test.ts` → 2/2 groen - [x] `npm test` full suite → 122/122 files, 1069/1069 tests groen - [x] Clean-env simulatie (`env -i NODE_ENV=test …`) → groen zonder DATABASE_URL → bewijst transitive prisma-import is weg
fix(test): mock action-imports zodat idea-timeline-merge test geen DATABASE_URL nodig heeft
Some checks failed
CI / Lint, Typecheck, Test & Build (pull_request) Failing after 35s
CI / Deploy Manual (workflow_dispatch) (pull_request) Has been skipped
CI / Detect deploy-relevant changes (pull_request) Has been skipped
CI / Deploy Preview (PR) (pull_request) Has been skipped
CI / Deploy Production (main) (pull_request) Has been skipped
cae6194ffb
`mergeTimelineItems` zit in idea-timeline.tsx, dat transitief
`@/actions/questions` en `@/actions/user-questions` importeert. Beide
laden `lib/prisma` dat bij module-init throwt als DATABASE_URL ontbreekt.
GitHub Actions zet die env niet in de Test-stap, dus de hele suite valt
om vóór de eerste test draait.

Mock beide action-modules vóór de component-import (zelfde patroon als
`__tests__/components/dialogs/answer-modal.test.tsx`), zodat de transitive
prisma-init nooit getriggerd wordt.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
janpeter/Scrum4Me!16
No description provided.