@matter/testing 0.13.1-alpha.0-20250502-43a54f780 → 0.13.1-alpha.0-20250504-87f265a2e

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.
Files changed (161) hide show
  1. package/bin/test.js +1 -2
  2. package/dist/cjs/chip/chip.d.ts +7 -2
  3. package/dist/cjs/chip/chip.d.ts.map +1 -1
  4. package/dist/cjs/chip/chip.js +20 -15
  5. package/dist/cjs/chip/chip.js.map +1 -1
  6. package/dist/cjs/chip/command-pipe.d.ts +2 -1
  7. package/dist/cjs/chip/command-pipe.d.ts.map +1 -1
  8. package/dist/cjs/chip/command-pipe.js +5 -2
  9. package/dist/cjs/chip/command-pipe.js.map +1 -1
  10. package/dist/cjs/chip/config.d.ts +2 -2
  11. package/dist/cjs/chip/config.d.ts.map +1 -1
  12. package/dist/cjs/chip/config.js +7 -6
  13. package/dist/cjs/chip/config.js.map +1 -1
  14. package/dist/cjs/chip/container-command-pipe.d.ts +2 -1
  15. package/dist/cjs/chip/container-command-pipe.d.ts.map +1 -1
  16. package/dist/cjs/chip/container-command-pipe.js +26 -24
  17. package/dist/cjs/chip/container-command-pipe.js.map +1 -1
  18. package/dist/cjs/chip/index.d.ts +1 -1
  19. package/dist/cjs/chip/index.d.ts.map +1 -1
  20. package/dist/cjs/chip/index.js +1 -1
  21. package/dist/cjs/chip/index.js.map +1 -1
  22. package/dist/cjs/chip/{pics-expression.d.ts → pics/expression.d.ts} +2 -2
  23. package/dist/cjs/chip/pics/expression.d.ts.map +1 -0
  24. package/dist/cjs/chip/{pics-expression.js → pics/expression.js} +6 -6
  25. package/dist/cjs/chip/pics/expression.js.map +6 -0
  26. package/dist/cjs/chip/{pics-file.d.ts → pics/file.d.ts} +10 -5
  27. package/dist/cjs/chip/pics/file.d.ts.map +1 -0
  28. package/dist/cjs/chip/{pics-file.js → pics/file.js} +21 -13
  29. package/dist/cjs/chip/pics/file.js.map +6 -0
  30. package/dist/cjs/chip/pics/index.d.ts +10 -0
  31. package/dist/cjs/chip/pics/index.d.ts.map +1 -0
  32. package/dist/cjs/chip/pics/index.js +27 -0
  33. package/dist/cjs/chip/pics/index.js.map +6 -0
  34. package/dist/cjs/chip/pics/source.d.ts +52 -0
  35. package/dist/cjs/chip/pics/source.d.ts.map +1 -0
  36. package/dist/cjs/chip/pics/source.js +117 -0
  37. package/dist/cjs/chip/pics/source.js.map +6 -0
  38. package/dist/cjs/chip/pics/values.d.ts +9 -0
  39. package/dist/cjs/chip/pics/values.d.ts.map +1 -0
  40. package/dist/cjs/chip/pics/values.js +22 -0
  41. package/dist/cjs/chip/pics/values.js.map +6 -0
  42. package/dist/cjs/chip/python-test.d.ts.map +1 -1
  43. package/dist/cjs/chip/python-test.js +14 -7
  44. package/dist/cjs/chip/python-test.js.map +1 -1
  45. package/dist/cjs/chip/state.d.ts +3 -2
  46. package/dist/cjs/chip/state.d.ts.map +1 -1
  47. package/dist/cjs/chip/state.js +38 -25
  48. package/dist/cjs/chip/state.js.map +1 -1
  49. package/dist/cjs/chip/yaml-test.d.ts +1 -1
  50. package/dist/cjs/chip/yaml-test.d.ts.map +1 -1
  51. package/dist/cjs/chip/yaml-test.js +5 -1
  52. package/dist/cjs/chip/yaml-test.js.map +1 -1
  53. package/dist/cjs/cli.d.ts.map +1 -1
  54. package/dist/cjs/cli.js +18 -3
  55. package/dist/cjs/cli.js.map +2 -2
  56. package/dist/cjs/device/subject.d.ts +4 -0
  57. package/dist/cjs/device/subject.d.ts.map +1 -1
  58. package/dist/cjs/failure-reporter.js +4 -6
  59. package/dist/cjs/failure-reporter.js.map +1 -1
  60. package/dist/cjs/print-report.d.ts +3 -0
  61. package/dist/cjs/print-report.d.ts.map +1 -1
  62. package/dist/cjs/print-report.js +13 -16
  63. package/dist/cjs/print-report.js.map +2 -2
  64. package/dist/cjs/test-descriptor.d.ts +18 -13
  65. package/dist/cjs/test-descriptor.d.ts.map +1 -1
  66. package/dist/cjs/test-descriptor.js +48 -49
  67. package/dist/cjs/test-descriptor.js.map +2 -2
  68. package/dist/esm/chip/chip.d.ts +7 -2
  69. package/dist/esm/chip/chip.d.ts.map +1 -1
  70. package/dist/esm/chip/chip.js +20 -15
  71. package/dist/esm/chip/chip.js.map +1 -1
  72. package/dist/esm/chip/command-pipe.d.ts +2 -1
  73. package/dist/esm/chip/command-pipe.d.ts.map +1 -1
  74. package/dist/esm/chip/command-pipe.js +5 -2
  75. package/dist/esm/chip/command-pipe.js.map +1 -1
  76. package/dist/esm/chip/config.d.ts +2 -2
  77. package/dist/esm/chip/config.d.ts.map +1 -1
  78. package/dist/esm/chip/config.js +7 -6
  79. package/dist/esm/chip/config.js.map +1 -1
  80. package/dist/esm/chip/container-command-pipe.d.ts +2 -1
  81. package/dist/esm/chip/container-command-pipe.d.ts.map +1 -1
  82. package/dist/esm/chip/container-command-pipe.js +26 -24
  83. package/dist/esm/chip/container-command-pipe.js.map +1 -1
  84. package/dist/esm/chip/index.d.ts +1 -1
  85. package/dist/esm/chip/index.d.ts.map +1 -1
  86. package/dist/esm/chip/index.js +1 -1
  87. package/dist/esm/chip/{pics-expression.d.ts → pics/expression.d.ts} +2 -2
  88. package/dist/esm/chip/pics/expression.d.ts.map +1 -0
  89. package/dist/esm/chip/{pics-expression.js → pics/expression.js} +3 -3
  90. package/dist/esm/chip/pics/expression.js.map +6 -0
  91. package/dist/esm/chip/{pics-file.d.ts → pics/file.d.ts} +10 -5
  92. package/dist/esm/chip/pics/file.d.ts.map +1 -0
  93. package/dist/esm/chip/{pics-file.js → pics/file.js} +18 -10
  94. package/dist/esm/chip/pics/file.js.map +6 -0
  95. package/dist/esm/chip/pics/index.d.ts +10 -0
  96. package/dist/esm/chip/pics/index.d.ts.map +1 -0
  97. package/dist/esm/chip/pics/index.js +10 -0
  98. package/dist/esm/chip/pics/index.js.map +6 -0
  99. package/dist/esm/chip/pics/source.d.ts +52 -0
  100. package/dist/esm/chip/pics/source.d.ts.map +1 -0
  101. package/dist/esm/chip/pics/source.js +97 -0
  102. package/dist/esm/chip/pics/source.js.map +6 -0
  103. package/dist/esm/chip/pics/values.d.ts +9 -0
  104. package/dist/esm/chip/pics/values.d.ts.map +1 -0
  105. package/dist/esm/chip/pics/values.js +6 -0
  106. package/dist/esm/chip/pics/values.js.map +6 -0
  107. package/dist/esm/chip/python-test.d.ts.map +1 -1
  108. package/dist/esm/chip/python-test.js +14 -7
  109. package/dist/esm/chip/python-test.js.map +1 -1
  110. package/dist/esm/chip/state.d.ts +3 -2
  111. package/dist/esm/chip/state.d.ts.map +1 -1
  112. package/dist/esm/chip/state.js +39 -26
  113. package/dist/esm/chip/state.js.map +1 -1
  114. package/dist/esm/chip/yaml-test.d.ts +1 -1
  115. package/dist/esm/chip/yaml-test.d.ts.map +1 -1
  116. package/dist/esm/chip/yaml-test.js +5 -1
  117. package/dist/esm/chip/yaml-test.js.map +1 -1
  118. package/dist/esm/cli.d.ts.map +1 -1
  119. package/dist/esm/cli.js +19 -4
  120. package/dist/esm/cli.js.map +2 -2
  121. package/dist/esm/device/subject.d.ts +4 -0
  122. package/dist/esm/device/subject.d.ts.map +1 -1
  123. package/dist/esm/failure-reporter.js +4 -6
  124. package/dist/esm/failure-reporter.js.map +1 -1
  125. package/dist/esm/print-report.d.ts +3 -0
  126. package/dist/esm/print-report.d.ts.map +1 -1
  127. package/dist/esm/print-report.js +12 -15
  128. package/dist/esm/print-report.js.map +2 -2
  129. package/dist/esm/test-descriptor.d.ts +18 -13
  130. package/dist/esm/test-descriptor.d.ts.map +1 -1
  131. package/dist/esm/test-descriptor.js +48 -49
  132. package/dist/esm/test-descriptor.js.map +2 -2
  133. package/package.json +2 -2
  134. package/src/chip/chip.ts +31 -17
  135. package/src/chip/command-pipe.ts +6 -2
  136. package/src/chip/config.ts +9 -9
  137. package/src/chip/container-command-pipe.ts +28 -30
  138. package/src/chip/index.ts +1 -1
  139. package/src/chip/matter-js-pics.properties +7 -4
  140. package/src/chip/{pics-expression.ts → pics/expression.ts} +4 -3
  141. package/src/chip/{pics-file.ts → pics/file.ts} +30 -13
  142. package/src/chip/pics/index.ts +10 -0
  143. package/src/chip/pics/source.ts +163 -0
  144. package/src/chip/pics/values.ts +9 -0
  145. package/src/chip/python-test.ts +18 -11
  146. package/src/chip/state.ts +56 -33
  147. package/src/chip/yaml-test.ts +6 -1
  148. package/src/cli.ts +29 -5
  149. package/src/device/subject.ts +4 -0
  150. package/src/failure-reporter.ts +4 -4
  151. package/src/print-report.ts +13 -18
  152. package/src/test-descriptor.ts +70 -61
  153. package/src/tsconfig.json +6 -2
  154. package/dist/cjs/chip/pics-expression.d.ts.map +0 -1
  155. package/dist/cjs/chip/pics-expression.js.map +0 -6
  156. package/dist/cjs/chip/pics-file.d.ts.map +0 -1
  157. package/dist/cjs/chip/pics-file.js.map +0 -6
  158. package/dist/esm/chip/pics-expression.d.ts.map +0 -1
  159. package/dist/esm/chip/pics-expression.js.map +0 -6
  160. package/dist/esm/chip/pics-file.d.ts.map +0 -1
  161. package/dist/esm/chip/pics-file.js.map +0 -6
