Skip to content

test: add direct tests for circuit-breaker.ts and SQL query builders #86

Description

@FlorianBruniaux

Contexte

Audit du 2026-06-23 : deux zones sans couverture directe, identifiées comme priorité test ce mois-ci.

1. `src/lib/circuit-breaker.ts` : couvert indirectement via `geocoder.test.ts`, mais c'est un composant infra réutilisé par les breakers Jawg ET Geoapify (seuil 3 erreurs, reset 1h). Un test unitaire direct documente et protège le comportement isolément.

Cas à couvrir : disponible par défaut, ouverture après `threshold` erreurs, `recordSuccess` remet à zéro, auto-reset après `resetMs` (mock `Date.now`).

2. Query builders SQL bruts : `src/lib/devs-query.ts`, `src/lib/repos-query.ts`, `src/lib/trending-query.ts` contiennent les `$queryRaw` à branches dynamiques. Ce sont les fichiers à risque injection si quelqu'un modifie un binding. Un test de forme (valeurs passées en paramètre bindé) sécurise les modifications futures.

Tests

  • `pnpm test` passe à 1050+ sans régression
  • `circuit-breaker.test.ts` : 4+ cas, `pool:"forks"` respecté

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    choreMaintenance and tooling

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions