@mostajs/mjs-unit 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -64,6 +64,12 @@ test("async", async () => { ok(await maFonction.async()); });
64
64
  ```
65
65
 
66
66
  > Ne pas appeler `run()` dans le fichier : le **runner** s'en charge (les cas enregistrés via `test()` sont exécutés groupés par fichier).
67
+ >
68
+ > **Depuis 0.7.0, le runner relève ce qu'il a exécuté** : par fichier, cas enregistrés contre cas
69
+ > exécutés, et il imprime le compte (`✓ 49/49 test(s) exécutés sur 7 fichier(s)`). Un fichier sans
70
+ > aucun test fait échouer la suite ; un fichier qui appelle `run()` lui-même reste au rapport ; et
71
+ > `node fichier.test.mjs` dont les cas ne sont jamais exécutés sort en code 1, avec un message —
72
+ > l'absence de résultat n'est pas un succès.
67
73
 
68
74
  ## Lancer
69
75
 
package/bin/cli.mjs CHANGED
@@ -15,7 +15,7 @@ import { pathToFileURL } from "node:url";
15
15
  import { writeFileSync } from "node:fs";
16
16
 
17
17
  register(new URL("../loader.mjs", import.meta.url));
18
- const { run, pending } = await import("../dist/index.js");
18
+ const { run, pending, registered, takeRuns } = await import("../dist/index.js");
19
19
 
20
20
  // ── Découpe arguments / options ──────────────────────────────────────────────
21
21
  const argv = process.argv.slice(2);
@@ -32,16 +32,33 @@ const files = argv.filter((a) => !a.startsWith("--"));
32
32
  if (!files.length) { console.error("usage: mjs-unit <fichier-de-test...> [--report[=f]] [--json[=f]]"); process.exit(2); }
33
33
 
34
34
  // ── Exécution, une suite par fichier ─────────────────────────────────────────
35
- let totalFail = 0;
35
+ // Le CLI DEMANDE au module ce qui a été enregistré et ce qui a été exécuté, fichier par fichier : il
36
+ // ne suppose rien. Deux trous fermés en 0.7.0 — un fichier qui appelait run() lui-même s'exécutait
37
+ // hors du rapport, et un fichier sans aucun test disparaissait sans un mot.
38
+ let totalFail = 0, totalDeclares = 0, totalExecutes = 0;
36
39
  const suites = [];
37
40
  for (const f of files) {
38
- await import(pathToFileURL(f).href); // le fichier enregistre ses cas (et peut appeler run() lui-même)
39
- if (pending() > 0) { // sinon, on exécute les cas restants groupés par fichier
40
- const r = await run(f);
41
- totalFail += r.failed;
42
- suites.push({ file: f, results: r.results });
41
+ const avant = registered();
42
+ takeRuns(); // rien d'un fichier précédent ne doit être attribué à celui-ci
43
+ await import(pathToFileURL(f).href); // le fichier enregistre ses cas (et peut appeler run() lui-même)
44
+ if (pending() > 0) await run(f); // on exécute les cas restants, groupés par fichier
45
+ const declares = registered() - avant;
46
+ const executions = takeRuns();
47
+ const results = executions.flatMap((r) => r.results);
48
+ totalFail += executions.reduce((n, r) => n + r.failed, 0);
49
+ if (declares === 0) {
50
+ console.error(`\n✗ ${f} : aucun test enregistré — un fichier de test vide n'est pas un succès.`);
51
+ totalFail++;
52
+ continue;
43
53
  }
54
+ if (results.length !== declares) {
55
+ console.error(`\n✗ ${f} : ${declares} test(s) enregistré(s), ${results.length} exécuté(s).`);
56
+ totalFail++;
57
+ }
58
+ totalDeclares += declares; totalExecutes += results.length;
59
+ suites.push({ file: f, results });
44
60
  }
61
+ console.log(`\n${totalExecutes === totalDeclares ? "✓" : "✗"} ${totalExecutes}/${totalDeclares} test(s) exécutés sur ${suites.length} fichier(s) — compte relevé auprès du module, pas supposé`);
45
62
 
46
63
  // ── Reporters optionnels ─────────────────────────────────────────────────────
