Skip to content

Epic: Expand integration test suite #128

@mjkatgithub

Description

@mjkatgithub

Planning

  • Milestone: Phase 4
  • Priority: P2
  • Size: L
  • Estimate: 8+ SP (split into sub-issues)

Goal

Turn tests/integration/ from a thin smoke layer (3 files, 9 tests) into
meaningful module integration that catches wiring bugs between composables,
utils, and Vue components — without duplicating E2E or full unit mock suites.

Issue templates and README currently imply integration coverage per feature;
most issues today rely on unit + E2E only. This epic closes that gap.

Background

Current integration tests:

File What it does today
useMatrixClient.spec.ts Asserts exported function types exist
appI18n.spec.ts One mounted component + translateText
chatTimeline.spec.ts Timeline mapping with mocked Matrix room events

These are useful but not full integration (no login flow wiring, no
composable chains, no sidebar + unread pipeline).

Follow-up to #122 (CI full lane green) and README "Test layers" section.

Scope (sub-issues to create)

  • Matrix client integration — login/session restore chain with shared
    mocks; send message → timeline mapping round-trip
  • Chat UI integration — mount key components with real composable
    stubs (MessageList + timeline utils, SpaceHomePanel + hierarchy utils)
  • i18n + component integration — expand beyond single string; DE/EN
    switch in mounted flows used by chat/auth
  • Integration test conventions doc — when to use integration vs unit
    vs E2E; file naming; shared fixtures under tests/integration/support/

Definition of Done

  • All sub-issues created and linked under this epic
  • tests/integration/ has ≥ 25 meaningful tests across ≥ 6 spec files
  • README "Test layers" updated with integration examples
  • test:integration remains fast enough for CI fast lane (< 30s target)

Nicht im Scope

  • @nuxt/test-utils / Nitro route tests (separate future epic)
  • Replacing E2E scenarios with integration tests
  • Matrix live homeserver in integration (mocks/fixtures only)

Notes

  • Prefer real module imports + narrow mocks at boundaries (Matrix SDK,
    useState) over re-testing unit cases.
  • Keep each spec file ≤ 800 lines (CCD).
  • Docs: update docs/architecture.md test row when conventions land.

Related

Metadata

Metadata

Assignees

Projects

Status
Backlog

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions