Skip to content

Unify the test runners used across the repository #24

Description

@priscaenoch

Problem

The repository uses two different test runners:

  • The root TypeScript API service uses Vitest (vitest.config.ts, npm test).
  • The indexer/ service uses Jest (indexer/jest.config.js).

Two runners means two configuration formats, two sets of conventions, duplicated mocking/setup knowledge, and two coverage mechanisms for contributors to learn. It also complicates the CI work needed to cover both services.

What needs to be done

  • Decide on one runner for the repository (Vitest is the likely target since the root already uses it and it supports plain JS).
  • Migrate the other service's tests, keeping behaviour identical: config, setup files, mocks, and coverage.
  • Verify all roughly 47 indexer tests still pass after migration.
  • Update CI and the contributing docs to reference a single command.
  • If the two runners must remain, document the rationale and the boundary explicitly instead.

Files

  • vitest.config.ts
  • indexer/jest.config.js
  • indexer/package.json, package.json
  • .github/workflows/ci.yml, CONTRIBUTING.md

Acceptance deliverables

  • A single documented test runner and command, or a documented, deliberate exception.
  • No test regressions after the migration.

Tests to pass

  • The full suite for both services passes under the unified runner.

Metadata

Metadata

Labels

GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardOfficial Campaign | FWC26Campaign: Official Campaign | FWC26enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions