@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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../../../src/chip/pics/source.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAOrC;;GAEG;AACH,MAAM,MAAM,UAAU,GAChB,UAAU,CAAC,SAAS,GACpB,UAAU,CAAC,QAAQ,GACnB,UAAU,CAAC,SAAS,GACpB,UAAU,CAAC,KAAK,GAChB,UAAU,CAAC,MAAM,CAAC;AAExB,yBAAiB,UAAU,CAAC;IACxB;;;;OAIG;IACH,SAAsB,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,CA4ChE;IAED;;OAEG;IACH,SAAsB,IAAI,CAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAatF;IAED;;;;;;OAMG;IACH,SAAsB,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAiB7D;IAED,UAAiB,SAAS;QACtB,IAAI,EAAE,WAAW,CAAC;QAClB,OAAO,EAAE,MAAM,EAAE,CAAC;KACrB;IAED,UAAiB,QAAQ;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KAChB;IAED,UAAiB,SAAS;QACtB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KAChB;IAED,UAAiB,KAAK;QAClB,IAAI,EAAE,OAAO,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACjB;IAED,UAAiB,MAAM;QACnB,IAAI,EAAE,QAAQ,CAAC;QACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;KACjC;IAED,KAAY,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,KAAK,GAAG,MAAM,CAAC;CAC9D"}
@@ -0,0 +1,97 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2025 Project CHIP Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { Package } from "#tools";
7
+ import { readFile } from "node:fs/promises";
8
+ import { isAbsolute } from "node:path";
9
+ import { State } from "../state.js";
10
+ import { PicsFile } from "./file.js";
11
+ const dataCache = /* @__PURE__ */ new WeakMap();
12
+ const filenameCache = /* @__PURE__ */ new WeakMap();
13
+ let nextFileNo = 1;
14
+ var PicsSource;
15
+ ((PicsSource2) => {
16
+ async function load(source) {
17
+ let file = dataCache.get(source);
18
+ if (file) {
19
+ return file;
20
+ }
21
+ switch (source.kind) {
22
+ case "composite":
23
+ for (const subsource of source.sources) {
24
+ const sourceFile = await load(subsource);
25
+ if (file) {
26
+ file.patch(sourceFile);
27
+ } else {
28
+ file = sourceFile;
29
+ }
30
+ }
31
+ if (!file) {
32
+ file = new PicsFile();
33
+ }
34
+ break;
35
+ case "chip":
36
+ file = new PicsFile(await State.container.read(source.name));
37
+ break;
38
+ case "file":
39
+ file = new PicsFile(await readFile(resolve(source.name), "utf-8"));
40
+ break;
41
+ case "lines":
42
+ file = new PicsFile(source.lines.split("\n").map((l) => l.trim()));
43
+ break;
44
+ case "values":
45
+ file = new PicsFile(Object.entries(source.values).map(([key, value]) => `${key}=${value}`));
46
+ break;
47
+ default:
48
+ throw new Error(`Invalid PICS source kind "${source.kind}"`);
49
+ }
50
+ dataCache.set(source, file);
51
+ return file;
52
+ }
53
+ PicsSource2.load = load;
54
+ async function save(target, file) {
55
+ switch (target.kind) {
56
+ case "chip":
57
+ await State.container.write(target.name, file.toString());
58
+ break;
59
+ case "file":
60
+ await State.container.write(resolve(target.name), file.toString());
61
+ break;
62
+ default:
63
+ throw new Error(`Invalid PICS target kind "${target.kind}"`);
64
+ }
65
+ }
66
+ PicsSource2.save = save;
67
+ async function install(file) {
68
+ let filename = filenameCache.get(file);
69
+ if (filename) {
70
+ return filename;
71
+ }
72
+ filename = `/pics-${nextFileNo++}.properties`;
73
+ try {
74
+ filenameCache.set(file, filename);
75
+ await save({ kind: "chip", name: filename }, file);
76
+ } catch (e) {
77
+ filenameCache.delete(file);
78
+ throw e;
79
+ }
80
+ return filename;
81
+ }
82
+ PicsSource2.install = install;
83
+ })(PicsSource || (PicsSource = {}));
84
+ function resolve(path) {
85
+ if (isAbsolute(path)) {
86
+ return path;
87
+ }
88
+ const testing = Package.tools.findPackage("@matter/testing");
89
+ if (testing.hasFile(path)) {
90
+ return testing.resolve(path);
91
+ }
92
+ return resolve(path);
93
+ }
94
+ export {
95
+ PicsSource
96
+ };
97
+ //# sourceMappingURL=source.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/chip/pics/source.ts"],
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,eAAe;AACxB,SAAS,gBAAgB;AACzB,SAAS,kBAAkB;AAC3B,SAAS,aAAa;AACtB,SAAS,gBAAgB;AAEzB,MAAM,YAAY,oBAAI,QAA8B;AACpD,MAAM,gBAAgB,oBAAI,QAA0B;AAEpD,IAAI,aAAa;AAYV,IAAU;AAAA,CAAV,CAAUA,gBAAV;AAMH,iBAAsB,KAAK,QAAuC;AAC9D,QAAI,OAAO,UAAU,IAAI,MAAM;AAC/B,QAAI,MAAM;AACN,aAAO;AAAA,IACX;AAEA,YAAQ,OAAO,MAAM;AAAA,MACjB,KAAK;AACD,mBAAW,aAAa,OAAO,SAAS;AACpC,gBAAM,aAAa,MAAM,KAAK,SAAS;AACvC,cAAI,MAAM;AACN,iBAAK,MAAM,UAAU;AAAA,UACzB,OAAO;AACH,mBAAO;AAAA,UACX;AAAA,QACJ;AACA,YAAI,CAAC,MAAM;AACP,iBAAO,IAAI,SAAS;AAAA,QACxB;AACA;AAAA,MAEJ,KAAK;AACD,eAAO,IAAI,SAAS,MAAM,MAAM,UAAU,KAAK,OAAO,IAAI,CAAC;AAC3D;AAAA,MAEJ,KAAK;AACD,eAAO,IAAI,SAAS,MAAM,SAAS,QAAQ,OAAO,IAAI,GAAG,OAAO,CAAC;AACjE;AAAA,MAEJ,KAAK;AACD,eAAO,IAAI,SAAS,OAAO,MAAM,MAAM,IAAI,EAAE,IAAI,OAAK,EAAE,KAAK,CAAC,CAAC;AAC/D;AAAA,MAEJ,KAAK;AACD,eAAO,IAAI,SAAS,OAAO,QAAQ,OAAO,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;AAC1F;AAAA,MAEJ;AACI,cAAM,IAAI,MAAM,6BAA8B,OAA6B,IAAI,GAAG;AAAA,IAC1F;AAEA,cAAU,IAAI,QAAQ,IAAI;AAE1B,WAAO;AAAA,EACX;AA5CA,EAAAA,YAAsB;AAiDtB,iBAAsB,KAAK,QAA8B,MAA+B;AACpF,YAAQ,OAAO,MAAM;AAAA,MACjB,KAAK;AACD,cAAM,MAAM,UAAU,MAAM,OAAO,MAAM,KAAK,SAAS,CAAC;AACxD;AAAA,MAEJ,KAAK;AACD,cAAM,MAAM,UAAU,MAAM,QAAQ,OAAO,IAAI,GAAG,KAAK,SAAS,CAAC;AACjE;AAAA,MAEJ;AACI,cAAM,IAAI,MAAM,6BAA8B,OAA6B,IAAI,GAAG;AAAA,IAC1F;AAAA,EACJ;AAbA,EAAAA,YAAsB;AAsBtB,iBAAsB,QAAQ,MAAiC;AAC3D,QAAI,WAAW,cAAc,IAAI,IAAI;AACrC,QAAI,UAAU;AACV,aAAO;AAAA,IACX;AAEA,eAAW,SAAS,YAAY;AAEhC,QAAI;AACA,oBAAc,IAAI,MAAM,QAAQ;AAChC,YAAM,KAAK,EAAE,MAAM,QAAQ,MAAM,SAAS,GAAG,IAAI;AAAA,IACrD,SAAS,GAAG;AACR,oBAAc,OAAO,IAAI;AACzB,YAAM;AAAA,IACV;AAEA,WAAO;AAAA,EACX;AAjBA,EAAAA,YAAsB;AAAA,GA7ET;AA4HjB,SAAS,QAAQ,MAAsB;AACnC,MAAI,WAAW,IAAI,GAAG;AAClB,WAAO;AAAA,EACX;AAEA,QAAM,UAAU,QAAQ,MAAM,YAAY,iBAAiB;AAC3D,MAAI,QAAQ,QAAQ,IAAI,GAAG;AACvB,WAAO,QAAQ,QAAQ,IAAI;AAAA,EAC/B;AAEA,SAAO,QAAQ,IAAI;AACvB;",
5
+ "names": ["PicsSource"]
6
+ }
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2025 Project CHIP Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export interface PicsValues {
7
+ [name: string]: 0 | 1;
8
+ }
9
+ //# sourceMappingURL=values.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"values.d.ts","sourceRoot":"","sources":["../../../../src/chip/pics/values.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,UAAU;IACvB,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;CACzB"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2025 Project CHIP Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ //# sourceMappingURL=values.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/chip/pics/values.ts"],
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;",
5
+ "names": []
6
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"python-test.d.ts","sourceRoot":"","sources":["../../../src/chip/python-test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAM7C,qBAAa,UAAW,SAAQ,QAAQ;IACpC;;;;OAIG;IACG,iBAAiB,CAAC,OAAO,EAAE,OAAO;IAqElC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE;CAoB/E"}
1
+ {"version":3,"file":"python-test.d.ts","sourceRoot":"","sources":["../../../src/chip/python-test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAO7C,qBAAa,UAAW,SAAQ,QAAQ;IACpC;;;;OAIG;IACG,iBAAiB,CAAC,OAAO,EAAE,OAAO;IAqElC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE;CAoB/E"}
@@ -8,6 +8,7 @@ import { BaseTest } from "../device/test.js";
8
8
  import { Terminal } from "../docker/terminal.js";
9
9
  import { parseStep } from "./chip-test-common.js";
10
10
  import { Constants, ContainerPaths } from "./config.js";
11
+ import { PicsSource } from "./pics/source.js";
11
12
  class PythonTest extends BaseTest {
12
13
  /**
13
14
  * Python commissioning logic is cleverly hidden in:
@@ -130,10 +131,10 @@ function spiffy(line) {
130
131
  async function createCommand(descriptor, subject, extraArgs) {
131
132
  const command = ["python3", descriptor.path, ...Constants.PythonRunnerArgs];
132
133
  const args = scriptArgsOf(descriptor);
133
- if (args !== void 0) {
134
- command.push(...args);
134
+ command.push(...args, ...extraArgs);
135
+ if (!command.includes("--PICS")) {
136
+ command.push("--PICS", await PicsSource.install(subject.pics));
135
137
  }
136
- command.push(...extraArgs);
137
138
  const qrCodePos = command.indexOf("--qr-code");
138
139
  if (qrCodePos !== -1) {
139
140
  command[qrCodePos + 1] = subject.commissioning.qrPairingCode;
@@ -141,11 +142,17 @@ async function createCommand(descriptor, subject, extraArgs) {
141
142
  return command;
142
143
  }
143
144
  function scriptArgsOf(descriptor) {
144
- const scriptArgs = descriptor.config?.["script-args"];
145
- if (typeof scriptArgs !== "string") {
146
- return;
145
+ let args;
146
+ const predefined = descriptor.config?.["script-args"];
147
+ if (typeof predefined === "string") {
148
+ args = predefined.trim().split(/\s+/);
149
+ } else if (Array.isArray(predefined)) {
150
+ args = [...predefined];
147
151
  }
148
- return scriptArgs.replace(/--(?:storage-path|commissioning-method|discriminator|passcode|trace-to|PICS)\s+\S+\s+/g, "").trim().split(/\s+/);
152
+ if (descriptor.subpath) {
153
+ (args ?? (args = [])).push("--test-case", descriptor.subpath);
154
+ }
155
+ return args ?? [];
149
156
  }
150
157
  export {
151
158
  PythonTest
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/chip/python-test.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,OAAO,YAAY;AAEnB,SAAS,gBAAgB;AACzB,SAAS,gBAAgB;AAEzB,SAAS,iBAAiB;AAC1B,SAAS,WAAW,sBAAsB;AAEnC,MAAM,mBAAmB,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMrC,MAAM,kBAAkB,SAAkB;AACtC,UAAM,EAAE,MAAM,UAAU,eAAe,QAAQ,IAAI,QAAQ;AAE3D,UAAM,UAAU;AAAA,MACZ;AAAA,MACA,eAAe;AAAA;AAAA;AAAA,MAIf;AAAA,MAEA;AAAA,MACA,GAAG,QAAQ;AAAA,MAEX;AAAA,MACA,GAAG,aAAa;AAAA,IACpB;AAEA,YAAQ,MAAM;AAAA,MACV,KAAK;AACD,gBAAQ,KAAK,0BAA0B,YAAY;AACnD;AAAA,MAEJ,KAAK;AACD,YAAI,SAAS,SAAS,QAAQ;AAC1B,gBAAM,IAAI,MAAM,0DAA0D,QAAQ,EAAE,EAAE;AAAA,QAC1F;AACA,gBAAQ;AAAA,UACJ;AAAA,UACA;AAAA,UAEA;AAAA,UACA,QAAQ;AAAA,UAER;AAAA,UACA,QAAQ;AAAA,QACZ;AACA;AAAA,MAEJ,KAAK;AACD,YAAI,SAAS,SAAS,UAAU;AAC5B,gBAAM,IAAI,MAAM,4DAA4D,QAAQ,EAAE,EAAE;AAAA,QAC5F;AACA,gBAAQ;AAAA,UACJ;AAAA,UACA;AAAA,UAEA;AAAA,UACA,QAAQ;AAAA,QACZ;AACA;AAAA,MAEJ;AACI,cAAM,IAAI,MAAM,gCAAgC,QAAQ,cAAc,IAAI,gBAAgB,QAAQ,EAAE,EAAE;AAAA,IAC9G;AAEA,UAAM,WAAW,MAAM,KAAK,UAAU,KAAK,SAAS,SAAS,MAAM;AAAA,MAC/D,KAAK;AAAA,IACT,CAAC;AAED,QAAI;AACA,uBAAiB,QAAQ,UAAU;AAC/B,mBAAW,sBAAsB,QAAQ,OAAO,IAAI,CAAC;AAAA,MACzD;AAAA,IACJ,SAAS,GAAG;AACR,YAAM,IAAI,MAAM,0BAA0B,EAAE,OAAO,EAAE,CAAC;AAAA,IAC1D;AAAA,EACJ;AAAA,EAEA,MAAM,OAAO,SAAkB,MAA+B,MAAgB;AAC1E,UAAM,WAAW,MAAM,KAAK,UAAU,KAAK,MAAM,cAAc,KAAK,YAAY,SAAS,IAAI,GAAG,SAAS,MAAM;AAAA,MAC3G,KAAK;AAAA,IACT,CAAC;AAED,QAAI,SAAS;AACb,mBAAe,QAAQ,UAAU;AAC7B,aAAO,UAAU,MAAM,IAAI;AAE3B,UAAI,KAAK,QAAQ,oBAAoB,MAAM,IAAI;AAC3C,iBAAS;AAAA,MACb;AAEA,iBAAW,sBAAsB,QAAQ,OAAO,IAAI,CAAC;AAAA,IACzD;AAEA,QAAI,CAAC,QAAQ;AACT,YAAM,IAAI,MAAM,uEAAuE;AAAA,IAC3F;AAAA,EACJ;AACJ;AAKA,SAAS,OAAO,MAAc;AAC1B,MAAI,YAAY;AAChB,MAAI,QAAQ;AACZ,MAAI,WAAW;AACf,MAAI,UAAU;AAEd,SAAO,KAAK,KAAK;AAEjB,QAAM,aAAa,KAAK,MAAM,mEAAmE;AACjG,MAAI,YAAY;AACZ,KAAC,EAAE,WAAW,OAAO,OAAO,IAAI;AAAA,EACpC,OAAO;AACH,UAAM,aAAa,KAAK,MAAM,yBAAyB;AACvD,QAAI,YAAY;AACZ,OAAC,EAAE,OAAO,UAAU,OAAO,IAAI;AAAA,IACnC,OAAO;AAEH,YAAM,aAAa,KAAK,MAAM,4CAA4C;AAC1E,UAAI,YAAY;AACZ,YAAI;AACJ,SAAC,EAAE,WAAW,6BAA6B,UAAU,OAAO,IAAI;AAChE,kBAAU,GAAG,2BAA2B,IAAI,OAAO;AAAA,MACvD;AAAA,IACJ;AAAA,EACJ;AAEA,MAAI,QAAQ,CAAC,MAAM,KAAK;AAEpB,UAAM,aAAa,QAAQ,MAAM,2DAA2D;AAC5F,QAAI,YAAY;AACZ,YAAM,CAAC,EAAE,QAAQ,MAAM,MAAM,IAAI,CAAC,GAAG,UAAU;AAC/C,gBAAU,IAAI,OAAO,UAAU,GAAG,MAAM,EAAE,CAAC,GAAG,OAAO,UAAU,KAAK,IAAI,CAAC,GAAG,OAAO,UAAU,MAAM,CAAC;AAAA,IACxG;AACA,cAAU,OAAO,MAAM,OAAO;AAAA,EAClC,WAAW,UAAU,QAAQ;AACzB,cAAU,OAAO,OAAO,OAAO;AAAA,EACnC,WAAW,UAAU,SAAS;AAC1B,cAAU,OAAO,IAAI,OAAO;AAAA,EAChC,WAAW,UAAU,cAAc,UAAU,SAAS;AAClD,cAAU,OAAO,IAAI,KAAK,OAAO;AAAA,EACrC;AAGA,MAAI,UAAU;AACV,cAAU,GAAG,OAAO,KAAK,QAAQ,CAAC,IAAI,OAAO;AAAA,EACjD;AAEA,SAAO,GAAG,UAAU,OAAO,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,CAAC,GAAG,OAAO;AAC9D;AASA,eAAe,cAAc,YAAgC,SAAkB,WAAqB;AAChG,QAAM,UAAU,CAAC,WAAW,WAAW,MAAM,GAAG,UAAU,gBAAgB;AAE1E,QAAM,OAAO,aAAa,UAAU;AACpC,MAAI,SAAS,QAAW;AACpB,YAAQ,KAAK,GAAG,IAAI;AAAA,EACxB;AAEA,UAAQ,KAAK,GAAG,SAAS;AAEzB,QAAM,YAAY,QAAQ,QAAQ,WAAW;AAC7C,MAAI,cAAc,IAAI;AAClB,YAAQ,YAAY,CAAC,IAAI,QAAQ,cAAc;AAAA,EACnD;AAEA,SAAO;AACX;AAEA,SAAS,aAAa,YAAgC;AAClD,QAAM,aAAa,WAAW,SAAS,aAAa;AACpD,MAAI,OAAO,eAAe,UAAU;AAChC;AAAA,EACJ;AAEA,SAAO,WACF,QAAQ,0FAA0F,EAAE,EACpG,KAAK,EACL,MAAM,KAAK;AACpB;",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -10,7 +10,7 @@ import { Container } from "../docker/container.js";
10
10
  import type { TestRunner } from "../runner.js";
11
11
  import { TestDescriptor } from "../test-descriptor.js";
12
12
  import type { chip } from "./chip.js";
13
- import { PicsFile } from "./pics-file.js";
13
+ import { PicsFile } from "./pics/file.js";
14
14
  /**
15
15
  * Internal state management for CHIP testing.
16
16
  */
@@ -20,7 +20,8 @@ export declare const State: {
20
20
  mocha: Mocha;
21
21
  subject: Subject.Factory;
22
22
  pullBeforeTesting: boolean;
23
- readonly pics: PicsFile;
23
+ readonly defaultPics: PicsFile;
24
+ readonly defaultPicsFilename: string;
24
25
  readonly tests: TestDescriptor.Filesystem;
25
26
  readonly test: Test;
26
27
  readonly isInitialized: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/chip/state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAMnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAsB,MAAM,uBAAuB,CAAC;AAE3E,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGtC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AA6B1C;;GAEG;AACH,eAAO,MAAM,KAAK;;YAWK,UAAU;WAcZ,KAAK;aAcD,OAAO,CAAC,OAAO;uBAkBP,OAAO;;;;;IA+BpC;;OAEG;;IA6BH;;OAEG;;IAeH;;OAEG;gBACS,MAAM,OAAO,CAAC,IAAI,CAAC;IAI/B;;OAEG;;IAWH;;OAEG;cACa,IAAI,QAAQ,MAAM,EAAE,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAcxG;;OAEG;yBACkB,kBAAkB;IAQvC;;OAEG;mBACkB,MAAM;IAiB3B;;OAEG;wBACiB,MAAM,GAAG,cAAc,GAAG,IAAI;IAkBlD;;;;;OAKG;6BAEU,OAAO,CAAC,OAAO,qBACL,OAAO,QACpB,IAAI,gBACI,IAAI,CAAC,UAAU;IAoEjC;;;;;;;OAOG;;IAmBH;;OAEG;;CAYN,CAAC"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/chip/state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAMnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAsB,cAAc,EAAsB,MAAM,uBAAuB,CAAC;AAE/F,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGtC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AA+B1C;;GAEG;AACH,eAAO,MAAM,KAAK;;YAWK,UAAU;WAcZ,KAAK;aAcD,OAAO,CAAC,OAAO;uBAkBP,OAAO;;;;;;IAuCpC;;OAEG;;IA2BH;;OAEG;;IAeH;;OAEG;gBACS,MAAM,OAAO,CAAC,IAAI,CAAC;IAI/B;;OAEG;;IAWH;;OAEG;cACa,IAAI,QAAQ,MAAM,EAAE,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAcxG;;OAEG;yBACkB,kBAAkB;IAQvC;;OAEG;mBACkB,MAAM;IAa3B;;OAEG;wBACiB,MAAM,GAAG,cAAc,GAAG,IAAI;IAkBlD;;;;;OAKG;6BAEU,OAAO,CAAC,OAAO,qBACL,OAAO,QACpB,IAAI,gBACI,IAAI,CAAC,UAAU;IAoEjC;;;;;;;OAOG;;IAmBH;;OAEG;;CAYN,CAAC"}
@@ -3,7 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { ansi, Package } from "#tools";
6
+ import { ansi } from "#tools";
7
7
  import { Docker } from "../docker/docker.js";
8
8
  import { edit } from "../docker/edit.js";
9
9
  import { Image } from "../docker/image.js";
@@ -13,7 +13,7 @@ import { TestDescriptor } from "../test-descriptor.js";
13
13
  import { AccessoryServer } from "./accessory-server.js";
14
14
  import { Constants, ContainerPaths } from "./config.js";
15
15
  import { ContainerCommandPipe } from "./container-command-pipe.js";
16
- import { PicsFile } from "./pics-file.js";
16
+ import { PicsSource } from "./pics/source.js";
17
17
  import { PythonTest } from "./python-test.js";
18
18
  import { YamlTest } from "./yaml-test.js";
19
19
  const Values = {
@@ -24,18 +24,19 @@ const Values = {
24
24
  test: void 0,
25
25
  mainContainer: void 0,
26
26
  mdnsContainer: void 0,
27
- pics: void 0,
27
+ defaultPics: void 0,
28
+ defaultPicsFilename: void 0,
28
29
  tests: void 0,
29
30
  initializedSubjects: /* @__PURE__ */ new WeakSet(),
30
31
  activeSubject: void 0,
31
32
  singleUseSubject: false,
32
- activePipes: /* @__PURE__ */ new Set(),
33
33
  closers: Array(),
34
34
  subjects: /* @__PURE__ */ new Map(),
35
35
  snapshots: /* @__PURE__ */ new Map(),
36
36
  containerLifecycleInstalled: false,
37
37
  testMap: /* @__PURE__ */ new Map(),
38
- pullBeforeTesting: true
38
+ pullBeforeTesting: true,
39
+ commandPipe: void 0
39
40
  };
40
41
  const State = {
41
42
  get container() {
@@ -81,11 +82,17 @@ const State = {
81
82
  set pullBeforeTesting(value) {
82
83
  Values.pullBeforeTesting = value;
83
84
  },
84
- get pics() {
85
- if (Values.pics === void 0) {
85
+ get defaultPics() {
86
+ if (Values.defaultPics === void 0) {
86
87
  throw new Error("PICS not initialized");
87
88
  }
88
- return Values.pics;
89
+ return Values.defaultPics;
90
+ },
91
+ get defaultPicsFilename() {
92
+ if (Values.defaultPicsFilename === void 0) {
93
+ throw new Error("PICS not initialized");
94
+ }
95
+ return Values.defaultPicsFilename;
89
96
  },
90
97
  get tests() {
91
98
  if (Values.tests === void 0) {
@@ -112,7 +119,7 @@ const State = {
112
119
  const { progress } = State.runner;
113
120
  progress.update("Initializing containers");
114
121
  try {
115
- const result = await initialize();
122
+ await initialize();
116
123
  const image = await State.container.image;
117
124
  const info = await image.inspect();
118
125
  const chipCommit = formatSha(info.Config.Labels["org.opencontainers.image.revision"] ?? "(unknown)");
@@ -121,7 +128,6 @@ const State = {
121
128
  progress.success(
122
129
  `Initialized CHIP ${ansi.bold(chipCommit)} image ${ansi.bold(imageVersion)} for ${ansi.bold(arch)}`
123
130
  );
124
- return result;
125
131
  } catch (e) {
126
132
  progress.failure("Initializing containers");
127
133
  throw e;
@@ -185,16 +191,15 @@ const State = {
185
191
  * Open a back-channel command pipe.
186
192
  */
187
193
  async openPipe(name) {
188
- if (Values.activePipes.has(name)) {
189
- return;
194
+ if (Values.commandPipe === void 0) {
195
+ Values.commandPipe = new ContainerCommandPipe(State.container, this);
196
+ await Values.commandPipe.initialize();
197
+ State.onClose(async () => {
198
+ await Values.commandPipe?.close();
199
+ Values.commandPipe = void 0;
200
+ });
190
201
  }
191
- const pipe = new ContainerCommandPipe(State.container, this, name);
192
- await pipe.initialize();
193
- Values.activePipes.add(name);
194
- State.onClose(async () => {
195
- await pipe.close();
196
- Values.activePipes.delete(name);
197
- });
202
+ await Values.commandPipe.installForApp(name);
198
203
  },
199
204
  /**
200
205
  * Obtain a {@link Test}.
@@ -299,6 +304,7 @@ const State = {
299
304
  };
300
305
  async function initialize() {
301
306
  await configureContainer();
307
+ await configureScripts();
302
308
  await configurePics();
303
309
  await configureTests();
304
310
  await configureNetwork();
@@ -345,18 +351,25 @@ async function configureContainer() {
345
351
  Values.mainContainer = void 0;
346
352
  });
347
353
  }
354
+ async function configureScripts() {
355
+ await State.container.edit(
356
+ edit.sed("s/sleep(0.001)/sleep(.02)/"),
357
+ // This is the one we actually use
358
+ "/usr/local/lib/python3.12/dist-packages/chip/testing/matter_testing.py",
359
+ // Patching here too just for completeness
360
+ "/src/python_testing/matter_testing_infrastructure/chip/testing/matter_testing.py"
361
+ );
362
+ }
348
363
  async function configurePics() {
349
- const ciPics = await State.container.read(ContainerPaths.chipPics);
350
- const pics = new PicsFile(ciPics, true);
351
- const testing = Package.tools.findPackage("@matter/testing");
352
- const overrides = new PicsFile(testing.resolve(Constants.localPicsOverrideFile));
353
- pics.patch(overrides);
354
- Values.pics = pics;
355
- await State.container.write(ContainerPaths.matterJsPics, pics.toString());
364
+ Values.defaultPics = await PicsSource.load(Constants.defaultPics);
365
+ Values.defaultPicsFilename = await PicsSource.install(Values.defaultPics);
356
366
  }
357
367
  async function configureTests() {
358
368
  const { container } = State;
359
369
  const descriptor = JSON.parse(await container.read(ContainerPaths.descriptorFile));
370
+ if (descriptor.format !== TestDescriptor.CURRENT_FORMAT) {
371
+ throw new Error(`Invalid descriptor format "${descriptor.format}" (expected ${TestDescriptor.CURRENT_FORMAT})`);
372
+ }
360
373
  if (!Array.isArray(descriptor.members)) {
361
374
  throw new Error(`CHIP test descriptor has no members`);
362
375
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/chip/state.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -7,6 +7,6 @@ import { Subject } from "../device/subject.js";
7
7
  import { BaseTest } from "../device/test.js";
8
8
  export declare class YamlTest extends BaseTest {
9
9
  initializeSubject(subject: Subject): Promise<void>;
10
- invoke(_subject: Subject, step: (title: string) => void, args: string[]): Promise<void>;
10
+ invoke(subject: Subject, step: (title: string) => void, args: string[]): Promise<void>;
11
11
  }
12
12
  //# sourceMappingURL=yaml-test.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"yaml-test.d.ts","sourceRoot":"","sources":["../../../src/chip/yaml-test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAM7C,qBAAa,QAAS,SAAQ,QAAQ;IAC5B,iBAAiB,CAAC,OAAO,EAAE,OAAO;IAyClC,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE;CAuChF"}
1
+ {"version":3,"file":"yaml-test.d.ts","sourceRoot":"","sources":["../../../src/chip/yaml-test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAO7C,qBAAa,QAAS,SAAQ,QAAQ;IAC5B,iBAAiB,CAAC,OAAO,EAAE,OAAO;IAyClC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE;CA2C/E"}
@@ -9,6 +9,7 @@ import { Terminal } from "../docker/terminal.js";
9
9
  import { deansify } from "../util/text.js";
10
10
  import { parseStep } from "./chip-test-common.js";
11
11
  import { Constants, ContainerPaths } from "./config.js";
12
+ import { PicsSource } from "./pics/source.js";
12
13
  class YamlTest extends BaseTest {
13
14
  async initializeSubject(subject) {
14
15
  const command = ["chip-tool", "pairing"];
@@ -42,7 +43,10 @@ class YamlTest extends BaseTest {
42
43
  throw new Error("Error pairing test app", { cause: e });
43
44
  }
44
45
  }
45
- async invoke(_subject, step, args) {
46
+ async invoke(subject, step, args) {
47
+ if (!args.includes("--PICS")) {
48
+ args.push("--PICS", await PicsSource.install(subject.pics));
49
+ }
46
50
  const terminal = await this.container.exec(
47
51
  [
48
52
  "python3",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/chip/yaml-test.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,gBAAgB;AAEzB,SAAS,gBAAgB;AACzB,SAAS,gBAAgB;AACzB,SAAS,gBAAgB;AACzB,SAAS,iBAAiB;AAC1B,SAAS,WAAW,sBAAsB;AAEnC,MAAM,iBAAiB,SAAS;AAAA,EACnC,MAAM,kBAAkB,SAAkB;AACtC,UAAM,UAAU,CAAC,aAAa,SAAS;AAEvC,UAAM,EAAE,MAAM,UAAU,eAAe,QAAQ,IAAI,QAAQ;AAE3D,YAAQ,MAAM;AAAA,MACV,KAAK;AACD,gBAAQ,KAAK,kBAAkB,YAAY;AAC3C;AAAA,MAEJ,KAAK;AACD,YAAI,SAAS,SAAS,QAAQ;AAC1B,gBAAM,IAAI,MAAM,0DAA0D,QAAQ,EAAE,EAAE;AAAA,QAC1F;AACA,gBAAQ,KAAK,YAAY,cAAc,QAAQ,MAAM,QAAQ,QAAQ;AACrE;AAAA,MAEJ,KAAK;AACD,YAAI,SAAS,SAAS,UAAU;AAC5B,gBAAM,IAAI,MAAM,4DAA4D,QAAQ,EAAE,EAAE;AAAA,QAC5F;AACA,gBAAQ,KAAK,YAAY,cAAc,QAAQ,UAAU;AACzD;AAAA,MAEJ;AACI,cAAM,IAAI,MAAM,gCAAgC,QAAQ,cAAc,IAAI,gBAAgB,QAAQ,EAAE,EAAE;AAAA,IAC9G;AAEA,YAAQ,KAAK,GAAG,QAAQ,IAAI,GAAG,aAAa,EAAE;AAE9C,UAAM,WAAW,MAAM,KAAK,UAAU,KAAK,SAAS,SAAS,IAAI;AAEjE,QAAI;AACA,uBAAiB,QAAQ,UAAU;AAC/B,mBAAW,sBAAsB,QAAQ,IAAI;AAAA,MACjD;AAAA,IACJ,SAAS,GAAG;AACR,YAAM,IAAI,MAAM,0BAA0B,EAAE,OAAO,EAAE,CAAC;AAAA,IAC1D;AAAA,EACJ;AAAA,EAEA,MAAM,OAAO,UAAmB,MAA+B,MAAgB;AAC3E,UAAM,WAAW,MAAM,KAAK,UAAU;AAAA,MAClC;AAAA,QACI;AAAA,QACA,eAAe;AAAA,QACf;AAAA,QACA,SAAS,KAAK,WAAW,IAAI;AAAA,QAC7B,GAAG,UAAU;AAAA,QACb,GAAG;AAAA,MACP;AAAA,MACA,SAAS;AAAA,IACb;AAEA,QAAI,SAAS;AAEb,mBAAe,QAAQ,UAAU;AAC7B,aAAO,KAAK,WAAW,QAAQ,IAAI,EAAE,WAAW,KAAM,IAAI;AAE1D,aAAO,UAAU,MAAM,IAAI;AAE3B,UAAI,SAAS,IAAI,EAAE,MAAM,6BAA6B,GAAG;AACrD,iBAAS;AAAA,MACb;AAEA,UAAI,QAAQ;AACZ,eAAS,QAAQ,KAAK,MAAM,IAAI,GAAG;AAC/B,YAAI,OAAO;AACP,kBAAQ;AAAA,QACZ,OAAO;AACH,iBAAO,OAAO,IAAI;AAAA,QACtB;AACA,mBAAW,sBAAsB,QAAQ,IAAI;AAAA,MACjD;AAAA,IACJ;AAEA,QAAI,CAAC,QAAQ;AACT,YAAM,IAAI,MAAM,qEAAqE;AAAA,IACzF;AAAA,EACJ;AACJ;",
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,gBAAgB;AAEzB,SAAS,gBAAgB;AACzB,SAAS,gBAAgB;AACzB,SAAS,gBAAgB;AACzB,SAAS,iBAAiB;AAC1B,SAAS,WAAW,sBAAsB;AAC1C,SAAS,kBAAkB;AAEpB,MAAM,iBAAiB,SAAS;AAAA,EACnC,MAAM,kBAAkB,SAAkB;AACtC,UAAM,UAAU,CAAC,aAAa,SAAS;AAEvC,UAAM,EAAE,MAAM,UAAU,eAAe,QAAQ,IAAI,QAAQ;AAE3D,YAAQ,MAAM;AAAA,MACV,KAAK;AACD,gBAAQ,KAAK,kBAAkB,YAAY;AAC3C;AAAA,MAEJ,KAAK;AACD,YAAI,SAAS,SAAS,QAAQ;AAC1B,gBAAM,IAAI,MAAM,0DAA0D,QAAQ,EAAE,EAAE;AAAA,QAC1F;AACA,gBAAQ,KAAK,YAAY,cAAc,QAAQ,MAAM,QAAQ,QAAQ;AACrE;AAAA,MAEJ,KAAK;AACD,YAAI,SAAS,SAAS,UAAU;AAC5B,gBAAM,IAAI,MAAM,4DAA4D,QAAQ,EAAE,EAAE;AAAA,QAC5F;AACA,gBAAQ,KAAK,YAAY,cAAc,QAAQ,UAAU;AACzD;AAAA,MAEJ;AACI,cAAM,IAAI,MAAM,gCAAgC,QAAQ,cAAc,IAAI,gBAAgB,QAAQ,EAAE,EAAE;AAAA,IAC9G;AAEA,YAAQ,KAAK,GAAG,QAAQ,IAAI,GAAG,aAAa,EAAE;AAE9C,UAAM,WAAW,MAAM,KAAK,UAAU,KAAK,SAAS,SAAS,IAAI;AAEjE,QAAI;AACA,uBAAiB,QAAQ,UAAU;AAC/B,mBAAW,sBAAsB,QAAQ,IAAI;AAAA,MACjD;AAAA,IACJ,SAAS,GAAG;AACR,YAAM,IAAI,MAAM,0BAA0B,EAAE,OAAO,EAAE,CAAC;AAAA,IAC1D;AAAA,EACJ;AAAA,EAEA,MAAM,OAAO,SAAkB,MAA+B,MAAgB;AAC1E,QAAI,CAAC,KAAK,SAAS,QAAQ,GAAG;AAC1B,WAAK,KAAK,UAAU,MAAM,WAAW,QAAQ,QAAQ,IAAI,CAAC;AAAA,IAC9D;AAEA,UAAM,WAAW,MAAM,KAAK,UAAU;AAAA,MAClC;AAAA,QACI;AAAA,QACA,eAAe;AAAA,QACf;AAAA,QACA,SAAS,KAAK,WAAW,IAAI;AAAA,QAC7B,GAAG,UAAU;AAAA,QACb,GAAG;AAAA,MACP;AAAA,MACA,SAAS;AAAA,IACb;AAEA,QAAI,SAAS;AAEb,mBAAe,QAAQ,UAAU;AAC7B,aAAO,KAAK,WAAW,QAAQ,IAAI,EAAE,WAAW,KAAM,IAAI;AAE1D,aAAO,UAAU,MAAM,IAAI;AAE3B,UAAI,SAAS,IAAI,EAAE,MAAM,6BAA6B,GAAG;AACrD,iBAAS;AAAA,MACb;AAEA,UAAI,QAAQ;AACZ,eAAS,QAAQ,KAAK,MAAM,IAAI,GAAG;AAC/B,YAAI,OAAO;AACP,kBAAQ;AAAA,QACZ,OAAO;AACH,iBAAO,OAAO,IAAI;AAAA,QACtB;AACA,mBAAW,sBAAsB,QAAQ,IAAI;AAAA,MACjD;AAAA,IACJ;AAEA,QAAI,CAAC,QAAQ;AACT,YAAM,IAAI,MAAM,qEAAqE;AAAA,IACzF;AAAA,EACJ;AACJ;",
5
5
  "names": []
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,sBAAsB,CAAC;AAE9B,OAAO,yBAAyB,CAAC;AAqBjC,wBAAsB,IAAI,CAAC,IAAI,WAAe,iBA4J7C"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,sBAAsB,CAAC;AAE9B,OAAO,yBAAyB,CAAC;AA0BjC,wBAAsB,IAAI,CAAC,IAAI,WAAe,iBA+K7C"}
package/dist/esm/cli.js CHANGED
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import "./util/node-shims.js";
7
7
  import "./global-definitions.js";
8
- import { Graph, Package, Project, ProjectBuilder } from "#tools";
8
+ import { Graph, JsonNotFoundError, Package, Project, ProjectBuilder } from "#tools";
9
9
  import { clear } from "node:console";
10
10
  import yargs from "yargs";
11
11
  import { hideBin } from "yargs/helpers";
@@ -39,7 +39,7 @@ async function main(argv = process.argv) {
39
39
  string: true,
40
40
  describe: "One or more paths of tests to run",
41
41
  default: "./test/**/*{.test,Test}.ts"
42
- }).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", () => {
42
+ }).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", () => {
43
43
  testTypes.add("web" /* web */);
44
44
  manual = true;
45
45
  }).strict().argv;
@@ -48,9 +48,23 @@ async function main(argv = process.argv) {
48
48
  const firstSpec = Array.isArray(args.spec) ? args.spec[0] : args.spec;
49
49
  packageLocation = firstSpec;
50
50
  }
51
- chip.pullBeforeTesting = args.pull;
52
51
  const builder = new ProjectBuilder();
53
52
  const pkg = new Package({ path: packageLocation });
53
+ try {
54
+ const found = pkg.findJson(".matter-test.json");
55
+ const config = found.json;
56
+ if ("allLogs" in config && !process.argv.includes("--no-all-logs")) {
57
+ args.allLogs = !!config.allLogs;
58
+ }
59
+ if ("pull" in config && !process.argv.includes("--no-pull")) {
60
+ args.pull = !!config.pull;
61
+ }
62
+ } catch (e) {
63
+ if (!(e instanceof JsonNotFoundError)) {
64
+ throw e;
65
+ }
66
+ }
67
+ chip.pullBeforeTesting = args.pull;
54
68
  if (pkg.isWorkspace) {
55
69
  const graph = await Graph.load(pkg);
56
70
  await graph.build(builder, false);
@@ -84,8 +98,9 @@ async function main(argv = process.argv) {
84
98
  if (ls) {
85
99
  const progress2 = pkg2.start("Inspecting");
86
100
  const runner2 = new TestRunner(pkg2, progress2, args);
101
+ const report2 = await defaultDescriptor(runner2);
87
102
  progress2.close();
88
- printReport(await defaultDescriptor(runner2), true);
103
+ printReport(report2, true);
89
104
  console.log();
90
105
  return;
91
106
  }
@@ -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", "pkg", "progress", "runner"]
4
+ "mappings": "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",
5
+ "names": ["TestType", "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"}