package/dist/cjs/cli.js CHANGED
@@ -72,7 +72,7 @@ async function main(argv = process.argv) {
72
72
  string: true,
73
73
  describe: "One or more paths of tests to run",
74
74
  default: "./test/**/*{.test,Test}.ts"
75
- }).option("all-logs", { type: "boolean", describe: "Emit log messages in real time" }).option("debug", { type: "boolean", describe: "Enable Mocha debugging" }).option("environment", { alias: "e", type: "string", describe: "Select named test environment" }).option("fgrep", { alias: "f", type: "string", describe: "Only run tests matching this string" }).option("force-exit", { type: "boolean", describe: "Force Node to exit after tests complete" }).option("grep", { alias: "g", type: "string", describe: "Only run tests matching this regexp" }).option("invert", { alias: "i", type: "boolean", describe: "Inverts --grep and --fgrep matches" }).option("profile", { type: "boolean", describe: "Write profiling data to build/profiles (node only)" }).option("wtf", { type: "boolean", describe: "Enlist wtfnode to detect test leaks" }).option("trace-unhandled", { type: "boolean", describe: "Detail unhandled rejections with trace-unhandled" }).option("clear", { type: "boolean", describe: "Clear terminal before testing" }).option("report", { type: "boolean", describe: "Display test summary after testing" }).option("pull", { type: "boolean", describe: "Do not update containers before testing", default: true }).command("*", "run all supported test types").command("esm", "run tests on node (ES6 modules)", () => testTypes.add("esm" /* esm */)).command("cjs", "run tests on node (CommonJS modules)", () => testTypes.add("cjs" /* cjs */)).command("web", "run tests in web browser", () => testTypes.add("web" /* web */)).command("report", "display details about tests", () => ls = true).command("manual", "start web test server and print URL for manual testing", () => {
75
+ }).option("all-logs", { type: "boolean", describe: "Emit log messages in real time" }).option("debug", { type: "boolean", describe: "Enable Mocha debugging" }).option("environment", { alias: "e", type: "string", describe: "Select named test environment" }).option("fgrep", { alias: "f", type: "string", describe: "Only run tests matching this string" }).option("force-exit", { type: "boolean", describe: "Force Node to exit after tests complete" }).option("grep", { alias: "g", type: "string", describe: "Only run tests matching this regexp" }).option("invert", { alias: "i", type: "boolean", describe: "Inverts --grep and --fgrep matches" }).option("profile", { type: "boolean", describe: "Write profiling data to build/profiles (node only)" }).option("wtf", { type: "boolean", describe: "Enlist wtfnode to detect test leaks" }).option("trace-unhandled", { type: "boolean", describe: "Detail unhandled rejections with trace-unhandled" }).option("clear", { type: "boolean", describe: "Clear terminal before testing" }).option("report", { type: "boolean", describe: "Display test summary after testing" }).option("pull", { type: "boolean", describe: "Update containers before testing", default: true }).command("*", "run all supported test types").command("esm", "run tests on node (ES6 modules)", () => testTypes.add("esm" /* esm */)).command("cjs", "run tests on node (CommonJS modules)", () => testTypes.add("cjs" /* cjs */)).command("web", "run tests in web browser", () => testTypes.add("web" /* web */)).command("report", "display details about tests", () => ls = true).command("manual", "start web test server and print URL for manual testing", () => {
76
76
  testTypes.add("web" /* web */);
77
77
  manual = true;
78
78
  }).strict().argv;
