fix: corrections générateur PNJ Traveller et tests Jest
- validateOptions : remplit les champs manquants et corrige les clés invalides (détection précédemment inopérante car getXByKey renvoie l'objet par défaut) - generateCharacteristics : ne mélange plus le tableau avant affectation, la priorité des caractéristiques (high → medium → low) est respectée - Exports manquants : convertSkillToMgt2eFormat, popRandomItems, ERROR_CODES, TravellerNpcError - Tests : import des globals via @jest/globals (obligatoire en ESM), suppression de l'import obsolète buildMgt2eBaseActorSystem, attente corrigée pilot.smallCraft, test des doublons aligné sur le dédoublonnage réel (noms complets, spécialisations conservées) - AGENTS.md : section Testing mise à jour - README.md : ajouté
This commit is contained in:
@@ -38,15 +38,20 @@ Commands are registered via `ChatLogV2.CHAT_COMMANDS` — not Hooks.on("chatMess
|
||||
|
||||
## Testing
|
||||
|
||||
Deux fichiers de test, pas de build :
|
||||
|
||||
```sh
|
||||
# standalone, no npm needed — install jest globally or use npx
|
||||
npx jest scripts/tests/travellerNpcGenerator.test.js
|
||||
# Tests Jest (globals importés via @jest/globals, flag ESM requis)
|
||||
NODE_OPTIONS="--experimental-vm-modules" npx jest scripts/tests/travellerNpcGenerator.test.js
|
||||
|
||||
# Mini-runner maison (Jest rapporte un faux positif « at least one test »)
|
||||
node scripts/tests/allyEnemyGenerator.test.js
|
||||
```
|
||||
|
||||
- Single file, 1096 lines, hand-rolled FoundryVTT mocks.
|
||||
- Covers: utilities, lookups, validation, characteristic/skill generation, skill conversion, full NPC gen, ModuleCache, errors, config validation.
|
||||
- No CI test step — you must run manually.
|
||||
- No Jest config file — relies on defaults.
|
||||
- `travellerNpcGenerator.test.js` : Jest (`describe`/`it`/`expect`), mock FoundryVTT fait main, ~1100 lignes. Couvre : utilitaires, lookups, validation, caractéristiques/compétences, conversion de compétences, génération complète, ModuleCache, erreurs, config validation.
|
||||
- `allyEnemyGenerator.test.js` : son propre runner (`test()`/`assertEqual`), 39 tests, à lancer avec `node` directement.
|
||||
- Config Jest minimale dans `jest.config.cjs` (`testMatch` + `transform: {}`).
|
||||
- Pas de CI test step — à lancer manuellement.
|
||||
|
||||
## Versioning
|
||||
|
||||
|
||||
Reference in New Issue
Block a user