47
64
  if (htmlOut !== undefined || jsonOut !== undefined) {
package/dist/index.d.ts CHANGED
@@ -197,4 +197,12 @@ export interface RunResult {
197
197
  export declare function run(label?: string): Promise<RunResult>;
198
198
  /** Nombre de tests en attente (diagnostic). */
199
199
  export declare function pending(): number;
200
+ /** Nombre total de cas enregistrés depuis le chargement du module (test et test.skip). */
201
+ export declare function registered(): number;
202
+ /**
203
+ * Relève — et vide — les résultats des `run()` exécutés depuis le dernier relevé. C'est ce qui permet
204
+ * au CLI de porter au rapport un fichier qui a appelé `run()` lui-même : avant 0.7.0, ses cas
205
+ * s'exécutaient mais n'apparaissaient nulle part.
206
+ */
207
+ export declare function takeRuns(): RunResult[];
200
208
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,WAAW,QAAQ;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE;AAI1F,gDAAgD;AAChD,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAEvE;yBAFe,IAAI;qBAID,MAAM,MAAM,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAG,IAAI;;AAEhE,yCAAyC;AACzC,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,GAAG,IAAI,CAI9D;AAMD,wBAAgB,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,SAAiB,GAAG,IAAI,CAEhE;AACD,wBAAgB,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAEhF;AACD,wBAAgB,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAEpF;AACD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,WAAW,CAAC,EAAE,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAYzH;AACD,qHAAqH;AACrH,wBAAgB,MAAM,CAAC,EAAE,EAAE,MAAM,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAS9F;AACD;;;;;;;;;;;GAWG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAG7E;AAED,2DAA2D;AAC3D,wBAAgB,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAGpF;AAED,gDAAgD;AAChD,wBAAgB,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAEnF;AAED,0DAA0D;AAC1D,wBAAgB,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAIvF;AAED,wBAAsB,iBAAiB,CAAC,EAAE,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,SAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAElH;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,OAAO;;kBAexB,OAAO,MAAM,MAAM;qBAGhB,OAAO,MAAM,MAAM;yBAGf,MAAM;wBACP,MAAM;QAEtB,uFAAuF;0BACrE,MAAM;4BACJ,MAAM;uBACX,MAAM;QAErB,mGAAmG;+BAC5E,KAAK,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,OAAO,MAAM,MAAM;QAQjE;;;;;;;WAOG;0BACe,OAAO,MAAM,MAAM;QASrC,mEAAmE;sBACrD,MAAM,GAAG,MAAM,MAAM,MAAM;QAQzC,qCAAqC;0BACnB,MAAM,MAAM,MAAM;QAKpC;;;;;;;;WAQG;+BACoB,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,OAAO,EAAE;6BAuBrD,MAAM,MAAM,MAAM;oCACX,MAAM,MAAM,MAAM;0BAC5B,MAAM,MAAM,MAAM;iCACX,MAAM,MAAM,MAAM;QAE3C;;;;WAIG;4BACiB,MAAM,GAAG,MAAM,MAAM,MAAM;QAe/C;;;;WAIG;6BACwB,MAAM,GAAG,MAAM,MAAM,MAAM,KAAG,OAAO,CAAC,OAAO,CAAC;;cArH/D,OAAO,MAAM,MAAM;iBAGhB,OAAO,MAAM,MAAM;qBAGf,MAAM;oBACP,MAAM;IAEtB,uFAAuF;sBACrE,MAAM;wBACJ,MAAM;mBACX,MAAM;IAErB,mGAAmG;2BAC5E,KAAK,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,OAAO,MAAM,MAAM;IAQjE;;;;;;;OAOG;sBACe,OAAO,MAAM,MAAM;IASrC,mEAAmE;kBACrD,MAAM,GAAG,MAAM,MAAM,MAAM;IAQzC,qCAAqC;sBACnB,MAAM,MAAM,MAAM;IAKpC;;;;;;;;OAQG;2BACoB,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,OAAO,EAAE;yBAuBrD,MAAM,MAAM,MAAM;gCACX,MAAM,MAAM,MAAM;sBAC5B,MAAM,MAAM,MAAM;6BACX,MAAM,MAAM,MAAM;IAE3C;;;;OAIG;wBACiB,MAAM,GAAG,MAAM,MAAM,MAAM;IAe/C;;;;OAIG;yBACwB,MAAM,GAAG,MAAM,MAAM,MAAM,KAAG,OAAO,CAAC,OAAO,CAAC;EAlI5E;AA6JD,2EAA2E;AAC3E,MAAM,WAAW,UAAU;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE;AAClH,MAAM,WAAW,SAAS;IAAG,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,UAAU,EAAE,CAAA;CAAE;AAIpH,iGAAiG;AACjG,wBAAsB,GAAG,CAAC,KAAK,SAAK,GAAG,OAAO,CAAC,SAAS,CAAC,CAcxD;AAED,+CAA+C;AAC/C,wBAAgB,OAAO,IAAI,MAAM,CAA0B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -7,12 +7,34 @@
7
7
  * @license AGPL-3.0-or-later
8
8
  */
9
9
  const _suite = [];
10
+ /** Total des cas ENREGISTRÉS depuis le chargement du module — ce que le CLI compare aux exécutés. */
11
+ let _enregistres = 0;
12
+ /** Les `run()` exécutés et pas encore relevés — un fichier qui appelle `run()` lui-même y laisse ses résultats. */
13
+ const _executions = [];
14
+ // ── L'ABSENCE DE RÉSULTAT N'EST PAS UN SUCCÈS (0.7.0) ────────────────────────────────────────────
15
+ // `test()` enregistre, `run()` exécute. Un fichier lancé par `node fichier.test.mjs` sans `run()`
16
+ // n'exécutait RIEN et sortait en code 0 : un vert mensonger. À la sortie du processus, des cas
17
+ // enregistrés et jamais exécutés sont désormais DITS, et le code de sortie passe à 1.
18
+ let _gardeInstallee = false;
19
+ function _installerGarde() {
20
+ if (_gardeInstallee || typeof process === "undefined" || typeof process.once !== "function")
21
+ return;
22
+ _gardeInstallee = true;
23
+ process.once("beforeExit", () => {
24
+ if (_suite.length === 0)
25
+ return;
26
+ console.error(`\n✗ mjs-unit : ${_suite.length} test(s) enregistré(s) et JAMAIS exécuté(s) — lancez le fichier par \`mjs-unit <fichier>\` (ou appelez run()). Rien n'a été vérifié.`);
27
+ process.exitCode = 1;
28
+ });
29
+ }
10
30
  /** Enregistre un test (exécuté par `run()`). */
11
31
  export function test(name, fn) {
12
32
  _suite.push({ name, fn });
33
+ _enregistres++;
34
+ _installerGarde();
13
35
  }
14
36
  /** Test ignoré (compté à part). */
15
- test.skip = (name, fn) => { _suite.push({ name, fn, skip: true }); };
37
+ test.skip = (name, fn) => { _suite.push({ name, fn, skip: true }); _enregistres++; _installerGarde(); };
16
38
  /** Groupe logique (préfixe les noms). */
17
39
  export function describe(group, body) {
18
40
  const start = _suite.length;
@@ -337,8 +359,18 @@ export async function run(label = "") {
337
359
  if (failed > 0 && typeof process !== "undefined")
338
360
  process.exitCode = 1;
339
361
  _suite.length = 0; // réinitialise pour un éventuel run suivant
340
- return { passed, failed, skipped, label, results };
362
+ const r = { passed, failed, skipped, label, results };
363
+ _executions.push(r);
364
+ return r;
341
365
  }
342
366
  /** Nombre de tests en attente (diagnostic). */
343
367
  export function pending() { return _suite.length; }
368
+ /** Nombre total de cas enregistrés depuis le chargement du module (test et test.skip). */
369
+ export function registered() { return _enregistres; }
370
+ /**
371
+ * Relève — et vide — les résultats des `run()` exécutés depuis le dernier relevé. C'est ce qui permet
372
+ * au CLI de porter au rapport un fichier qui a appelé `run()` lui-même : avant 0.7.0, ses cas
373
+ * s'exécutaient mais n'apparaissaient nulle part.
374
+ */
375
+ export function takeRuns() { return _executions.splice(0); }
344
376
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,MAAM,MAAM,GAAe,EAAE,CAAC;AAC9B,qGAAqG;AACrG,IAAI,YAAY,GAAG,CAAC,CAAC;AACrB,mHAAmH;AACnH,MAAM,WAAW,GAAgB,EAAE,CAAC;AAEpC,oGAAoG;AACpG,kGAAkG;AAClG,+FAA+F;AAC/F,sFAAsF;AACtF,IAAI,eAAe,GAAG,KAAK,CAAC;AAC5B,SAAS,eAAe;IACtB,IAAI,eAAe,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO;IACpG,eAAe,GAAG,IAAI,CAAC;IACvB,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE;QAC9B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAChC,OAAO,CAAC,KAAK,CAAC,kBAAkB,MAAM,CAAC,MAAM,sIAAsI,CAAC,CAAC;QACrL,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,gDAAgD;AAChD,MAAM,UAAU,IAAI,CAAC,IAAY,EAAE,EAA8B;IAC/D,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;IAAC,YAAY,EAAE,CAAC;IAAC,eAAe,EAAE,CAAC;AAC/D,CAAC;AACD,mCAAmC;AACnC,IAAI,CAAC,IAAI,GAAG,CAAC,IAAY,EAAE,EAA8B,EAAQ,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC;AAElJ,yCAAyC;AACzC,MAAM,UAAU,QAAQ,CAAC,KAAa,EAAE,IAAgB;IACtD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;IAC5B,IAAI,EAAE,CAAC;IACP,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,KAAK,MAAM,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAC9F,CAAC;AAED,gFAAgF;AAChF,MAAM,cAAe,SAAQ,KAAK;IAAG,YAAY,CAAS,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC,CAAC,CAAC;CAAE;AACzG,MAAM,GAAG,GAAG,CAAC,CAAU,EAAE,EAAE,GAAG,IAAI,CAAC;IAAC,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAAC,CAAC;AAAC,MAAM,CAAC;IAAC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AAAC,CAAC,CAAC,CAAC,CAAC;AAE1H,MAAM,UAAU,EAAE,CAAC,IAAa,EAAE,OAAO,GAAG,cAAc;IACxD,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;AAC/C,CAAC;AACD,MAAM,UAAU,KAAK,CAAC,MAAe,EAAE,QAAiB,EAAE,OAAgB;IACxE,IAAI,MAAM,KAAK,QAAQ;QAAE,MAAM,IAAI,cAAc,CAAC,OAAO,IAAI,WAAW,GAAG,CAAC,QAAQ,CAAC,UAAU,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAChH,CAAC;AACD,MAAM,UAAU,SAAS,CAAC,MAAe,EAAE,QAAiB,EAAE,OAAgB;IAC5E,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;QAAE,MAAM,IAAI,cAAc,CAAC,OAAO,IAAI,WAAW,GAAG,CAAC,QAAQ,CAAC,UAAU,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAChJ,CAAC;AACD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,EAA0B,EAAE,KAAuB,EAAE,OAAgB;IACrG,qFAAqF;IACrF,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;IAC7D,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,IAAI,GAAY,CAAC;IACjB,IAAI,CAAC;QAAC,MAAM,EAAE,EAAE,CAAC;IAAC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QAAC,KAAK,GAAG,IAAI,CAAC;QAAC,GAAG,GAAG,CAAC,CAAC;IAAC,CAAC;IACxD,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,cAAc,CAAC,QAAQ,IAAI,cAAc,CAAC,CAAC;IACjE,MAAM,GAAG,GAAI,GAA4B,EAAE,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;IAClE,IAAI,KAAK,YAAY,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,cAAc,CAAC,QAAQ,IAAI,eAAe,GAAG,oBAAoB,KAAK,EAAE,CAAC,CAAC;IACtF,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AACD,qHAAqH;AACrH,MAAM,UAAU,MAAM,CAAC,EAAiB,EAAE,OAAyB,EAAE,OAAgB;IACnF,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,IAAI,GAAY,CAAC;IACjB,IAAI,CAAC;QAAC,EAAE,EAAE,CAAC;IAAC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QAAC,KAAK,GAAG,IAAI,CAAC;QAAC,GAAG,GAAG,CAAC,CAAC;IAAC,CAAC;IAClD,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,cAAc,CAAC,OAAO,IAAI,4BAA4B,CAAC,CAAC;IAC9E,MAAM,GAAG,GAAI,GAA4B,EAAE,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;IAClE,IAAI,OAAO,YAAY,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,MAAM,IAAI,cAAc,CAAC,OAAO,IAAI,eAAe,GAAG,oBAAoB,OAAO,EAAE,CAAC,CAAC;IAC1I,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,MAAM,IAAI,cAAc,CAAC,OAAO,IAAI,eAAe,GAAG,wBAAwB,OAAO,IAAI,CAAC,CAAC;IACtJ,OAAO,GAAG,CAAC;AACb,CAAC;AACD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,KAAK,CAAC,MAAe,EAAE,MAAc,EAAE,OAAgB;IACrE,MAAM,CAAC,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,cAAc,CAAC,OAAO,IAAI,KAAK,CAAC,oBAAoB,MAAM,EAAE,CAAC,CAAC;AAC/F,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,YAAY,CAAC,MAAe,EAAE,MAAc,EAAE,OAAgB;IAC5E,MAAM,CAAC,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/D,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,cAAc,CAAC,OAAO,IAAI,KAAK,CAAC,aAAa,MAAM,6BAA6B,CAAC,CAAC;AAClH,CAAC;AAED,gDAAgD;AAChD,MAAM,UAAU,QAAQ,CAAC,MAAe,EAAE,QAAiB,EAAE,OAAgB;IAC3E,IAAI,MAAM,KAAK,QAAQ;QAAE,MAAM,IAAI,cAAc,CAAC,OAAO,IAAI,wBAAwB,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACxG,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,YAAY,CAAC,MAAe,EAAE,QAAiB,EAAE,OAAgB;IAC/E,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,cAAc,CAAC,OAAO,IAAI,yCAAyC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAChG,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,EAA0B,EAAE,OAAO,GAAG,qBAAqB;IACjG,IAAI,CAAC;QAAC,MAAM,EAAE,EAAE,CAAC;IAAC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QAAC,MAAM,IAAI,cAAc,CAAC,GAAG,OAAO,MAAO,CAAW,EAAE,OAAO,EAAE,CAAC,CAAC;IAAC,CAAC;AACtG,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,MAAM,CAAC,MAAe;IACpC,OAAO,EAAE,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;AACrE,CAAC;AAED;;;;GAIG;AACH,SAAS,QAAQ,CAAC,MAAe,EAAE,MAAe;IAChD,MAAM,MAAM,GAAG,CAAC,IAAa,EAAE,KAAa,EAAE,MAAc,EAAE,CAAU,EAAQ,EAAE;QAChF,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;YAAE,MAAM,IAAI,cAAc,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IACtF,CAAC,CAAC;IAEF,OAAO;QACL,IAAI,EAAE,CAAC,CAAU,EAAE,CAAU,EAAE,EAAE,CAC/B,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,sBAAsB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAEnG,OAAO,EAAE,CAAC,CAAU,EAAE,CAAU,EAAE,EAAE,CAClC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,6BAA6B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAE1I,UAAU,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,wBAAwB,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,uBAAuB,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5H,SAAS,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,uBAAuB,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,wBAAwB,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QAE1H,uFAAuF;QACvF,WAAW,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,gCAAgC,EAAE,mCAAmC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;QACjJ,aAAa,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,2BAA2B,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,8BAA8B,EAAE,CAAC,CAAC;QACxI,QAAQ,EAAE,CAAC,CAAU,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,sBAAsB,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,yBAAyB,EAAE,CAAC,CAAC;QAEpH,mGAAmG;QACnG,cAAc,EAAE,CAAC,IAAoC,EAAE,CAAU,EAAE,EAAE,CACnE,MAAM,CACJ,MAAM,YAAY,IAAI,EACtB,2BAA2B,IAAI,CAAC,IAAI,UAAW,MAAiB,EAAE,WAAW,EAAE,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,EAAE,EACpG,sCAAsC,IAAI,CAAC,IAAI,EAAE,EACjD,CAAC,CACF;QAEH;;;;;;;WAOG;QACH,SAAS,EAAE,CAAC,IAAa,EAAE,CAAU,EAAE,EAAE;YACvC,MAAM,OAAO,GACX,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC1D,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC/C,CAAC,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;wBAC1C,CAAC,CAAC,KAAK,CAAC;YACV,MAAM,CAAC,OAAO,EAAE,KAAK,GAAG,CAAC,MAAM,CAAC,sBAAsB,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,GAAG,CAAC,MAAM,CAAC,6BAA6B,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAClI,CAAC;QAED,mEAAmE;QACnE,OAAO,EAAE,CAAC,EAAmB,EAAE,CAAU,EAAE,EAAE,CAC3C,MAAM,CACJ,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,EAAE,YAAY,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAC5F,KAAK,GAAG,CAAC,MAAM,CAAC,oBAAoB,EAAE,EAAE,EACxC,KAAK,GAAG,CAAC,MAAM,CAAC,4BAA4B,EAAE,EAAE,EAChD,CAAC,CACF;QAEH,qCAAqC;QACrC,YAAY,EAAE,CAAC,CAAS,EAAE,CAAU,EAAE,EAAE;YACtC,MAAM,GAAG,GAAI,MAA8B,EAAE,MAAM,CAAC;YACpD,MAAM,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,CAAC,EAAE,qBAAqB,CAAC,UAAU,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,kCAAkC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACrI,CAAC;QAED;;;;;;;;WAQG;QACH,cAAc,EAAE,CAAC,IAAqC,EAAE,GAAG,IAAe,EAAE,EAAE;YAC5E,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClE,IAAI,GAAG,GAAY,MAAM,CAAC;YAC1B,IAAI,KAAK,GAAG,IAAI,CAAC;YACjB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;gBACrB,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,IAAK,GAAc,EAAE,CAAC;oBACpE,GAAG,GAAI,GAAwC,CAAC,CAAW,CAAC,CAAC;gBAC/D,CAAC;qBAAM,CAAC;oBAAC,KAAK,GAAG,KAAK,CAAC;oBAAC,MAAM;gBAAC,CAAC;YAClC,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YACjC,MAAM,OAAO,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7E,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACzB,MAAM,CACJ,KAAK,IAAI,OAAO,EAChB,QAAQ;gBACN,CAAC,CAAC,eAAe,CAAC,iBAAiB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE;gBACvF,CAAC,CAAC,eAAe,CAAC,iBAAiB,GAAG,CAAC,MAAM,CAAC,EAAE,EAClD,QAAQ;gBACN,CAAC,CAAC,eAAe,CAAC,2BAA2B,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC3D,CAAC,CAAC,eAAe,CAAC,0BAA0B,CAC/C,CAAC;QACJ,CAAC;QAED,eAAe,EAAE,CAAC,CAAS,EAAE,CAAU,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,GAAG,CAAC,EAAE,aAAa,CAAC,UAAU,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,wBAAwB,CAAC,EAAE,EAAE,CAAC,CAAC;QACnK,sBAAsB,EAAE,CAAC,CAAS,EAAE,CAAU,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,IAAI,CAAC,EAAE,aAAa,CAAC,UAAU,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,wBAAwB,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3K,YAAY,EAAE,CAAC,CAAS,EAAE,CAAU,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,GAAG,CAAC,EAAE,aAAa,CAAC,UAAU,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,wBAAwB,CAAC,EAAE,EAAE,CAAC,CAAC;QAChK,mBAAmB,EAAE,CAAC,CAAS,EAAE,CAAU,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,IAAI,CAAC,EAAE,aAAa,CAAC,UAAU,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,wBAAwB,CAAC,EAAE,EAAE,CAAC,CAAC;QAExK;;;;WAIG;QACH,OAAO,EAAE,CAAC,OAAyB,EAAE,CAAU,EAAE,EAAE;YACjD,IAAI,OAAO,MAAM,KAAK,UAAU;gBAAE,MAAM,IAAI,cAAc,CAAC,6BAA6B,CAAC,CAAC;YAC1F,IAAI,GAAY,CAAC;YACjB,IAAI,KAAK,GAAG,KAAK,CAAC;YAClB,IAAI,CAAC;gBAAE,MAAwB,EAAE,CAAC;YAAC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBAAC,KAAK,GAAG,IAAI,CAAC;gBAAC,GAAG,GAAG,CAAC,CAAC;YAAC,CAAC;YAEzE,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,KAAK;oBAAE,MAAM,IAAI,cAAc,CAAC,CAAC,IAAI,sCAAsC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC7F,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,cAAc,CAAC,CAAC,IAAI,4BAA4B,CAAC,CAAC;YACxE,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;YAC9B,OAAO,GAAG,CAAC;QACb,CAAC;QAED;;;;WAIG;QACH,QAAQ,EAAE,KAAK,EAAE,OAAyB,EAAE,CAAU,EAAoB,EAAE;YAC1E,IAAI,OAAO,MAAM,KAAK,UAAU;gBAAE,MAAM,IAAI,cAAc,CAAC,8BAA8B,CAAC,CAAC;YAC3F,IAAI,GAAY,CAAC;YACjB,IAAI,KAAK,GAAG,KAAK,CAAC;YAClB,IAAI,CAAC;gBAAC,MAAO,MAAiC,EAAE,CAAC;YAAC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBAAC,KAAK,GAAG,IAAI,CAAC;gBAAC,GAAG,GAAG,CAAC,CAAC;YAAC,CAAC;YAExF,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,KAAK;oBAAE,MAAM,IAAI,cAAc,CAAC,CAAC,IAAI,0CAA0C,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACjG,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,cAAc,CAAC,CAAC,IAAI,gBAAgB,CAAC,CAAC;YAC5D,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;YAC9B,OAAO,GAAG,CAAC;QACb,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,KAAK,GAAG,CAAC,GAAY,EAAU,EAAE,CAAE,GAA4B,EAAE,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;AAE9F,SAAS,YAAY,CAAC,GAAY,EAAE,OAAyB,EAAE,CAAU;IACvE,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO;IAClC,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,MAAM,OAAO,GAAG,OAAO,YAAY,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACtF,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,cAAc,CAAC,CAAC,IAAI,eAAe,GAAG,oBAAoB,OAAO,EAAE,CAAC,CAAC;AAC/F,CAAC;AAOD,MAAM,IAAI,GAAG,GAAW,EAAE,CAAC,CAAC,OAAO,WAAW,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;AAEjG,iGAAiG;AACjG,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,KAAK,GAAG,EAAE;IAClC,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC;IACxC,MAAM,OAAO,GAAiB,EAAE,CAAC;IACjC,IAAI,KAAK;QAAE,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,EAAE,CAAC,CAAC;IACvC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC;YAAC,OAAO,EAAE,CAAC;YAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;YAAC,SAAS;QAAC,CAAC;QAC1I,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC;QAClB,IAAI,CAAC;YAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAAC,MAAM,EAAE,CAAC;YAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;QAAC,CAAC;QACnJ,OAAO,CAAC,EAAE,CAAC;YAAC,MAAM,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,CAAC;YAAC,MAAM,GAAG,GAAI,CAAW,EAAE,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,WAAW,GAAG,EAAE,CAAC,CAAC;YAAC,MAAM,EAAE,CAAC;YAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;QAAC,CAAC;IACvN,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,MAAM,cAAc,MAAM,aAAa,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/H,IAAI,MAAM,GAAG,CAAC,IAAI,OAAO,OAAO,KAAK,WAAW;QAAE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,4CAA4C;IAC/D,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IACtD,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,OAAO,CAAC,CAAC;AACX,CAAC;AAED,+CAA+C;AAC/C,MAAM,UAAU,OAAO,KAAa,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;AAE3D,0FAA0F;AAC1F,MAAM,UAAU,UAAU,KAAa,OAAO,YAAY,CAAC,CAAC,CAAC;AAE7D;;;;GAIG;AACH,MAAM,UAAU,QAAQ,KAAkB,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC"}
package/llms.txt CHANGED
@@ -3,7 +3,7 @@
3
3
  > Micro-framework de test ZÉRO DÉPENDANCE pour l'écosystème @mostajs/* : API test/expect, runner CLI,
4
4
  > et un resolver ESM qui exécute sous Node les dist à imports SANS extension (moduleResolution=bundler).
5
5
 
6
- - Version: 0.3.0 · Licence: AGPL-3.0-or-later · Auteur: Dr Hamid MADANI <drmdh@msn.com>
6
+ - Version: 0.7.0 · Licence: AGPL-3.0-or-later · Auteur: Dr Hamid MADANI <drmdh@msn.com>
7
7
  - Chemin: mostajs/mosta-mjs-unit
8
8
 
9
9
  ## RÔLE
@@ -46,6 +46,8 @@ réécrit `./x` → `./x.js` puis `./x/index.js`.
46
46
  - run(label?): Promise<{passed, failed, skipped, label, results}> // exécute les cas ; exitCode=1 si échec
47
47
  results: { name, status: 'pass'|'fail'|'skip', error?, durationMs }[] // consommé par ./report
48
48
  - pending(): number
49
+ - registered(): number // total des cas enregistrés (test + test.skip) depuis le chargement — 0.7.0
50
+ - takeRuns(): RunResult[] // relève et vide les run() exécutés — le CLI s'en sert pour rapporter un fichier qui a appelé run() — 0.7.0
49
51
 
50
52
  ## API — REPORT (./report, preuve de test, fonctions pures)
51
53
  - renderHtmlReport(report: TestReport): string // document HTML autonome (thème sombre, cartes + tables par suite, durées, échappement anti-injection)
@@ -81,7 +83,11 @@ node node_modules/@mostajs/mjs-unit/bin/cli.mjs test-scripts/*.test.mjs
81
83
  - Importer la racine d'un module @mostajs qui ré-exporte des composants React (ex. @mostajs/audit → AuditPage)
82
84
  charge react/lucide-react. En test, importer par SOUS-CHEMINS (dist/lib/*.js) pour éviter ces peers.
83
85
  - Le runner exécute les cas en attente APRÈS import du fichier. Si le fichier appelle run() lui-même,
84
- le runner ne ré-exécute pas (pending()===0). Choisir l'un ou l'autre.
86
+ le runner ne ré-exécute pas (pending()===0) mais, depuis 0.7.0, PORTE SES RÉSULTATS AU RAPPORT.
87
+ Forme recommandée : ne PAS appeler run() et lancer par le CLI.
88
+ - L'ABSENCE DE RÉSULTAT N'EST PAS UN SUCCÈS (0.7.0) : le CLI relève, par fichier, enregistrés vs
89
+ exécutés et échoue (code 1) sur un fichier sans test ; `node fichier` avec des cas jamais exécutés
90
+ sort en code 1 avec un message. Le compte s'imprime : « ✓ N/N test(s) exécutés sur F fichier(s) ».
85
91
  - Le resolver n'agit que sur les specifiers RELATIFS sans extension ; les packages (bare) passent normalement.
86
92
 
87
93
  ## CONVENTION (écosystème)
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mostajs/mjs-unit",
3
- "version": "0.6.0",
4
- "description": "Micro-framework de test pour l'écosystème @mostajs/* : zéro dépendance, API minimale (test/expect/run), runner CLI (preuves HTML/JSON via --report), reporters réutilisables (./report), et un resolver ESM qui exécute sous Node les dist à imports sans extension (convention moduleResolution=bundler).",
3
+ "version": "0.7.0",
4
+ "description": "Micro-framework de test pour l'\u00e9cosyst\u00e8me @mostajs/* : z\u00e9ro d\u00e9pendance, API minimale (test/expect/run), runner CLI (preuves HTML/JSON via --report), reporters r\u00e9utilisables (./report), et un resolver ESM qui ex\u00e9cute sous Node les dist \u00e0 imports sans extension (convention moduleResolution=bundler).",
5
5
  "author": "Dr Hamid MADANI <drmdh@msn.com>",
6
6
  "license": "AGPL-3.0-or-later",
7
7
  "type": "module",
@@ -42,6 +42,11 @@
42
42
  "README.md",
43
43
  "LICENSE"
44
44
  ],
45
+ "scripts": {
46
+ "build": "tsc -p tsconfig.json",
47
+ "test": "bash test-scripts/run-tests.sh",
48
+ "report": "npm run build && node bin/cli.mjs test-scripts/*.test.mjs --report=test-report.html --title=\"@mostajs/mjs-unit \u2014 auto-preuve\""
49
+ },
45
50
  "devDependencies": {
46
51
  "typescript": "^5.6.0",
47
52
  "@types/node": "^22.0.0"
@@ -59,10 +64,5 @@
59
64
  "nature": "primitif",
60
65
  "reutilisabilite": "universelle",
61
66
  "depend_de": []
62
- },
63
- "scripts": {
64
- "build": "tsc -p tsconfig.json",
65
- "test": "bash test-scripts/run-tests.sh",
66
- "report": "npm run build && node bin/cli.mjs test-scripts/*.test.mjs --report=test-report.html --title=\"@mostajs/mjs-unit — auto-preuve\""
67
67
  }
68
- }
68
+ }