@@ -81,9 +81,23 @@ async function main(argv = process.argv) {
81
81
  const firstSpec = Array.isArray(args.spec) ? args.spec[0] : args.spec;
82
82
  packageLocation = firstSpec;
83
83
  }
84
- import_chip.chip.pullBeforeTesting = args.pull;
85
84
  const builder = new import_tools.ProjectBuilder();
86
85
  const pkg = new import_tools.Package({ path: packageLocation });
86
+ try {
87
+ const found = pkg.findJson(".matter-test.json");
88
+ const config = found.json;
89
+ if ("allLogs" in config && !process.argv.includes("--no-all-logs")) {
90
+ args.allLogs = !!config.allLogs;
91
+ }
92
+ if ("pull" in config && !process.argv.includes("--no-pull")) {
93
+ args.pull = !!config.pull;
94
+ }
95
+ } catch (e) {
96
+ if (!(e instanceof import_tools.JsonNotFoundError)) {
97
+ throw e;
98
+ }
99
+ }
100
+ import_chip.chip.pullBeforeTesting = args.pull;
87
101
  if (pkg.isWorkspace) {
88
102
  const graph = await import_tools.Graph.load(pkg);
89
103
  await graph.build(builder, false);
@@ -117,8 +131,9 @@ async function main(argv = process.argv) {
117
131
  if (ls) {
118
132
  const progress2 = pkg2.start("Inspecting");
119
133
  const runner2 = new import_runner.TestRunner(pkg2, progress2, args);
134
+ const report2 = await (0, import_print_report.defaultDescriptor)(runner2);
120
135
  progress2.close();
121
- (0, import_print_report.printReport)(await (0, import_print_report.defaultDescriptor)(runner2), true);
136
+ (0, import_print_report.printReport)(report2, true);
122
137
  console.log();
123
138
  return;
124
139
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/cli.ts"],
4
- "mappings": "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",
5
- "names": ["TestType", "yargs", "pkg", "progress", "runner"]
4
+ "mappings": "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",
5
+ "names": ["TestType", "yargs", "pkg", "progress", "runner", "report"]
6
6
  }
@@ -3,13 +3,16 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { PicsFile } from "../chip/pics/file.js";
6
7
  import { BackchannelCommand } from "./backchannel.js";
7
8
  /**
8
9
  * The test subject.
9
10
  */
10
11
  export interface Subject {
11
12
  id: string;
13
+ app: string;
12
14
  commissioning: Subject.CommissioningParameters;
15
+ pics: PicsFile;
13
16
  initialize(): Promise<void>;
14
17
  start(): Promise<void>;
15
18
  stop(): Promise<void>;
@@ -27,6 +30,7 @@ export declare namespace Subject {
27
30
  */
28
31
  interface Factory {
29
32
  (domain: string): Subject;
33
+ pics?: PicsFile;
30
34
  }
31
35
  type CommissioningMethod = "onnetwork";
32
36
  interface WifiNetwork {
@@ -1 +1 @@
1
- {"version":3,"file":"subject.d.ts","sourceRoot":"","sources":["../../../src/device/subject.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,OAAO;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,OAAO,CAAC,uBAAuB,CAAC;IAC/C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,QAAQ,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC;IACxB,OAAO,CAAC,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3D;AAED,yBAAiB,OAAO,CAAC;IACrB;;;;;OAKG;IACH,UAAiB,OAAO;QACpB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;KAC7B;IAED,KAAY,mBAAmB,GAAG,WAAW,CAAC;IAE9C,UAAiB,WAAW;QACxB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;KACpB;IAED,UAAiB,aAAa;QAC1B,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;KACtB;IAED;;OAEG;IACH,UAAiB,uBAAuB;QACpC,IAAI,EAAE,YAAY,GAAG,UAAU,GAAG,YAAY,CAAC;QAC/C,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,MAAM,CAAC;QACtB,OAAO,CAAC,EAAE,WAAW,GAAG,aAAa,CAAC;KACzC;CACJ"}
1
+ {"version":3,"file":"subject.d.ts","sourceRoot":"","sources":["../../../src/device/subject.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,OAAO;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,OAAO,CAAC,uBAAuB,CAAC;IAC/C,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,QAAQ,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC;IACxB,OAAO,CAAC,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3D;AAED,yBAAiB,OAAO,CAAC;IACrB;;;;;OAKG;IACH,UAAiB,OAAO;QACpB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QAC1B,IAAI,CAAC,EAAE,QAAQ,CAAC;KACnB;IAED,KAAY,mBAAmB,GAAG,WAAW,CAAC;IAE9C,UAAiB,WAAW;QACxB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;KACpB;IAED,UAAiB,aAAa;QAC1B,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;KACtB;IAED;;OAEG;IACH,UAAiB,uBAAuB;QACpC,IAAI,EAAE,YAAY,GAAG,UAAU,GAAG,YAAY,CAAC;QAC/C,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,MAAM,CAAC;QACtB,OAAO,CAAC,EAAE,WAAW,GAAG,aAAa,CAAC;KACzC;CACJ"}
@@ -28,21 +28,19 @@ var import_text_diff = require("./text-diff.js");
28
28
  * Copyright 2022-2025 Matter.js Authors
29
29
  * SPDX-License-Identifier: Apache-2.0
30
30
  */
31
- const BEGIN_ERROR = `${import_tools.ansi.red}\u250F\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2505
32
- \u2503${import_tools.ansi.not.red}`;
31
+ const BEGIN_ERROR = `${import_tools.ansi.red}\u250F\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2505${import_tools.ansi.not.red}`;
33
32
  const OUTER_PREFIX = `${import_tools.ansi.red}\u2503 ${import_tools.ansi.not.red}`;
34
33
  const INNER_PREFIX = `${import_tools.ansi.dim}\u2506 ${import_tools.ansi.not.dim}`;
35
- const END_ERROR = `${import_tools.ansi.red}\u2503
36
- \u2517\u2501\u2505${import_tools.ansi.not.red}`;
34
+ const END_ERROR = `${import_tools.ansi.red}\u2517\u2501\u2505${import_tools.ansi.not.red}`;
37
35
  var FailureReporter;
38
36
  ((FailureReporter2) => {
39
37
  function report(out, failure, title) {
40
- out(BEGIN_ERROR, "\n");
38
+ out(BEGIN_ERROR, "\n", OUTER_PREFIX, "\n");
41
39
  out.state({ linePrefix: OUTER_PREFIX }, () => {
42
40
  out(import_tools.ansi.bold.red(import_tools.STATUS_ICON_FAILURE), " ", title, "\n");
43
41
  dumpDetails(out, failure);
44
42
  });
45
- out(END_ERROR, "\n");
43
+ out(OUTER_PREFIX, "\n", END_ERROR, "\n");
46
44
  }
47
45
  FailureReporter2.report = report;
48
46
  })(FailureReporter || (FailureReporter = {}));
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/failure-reporter.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,mBAAmD;AAEnD,uBAAyB;AARzB;AAAA;AAAA;AAAA;AAAA;AAUA,MAAM,cAAc,GAAG,kBAAK,GAAG;AAAA,QAA+C,kBAAK,IAAI,GAAG;AAC1F,MAAM,eAAe,GAAG,kBAAK,GAAG,WAAM,kBAAK,IAAI,GAAG;AAClD,MAAM,eAAe,GAAG,kBAAK,GAAG,WAAM,kBAAK,IAAI,GAAG;AAClD,MAAM,YAAY,GAAG,kBAAK,GAAG;AAAA,oBAAS,kBAAK,IAAI,GAAG;AAE3C,IAAU;AAAA,CAAV,CAAUA,qBAAV;AACI,WAAS,OAAO,KAAc,SAAwB,OAAe;AACxE,QAAI,aAAa,IAAI;AAErB,QAAI,MAAM,EAAE,YAAY,aAAa,GAAG,MAAM;AAC1C,UAAI,kBAAK,KAAK,IAAI,gCAAmB,GAAG,KAAK,OAAO,IAAI;AACxD,kBAAY,KAAK,OAAO;AAAA,IAC5B,CAAC;AAED,QAAI,WAAW,IAAI;AAAA,EACvB;AATO,EAAAA,iBAAS;AAAA,GADH;AAajB,SAAS,UAAU,KAAc,SAAwB;AACrD,MAAI,MAAM,EAAE,YAAY,aAAa,GAAG,MAAM;AAC1C,gBAAY,KAAK,OAAO;AAAA,EAC5B,CAAC;AACL;AAEA,SAAS,YAAY,KAAc,EAAE,SAAS,QAAQ,UAAU,OAAO,OAAO,QAAQ,KAAK,GAAkB;AACzG,MAAI,MAAM,kBAAK,OAAO,IAAI,OAAO,GAAG,IAAI;AAExC,MAAI,WAAW,UAAa,aAAa,QAAW;AAChD,QAAI,IAAI;AACR,QAAI,MAAM,EAAE,YAAY,OAAO,GAAG,MAAM,QAAI,2BAAS,QAAQ,QAAQ,CAAC,CAAC;AACvE,QAAI,IAAI;AAAA,EACZ;AAEA,MAAI,OAAO;AACP,QAAI,IAAI;AACR,QAAI,MAAM,EAAE,YAAY,KAAK,GAAG,MAAM,IAAI,KAAK,CAAC;AAChD,QAAI,IAAI;AAAA,EACZ;AAEA,MAAI,OAAO;AACP,QAAI,MAAM,kBAAK,KAAK,YAAY,GAAG,IAAI;AACvC,cAAU,KAAK,KAAK;AAAA,EACxB;AAEA,MAAI,QAAQ,QAAQ;AAChB,QAAI,MAAM;AACV,eAAWC,UAAS,QAAQ;AACxB,UAAI,MAAM,kBAAK,KAAK,UAAU,EAAE,GAAG,GAAG,GAAG,IAAI;AAC7C,gBAAU,KAAKA,MAAK;AAAA,IACxB;AAAA,EACJ;AAEA,MAAI,MAAM;AACN,QAAI,MAAM,MAAM,IAAI;AAAA,EACxB;AACJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,mBAAmD;AAEnD,uBAAyB;AARzB;AAAA;AAAA;AAAA;AAAA;AAUA,MAAM,cAAc,GAAG,kBAAK,GAAG,yPAA4C,kBAAK,IAAI,GAAG;AACvF,MAAM,eAAe,GAAG,kBAAK,GAAG,WAAM,kBAAK,IAAI,GAAG;AAClD,MAAM,eAAe,GAAG,kBAAK,GAAG,WAAM,kBAAK,IAAI,GAAG;AAClD,MAAM,YAAY,GAAG,kBAAK,GAAG,qBAAM,kBAAK,IAAI,GAAG;AAExC,IAAU;AAAA,CAAV,CAAUA,qBAAV;AACI,WAAS,OAAO,KAAc,SAAwB,OAAe;AACxE,QAAI,aAAa,MAAM,cAAc,IAAI;AAEzC,QAAI,MAAM,EAAE,YAAY,aAAa,GAAG,MAAM;AAC1C,UAAI,kBAAK,KAAK,IAAI,gCAAmB,GAAG,KAAK,OAAO,IAAI;AACxD,kBAAY,KAAK,OAAO;AAAA,IAC5B,CAAC;AAED,QAAI,cAAc,MAAM,WAAW,IAAI;AAAA,EAC3C;AATO,EAAAA,iBAAS;AAAA,GADH;AAajB,SAAS,UAAU,KAAc,SAAwB;AACrD,MAAI,MAAM,EAAE,YAAY,aAAa,GAAG,MAAM;AAC1C,gBAAY,KAAK,OAAO;AAAA,EAC5B,CAAC;AACL;AAEA,SAAS,YAAY,KAAc,EAAE,SAAS,QAAQ,UAAU,OAAO,OAAO,QAAQ,KAAK,GAAkB;AACzG,MAAI,MAAM,kBAAK,OAAO,IAAI,OAAO,GAAG,IAAI;AAExC,MAAI,WAAW,UAAa,aAAa,QAAW;AAChD,QAAI,IAAI;AACR,QAAI,MAAM,EAAE,YAAY,OAAO,GAAG,MAAM,QAAI,2BAAS,QAAQ,QAAQ,CAAC,CAAC;AACvE,QAAI,IAAI;AAAA,EACZ;AAEA,MAAI,OAAO;AACP,QAAI,IAAI;AACR,QAAI,MAAM,EAAE,YAAY,KAAK,GAAG,MAAM,IAAI,KAAK,CAAC;AAChD,QAAI,IAAI;AAAA,EACZ;AAEA,MAAI,OAAO;AACP,QAAI,MAAM,kBAAK,KAAK,YAAY,GAAG,IAAI;AACvC,cAAU,KAAK,KAAK;AAAA,EACxB;AAEA,MAAI,QAAQ,QAAQ;AAChB,QAAI,MAAM;AACV,eAAWC,UAAS,QAAQ;AACxB,UAAI,MAAM,kBAAK,KAAK,UAAU,EAAE,GAAG,GAAG,GAAG,IAAI;AAC7C,gBAAU,KAAKA,MAAK;AAAA,IACxB;AAAA,EACJ;AAEA,MAAI,MAAM;AACN,QAAI,MAAM,MAAM,IAAI;AAAA,EACxB;AACJ;",
5
5
  "names": ["FailureReporter", "cause"]
6
6
  }
@@ -20,6 +20,8 @@ export declare function defaultDescriptor(runner: TestRunner): Promise<{
20
20
  name: string;
21
21
  kind: TestDescriptor.Kind;
22
22
  path?: string;
23
+ subpath?: string;
24
+ app?: string;
23
25
  isDisabled?: boolean;
24
26
  timeoutMs?: number;
25
27
  description?: string;
@@ -29,5 +31,6 @@ export declare function defaultDescriptor(runner: TestRunner): Promise<{
29
31
  runAt?: Date;
30
32
  passed?: boolean;
31
33
  durationMs?: number;
34
+ picsValues?: import("./index.js").PicsFile;
32
35
  }>;
33
36
  //# sourceMappingURL=print-report.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"print-report.d.ts","sourceRoot":"","sources":["../../src/print-report.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD;;GAEG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,cAAc,EAAE,eAAe,CAAC,EAAE,OAAO,QAEhF;AAiGD;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,UAAU;;;;;;;;;;;;;;GAgDzD"}
1
+ {"version":3,"file":"print-report.d.ts","sourceRoot":"","sources":["../../src/print-report.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD;;GAEG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,cAAc,EAAE,eAAe,CAAC,EAAE,OAAO,QAEhF;AAqGD;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,UAAU;;;;;;;;;;;;;;;;;GAuCzD"}
@@ -35,7 +35,7 @@ module.exports = __toCommonJS(print_report_exports);
35
35
  var import_tools = require("@matter/tools");
36
36
  var import_ansi_colors = __toESM(require("ansi-colors"), 1);
37
37
  var import_chip = require("./chip/chip.js");
38
- var import_pics_expression = require("./chip/pics-expression.js");
38
+ var import_expression = require("./chip/pics/expression.js");
39
39
  var import_nodejs = require("./nodejs.js");
40
40
  var import_test_descriptor = require("./test-descriptor.js");
41
41
  /**
@@ -83,7 +83,7 @@ function printDescriptor(descriptor, includeDisabled, prefix = "", path) {
83
83
  title = `${import_tools.STATUS_ICON_FAILURE} ${title}`;
84
84
  break;
85
85
  default:
86
- title = ` ${title}`;
86
+ title = `${import_tools.STATUS_ICON_SKIPPED} ${title}`;
87
87
  }
88
88
  }
89
89
  if (member.durationMs !== void 0) {
@@ -97,14 +97,14 @@ function printDescriptor(descriptor, includeDisabled, prefix = "", path) {
97
97
  }
98
98
  if (member.pics) {
99
99
  try {
100
- const expr = new import_pics_expression.PicsExpression(member.pics);
101
- if (expr.evaluate(import_chip.chip.pics)) {
100
+ const expr = new import_expression.PicsExpression(member.pics);
101
+ if (expr.evaluate(member.picsValues ?? import_chip.chip.defaultPics)) {
102
102
  title = `${title} ${import_ansi_colors.default.dim.green(member.pics)}`;
103
103
  } else {
104
104
  title = `${title} ${import_ansi_colors.default.dim.red(member.pics)}`;
105
105
  }
106
106
  } catch (e) {
107
- if (e instanceof import_pics_expression.InvalidPicsExpressionError) {
107
+ if (e instanceof import_expression.InvalidPicsExpressionError) {
108
108
  title = `${title} ${import_ansi_colors.default.dim.strikethrough.red(member.pics)}`;
109
109
  } else {
110
110
  throw e;
@@ -112,7 +112,11 @@ function printDescriptor(descriptor, includeDisabled, prefix = "", path) {
112
112
  }
113
113
  }
114
114
  if (member.path && member.path !== path) {
115
- title = `${title} ${import_ansi_colors.default.dim.blueBright(member.path)}`;
115
+ let { path: path2 } = member;
116
+ if (member.subpath) {
117
+ path2 = `${path2}#${member.subpath}`;
118
+ }
119
+ title = `${title} ${import_ansi_colors.default.dim.blueBright(path2)}`;
116
120
  }
117
121
  if (member.kind === "manual") {
118
122
  title = import_ansi_colors.default.strikethrough(title);
@@ -132,17 +136,10 @@ async function defaultDescriptor(runner) {
132
136
  import_test_descriptor.TestDescriptor.visit(descriptor, (descriptor2) => {
133
137
  used.add(descriptor2);
134
138
  });
135
- let unused = import_test_descriptor.TestDescriptor.filter(import_chip.chip.tests.descriptor, (descriptor2, recurse) => {
136
- if (descriptor2.kind === "py" || descriptor2.kind === "yaml") {
137
- if (used.has(descriptor2)) {
138
- return;
139
- }
140
- }
141
- const result = recurse();
142
- if (!result || result.kind === "suite" && !result.members?.length) {
143
- return;
139
+ let unused = import_test_descriptor.TestDescriptor.filter(import_chip.chip.tests.descriptor, {
140
+ predicate(descriptor2) {
141
+ return descriptor2.kind !== "py" && descriptor2.kind !== "yaml" || !used.has(descriptor2);
144
142
  }
145
- return result;
146
143
  });
147
144
  if (unused) {
148
145
  unused = {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/print-report.ts"],
4
- "mappings": "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",
5
- "names": ["colors", "descriptor"]
4
+ "mappings": "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",
5
+ "names": ["colors", "path", "descriptor"]
6
6
  }
@@ -4,7 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import type { FilesystemSync } from "#tools";
7
- import type { PicsFile } from "./chip/pics-file.js";
7
+ import type { PicsFile } from "./chip/pics/file.js";
8
8
  /**
9
9
  * Metadata for a single test or group of tests.
10
10
  */
@@ -12,6 +12,8 @@ export interface TestDescriptor {
12
12
  name: string;
13
13
  kind: TestDescriptor.Kind;
14
14
  path?: string;
15
+ subpath?: string;
16
+ app?: string;
15
17
  members?: TestDescriptor[];
16
18
  isDisabled?: boolean;
17
19
  timeoutMs?: number;
@@ -22,6 +24,7 @@ export interface TestDescriptor {
22
24
  runAt?: Date;
23
25
  passed?: boolean;
24
26
  durationMs?: number;
27
+ picsValues?: PicsFile;
25
28
  }
26
29
  export interface TestFileDescriptor extends TestDescriptor {
27
30
  path: string;
@@ -29,7 +32,14 @@ export interface TestFileDescriptor extends TestDescriptor {
29
32
  export interface TestSuiteDescriptor extends TestDescriptor {
30
33
  members: TestDescriptor[];
31
34
  }
35
+ export interface RootTestDescriptor extends TestDescriptor {
36
+ format?: number;
37
+ }
32
38
  export declare namespace TestDescriptor {
39
+ /**
40
+ * Used to validate format of test descriptor files.
41
+ */
42
+ const CURRENT_FORMAT = 2;
33
43
  type Kind = "suite" | "js" | "py" | "yaml" | "manual" | "step";
34
44
  const DEFAULT_FILENAME = "build/test-report.json";
35
45
  interface Filesystem extends FilesystemSync<Stat> {
@@ -38,23 +48,18 @@ export declare namespace TestDescriptor {
38
48
  interface Stat extends FilesystemSync.Stat {
39
49
  descriptor: TestDescriptor;
40
50
  }
41
- /**
42
- * Create a filtering predicate based on specified criteria.
43
- *
44
- * The predicate treats tests as atomic and ignores empty suites.
45
- */
46
- function predicateFor(criteria: {
51
+ type Criteria = {
47
52
  includePaths?: string[];
48
53
  kinds?: Kind[];
49
54
  pics?: PicsFile;
50
- }): Predicate;
51
- interface Predicate {
52
- (descriptor: TestDescriptor, recurse: () => TestDescriptor | undefined): TestDescriptor | undefined;
53
- }
55
+ predicate?: (descriptor: TestDescriptor) => boolean;
56
+ };
54
57
  /**
55
- * Filter a {@link TestDescriptor} hierarchy using a predicate.
58
+ * Create a filter function for specified criteria.
59
+ *
60
+ * The filter treats tests as atomic and ignores empty suites.
56
61
  */
57
- function filter(descriptor: TestDescriptor, predicate: Predicate): TestDescriptor | undefined;
62
+ function filter(descriptor: TestDescriptor, criteria: Criteria): TestDescriptor | undefined;
58
63
  /**
59
64
  * Visit a {@link TestDescriptor} hierarchy.
60
65
  */
@@ -1 +1 @@
1
- {"version":3,"file":"test-descriptor.d.ts","sourceRoot":"","sources":["../../src/test-descriptor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAG7C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACtD,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACvD,OAAO,EAAE,cAAc,EAAE,CAAC;CAC7B;AAED,yBAAiB,cAAc,CAAC;IAC5B,KAAY,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;IAE/D,MAAM,gBAAgB,2BAA2B,CAAC;IAEzD,UAAiB,UAAW,SAAQ,cAAc,CAAC,IAAI,CAAC;QACpD,UAAU,EAAE,cAAc,CAAC;KAC9B;IAED,UAAiB,IAAK,SAAQ,cAAc,CAAC,IAAI;QAC7C,UAAU,EAAE,cAAc,CAAC;KAC9B;IAED;;;;OAIG;IACH,SAAgB,YAAY,CAAC,QAAQ,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;QAAC,IAAI,CAAC,EAAE,QAAQ,CAAA;KAAE,GAAG,SAAS,CA4D9G;IAED,UAAiB,SAAS;QACtB,CAAC,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,cAAc,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CAAC;KACvG;IAED;;OAEG;IACH,SAAgB,MAAM,CAAC,UAAU,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,GAAG,cAAc,GAAG,SAAS,CAqBnG;IAED;;OAEG;IACH,SAAgB,KAAK,CAAC,UAAU,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,UAAU,EAAE,cAAc,KAAK,IAAI,GAAG,OAAO,GAAG,IAAI,CAY1G;IAED;;OAEG;IACH,SAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAwBrE;IAED;;OAEG;IACH,SAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,iBAEvE;IAED;;;;;OAKG;IACH,SAAgB,KAAK,CAAC,CAAC,SAAS,cAAc,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CA8CvF;IAED;;OAEG;IACH,SAAgB,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,cAAc,CAAC,UAAU,CA+G1E;CACJ"}
1
+ {"version":3,"file":"test-descriptor.d.ts","sourceRoot":"","sources":["../../src/test-descriptor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAG7C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,QAAQ,CAAC;CACzB;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACtD,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACvD,OAAO,EAAE,cAAc,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,yBAAiB,cAAc,CAAC;IAC5B;;OAEG;IACI,MAAM,cAAc,IAAI,CAAC;IAEhC,KAAY,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;IAE/D,MAAM,gBAAgB,2BAA2B,CAAC;IAEzD,UAAiB,UAAW,SAAQ,cAAc,CAAC,IAAI,CAAC;QACpD,UAAU,EAAE,cAAc,CAAC;KAC9B;IAED,UAAiB,IAAK,SAAQ,cAAc,CAAC,IAAI;QAC7C,UAAU,EAAE,cAAc,CAAC;KAC9B;IAED,KAAY,QAAQ,GAAG;QACnB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;QACf,IAAI,CAAC,EAAE,QAAQ,CAAC;QAChB,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,cAAc,KAAK,OAAO,CAAC;KACvD,CAAC;IAEF;;;;OAIG;IACH,SAAgB,MAAM,CAAC,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,GAAG,cAAc,GAAG,SAAS,CA6EjG;IAED;;OAEG;IACH,SAAgB,KAAK,CAAC,UAAU,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,UAAU,EAAE,cAAc,KAAK,IAAI,GAAG,OAAO,GAAG,IAAI,CAY1G;IAED;;OAEG;IACH,SAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAwBrE;IAED;;OAEG;IACH,SAAsB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,iBAKvE;IAED;;;;;OAKG;IACH,SAAgB,KAAK,CAAC,CAAC,SAAS,cAAc,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CA8CvF;IAED;;OAEG;IACH,SAAgB,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,cAAc,CAAC,UAAU,CA+G1E;CACJ"}
@@ -22,7 +22,7 @@ __export(test_descriptor_exports, {
22
22
  });
23
23
  module.exports = __toCommonJS(test_descriptor_exports);
24
24
  var import_promises = require("node:fs/promises");
25
- var import_pics_expression = require("./chip/pics-expression.js");
25
+ var import_expression = require("./chip/pics/expression.js");
26
26
  /**
27
27
  * @license
28
28
  * Copyright 2022-2025 Matter.js Authors
@@ -30,71 +30,67 @@ var import_pics_expression = require("./chip/pics-expression.js");
30
30
  */
31
31
  var TestDescriptor;
32
32
  ((TestDescriptor2) => {
33
+ TestDescriptor2.CURRENT_FORMAT = 2;
33
34
  TestDescriptor2.DEFAULT_FILENAME = "build/test-report.json";
34
- function predicateFor(criteria) {
35
- const { includePaths, kinds, pics } = criteria;
36
- let inclusion;
35
+ function filter(descriptor, criteria) {
36
+ const { includePaths, kinds, pics, predicate } = criteria;
37
+ let memberNames;
37
38
  if (includePaths) {
38
- inclusion = {};
39
+ memberNames = {};
39
40
  for (const path of includePaths) {
40
- let incl = inclusion;
41
- for (const segment of path.split("/").filter((segment2) => segment2 !== "")) {
41
+ let incl = memberNames;
42
+ const segments = path.split("/");
43
+ if (segments[0] === "") {
44
+ segments[0] = descriptor.name;
45
+ }
46
+ for (const segment of segments) {
42
47
  incl = incl[segment] ??= {};
43
48
  }
44
49
  }
45
50
  }
46
- let firstLevel = true;
47
- return (descriptor, recurse) => {
48
- if (!firstLevel && inclusion && !inclusion[descriptor.name]) {
51
+ return filter2(descriptor, memberNames);
52
+ function filter2(descriptor2, names) {
53
+ const memberNames2 = names?.[descriptor2.name];
54
+ if (names && !memberNames2) {
49
55
  return;
50
56
  }
51
- if (pics && descriptor.pics !== void 0) {
52
- const expr = new import_pics_expression.PicsExpression(descriptor.pics);
57
+ if (pics && descriptor2.pics !== void 0) {
58
+ descriptor2.picsValues = pics;
59
+ const expr = new import_expression.PicsExpression(descriptor2.pics);
53
60
  if (!expr.evaluate(pics)) {
54
61
  return;
55
62
  }
56
63
  }
57
- if (descriptor.kind === "suite") {
58
- const revertInclusion = inclusion;
59
- try {
60
- if (firstLevel) {
61
- firstLevel = false;
62
- } else if (inclusion) {
63
- inclusion = inclusion[descriptor.name];
64
+ if (descriptor2.kind === "suite") {
65
+ const { members } = descriptor2;
66
+ if (!members?.length) {
67
+ return;
68
+ }
69
+ let filteredMembers;
70
+ for (const member of members) {
71
+ const filteredMember = filter2(member, memberNames2);
72
+ if (!filteredMember) {
73
+ continue;
64
74
  }
65
- const result = recurse();
66
- if (!result?.members?.length) {
67
- return;
75
+ if (predicate && !predicate(filteredMember)) {
76
+ continue;
77
+ }
78
+ if (filteredMembers) {
79
+ filteredMembers.push(filteredMember);
80
+ } else {
81
+ filteredMembers = [filteredMember];
68
82
  }
69
- return result;
70
- } finally {
71
- inclusion = revertInclusion;
72
83
  }
73
- }
74
- if (kinds && !kinds.includes(descriptor.kind)) {
84
+ if (filteredMembers) {
85
+ return { ...descriptor2, members: filteredMembers };
86
+ }
75
87
  return;
76
88
  }
77
- return descriptor;
78
- };
79
- }
80
- TestDescriptor2.predicateFor = predicateFor;
81
- function filter(descriptor, predicate) {
82
- return predicate(descriptor, () => {
83
- let { members } = descriptor;
84
- if (members) {
85
- members = members.map((member) => filter(member, predicate)).filter((member) => member);
86
- }
87
- if (descriptor.members === void 0 || members?.length === descriptor.members?.length) {
88
- return descriptor;
89
- }
90
- descriptor = { ...descriptor };
91
- if (members?.length) {
92
- descriptor.members = members;
93
- } else {
94
- delete descriptor.members;
89
+ if (kinds && !kinds.includes(descriptor2.kind)) {
90
+ return;
95
91
  }
96
- return descriptor;
97
- });
92
+ return descriptor2;
93
+ }
98
94
  }
99
95
  TestDescriptor2.filter = filter;
100
96
  function visit(descriptor, fn) {
@@ -117,7 +113,7 @@ var TestDescriptor;
117
113
  };
118
114
  try {
119
115
  const json = await (0, import_promises.readFile)(path, "utf-8");
120
- descriptor = JSON.parse(json);
116
+ descriptor = JSON.parse(json, (k, v) => k === "picsValues" ? void 0 : v);
121
117
  if (typeof descriptor?.name !== "string" || descriptor.kind !== "suite" || !Array.isArray(descriptor.members)) {
122
118
  throw new Error(`Invalid test descriptor "${path}"`);
123
119
  }
@@ -130,7 +126,10 @@ var TestDescriptor;
130
126
  }
131
127
  TestDescriptor2.open = open;
132
128
  async function save(path, descriptor) {
133
- await (0, import_promises.writeFile)(path, JSON.stringify(descriptor, void 0, 4));
129
+ await (0, import_promises.writeFile)(
130
+ path,
131
+ JSON.stringify(descriptor, (k, v) => k === "picsValues" ? void 0 : v, 4)
132
+ );
134
133
  }
135
134
  TestDescriptor2.save = save;
136
135
  function merge(previous, updates) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/test-descriptor.ts"],
4
- "mappings": "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",
5
- "names": ["TestDescriptor", "segment", "descriptor"]
4
+ "mappings": "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",
5
+ "names": ["TestDescriptor", "filter", "descriptor", "memberNames"]
6
6
  }
@@ -9,7 +9,7 @@ import { Test } from "../device/test.js";
9
9
  import type { Container } from "../docker/container.js";
10
10
  import type { TestRunner } from "../runner.js";
11
11
  import { TestDescriptor } from "../test-descriptor.js";
12
- import { PicsFile } from "./pics-file.js";
12
+ import { PicsFile } from "./pics/file.js";
13
13
  /**
14
14
  * CHIP test harness.
15
15
  *
@@ -23,6 +23,7 @@ import { PicsFile } from "./pics-file.js";
23
23
  * We execute test logic within a Docker container available at {@link https://github.com/matter-js/matter.js-chip}.
24
24
  */
25
25
  export interface Chip extends chip.Builder {
26
+ (subject: Subject): chip.Builder;
26
27
  (...include: string[]): chip.Builder;
27
28
  /**
28
29
  * Testing controller. Must be set prior to use of other methods.
@@ -79,7 +80,11 @@ export interface Chip extends chip.Builder {
79
80
  /**
80
81
  * The active PICS configuration.
81
82
  */
82
- pics: PicsFile;
83
+ defaultPics: PicsFile;
84
+ /**
85
+ * The filename for default PICS in the container.
86
+ */
87
+ defaultPicsFile: string;
83
88
  /**
84
89
  * The timeout for tests without an explicit timeout (defaults to 30s).
85
90
  */
@@ -1 +1 @@
1
- {"version":3,"file":"chip.d.ts","sourceRoot":"","sources":["../../../src/chip/chip.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAExD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG1C;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,IAAK,SAAQ,IAAI,CAAC,OAAO;IACtC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;IAErC;;OAEG;IACH,MAAM,EAAE,SAAS,GAAG,UAAU,CAAC;IAE/B;;OAEG;IACH,KAAK,EAAE,SAAS,GAAG,KAAK,CAAC;IAEzB;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5B;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtC;;OAEG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAEvC;;OAEG;IACH,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAAC;IAEnD;;OAEG;IACH,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC;IAEhC;;OAEG;IACH,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3B;;OAEG;IACH,SAAS,EAAE,SAAS,CAAC;IAErB;;OAEG;IACH,UAAU,EAAE,IAAI,CAAC;IAEjB;;OAEG;IACH,KAAK,EAAE,cAAc,CAAC,UAAU,CAAC;IAEjC;;OAEG;IACH,aAAa,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,IAAI,EAAE,QAAQ,CAAC;IAEf;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,iBAAiB,EAAE,OAAO,CAAC;CAC9B;AA4PD,eAAO,MAAM,IAAI,EAAa,IAAI,CAAC;AAiBnC,yBAAiB,IAAI,CAAC;IAClB;;OAEG;IACH,KAAY,aAAa,GAAG,IAAI,GAAG,MAAM,CAAC;IAE1C,UAAiB,UAAU;QACvB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACxD;IAED,UAAiB,iBAAiB;QAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;KACpB;IAED,UAAiB,OAAO;QACpB;;;;WAIG;QACH,OAAO,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAEpC;;WAEG;QACH,OAAO,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAEpC;;WAEG;QACH,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;QAE3C;;WAEG;QACH,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC;QAEvC;;WAEG;QACH,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC;QAEtC;;WAEG;QACH,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,OAAO,CAAC;QAE5C;;WAEG;QACH,cAAc,IAAI,OAAO,CAAC;KAC7B;CACJ"}
1
+ {"version":3,"file":"chip.d.ts","sourceRoot":"","sources":["../../../src/chip/chip.ts"],"names":[],"mappings":"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"}