@matter/tools 0.11.0-alpha.0-20241005-e3e4e4a7a

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 (414) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +100 -0
  3. package/bin/build.js +10 -0
  4. package/bin/prepare-chip.js +5 -0
  5. package/bin/run.js +7 -0
  6. package/bin/test.js +7 -0
  7. package/bin/version.js +7 -0
  8. package/chip/Dockerfile +23 -0
  9. package/dist/cjs/building/builder.d.ts +35 -0
  10. package/dist/cjs/building/builder.d.ts.map +1 -0
  11. package/dist/cjs/building/builder.js +210 -0
  12. package/dist/cjs/building/builder.js.map +6 -0
  13. package/dist/cjs/building/cli.d.ts +7 -0
  14. package/dist/cjs/building/cli.d.ts.map +1 -0
  15. package/dist/cjs/building/cli.js +100 -0
  16. package/dist/cjs/building/cli.js.map +6 -0
  17. package/dist/cjs/building/error.d.ts +16 -0
  18. package/dist/cjs/building/error.d.ts.map +1 -0
  19. package/dist/cjs/building/error.js +50 -0
  20. package/dist/cjs/building/error.js.map +6 -0
  21. package/dist/cjs/building/graph.d.ts +37 -0
  22. package/dist/cjs/building/graph.d.ts.map +1 -0
  23. package/dist/cjs/building/graph.js +222 -0
  24. package/dist/cjs/building/graph.js.map +6 -0
  25. package/dist/cjs/building/project.d.ts +56 -0
  26. package/dist/cjs/building/project.d.ts.map +1 -0
  27. package/dist/cjs/building/project.js +239 -0
  28. package/dist/cjs/building/project.js.map +6 -0
  29. package/dist/cjs/building/tsconfig.d.ts +16 -0
  30. package/dist/cjs/building/tsconfig.d.ts.map +1 -0
  31. package/dist/cjs/building/tsconfig.js +70 -0
  32. package/dist/cjs/building/tsconfig.js.map +6 -0
  33. package/dist/cjs/building/typescript/context.d.ts +16 -0
  34. package/dist/cjs/building/typescript/context.d.ts.map +1 -0
  35. package/dist/cjs/building/typescript/context.js +82 -0
  36. package/dist/cjs/building/typescript/context.js.map +6 -0
  37. package/dist/cjs/building/typescript/incremental-compiler.d.ts +10 -0
  38. package/dist/cjs/building/typescript/incremental-compiler.d.ts.map +1 -0
  39. package/dist/cjs/building/typescript/incremental-compiler.js +119 -0
  40. package/dist/cjs/building/typescript/incremental-compiler.js.map +6 -0
  41. package/dist/cjs/building/typescript/language-service.d.ts +13 -0
  42. package/dist/cjs/building/typescript/language-service.d.ts.map +1 -0
  43. package/dist/cjs/building/typescript/language-service.js +109 -0
  44. package/dist/cjs/building/typescript/language-service.js.map +6 -0
  45. package/dist/cjs/building/typescript/solution-builder.d.ts +10 -0
  46. package/dist/cjs/building/typescript/solution-builder.d.ts.map +1 -0
  47. package/dist/cjs/building/typescript/solution-builder.js +72 -0
  48. package/dist/cjs/building/typescript/solution-builder.js.map +6 -0
  49. package/dist/cjs/building/typescript.d.ts +13 -0
  50. package/dist/cjs/building/typescript.d.ts.map +1 -0
  51. package/dist/cjs/building/typescript.js +31 -0
  52. package/dist/cjs/building/typescript.js.map +6 -0
  53. package/dist/cjs/index.d.ts +15 -0
  54. package/dist/cjs/index.d.ts.map +1 -0
  55. package/dist/cjs/index.js +32 -0
  56. package/dist/cjs/index.js.map +6 -0
  57. package/dist/cjs/package.json +3 -0
  58. package/dist/cjs/running/cli.d.ts +19 -0
  59. package/dist/cjs/running/cli.d.ts.map +1 -0
  60. package/dist/cjs/running/cli.js +82 -0
  61. package/dist/cjs/running/cli.js.map +6 -0
  62. package/dist/cjs/running/execute.d.ts +8 -0
  63. package/dist/cjs/running/execute.d.ts.map +1 -0
  64. package/dist/cjs/running/execute.js +82 -0
  65. package/dist/cjs/running/execute.js.map +6 -0
  66. package/dist/cjs/testing/chip/pics-file.d.ts +20 -0
  67. package/dist/cjs/testing/chip/pics-file.d.ts.map +1 -0
  68. package/dist/cjs/testing/chip/pics-file.js +79 -0
  69. package/dist/cjs/testing/chip/pics-file.js.map +6 -0
  70. package/dist/cjs/testing/chip.d.ts +60 -0
  71. package/dist/cjs/testing/chip.d.ts.map +1 -0
  72. package/dist/cjs/testing/chip.js +306 -0
  73. package/dist/cjs/testing/chip.js.map +6 -0
  74. package/dist/cjs/testing/cli.d.ts +9 -0
  75. package/dist/cjs/testing/cli.d.ts.map +1 -0
  76. package/dist/cjs/testing/cli.js +117 -0
  77. package/dist/cjs/testing/cli.js.map +6 -0
  78. package/dist/cjs/testing/failure-detail.d.ts +19 -0
  79. package/dist/cjs/testing/failure-detail.d.ts.map +1 -0
  80. package/dist/cjs/testing/failure-detail.js +143 -0
  81. package/dist/cjs/testing/failure-detail.js.map +6 -0
  82. package/dist/cjs/testing/files.d.ts +8 -0
  83. package/dist/cjs/testing/files.d.ts.map +1 -0
  84. package/dist/cjs/testing/files.js +52 -0
  85. package/dist/cjs/testing/files.js.map +6 -0
  86. package/dist/cjs/testing/global-declarations.d.ts +38 -0
  87. package/dist/cjs/testing/global-declarations.d.ts.map +1 -0
  88. package/dist/cjs/testing/global-declarations.js +8 -0
  89. package/dist/cjs/testing/global-declarations.js.map +6 -0
  90. package/dist/cjs/testing/global-definitions.d.ts +7 -0
  91. package/dist/cjs/testing/global-definitions.d.ts.map +1 -0
  92. package/dist/cjs/testing/global-definitions.js +50 -0
  93. package/dist/cjs/testing/global-definitions.js.map +6 -0
  94. package/dist/cjs/testing/mocha.d.ts +36 -0
  95. package/dist/cjs/testing/mocha.d.ts.map +1 -0
  96. package/dist/cjs/testing/mocha.js +155 -0
  97. package/dist/cjs/testing/mocha.js.map +6 -0
  98. package/dist/cjs/testing/mocharc.cjs +68 -0
  99. package/dist/cjs/testing/mocharc.d.cts +7 -0
  100. package/dist/cjs/testing/mocks/crypto.d.ts +7 -0
  101. package/dist/cjs/testing/mocks/crypto.d.ts.map +1 -0
  102. package/dist/cjs/testing/mocks/crypto.js +79 -0
  103. package/dist/cjs/testing/mocks/crypto.js.map +6 -0
  104. package/dist/cjs/testing/mocks/environment.d.ts +7 -0
  105. package/dist/cjs/testing/mocks/environment.d.ts.map +1 -0
  106. package/dist/cjs/testing/mocks/environment.js +7 -0
  107. package/dist/cjs/testing/mocks/environment.js.map +6 -0
  108. package/dist/cjs/testing/mocks/index.d.ts +10 -0
  109. package/dist/cjs/testing/mocks/index.d.ts.map +1 -0
  110. package/dist/cjs/testing/mocks/index.js +27 -0
  111. package/dist/cjs/testing/mocks/index.js.map +6 -0
  112. package/dist/cjs/testing/mocks/logging.d.ts +28 -0
  113. package/dist/cjs/testing/mocks/logging.d.ts.map +1 -0
  114. package/dist/cjs/testing/mocks/logging.js +93 -0
  115. package/dist/cjs/testing/mocks/logging.js.map +6 -0
  116. package/dist/cjs/testing/mocks/time.d.ts +88 -0
  117. package/dist/cjs/testing/mocks/time.d.ts.map +1 -0
  118. package/dist/cjs/testing/mocks/time.js +250 -0
  119. package/dist/cjs/testing/mocks/time.js.map +6 -0
  120. package/dist/cjs/testing/node.d.ts +16 -0
  121. package/dist/cjs/testing/node.d.ts.map +1 -0
  122. package/dist/cjs/testing/node.js +108 -0
  123. package/dist/cjs/testing/node.js.map +6 -0
  124. package/dist/cjs/testing/options.d.ts +19 -0
  125. package/dist/cjs/testing/options.d.ts.map +1 -0
  126. package/dist/cjs/testing/options.js +62 -0
  127. package/dist/cjs/testing/options.js.map +6 -0
  128. package/dist/cjs/testing/reporter.d.ts +50 -0
  129. package/dist/cjs/testing/reporter.d.ts.map +1 -0
  130. package/dist/cjs/testing/reporter.js +137 -0
  131. package/dist/cjs/testing/reporter.js.map +6 -0
  132. package/dist/cjs/testing/runner.d.ts +22 -0
  133. package/dist/cjs/testing/runner.d.ts.map +1 -0
  134. package/dist/cjs/testing/runner.js +116 -0
  135. package/dist/cjs/testing/runner.js.map +6 -0
  136. package/dist/cjs/testing/web.d.ts +8 -0
  137. package/dist/cjs/testing/web.d.ts.map +1 -0
  138. package/dist/cjs/testing/web.js +165 -0
  139. package/dist/cjs/testing/web.js.map +6 -0
  140. package/dist/cjs/util/bootstrap.mjs +105 -0
  141. package/dist/cjs/util/docker.d.ts +27 -0
  142. package/dist/cjs/util/docker.d.ts.map +1 -0
  143. package/dist/cjs/util/docker.js +163 -0
  144. package/dist/cjs/util/docker.js.map +6 -0
  145. package/dist/cjs/util/errors.d.ts +8 -0
  146. package/dist/cjs/util/errors.d.ts.map +1 -0
  147. package/dist/cjs/util/errors.js +55 -0
  148. package/dist/cjs/util/errors.js.map +6 -0
  149. package/dist/cjs/util/index.d.ts +8 -0
  150. package/dist/cjs/util/index.d.ts.map +1 -0
  151. package/dist/cjs/util/index.js +25 -0
  152. package/dist/cjs/util/index.js.map +6 -0
  153. package/dist/cjs/util/node-shims.d.ts +7 -0
  154. package/dist/cjs/util/node-shims.d.ts.map +1 -0
  155. package/dist/cjs/util/node-shims.js +12 -0
  156. package/dist/cjs/util/node-shims.js.map +6 -0
  157. package/dist/cjs/util/package.d.ts +61 -0
  158. package/dist/cjs/util/package.d.ts.map +1 -0
  159. package/dist/cjs/util/package.js +324 -0
  160. package/dist/cjs/util/package.js.map +6 -0
  161. package/dist/cjs/util/progress.d.ts +31 -0
  162. package/dist/cjs/util/progress.d.ts.map +1 -0
  163. package/dist/cjs/util/progress.js +232 -0
  164. package/dist/cjs/util/progress.js.map +6 -0
  165. package/dist/cjs/util/tools-path.cjs +13 -0
  166. package/dist/cjs/util/tools-path.d.cts +7 -0
  167. package/dist/cjs/util/trace-unhandled.d.ts +9 -0
  168. package/dist/cjs/util/trace-unhandled.d.ts.map +1 -0
  169. package/dist/cjs/util/trace-unhandled.js +48 -0
  170. package/dist/cjs/util/trace-unhandled.js.map +6 -0
  171. package/dist/cjs/util/wtf.d.ts +10 -0
  172. package/dist/cjs/util/wtf.d.ts.map +1 -0
  173. package/dist/cjs/util/wtf.js +53 -0
  174. package/dist/cjs/util/wtf.js.map +6 -0
  175. package/dist/cjs/versioning/cli.d.ts +7 -0
  176. package/dist/cjs/versioning/cli.d.ts.map +1 -0
  177. package/dist/cjs/versioning/cli.js +62 -0
  178. package/dist/cjs/versioning/cli.js.map +6 -0
  179. package/dist/cjs/versioning/versioner.d.ts +18 -0
  180. package/dist/cjs/versioning/versioner.d.ts.map +1 -0
  181. package/dist/cjs/versioning/versioner.js +145 -0
  182. package/dist/cjs/versioning/versioner.js.map +6 -0
  183. package/dist/esm/building/builder.d.ts +35 -0
  184. package/dist/esm/building/builder.d.ts.map +1 -0
  185. package/dist/esm/building/builder.js +180 -0
  186. package/dist/esm/building/builder.js.map +6 -0
  187. package/dist/esm/building/cli.d.ts +7 -0
  188. package/dist/esm/building/cli.d.ts.map +1 -0
  189. package/dist/esm/building/cli.js +70 -0
  190. package/dist/esm/building/cli.js.map +6 -0
  191. package/dist/esm/building/error.d.ts +16 -0
  192. package/dist/esm/building/error.d.ts.map +1 -0
  193. package/dist/esm/building/error.js +30 -0
  194. package/dist/esm/building/error.js.map +6 -0
  195. package/dist/esm/building/graph.d.ts +37 -0
  196. package/dist/esm/building/graph.d.ts.map +1 -0
  197. package/dist/esm/building/graph.js +192 -0
  198. package/dist/esm/building/graph.js.map +6 -0
  199. package/dist/esm/building/project.d.ts +56 -0
  200. package/dist/esm/building/project.d.ts.map +1 -0
  201. package/dist/esm/building/project.js +219 -0
  202. package/dist/esm/building/project.js.map +6 -0
  203. package/dist/esm/building/tsconfig.d.ts +16 -0
  204. package/dist/esm/building/tsconfig.d.ts.map +1 -0
  205. package/dist/esm/building/tsconfig.js +50 -0
  206. package/dist/esm/building/tsconfig.js.map +6 -0
  207. package/dist/esm/building/typescript/context.d.ts +16 -0
  208. package/dist/esm/building/typescript/context.d.ts.map +1 -0
  209. package/dist/esm/building/typescript/context.js +68 -0
  210. package/dist/esm/building/typescript/context.js.map +6 -0
  211. package/dist/esm/building/typescript/incremental-compiler.d.ts +10 -0
  212. package/dist/esm/building/typescript/incremental-compiler.d.ts.map +1 -0
  213. package/dist/esm/building/typescript/incremental-compiler.js +99 -0
  214. package/dist/esm/building/typescript/incremental-compiler.js.map +6 -0
  215. package/dist/esm/building/typescript/language-service.d.ts +13 -0
  216. package/dist/esm/building/typescript/language-service.d.ts.map +1 -0
  217. package/dist/esm/building/typescript/language-service.js +99 -0
  218. package/dist/esm/building/typescript/language-service.js.map +6 -0
  219. package/dist/esm/building/typescript/solution-builder.d.ts +10 -0
  220. package/dist/esm/building/typescript/solution-builder.d.ts.map +1 -0
  221. package/dist/esm/building/typescript/solution-builder.js +52 -0
  222. package/dist/esm/building/typescript/solution-builder.js.map +6 -0
  223. package/dist/esm/building/typescript.d.ts +13 -0
  224. package/dist/esm/building/typescript.d.ts.map +1 -0
  225. package/dist/esm/building/typescript.js +11 -0
  226. package/dist/esm/building/typescript.js.map +6 -0
  227. package/dist/esm/index.d.ts +15 -0
  228. package/dist/esm/index.d.ts.map +1 -0
  229. package/dist/esm/index.js +15 -0
  230. package/dist/esm/index.js.map +6 -0
  231. package/dist/esm/package.json +3 -0
  232. package/dist/esm/running/cli.d.ts +19 -0
  233. package/dist/esm/running/cli.d.ts.map +1 -0
  234. package/dist/esm/running/cli.js +62 -0
  235. package/dist/esm/running/cli.js.map +6 -0
  236. package/dist/esm/running/execute.d.ts +8 -0
  237. package/dist/esm/running/execute.d.ts.map +1 -0
  238. package/dist/esm/running/execute.js +52 -0
  239. package/dist/esm/running/execute.js.map +6 -0
  240. package/dist/esm/testing/chip/pics-file.d.ts +20 -0
  241. package/dist/esm/testing/chip/pics-file.d.ts.map +1 -0
  242. package/dist/esm/testing/chip/pics-file.js +59 -0
  243. package/dist/esm/testing/chip/pics-file.js.map +6 -0
  244. package/dist/esm/testing/chip.d.ts +60 -0
  245. package/dist/esm/testing/chip.d.ts.map +1 -0
  246. package/dist/esm/testing/chip.js +286 -0
  247. package/dist/esm/testing/chip.js.map +6 -0
  248. package/dist/esm/testing/cli.d.ts +9 -0
  249. package/dist/esm/testing/cli.d.ts.map +1 -0
  250. package/dist/esm/testing/cli.js +87 -0
  251. package/dist/esm/testing/cli.js.map +6 -0
  252. package/dist/esm/testing/failure-detail.d.ts +19 -0
  253. package/dist/esm/testing/failure-detail.d.ts.map +1 -0
  254. package/dist/esm/testing/failure-detail.js +113 -0
  255. package/dist/esm/testing/failure-detail.js.map +6 -0
  256. package/dist/esm/testing/files.d.ts +8 -0
  257. package/dist/esm/testing/files.d.ts.map +1 -0
  258. package/dist/esm/testing/files.js +32 -0
  259. package/dist/esm/testing/files.js.map +6 -0
  260. package/dist/esm/testing/global-declarations.d.ts +38 -0
  261. package/dist/esm/testing/global-declarations.d.ts.map +1 -0
  262. package/dist/esm/testing/global-declarations.js +7 -0
  263. package/dist/esm/testing/global-declarations.js.map +6 -0
  264. package/dist/esm/testing/global-definitions.d.ts +7 -0
  265. package/dist/esm/testing/global-definitions.d.ts.map +1 -0
  266. package/dist/esm/testing/global-definitions.js +27 -0
  267. package/dist/esm/testing/global-definitions.js.map +6 -0
  268. package/dist/esm/testing/mocha.d.ts +36 -0
  269. package/dist/esm/testing/mocha.d.ts.map +1 -0
  270. package/dist/esm/testing/mocha.js +135 -0
  271. package/dist/esm/testing/mocha.js.map +6 -0
  272. package/dist/esm/testing/mocharc.cjs +68 -0
  273. package/dist/esm/testing/mocharc.d.cts +7 -0
  274. package/dist/esm/testing/mocks/crypto.d.ts +7 -0
  275. package/dist/esm/testing/mocks/crypto.d.ts.map +1 -0
  276. package/dist/esm/testing/mocks/crypto.js +59 -0
  277. package/dist/esm/testing/mocks/crypto.js.map +6 -0
  278. package/dist/esm/testing/mocks/environment.d.ts +7 -0
  279. package/dist/esm/testing/mocks/environment.d.ts.map +1 -0
  280. package/dist/esm/testing/mocks/environment.js +6 -0
  281. package/dist/esm/testing/mocks/environment.js.map +6 -0
  282. package/dist/esm/testing/mocks/index.d.ts +10 -0
  283. package/dist/esm/testing/mocks/index.d.ts.map +1 -0
  284. package/dist/esm/testing/mocks/index.js +10 -0
  285. package/dist/esm/testing/mocks/index.js.map +6 -0
  286. package/dist/esm/testing/mocks/logging.d.ts +28 -0
  287. package/dist/esm/testing/mocks/logging.d.ts.map +1 -0
  288. package/dist/esm/testing/mocks/logging.js +63 -0
  289. package/dist/esm/testing/mocks/logging.js.map +6 -0
  290. package/dist/esm/testing/mocks/time.d.ts +88 -0
  291. package/dist/esm/testing/mocks/time.d.ts.map +1 -0
  292. package/dist/esm/testing/mocks/time.js +230 -0
  293. package/dist/esm/testing/mocks/time.js.map +6 -0
  294. package/dist/esm/testing/node.d.ts +16 -0
  295. package/dist/esm/testing/node.d.ts.map +1 -0
  296. package/dist/esm/testing/node.js +78 -0
  297. package/dist/esm/testing/node.js.map +6 -0
  298. package/dist/esm/testing/options.d.ts +19 -0
  299. package/dist/esm/testing/options.d.ts.map +1 -0
  300. package/dist/esm/testing/options.js +42 -0
  301. package/dist/esm/testing/options.js.map +6 -0
  302. package/dist/esm/testing/reporter.d.ts +50 -0
  303. package/dist/esm/testing/reporter.d.ts.map +1 -0
  304. package/dist/esm/testing/reporter.js +107 -0
  305. package/dist/esm/testing/reporter.js.map +6 -0
  306. package/dist/esm/testing/runner.d.ts +22 -0
  307. package/dist/esm/testing/runner.d.ts.map +1 -0
  308. package/dist/esm/testing/runner.js +86 -0
  309. package/dist/esm/testing/runner.js.map +6 -0
  310. package/dist/esm/testing/web.d.ts +8 -0
  311. package/dist/esm/testing/web.d.ts.map +1 -0
  312. package/dist/esm/testing/web.js +135 -0
  313. package/dist/esm/testing/web.js.map +6 -0
  314. package/dist/esm/util/bootstrap.mjs +105 -0
  315. package/dist/esm/util/docker.d.ts +27 -0
  316. package/dist/esm/util/docker.d.ts.map +1 -0
  317. package/dist/esm/util/docker.js +133 -0
  318. package/dist/esm/util/docker.js.map +6 -0
  319. package/dist/esm/util/errors.d.ts +8 -0
  320. package/dist/esm/util/errors.d.ts.map +1 -0
  321. package/dist/esm/util/errors.js +35 -0
  322. package/dist/esm/util/errors.js.map +6 -0
  323. package/dist/esm/util/index.d.ts +8 -0
  324. package/dist/esm/util/index.d.ts.map +1 -0
  325. package/dist/esm/util/index.js +8 -0
  326. package/dist/esm/util/index.js.map +6 -0
  327. package/dist/esm/util/node-shims.d.ts +7 -0
  328. package/dist/esm/util/node-shims.d.ts.map +1 -0
  329. package/dist/esm/util/node-shims.js +11 -0
  330. package/dist/esm/util/node-shims.js.map +6 -0
  331. package/dist/esm/util/package.d.ts +61 -0
  332. package/dist/esm/util/package.d.ts.map +1 -0
  333. package/dist/esm/util/package.js +304 -0
  334. package/dist/esm/util/package.js.map +6 -0
  335. package/dist/esm/util/progress.d.ts +31 -0
  336. package/dist/esm/util/progress.d.ts.map +1 -0
  337. package/dist/esm/util/progress.js +202 -0
  338. package/dist/esm/util/progress.js.map +6 -0
  339. package/dist/esm/util/tools-path.cjs +13 -0
  340. package/dist/esm/util/tools-path.d.cts +7 -0
  341. package/dist/esm/util/trace-unhandled.d.ts +9 -0
  342. package/dist/esm/util/trace-unhandled.d.ts.map +1 -0
  343. package/dist/esm/util/trace-unhandled.js +18 -0
  344. package/dist/esm/util/trace-unhandled.js.map +6 -0
  345. package/dist/esm/util/wtf.d.ts +10 -0
  346. package/dist/esm/util/wtf.d.ts.map +1 -0
  347. package/dist/esm/util/wtf.js +23 -0
  348. package/dist/esm/util/wtf.js.map +6 -0
  349. package/dist/esm/versioning/cli.d.ts +7 -0
  350. package/dist/esm/versioning/cli.d.ts.map +1 -0
  351. package/dist/esm/versioning/cli.js +32 -0
  352. package/dist/esm/versioning/cli.js.map +6 -0
  353. package/dist/esm/versioning/versioner.d.ts +18 -0
  354. package/dist/esm/versioning/versioner.d.ts.map +1 -0
  355. package/dist/esm/versioning/versioner.js +115 -0
  356. package/dist/esm/versioning/versioner.js.map +6 -0
  357. package/package.json +82 -0
  358. package/src/building/builder.ts +216 -0
  359. package/src/building/cli.ts +89 -0
  360. package/src/building/error.ts +29 -0
  361. package/src/building/graph.ts +251 -0
  362. package/src/building/project.ts +313 -0
  363. package/src/building/tsconfig.ts +69 -0
  364. package/src/building/typescript/context.ts +85 -0
  365. package/src/building/typescript/incremental-compiler.ts +126 -0
  366. package/src/building/typescript/language-service.ts +132 -0
  367. package/src/building/typescript/solution-builder.ts +67 -0
  368. package/src/building/typescript.ts +15 -0
  369. package/src/index.ts +15 -0
  370. package/src/running/cli.ts +95 -0
  371. package/src/running/execute.ts +63 -0
  372. package/src/testing/chip/pics-file.ts +71 -0
  373. package/src/testing/chip/pics.properties +53 -0
  374. package/src/testing/chip.ts +420 -0
  375. package/src/testing/cli.ts +122 -0
  376. package/src/testing/failure-detail.ts +126 -0
  377. package/src/testing/files.ts +35 -0
  378. package/src/testing/global-declarations.ts +50 -0
  379. package/src/testing/global-definitions.ts +35 -0
  380. package/src/testing/index.html +16 -0
  381. package/src/testing/mocha.ts +162 -0
  382. package/src/testing/mocharc.cjs +68 -0
  383. package/src/testing/mocharc.d.cts +7 -0
  384. package/src/testing/mocks/crypto.ts +70 -0
  385. package/src/testing/mocks/environment.ts +7 -0
  386. package/src/testing/mocks/index.ts +10 -0
  387. package/src/testing/mocks/logging.ts +99 -0
  388. package/src/testing/mocks/time.ts +294 -0
  389. package/src/testing/node.ts +114 -0
  390. package/src/testing/options.ts +58 -0
  391. package/src/testing/reporter.ts +144 -0
  392. package/src/testing/runner.ts +98 -0
  393. package/src/testing/web.ts +174 -0
  394. package/src/tsconfig.json +14 -0
  395. package/src/util/bootstrap.mjs +105 -0
  396. package/src/util/docker.ts +176 -0
  397. package/src/util/errors.ts +33 -0
  398. package/src/util/index.ts +8 -0
  399. package/src/util/node-shims.ts +13 -0
  400. package/src/util/package.ts +369 -0
  401. package/src/util/progress.ts +252 -0
  402. package/src/util/tools-path.cjs +13 -0
  403. package/src/util/tools-path.d.cts +7 -0
  404. package/src/util/trace-unhandled.ts +17 -0
  405. package/src/util/wtf.ts +25 -0
  406. package/src/versioning/cli.ts +43 -0
  407. package/src/versioning/versioner.ts +139 -0
  408. package/test/testing/mocks/MockTimeTest.ts +113 -0
  409. package/test/tsconfig.json +15 -0
  410. package/tsc/tsconfig.app.json +7 -0
  411. package/tsc/tsconfig.base.json +41 -0
  412. package/tsc/tsconfig.lib.json +12 -0
  413. package/tsc/tsconfig.test.json +7 -0
  414. package/tsconfig.json +5 -0
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var pics_file_exports = {};
20
+ __export(pics_file_exports, {
21
+ PicsFile: () => PicsFile
22
+ });
23
+ module.exports = __toCommonJS(pics_file_exports);
24
+ var import_fs = require("fs");
25
+ /**
26
+ * @license
27
+ * Copyright 2022-2024 Matter.js Authors
28
+ * SPDX-License-Identifier: Apache-2.0
29
+ */
30
+ function readValue(line) {
31
+ const valueMatch = line.match(/^(\S+)=(.*)$/);
32
+ if (valueMatch) {
33
+ return { key: valueMatch[1], value: valueMatch[2] };
34
+ }
35
+ return { key: void 0, value: void 0 };
36
+ }
37
+ class PicsFile {
38
+ #lines;
39
+ #values;
40
+ constructor(pathOrBody, inline = false) {
41
+ if (inline === false) {
42
+ pathOrBody = (0, import_fs.readFileSync)(pathOrBody, "utf-8");
43
+ }
44
+ this.#lines = pathOrBody.split("\n").map((l) => l.trim());
45
+ }
46
+ get lines() {
47
+ return this.#lines;
48
+ }
49
+ get values() {
50
+ if (!this.#values) {
51
+ const values = {};
52
+ for (const line of this.lines) {
53
+ const { key, value } = readValue(line);
54
+ if (key !== void 0) {
55
+ values[key] = value;
56
+ }
57
+ }
58
+ this.#values = values;
59
+ }
60
+ return this.#values;
61
+ }
62
+ patch(other) {
63
+ this.#lines = this.lines.map((line) => {
64
+ const { key } = readValue(line);
65
+ if (key === void 0) {
66
+ return line;
67
+ }
68
+ const otherValue = other.values[key];
69
+ if (otherValue === void 0) {
70
+ return line;
71
+ }
72
+ return `${key}=${otherValue}`;
73
+ });
74
+ }
75
+ save(path) {
76
+ (0, import_fs.writeFileSync)(path, this.lines.join("\n"));
77
+ }
78
+ }
79
+ //# sourceMappingURL=pics-file.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/testing/chip/pics-file.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,gBAA4C;AAN5C;AAAA;AAAA;AAAA;AAAA;AAQA,SAAS,UAAU,MAAc;AAC7B,QAAM,aAAa,KAAK,MAAM,cAAc;AAC5C,MAAI,YAAY;AACZ,WAAO,EAAE,KAAK,WAAW,CAAC,GAAG,OAAO,WAAW,CAAC,EAAE;AAAA,EACtD;AACA,SAAO,EAAE,KAAK,QAAW,OAAO,OAAU;AAC9C;AAQO,MAAM,SAAS;AAAA,EAClB;AAAA,EACA;AAAA,EAEA,YAAY,YAAoB,SAAS,OAAO;AAC5C,QAAI,WAAW,OAAO;AAClB,uBAAa,wBAAa,YAAY,OAAO;AAAA,IACjD;AACA,SAAK,SAAS,WAAW,MAAM,IAAI,EAAE,IAAI,OAAK,EAAE,KAAK,CAAC;AAAA,EAC1D;AAAA,EAEA,IAAI,QAAQ;AACR,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,SAAS;AACT,QAAI,CAAC,KAAK,SAAS;AACf,YAAM,SAAS,CAAC;AAChB,iBAAW,QAAQ,KAAK,OAAO;AAC3B,cAAM,EAAE,KAAK,MAAM,IAAI,UAAU,IAAI;AACrC,YAAI,QAAQ,QAAW;AACnB,iBAAO,GAAG,IAAI;AAAA,QAClB;AAAA,MACJ;AACA,WAAK,UAAU;AAAA,IACnB;AACA,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,MAAM,OAAiB;AACnB,SAAK,SAAS,KAAK,MAAM,IAAI,UAAQ;AACjC,YAAM,EAAE,IAAI,IAAI,UAAU,IAAI;AAC9B,UAAI,QAAQ,QAAW;AACnB,eAAO;AAAA,MACX;AAEA,YAAM,aAAa,MAAM,OAAO,GAAG;AACnC,UAAI,eAAe,QAAW;AAC1B,eAAO;AAAA,MACX;AAEA,aAAO,GAAG,GAAG,IAAI,UAAU;AAAA,IAC/B,CAAC;AAAA,EACL;AAAA,EAEA,KAAK,MAAc;AACf,iCAAc,MAAM,KAAK,MAAM,KAAK,IAAI,CAAC;AAAA,EAC7C;AACJ;",
5
+ "names": []
6
+ }
@@ -0,0 +1,60 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2024 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { type TestRunner } from "./runner.js";
7
+ /**
8
+ * CHIP testing controller. "CHIP tests" are official tests implemented in the connectedhomeip repository.
9
+ */
10
+ export declare const Chip: {
11
+ /**
12
+ * Configure CHIP testing. Invoke prior to use of other methods.
13
+ */
14
+ config: Chip.Options;
15
+ /**
16
+ * Initialize. This must run before defining tests to enable test definition via globs.
17
+ */
18
+ initialize(): Promise<void>;
19
+ /**
20
+ * Define YAML tests. This is a declarative CHIP test defined in a YAML file.
21
+ */
22
+ yaml(testee: Chip.Testee, includeGlob: string, excludeGlob?: string): void;
23
+ /**
24
+ * Define a "python" test. This is a CHIP test implemented as a python script.
25
+ */
26
+ python(testee: Chip.Testee, tester: Chip.TestSelection, excludeGlob?: string): void;
27
+ };
28
+ export declare namespace Chip {
29
+ /**
30
+ * The test subject.
31
+ */
32
+ interface Testee {
33
+ setup(): Promise<void>;
34
+ start(): Promise<void>;
35
+ stop(): Promise<void>;
36
+ }
37
+ /**
38
+ * The test implementation.
39
+ */
40
+ type TestSelection = Tester | string;
41
+ /**
42
+ * Configuration required from testing program.
43
+ */
44
+ interface Options {
45
+ runner: TestRunner;
46
+ }
47
+ /**
48
+ * Details of how to run a specific test.
49
+ */
50
+ interface Tester {
51
+ name: string;
52
+ description?: string;
53
+ command?: string[];
54
+ args?: Record<string, string>;
55
+ timeout?: number;
56
+ environment?: Record<string, string>;
57
+ }
58
+ }
59
+ export type Chip = typeof Chip;
60
+ //# sourceMappingURL=chip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chip.d.ts","sourceRoot":"","sources":["../../../src/testing/chip.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAqE9C;;GAEG;AACH,eAAO,MAAM,IAAI;IACb;;OAEG;;IAKH;;OAEG;;IAKH;;OAEG;iBACU,IAAI,CAAC,MAAM,eAAe,MAAM,gBAAgB,MAAM;IA0BnE;;OAEG;mBACY,IAAI,CAAC,MAAM,UAAU,IAAI,CAAC,aAAa,gBAAgB,MAAM;CAgC/E,CAAC;AAqDF,yBAAiB,IAAI,CAAC;IAClB;;OAEG;IACH,UAAiB,MAAM;QACnB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;KACzB;IAED;;OAEG;IACH,KAAY,aAAa,GAAG,MAAM,GAAG,MAAM,CAAC;IAE5C;;OAEG;IACH,UAAiB,OAAO;QACpB,MAAM,EAAE,UAAU,CAAC;KACtB;IAED;;OAEG;IACH,UAAiB,MAAM;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACxC;CACJ;AAED,MAAM,MAAM,IAAI,GAAG,OAAO,IAAI,CAAC"}
@@ -0,0 +1,306 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var chip_exports = {};
20
+ __export(chip_exports, {
21
+ Chip: () => Chip
22
+ });
23
+ module.exports = __toCommonJS(chip_exports);
24
+ var import_path = require("path");
25
+ var import_docker = require("../util/docker.js");
26
+ var import_package = require("../util/package.js");
27
+ var import_pics_file = require("./chip/pics-file.js");
28
+ /**
29
+ * @license
30
+ * Copyright 2022-2024 Matter.js Authors
31
+ * SPDX-License-Identifier: Apache-2.0
32
+ */
33
+ var Constants;
34
+ ((Constants2) => {
35
+ Constants2.chip = "/connectedhomeip";
36
+ Constants2.chipTool = `${Constants2.chip}/scripts/tests/chipyaml/chiptool.py`;
37
+ Constants2.yamlTests = `${Constants2.chip}/src/app/tests/suites/certification`;
38
+ Constants2.pythonTests = `${Constants2.chip}/src/python_testing`;
39
+ Constants2.python = ["/usr/bin/env", "-S", "python3", "-B"];
40
+ Constants2.pythonRunner = `${Constants2.chip}/scripts/tests/run_python_test.py`;
41
+ Constants2.pics = "/matter.js/packages/tools/build/pics.properties";
42
+ Constants2.chipPics = "/connectedhomeip/src/app/tests/suites/certification/ci-pics-values";
43
+ Constants2.buildTimeout = 6e5;
44
+ Constants2.defaultTimeout = 6e4;
45
+ Constants2.dockerBuildPath = "chip";
46
+ Constants2.dockerName = "matterjs-chip";
47
+ })(Constants || (Constants = {}));
48
+ const State = {
49
+ configured: false,
50
+ options: void 0,
51
+ docker: void 0,
52
+ yamlTests: Array(),
53
+ pythonTests: Array()
54
+ };
55
+ const Config = {
56
+ set options(options) {
57
+ State.options = options;
58
+ },
59
+ get runner() {
60
+ const runner = State.options?.runner;
61
+ if (runner === void 0) {
62
+ throw new Error("No test runner configured");
63
+ }
64
+ return runner;
65
+ },
66
+ async docker() {
67
+ if (State.docker) {
68
+ return State.docker;
69
+ }
70
+ const docker = new import_docker.Docker();
71
+ const { progress } = Config.runner;
72
+ await progress.run(
73
+ `Build ${progress.emphasize("CHIP image")}`,
74
+ () => docker.buildImage(Constants.dockerName, import_package.Package.tools.resolve(Constants.dockerBuildPath))
75
+ );
76
+ State.docker = docker;
77
+ return docker;
78
+ }
79
+ };
80
+ const Chip = {
81
+ /**
82
+ * Configure CHIP testing. Invoke prior to use of other methods.
83
+ */
84
+ set config(config) {
85
+ Config.options = config;
86
+ },
87
+ /**
88
+ * Initialize. This must run before defining tests to enable test definition via globs.
89
+ */
90
+ async initialize() {
91
+ await initialize();
92
+ },
93
+ /**
94
+ * Define YAML tests. This is a declarative CHIP test defined in a YAML file.
95
+ */
96
+ yaml(testee, includeGlob, excludeGlob) {
97
+ let tests = filterWithGlob(State.yamlTests, includeGlob);
98
+ if (excludeGlob !== void 0) {
99
+ tests = filterWithGlob(tests, excludeGlob, true);
100
+ }
101
+ if (tests.length === 0) {
102
+ throw new Error(`YAML test glob ${includeGlob} matched no tests`);
103
+ }
104
+ for (const file of tests) {
105
+ implementTest(testee, {
106
+ name: (0, import_path.parse)(file).base,
107
+ command: [Constants.pythonRunner, file],
108
+ // TODO - complete argument set
109
+ args: {
110
+ "--pics-file": Constants.pics,
111
+ "--discriminator": "1234",
112
+ "--passcode": "20202021"
113
+ }
114
+ });
115
+ }
116
+ },
117
+ /**
118
+ * Define a "python" test. This is a CHIP test implemented as a python script.
119
+ */
120
+ python(testee, tester, excludeGlob) {
121
+ if (typeof tester === "string") {
122
+ tester = {
123
+ name: tester
124
+ };
125
+ } else {
126
+ tester = { ...tester };
127
+ }
128
+ tester.args = {
129
+ "--commissioning-method": "on-network",
130
+ "--PICS": Constants.pics,
131
+ "--discriminator": "1234",
132
+ "--passcode": "20202021",
133
+ ...tester.args
134
+ };
135
+ let files = filterWithGlob(State.pythonTests, tester.name, false);
136
+ if (excludeGlob !== void 0) {
137
+ files = filterWithGlob(files, excludeGlob, true);
138
+ }
139
+ if (files.length === 0) {
140
+ throw new Error(`Python test glob ${tester.name} matched no tests`);
141
+ }
142
+ for (const file of files) {
143
+ const name = (0, import_path.parse)(file).name;
144
+ implementTest(testee, { ...tester, name, command: [file] });
145
+ }
146
+ }
147
+ };
148
+ let containerInitializerInstalled = false;
149
+ function implementTest(testee, tester) {
150
+ if (!containerInitializerInstalled) {
151
+ containerInitializerInstalled = true;
152
+ before(async function() {
153
+ this.timeout(Constants.buildTimeout);
154
+ await initialize();
155
+ });
156
+ }
157
+ it(tester.description ?? tester.name, async () => {
158
+ await testee.setup();
159
+ await testee.start();
160
+ try {
161
+ await invokeTester(tester);
162
+ } finally {
163
+ try {
164
+ await testee.stop();
165
+ } catch (e) {
166
+ console.warn("Error stopping test subject", e);
167
+ }
168
+ }
169
+ }).timeout(tester.timeout ?? Constants.defaultTimeout);
170
+ }
171
+ async function invokeTester(tester) {
172
+ const docker = await Config.docker();
173
+ const args = Array();
174
+ if (tester.command) {
175
+ args.push(...tester.command);
176
+ }
177
+ if (tester.args) {
178
+ args.push(...Object.entries(tester.args).flat());
179
+ }
180
+ const output = docker.run(Constants.dockerName, {
181
+ args,
182
+ env: tester.environment,
183
+ binds: {
184
+ [import_package.Package.workspace.path]: "/matter.js"
185
+ },
186
+ network: "host"
187
+ });
188
+ await translateTestOutput(Config.runner, output);
189
+ }
190
+ function deansify(text) {
191
+ return text.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g, "");
192
+ }
193
+ async function translateTestOutput(runner, output) {
194
+ let testCount = 0;
195
+ let capture = Array();
196
+ let partial;
197
+ function reportFailures() {
198
+ let testName;
199
+ let testLogs;
200
+ for (const line of capture) {
201
+ const subtestBoundary = deansify(line).match(/\*{5} (Test Step \d+|Test Failure) : (.*)/);
202
+ if (subtestBoundary) {
203
+ if (subtestBoundary[1] === "Test Failure") {
204
+ if (testName === void 0) {
205
+ continue;
206
+ }
207
+ runner.reporter.failTest(testName, {
208
+ message: subtestBoundary[2],
209
+ logs: testLogs?.join("\n")
210
+ });
211
+ } else {
212
+ testName = subtestBoundary[2];
213
+ testLogs = [];
214
+ }
215
+ } else if (testLogs) {
216
+ const appOut = line.match(/^.* APP {2}OUT {2}: (.*)$/);
217
+ if (appOut) {
218
+ testLogs.push(appOut[1]);
219
+ continue;
220
+ }
221
+ const testOut = line.match(/(\d{4}-\d\d-\d\d) .*(\d\d:\d\d:\d\d\.\d\d\d) - TEST OUT {2}: (.*)$/);
222
+ if (testOut) {
223
+ if (deansify(testOut[3]).match(/^(?:✗ \d+.\d+ms$|\s+\d+\. Running )/)) {
224
+ continue;
225
+ }
226
+ const date = testOut[1];
227
+ const time = testOut[2];
228
+ const message = testOut[3].replace(" ", "").replace(/\t/g, " ");
229
+ testLogs.push(`CHIP ${date} ${time} ${message}`);
230
+ continue;
231
+ }
232
+ testLogs.push(line);
233
+ }
234
+ }
235
+ }
236
+ function processLine(line) {
237
+ MockLogger.injectExternalMessage("CHIP", line);
238
+ line = line.trim();
239
+ const plain = deansify(line);
240
+ const testBoundary = plain.match(
241
+ /^\d{4}-\d\d-\d\d \d\d:\d\d:\d\d\.\d{3} [A-Z ]{7} ([a-zA-Z0-9_]+)\s+- (Starting test|(?:Completed|FAILED) in \d+\.\d+ seconds)$/
242
+ );
243
+ if (testBoundary) {
244
+ if (testBoundary[2].startsWith("Start")) {
245
+ testCount++;
246
+ capture = [];
247
+ runner.reporter.beginRun(testBoundary[1], void 0, false);
248
+ } else if (testBoundary[2].startsWith("Completed")) {
249
+ runner.reporter.endRun();
250
+ } else {
251
+ reportFailures();
252
+ runner.reporter.endRun();
253
+ }
254
+ }
255
+ capture.push(line);
256
+ }
257
+ for await (const chunk of output) {
258
+ const lines = chunk.split("\n");
259
+ if (partial) {
260
+ lines[0] = partial + lines[0];
261
+ }
262
+ partial = lines.pop();
263
+ for (const line of lines) {
264
+ processLine(line);
265
+ }
266
+ }
267
+ if (partial !== void 0) {
268
+ processLine(partial);
269
+ }
270
+ }
271
+ async function initialize() {
272
+ if (State.configured) {
273
+ return;
274
+ }
275
+ await Config.docker();
276
+ await configurePics();
277
+ await configureYaml();
278
+ await configurePython();
279
+ State.configured = true;
280
+ }
281
+ async function configurePics() {
282
+ const docker = await Config.docker();
283
+ const ciPics = await docker.readFileFromImage(Constants.dockerName, Constants.chipPics);
284
+ const pics = new import_pics_file.PicsFile(ciPics, true);
285
+ const overrides = new import_pics_file.PicsFile(import_package.Package.tools.resolve("src/testing/chip/pics.properties"));
286
+ pics.patch(overrides);
287
+ pics.save(import_package.Package.tools.resolve("build/pics.properties"));
288
+ }
289
+ async function configureYaml() {
290
+ const docker = await Config.docker();
291
+ const tests = await docker.resolveGlobFromImage(Constants.dockerName, `${Constants.yamlTests}/Test_*.yaml`);
292
+ State.yamlTests.push(...tests);
293
+ }
294
+ async function configurePython() {
295
+ const docker = await Config.docker();
296
+ const tests = (await docker.resolveGlobFromImage(Constants.dockerName, `${Constants.pythonTests}/*.py`)).filter(
297
+ (name) => name.match(/(?:TC_|Test)[^/]\.py$/)
298
+ );
299
+ State.pythonTests.push(...tests);
300
+ }
301
+ function filterWithGlob(list, glob, invert = false) {
302
+ const globPattern = glob.replace(/\*/g, "[^\\/]+");
303
+ const pattern = new RegExp(`^.*/(?:Test_TC_|TC|Test)${globPattern}\\.(?:py|yaml)$`);
304
+ return list.filter((s) => !!s.match(pattern) === !invert);
305
+ }
306
+ //# sourceMappingURL=chip.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/testing/chip.ts"],
4
+ "mappings": "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",
5
+ "names": ["Constants"]
6
+ }
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2024 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import "../util/node-shims.js";
7
+ import "./global-definitions.js";
8
+ export declare function main(argv?: string[]): Promise<void>;
9
+ //# sourceMappingURL=cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../src/testing/cli.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,uBAAuB,CAAC;AAC/B,OAAO,yBAAyB,CAAC;AAiBjC,wBAAsB,IAAI,CAAC,IAAI,WAAe,iBAiG7C"}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var cli_exports = {};
30
+ __export(cli_exports, {
31
+ main: () => main
32
+ });
33
+ module.exports = __toCommonJS(cli_exports);
34
+ var import_node_shims = require("../util/node-shims.js");
35
+ var import_global_definitions = require("./global-definitions.js");
36
+ var import_yargs = __toESM(require("yargs"), 1);
37
+ var import_helpers = require("yargs/helpers");
38
+ var import_builder = require("../building/builder.js");
39
+ var import_graph = require("../building/graph.js");
40
+ var import_project = require("../building/project.js");
41
+ var import_runner = require("./runner.js");
42
+ /**
43
+ * @license
44
+ * Copyright 2022-2024 Matter.js Authors
45
+ * SPDX-License-Identifier: Apache-2.0
46
+ */
47
+ var TestType = /* @__PURE__ */ ((TestType2) => {
48
+ TestType2["esm"] = "esm";
49
+ TestType2["cjs"] = "cjs";
50
+ TestType2["web"] = "web";
51
+ return TestType2;
52
+ })(TestType || {});
53
+ Error.stackTraceLimit = 50;
54
+ async function main(argv = process.argv) {
55
+ const testTypes = /* @__PURE__ */ new Set();
56
+ let manual = false;
57
+ const args = await (0, import_yargs.default)((0, import_helpers.hideBin)(argv)).usage("Runs tests in packages adhering to matter.js standards.").option("prefix", {
58
+ alias: "p",
59
+ default: ".",
60
+ type: "string",
61
+ describe: "specify directory of package to test"
62
+ }).option("web", {
63
+ alias: "w",
64
+ default: false,
65
+ type: "boolean",
66
+ describe: "enable web tests in default test mode"
67
+ }).option("spec", {
68
+ type: "array",
69
+ string: true,
70
+ describe: "One or more paths of tests to run",
71
+ default: "./test/**/*Test.ts"
72
+ }).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" }).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("manual", "start test server and print URL for manual testing", () => {
73
+ testTypes.add("web" /* web */);
74
+ manual = true;
75
+ }).strict().argv;
76
+ let packageLocation = args.prefix;
77
+ if (packageLocation === "." && args.spec) {
78
+ const firstSpec = Array.isArray(args.spec) ? args.spec[0] : args.spec;
79
+ packageLocation = firstSpec;
80
+ }
81
+ const project = new import_project.Project(packageLocation);
82
+ process.chdir(project.pkg.path);
83
+ if (!testTypes.size) {
84
+ if (project.pkg.supportsEsm) {
85
+ testTypes.add("esm" /* esm */);
86
+ }
87
+ if (project.pkg.supportsCjs) {
88
+ testTypes.add("cjs" /* cjs */);
89
+ }
90
+ if (args.web) {
91
+ testTypes.add("web" /* web */);
92
+ }
93
+ }
94
+ const builder = new import_builder.Builder();
95
+ const dependencies = await import_graph.Graph.forProject(packageLocation);
96
+ if (dependencies) {
97
+ await dependencies.build(builder, false);
98
+ } else {
99
+ await builder.build(project);
100
+ }
101
+ const progress = project.pkg.start("Testing");
102
+ const runner = new import_runner.TestRunner(project.pkg, progress, args);
103
+ if (testTypes.has("esm" /* esm */)) {
104
+ await runner.runNode("esm");
105
+ }
106
+ if (testTypes.has("cjs" /* cjs */)) {
107
+ await runner.runNode("cjs");
108
+ }
109
+ if (testTypes.has("web" /* web */)) {
110
+ await runner.runWeb(manual);
111
+ }
112
+ progress.shutdown();
113
+ if (args.forceExit) {
114
+ process.exit(0);
115
+ }
116
+ }
117
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/testing/cli.ts"],
4
+ "mappings": "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",
5
+ "names": ["TestType", "yargs"]
6
+ }
@@ -0,0 +1,19 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2024 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export interface FailureDetail {
7
+ message: string;
8
+ stack?: string;
9
+ diff?: string;
10
+ logs?: string;
11
+ cause?: FailureDetail;
12
+ errors?: FailureDetail[];
13
+ }
14
+ export declare function FailureDetail(error: any, logs?: string[]): FailureDetail;
15
+ export declare namespace FailureDetail {
16
+ function dump(failure: FailureDetail, prefix?: string): void;
17
+ let diff: undefined | ((actual: string, expected: string) => string);
18
+ }
19
+ //# sourceMappingURL=failure-detail.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"failure-detail.d.ts","sourceRoot":"","sources":["../../../src/testing/failure-detail.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC;CAC5B;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,iBAgCxD;AAED,yBAAiB,aAAa,CAAC;IAC3B,SAAgB,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,GAAE,MAAW,QA2B/D;IAEM,IAAI,IAAI,EAAE,SAAS,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;CAC/E"}