julien da1f9437ab feat(tests): add Jest+Supertest infrastructure with jump route suite (14 tests)
- Extract Express app creation into src/createApp.js to enable testing without starting the server
- Add Jest, Supertest, test helpers (createTestApp, auth token generator)
- Write 14 integration tests for skydive/jumps: auth protection, CRUD, ownership checks

Bugs caught and fixed by the test suite:
- MongoDB models: author field typed as Schema.Types.UUID (Mongoose 6 rejects string UUIDs) → changed to String
- Jump.toJSONFor: called toProfileJSONFor on a UUID string → guarded with typeof check
- exceptions.handler: used err.statusCode but express-jwt throws err.status → returns 500 on 401 errors
- Jump.count(query): deprecated Mongoose method was ignoring the filter → replaced with countDocuments
- jumps.routes GET /: $or query included non-schema field "title" stripped by strictQuery, leaving {} (match-all) → replaced with slug/lieu search
- $regex: was passing a JS RegExp object which serializes to {} in MongoDB → now passes raw string
2026-04-26 01:23:01 +02:00
2026-03-29 23:56:11 +02:00
2025-08-15 23:24:41 +02:00
2025-08-08 10:47:29 +02:00
2026-03-29 23:56:11 +02:00

AdAstra_API

API pour l'application Ad Astra

Installation rapide

# Initialisation (applique les migrations, seed roles → création admin interactive → seed articles)
# La commande suivante applique d'abord les migrations nécessaires.
npm run setup:api

Installation manuelle

# Appliquer les migrations
npx sequelize-cli db:migrate

# Exécuter le seeder des articles
npx sequelize-cli db:seed --seed 20251126-add-roles.js

# Créer un utilisateur Admin
npm run create:user

# Exécuter le seeder des articles
npx sequelize-cli db:seed --seed 20251127-add-articles.js

Migration

# Appliquer les migrations
npx sequelize-cli db:migrate

# Voir le statut des migrations
npx sequelize-cli db:migrate:status

# Annuler les migrations
npx sequelize-cli db:migrate:undo:all

Seeder

# Exécuter tous les seeders
npx sequelize-cli db:seed:all

# Exécuter un seeder spécifique
npx sequelize-cli db:seed --seed 20251127-add-articles.js

# Annuler tous les seeders
npx sequelize-cli db:seed:undo:all

# Annuler un seeder spécifique
npx sequelize-cli db:seed:undo --seed 20251127-add-articles.js

Start 'local' API server

# Appliquer les migrations
npm run local

# Exécuter le seeder des articles
npx sequelize-cli db:seed --seed 20251126-add-roles.js

# Créer un utilisateur Admin
npm run create:user

# Exécuter le seeder des articles
npx sequelize-cli db:seed --seed 20251127-add-articles.js
S
Description
AdAstra Backend API
Readme 676 KiB