@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.
- package/LICENSE +201 -0
- package/README.md +100 -0
- package/bin/build.js +10 -0
- package/bin/prepare-chip.js +5 -0
- package/bin/run.js +7 -0
- package/bin/test.js +7 -0
- package/bin/version.js +7 -0
- package/chip/Dockerfile +23 -0
- package/dist/cjs/building/builder.d.ts +35 -0
- package/dist/cjs/building/builder.d.ts.map +1 -0
- package/dist/cjs/building/builder.js +210 -0
- package/dist/cjs/building/builder.js.map +6 -0
- package/dist/cjs/building/cli.d.ts +7 -0
- package/dist/cjs/building/cli.d.ts.map +1 -0
- package/dist/cjs/building/cli.js +100 -0
- package/dist/cjs/building/cli.js.map +6 -0
- package/dist/cjs/building/error.d.ts +16 -0
- package/dist/cjs/building/error.d.ts.map +1 -0
- package/dist/cjs/building/error.js +50 -0
- package/dist/cjs/building/error.js.map +6 -0
- package/dist/cjs/building/graph.d.ts +37 -0
- package/dist/cjs/building/graph.d.ts.map +1 -0
- package/dist/cjs/building/graph.js +222 -0
- package/dist/cjs/building/graph.js.map +6 -0
- package/dist/cjs/building/project.d.ts +56 -0
- package/dist/cjs/building/project.d.ts.map +1 -0
- package/dist/cjs/building/project.js +239 -0
- package/dist/cjs/building/project.js.map +6 -0
- package/dist/cjs/building/tsconfig.d.ts +16 -0
- package/dist/cjs/building/tsconfig.d.ts.map +1 -0
- package/dist/cjs/building/tsconfig.js +70 -0
- package/dist/cjs/building/tsconfig.js.map +6 -0
- package/dist/cjs/building/typescript/context.d.ts +16 -0
- package/dist/cjs/building/typescript/context.d.ts.map +1 -0
- package/dist/cjs/building/typescript/context.js +82 -0
- package/dist/cjs/building/typescript/context.js.map +6 -0
- package/dist/cjs/building/typescript/incremental-compiler.d.ts +10 -0
- package/dist/cjs/building/typescript/incremental-compiler.d.ts.map +1 -0
- package/dist/cjs/building/typescript/incremental-compiler.js +119 -0
- package/dist/cjs/building/typescript/incremental-compiler.js.map +6 -0
- package/dist/cjs/building/typescript/language-service.d.ts +13 -0
- package/dist/cjs/building/typescript/language-service.d.ts.map +1 -0
- package/dist/cjs/building/typescript/language-service.js +109 -0
- package/dist/cjs/building/typescript/language-service.js.map +6 -0
- package/dist/cjs/building/typescript/solution-builder.d.ts +10 -0
- package/dist/cjs/building/typescript/solution-builder.d.ts.map +1 -0
- package/dist/cjs/building/typescript/solution-builder.js +72 -0
- package/dist/cjs/building/typescript/solution-builder.js.map +6 -0
- package/dist/cjs/building/typescript.d.ts +13 -0
- package/dist/cjs/building/typescript.d.ts.map +1 -0
- package/dist/cjs/building/typescript.js +31 -0
- package/dist/cjs/building/typescript.js.map +6 -0
- package/dist/cjs/index.d.ts +15 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +32 -0
- package/dist/cjs/index.js.map +6 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/running/cli.d.ts +19 -0
- package/dist/cjs/running/cli.d.ts.map +1 -0
- package/dist/cjs/running/cli.js +82 -0
- package/dist/cjs/running/cli.js.map +6 -0
- package/dist/cjs/running/execute.d.ts +8 -0
- package/dist/cjs/running/execute.d.ts.map +1 -0
- package/dist/cjs/running/execute.js +82 -0
- package/dist/cjs/running/execute.js.map +6 -0
- package/dist/cjs/testing/chip/pics-file.d.ts +20 -0
- package/dist/cjs/testing/chip/pics-file.d.ts.map +1 -0
- package/dist/cjs/testing/chip/pics-file.js +79 -0
- package/dist/cjs/testing/chip/pics-file.js.map +6 -0
- package/dist/cjs/testing/chip.d.ts +60 -0
- package/dist/cjs/testing/chip.d.ts.map +1 -0
- package/dist/cjs/testing/chip.js +306 -0
- package/dist/cjs/testing/chip.js.map +6 -0
- package/dist/cjs/testing/cli.d.ts +9 -0
- package/dist/cjs/testing/cli.d.ts.map +1 -0
- package/dist/cjs/testing/cli.js +117 -0
- package/dist/cjs/testing/cli.js.map +6 -0
- package/dist/cjs/testing/failure-detail.d.ts +19 -0
- package/dist/cjs/testing/failure-detail.d.ts.map +1 -0
- package/dist/cjs/testing/failure-detail.js +143 -0
- package/dist/cjs/testing/failure-detail.js.map +6 -0
- package/dist/cjs/testing/files.d.ts +8 -0
- package/dist/cjs/testing/files.d.ts.map +1 -0
- package/dist/cjs/testing/files.js +52 -0
- package/dist/cjs/testing/files.js.map +6 -0
- package/dist/cjs/testing/global-declarations.d.ts +38 -0
- package/dist/cjs/testing/global-declarations.d.ts.map +1 -0
- package/dist/cjs/testing/global-declarations.js +8 -0
- package/dist/cjs/testing/global-declarations.js.map +6 -0
- package/dist/cjs/testing/global-definitions.d.ts +7 -0
- package/dist/cjs/testing/global-definitions.d.ts.map +1 -0
- package/dist/cjs/testing/global-definitions.js +50 -0
- package/dist/cjs/testing/global-definitions.js.map +6 -0
- package/dist/cjs/testing/mocha.d.ts +36 -0
- package/dist/cjs/testing/mocha.d.ts.map +1 -0
- package/dist/cjs/testing/mocha.js +155 -0
- package/dist/cjs/testing/mocha.js.map +6 -0
- package/dist/cjs/testing/mocharc.cjs +68 -0
- package/dist/cjs/testing/mocharc.d.cts +7 -0
- package/dist/cjs/testing/mocks/crypto.d.ts +7 -0
- package/dist/cjs/testing/mocks/crypto.d.ts.map +1 -0
- package/dist/cjs/testing/mocks/crypto.js +79 -0
- package/dist/cjs/testing/mocks/crypto.js.map +6 -0
- package/dist/cjs/testing/mocks/environment.d.ts +7 -0
- package/dist/cjs/testing/mocks/environment.d.ts.map +1 -0
- package/dist/cjs/testing/mocks/environment.js +7 -0
- package/dist/cjs/testing/mocks/environment.js.map +6 -0
- package/dist/cjs/testing/mocks/index.d.ts +10 -0
- package/dist/cjs/testing/mocks/index.d.ts.map +1 -0
- package/dist/cjs/testing/mocks/index.js +27 -0
- package/dist/cjs/testing/mocks/index.js.map +6 -0
- package/dist/cjs/testing/mocks/logging.d.ts +28 -0
- package/dist/cjs/testing/mocks/logging.d.ts.map +1 -0
- package/dist/cjs/testing/mocks/logging.js +93 -0
- package/dist/cjs/testing/mocks/logging.js.map +6 -0
- package/dist/cjs/testing/mocks/time.d.ts +88 -0
- package/dist/cjs/testing/mocks/time.d.ts.map +1 -0
- package/dist/cjs/testing/mocks/time.js +250 -0
- package/dist/cjs/testing/mocks/time.js.map +6 -0
- package/dist/cjs/testing/node.d.ts +16 -0
- package/dist/cjs/testing/node.d.ts.map +1 -0
- package/dist/cjs/testing/node.js +108 -0
- package/dist/cjs/testing/node.js.map +6 -0
- package/dist/cjs/testing/options.d.ts +19 -0
- package/dist/cjs/testing/options.d.ts.map +1 -0
- package/dist/cjs/testing/options.js +62 -0
- package/dist/cjs/testing/options.js.map +6 -0
- package/dist/cjs/testing/reporter.d.ts +50 -0
- package/dist/cjs/testing/reporter.d.ts.map +1 -0
- package/dist/cjs/testing/reporter.js +137 -0
- package/dist/cjs/testing/reporter.js.map +6 -0
- package/dist/cjs/testing/runner.d.ts +22 -0
- package/dist/cjs/testing/runner.d.ts.map +1 -0
- package/dist/cjs/testing/runner.js +116 -0
- package/dist/cjs/testing/runner.js.map +6 -0
- package/dist/cjs/testing/web.d.ts +8 -0
- package/dist/cjs/testing/web.d.ts.map +1 -0
- package/dist/cjs/testing/web.js +165 -0
- package/dist/cjs/testing/web.js.map +6 -0
- package/dist/cjs/util/bootstrap.mjs +105 -0
- package/dist/cjs/util/docker.d.ts +27 -0
- package/dist/cjs/util/docker.d.ts.map +1 -0
- package/dist/cjs/util/docker.js +163 -0
- package/dist/cjs/util/docker.js.map +6 -0
- package/dist/cjs/util/errors.d.ts +8 -0
- package/dist/cjs/util/errors.d.ts.map +1 -0
- package/dist/cjs/util/errors.js +55 -0
- package/dist/cjs/util/errors.js.map +6 -0
- package/dist/cjs/util/index.d.ts +8 -0
- package/dist/cjs/util/index.d.ts.map +1 -0
- package/dist/cjs/util/index.js +25 -0
- package/dist/cjs/util/index.js.map +6 -0
- package/dist/cjs/util/node-shims.d.ts +7 -0
- package/dist/cjs/util/node-shims.d.ts.map +1 -0
- package/dist/cjs/util/node-shims.js +12 -0
- package/dist/cjs/util/node-shims.js.map +6 -0
- package/dist/cjs/util/package.d.ts +61 -0
- package/dist/cjs/util/package.d.ts.map +1 -0
- package/dist/cjs/util/package.js +324 -0
- package/dist/cjs/util/package.js.map +6 -0
- package/dist/cjs/util/progress.d.ts +31 -0
- package/dist/cjs/util/progress.d.ts.map +1 -0
- package/dist/cjs/util/progress.js +232 -0
- package/dist/cjs/util/progress.js.map +6 -0
- package/dist/cjs/util/tools-path.cjs +13 -0
- package/dist/cjs/util/tools-path.d.cts +7 -0
- package/dist/cjs/util/trace-unhandled.d.ts +9 -0
- package/dist/cjs/util/trace-unhandled.d.ts.map +1 -0
- package/dist/cjs/util/trace-unhandled.js +48 -0
- package/dist/cjs/util/trace-unhandled.js.map +6 -0
- package/dist/cjs/util/wtf.d.ts +10 -0
- package/dist/cjs/util/wtf.d.ts.map +1 -0
- package/dist/cjs/util/wtf.js +53 -0
- package/dist/cjs/util/wtf.js.map +6 -0
- package/dist/cjs/versioning/cli.d.ts +7 -0
- package/dist/cjs/versioning/cli.d.ts.map +1 -0
- package/dist/cjs/versioning/cli.js +62 -0
- package/dist/cjs/versioning/cli.js.map +6 -0
- package/dist/cjs/versioning/versioner.d.ts +18 -0
- package/dist/cjs/versioning/versioner.d.ts.map +1 -0
- package/dist/cjs/versioning/versioner.js +145 -0
- package/dist/cjs/versioning/versioner.js.map +6 -0
- package/dist/esm/building/builder.d.ts +35 -0
- package/dist/esm/building/builder.d.ts.map +1 -0
- package/dist/esm/building/builder.js +180 -0
- package/dist/esm/building/builder.js.map +6 -0
- package/dist/esm/building/cli.d.ts +7 -0
- package/dist/esm/building/cli.d.ts.map +1 -0
- package/dist/esm/building/cli.js +70 -0
- package/dist/esm/building/cli.js.map +6 -0
- package/dist/esm/building/error.d.ts +16 -0
- package/dist/esm/building/error.d.ts.map +1 -0
- package/dist/esm/building/error.js +30 -0
- package/dist/esm/building/error.js.map +6 -0
- package/dist/esm/building/graph.d.ts +37 -0
- package/dist/esm/building/graph.d.ts.map +1 -0
- package/dist/esm/building/graph.js +192 -0
- package/dist/esm/building/graph.js.map +6 -0
- package/dist/esm/building/project.d.ts +56 -0
- package/dist/esm/building/project.d.ts.map +1 -0
- package/dist/esm/building/project.js +219 -0
- package/dist/esm/building/project.js.map +6 -0
- package/dist/esm/building/tsconfig.d.ts +16 -0
- package/dist/esm/building/tsconfig.d.ts.map +1 -0
- package/dist/esm/building/tsconfig.js +50 -0
- package/dist/esm/building/tsconfig.js.map +6 -0
- package/dist/esm/building/typescript/context.d.ts +16 -0
- package/dist/esm/building/typescript/context.d.ts.map +1 -0
- package/dist/esm/building/typescript/context.js +68 -0
- package/dist/esm/building/typescript/context.js.map +6 -0
- package/dist/esm/building/typescript/incremental-compiler.d.ts +10 -0
- package/dist/esm/building/typescript/incremental-compiler.d.ts.map +1 -0
- package/dist/esm/building/typescript/incremental-compiler.js +99 -0
- package/dist/esm/building/typescript/incremental-compiler.js.map +6 -0
- package/dist/esm/building/typescript/language-service.d.ts +13 -0
- package/dist/esm/building/typescript/language-service.d.ts.map +1 -0
- package/dist/esm/building/typescript/language-service.js +99 -0
- package/dist/esm/building/typescript/language-service.js.map +6 -0
- package/dist/esm/building/typescript/solution-builder.d.ts +10 -0
- package/dist/esm/building/typescript/solution-builder.d.ts.map +1 -0
- package/dist/esm/building/typescript/solution-builder.js +52 -0
- package/dist/esm/building/typescript/solution-builder.js.map +6 -0
- package/dist/esm/building/typescript.d.ts +13 -0
- package/dist/esm/building/typescript.d.ts.map +1 -0
- package/dist/esm/building/typescript.js +11 -0
- package/dist/esm/building/typescript.js.map +6 -0
- package/dist/esm/index.d.ts +15 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +15 -0
- package/dist/esm/index.js.map +6 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/running/cli.d.ts +19 -0
- package/dist/esm/running/cli.d.ts.map +1 -0
- package/dist/esm/running/cli.js +62 -0
- package/dist/esm/running/cli.js.map +6 -0
- package/dist/esm/running/execute.d.ts +8 -0
- package/dist/esm/running/execute.d.ts.map +1 -0
- package/dist/esm/running/execute.js +52 -0
- package/dist/esm/running/execute.js.map +6 -0
- package/dist/esm/testing/chip/pics-file.d.ts +20 -0
- package/dist/esm/testing/chip/pics-file.d.ts.map +1 -0
- package/dist/esm/testing/chip/pics-file.js +59 -0
- package/dist/esm/testing/chip/pics-file.js.map +6 -0
- package/dist/esm/testing/chip.d.ts +60 -0
- package/dist/esm/testing/chip.d.ts.map +1 -0
- package/dist/esm/testing/chip.js +286 -0
- package/dist/esm/testing/chip.js.map +6 -0
- package/dist/esm/testing/cli.d.ts +9 -0
- package/dist/esm/testing/cli.d.ts.map +1 -0
- package/dist/esm/testing/cli.js +87 -0
- package/dist/esm/testing/cli.js.map +6 -0
- package/dist/esm/testing/failure-detail.d.ts +19 -0
- package/dist/esm/testing/failure-detail.d.ts.map +1 -0
- package/dist/esm/testing/failure-detail.js +113 -0
- package/dist/esm/testing/failure-detail.js.map +6 -0
- package/dist/esm/testing/files.d.ts +8 -0
- package/dist/esm/testing/files.d.ts.map +1 -0
- package/dist/esm/testing/files.js +32 -0
- package/dist/esm/testing/files.js.map +6 -0
- package/dist/esm/testing/global-declarations.d.ts +38 -0
- package/dist/esm/testing/global-declarations.d.ts.map +1 -0
- package/dist/esm/testing/global-declarations.js +7 -0
- package/dist/esm/testing/global-declarations.js.map +6 -0
- package/dist/esm/testing/global-definitions.d.ts +7 -0
- package/dist/esm/testing/global-definitions.d.ts.map +1 -0
- package/dist/esm/testing/global-definitions.js +27 -0
- package/dist/esm/testing/global-definitions.js.map +6 -0
- package/dist/esm/testing/mocha.d.ts +36 -0
- package/dist/esm/testing/mocha.d.ts.map +1 -0
- package/dist/esm/testing/mocha.js +135 -0
- package/dist/esm/testing/mocha.js.map +6 -0
- package/dist/esm/testing/mocharc.cjs +68 -0
- package/dist/esm/testing/mocharc.d.cts +7 -0
- package/dist/esm/testing/mocks/crypto.d.ts +7 -0
- package/dist/esm/testing/mocks/crypto.d.ts.map +1 -0
- package/dist/esm/testing/mocks/crypto.js +59 -0
- package/dist/esm/testing/mocks/crypto.js.map +6 -0
- package/dist/esm/testing/mocks/environment.d.ts +7 -0
- package/dist/esm/testing/mocks/environment.d.ts.map +1 -0
- package/dist/esm/testing/mocks/environment.js +6 -0
- package/dist/esm/testing/mocks/environment.js.map +6 -0
- package/dist/esm/testing/mocks/index.d.ts +10 -0
- package/dist/esm/testing/mocks/index.d.ts.map +1 -0
- package/dist/esm/testing/mocks/index.js +10 -0
- package/dist/esm/testing/mocks/index.js.map +6 -0
- package/dist/esm/testing/mocks/logging.d.ts +28 -0
- package/dist/esm/testing/mocks/logging.d.ts.map +1 -0
- package/dist/esm/testing/mocks/logging.js +63 -0
- package/dist/esm/testing/mocks/logging.js.map +6 -0
- package/dist/esm/testing/mocks/time.d.ts +88 -0
- package/dist/esm/testing/mocks/time.d.ts.map +1 -0
- package/dist/esm/testing/mocks/time.js +230 -0
- package/dist/esm/testing/mocks/time.js.map +6 -0
- package/dist/esm/testing/node.d.ts +16 -0
- package/dist/esm/testing/node.d.ts.map +1 -0
- package/dist/esm/testing/node.js +78 -0
- package/dist/esm/testing/node.js.map +6 -0
- package/dist/esm/testing/options.d.ts +19 -0
- package/dist/esm/testing/options.d.ts.map +1 -0
- package/dist/esm/testing/options.js +42 -0
- package/dist/esm/testing/options.js.map +6 -0
- package/dist/esm/testing/reporter.d.ts +50 -0
- package/dist/esm/testing/reporter.d.ts.map +1 -0
- package/dist/esm/testing/reporter.js +107 -0
- package/dist/esm/testing/reporter.js.map +6 -0
- package/dist/esm/testing/runner.d.ts +22 -0
- package/dist/esm/testing/runner.d.ts.map +1 -0
- package/dist/esm/testing/runner.js +86 -0
- package/dist/esm/testing/runner.js.map +6 -0
- package/dist/esm/testing/web.d.ts +8 -0
- package/dist/esm/testing/web.d.ts.map +1 -0
- package/dist/esm/testing/web.js +135 -0
- package/dist/esm/testing/web.js.map +6 -0
- package/dist/esm/util/bootstrap.mjs +105 -0
- package/dist/esm/util/docker.d.ts +27 -0
- package/dist/esm/util/docker.d.ts.map +1 -0
- package/dist/esm/util/docker.js +133 -0
- package/dist/esm/util/docker.js.map +6 -0
- package/dist/esm/util/errors.d.ts +8 -0
- package/dist/esm/util/errors.d.ts.map +1 -0
- package/dist/esm/util/errors.js +35 -0
- package/dist/esm/util/errors.js.map +6 -0
- package/dist/esm/util/index.d.ts +8 -0
- package/dist/esm/util/index.d.ts.map +1 -0
- package/dist/esm/util/index.js +8 -0
- package/dist/esm/util/index.js.map +6 -0
- package/dist/esm/util/node-shims.d.ts +7 -0
- package/dist/esm/util/node-shims.d.ts.map +1 -0
- package/dist/esm/util/node-shims.js +11 -0
- package/dist/esm/util/node-shims.js.map +6 -0
- package/dist/esm/util/package.d.ts +61 -0
- package/dist/esm/util/package.d.ts.map +1 -0
- package/dist/esm/util/package.js +304 -0
- package/dist/esm/util/package.js.map +6 -0
- package/dist/esm/util/progress.d.ts +31 -0
- package/dist/esm/util/progress.d.ts.map +1 -0
- package/dist/esm/util/progress.js +202 -0
- package/dist/esm/util/progress.js.map +6 -0
- package/dist/esm/util/tools-path.cjs +13 -0
- package/dist/esm/util/tools-path.d.cts +7 -0
- package/dist/esm/util/trace-unhandled.d.ts +9 -0
- package/dist/esm/util/trace-unhandled.d.ts.map +1 -0
- package/dist/esm/util/trace-unhandled.js +18 -0
- package/dist/esm/util/trace-unhandled.js.map +6 -0
- package/dist/esm/util/wtf.d.ts +10 -0
- package/dist/esm/util/wtf.d.ts.map +1 -0
- package/dist/esm/util/wtf.js +23 -0
- package/dist/esm/util/wtf.js.map +6 -0
- package/dist/esm/versioning/cli.d.ts +7 -0
- package/dist/esm/versioning/cli.d.ts.map +1 -0
- package/dist/esm/versioning/cli.js +32 -0
- package/dist/esm/versioning/cli.js.map +6 -0
- package/dist/esm/versioning/versioner.d.ts +18 -0
- package/dist/esm/versioning/versioner.d.ts.map +1 -0
- package/dist/esm/versioning/versioner.js +115 -0
- package/dist/esm/versioning/versioner.js.map +6 -0
- package/package.json +82 -0
- package/src/building/builder.ts +216 -0
- package/src/building/cli.ts +89 -0
- package/src/building/error.ts +29 -0
- package/src/building/graph.ts +251 -0
- package/src/building/project.ts +313 -0
- package/src/building/tsconfig.ts +69 -0
- package/src/building/typescript/context.ts +85 -0
- package/src/building/typescript/incremental-compiler.ts +126 -0
- package/src/building/typescript/language-service.ts +132 -0
- package/src/building/typescript/solution-builder.ts +67 -0
- package/src/building/typescript.ts +15 -0
- package/src/index.ts +15 -0
- package/src/running/cli.ts +95 -0
- package/src/running/execute.ts +63 -0
- package/src/testing/chip/pics-file.ts +71 -0
- package/src/testing/chip/pics.properties +53 -0
- package/src/testing/chip.ts +420 -0
- package/src/testing/cli.ts +122 -0
- package/src/testing/failure-detail.ts +126 -0
- package/src/testing/files.ts +35 -0
- package/src/testing/global-declarations.ts +50 -0
- package/src/testing/global-definitions.ts +35 -0
- package/src/testing/index.html +16 -0
- package/src/testing/mocha.ts +162 -0
- package/src/testing/mocharc.cjs +68 -0
- package/src/testing/mocharc.d.cts +7 -0
- package/src/testing/mocks/crypto.ts +70 -0
- package/src/testing/mocks/environment.ts +7 -0
- package/src/testing/mocks/index.ts +10 -0
- package/src/testing/mocks/logging.ts +99 -0
- package/src/testing/mocks/time.ts +294 -0
- package/src/testing/node.ts +114 -0
- package/src/testing/options.ts +58 -0
- package/src/testing/reporter.ts +144 -0
- package/src/testing/runner.ts +98 -0
- package/src/testing/web.ts +174 -0
- package/src/tsconfig.json +14 -0
- package/src/util/bootstrap.mjs +105 -0
- package/src/util/docker.ts +176 -0
- package/src/util/errors.ts +33 -0
- package/src/util/index.ts +8 -0
- package/src/util/node-shims.ts +13 -0
- package/src/util/package.ts +369 -0
- package/src/util/progress.ts +252 -0
- package/src/util/tools-path.cjs +13 -0
- package/src/util/tools-path.d.cts +7 -0
- package/src/util/trace-unhandled.ts +17 -0
- package/src/util/wtf.ts +25 -0
- package/src/versioning/cli.ts +43 -0
- package/src/versioning/versioner.ts +139 -0
- package/test/testing/mocks/MockTimeTest.ts +113 -0
- package/test/tsconfig.json +15 -0
- package/tsc/tsconfig.app.json +7 -0
- package/tsc/tsconfig.base.json +41 -0
- package/tsc/tsconfig.lib.json +12 -0
- package/tsc/tsconfig.test.json +7 -0
- 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": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,kBAAsB;AACtB,oBAAuB;AACvB,qBAAwB;AACxB,uBAAyB;AATzB;AAAA;AAAA;AAAA;AAAA;AAeA,IAAU;AAAA,CAAV,CAAUA,eAAV;AACW,EAAMA,WAAA,OAAO;AACb,EAAMA,WAAA,WAAW,GAAGA,WAAA,IAAI;AACxB,EAAMA,WAAA,YAAY,GAAGA,WAAA,IAAI;AACzB,EAAMA,WAAA,cAAc,GAAGA,WAAA,IAAI;AAC3B,EAAMA,WAAA,SAAS,CAAC,gBAAgB,MAAM,WAAW,IAAI;AACrD,EAAMA,WAAA,eAAe,GAAGA,WAAA,IAAI;AAE5B,EAAMA,WAAA,OAAO;AACb,EAAMA,WAAA,WAAW;AACjB,EAAMA,WAAA,eAAe;AACrB,EAAMA,WAAA,iBAAiB;AACvB,EAAMA,WAAA,kBAAkB;AACxB,EAAMA,WAAA,aAAa;AAAA,GAbpB;AAmBV,MAAM,QAAQ;AAAA,EACV,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,WAAW,MAAc;AAAA,EACzB,aAAa,MAAc;AAC/B;AAKA,MAAM,SAAS;AAAA,EACX,IAAI,QAAQ,SAAuB;AAC/B,UAAM,UAAU;AAAA,EACpB;AAAA,EAEA,IAAI,SAAS;AACT,UAAM,SAAS,MAAM,SAAS;AAE9B,QAAI,WAAW,QAAW;AACtB,YAAM,IAAI,MAAM,2BAA2B;AAAA,IAC/C;AAEA,WAAO;AAAA,EACX;AAAA,EAEA,MAAM,SAAS;AACX,QAAI,MAAM,QAAQ;AACd,aAAO,MAAM;AAAA,IACjB;AAEA,UAAM,SAAS,IAAI,qBAAO;AAE1B,UAAM,EAAE,SAAS,IAAI,OAAO;AAE5B,UAAM,SAAS;AAAA,MAAI,SAAS,SAAS,UAAU,YAAY,CAAC;AAAA,MAAI,MAC5D,OAAO,WAAW,UAAU,YAAY,uBAAQ,MAAM,QAAQ,UAAU,eAAe,CAAC;AAAA,IAC5F;AAEA,UAAM,SAAS;AAEf,WAAO;AAAA,EACX;AACJ;AAKO,MAAM,OAAO;AAAA;AAAA;AAAA;AAAA,EAIhB,IAAI,OAAO,QAAsB;AAC7B,WAAO,UAAU;AAAA,EACrB;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,aAAa;AACf,UAAM,WAAW;AAAA,EACrB;AAAA;AAAA;AAAA;AAAA,EAKA,KAAK,QAAqB,aAAqB,aAAsB;AACjE,QAAI,QAAQ,eAAe,MAAM,WAAW,WAAW;AACvD,QAAI,gBAAgB,QAAW;AAC3B,cAAQ,eAAe,OAAO,aAAa,IAAI;AAAA,IACnD;AAEA,QAAI,MAAM,WAAW,GAAG;AACpB,YAAM,IAAI,MAAM,kBAAkB,WAAW,mBAAmB;AAAA,IACpE;AAEA,eAAW,QAAQ,OAAO;AACtB,oBAAc,QAAQ;AAAA,QAClB,UAAM,mBAAM,IAAI,EAAE;AAAA,QAElB,SAAS,CAAC,UAAU,cAAc,IAAI;AAAA;AAAA,QAGtC,MAAM;AAAA,UACF,eAAe,UAAU;AAAA,UACzB,mBAAmB;AAAA,UACnB,cAAc;AAAA,QAClB;AAAA,MACJ,CAAC;AAAA,IACL;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,QAAqB,QAA4B,aAAsB;AAC1E,QAAI,OAAO,WAAW,UAAU;AAC5B,eAAS;AAAA,QACL,MAAM;AAAA,MACV;AAAA,IACJ,OAAO;AACH,eAAS,EAAE,GAAG,OAAO;AAAA,IACzB;AAGA,WAAO,OAAO;AAAA,MACV,0BAA0B;AAAA,MAC1B,UAAU,UAAU;AAAA,MACpB,mBAAmB;AAAA,MACnB,cAAc;AAAA,MACd,GAAG,OAAO;AAAA,IACd;AAEA,QAAI,QAAQ,eAAe,MAAM,aAAa,OAAO,MAAM,KAAK;AAChE,QAAI,gBAAgB,QAAW;AAC3B,cAAQ,eAAe,OAAO,aAAa,IAAI;AAAA,IACnD;AAEA,QAAI,MAAM,WAAW,GAAG;AACpB,YAAM,IAAI,MAAM,oBAAoB,OAAO,IAAI,mBAAmB;AAAA,IACtE;AAEA,eAAW,QAAQ,OAAO;AACtB,YAAM,WAAO,mBAAM,IAAI,EAAE;AACzB,oBAAc,QAAQ,EAAE,GAAG,QAAQ,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;AAAA,IAC9D;AAAA,EACJ;AACJ;AAEA,IAAI,gCAAgC;AAEpC,SAAS,cAAc,QAAqB,QAAqB;AAC7D,MAAI,CAAC,+BAA+B;AAChC,oCAAgC;AAChC,WAAO,iBAAkB;AACrB,WAAK,QAAQ,UAAU,YAAY;AACnC,YAAM,WAAW;AAAA,IACrB,CAAC;AAAA,EACL;AAEA,KAAG,OAAO,eAAe,OAAO,MAAM,YAAY;AAC9C,UAAM,OAAO,MAAM;AACnB,UAAM,OAAO,MAAM;AAEnB,QAAI;AACA,YAAM,aAAa,MAAM;AAAA,IAC7B,UAAE;AACE,UAAI;AACA,cAAM,OAAO,KAAK;AAAA,MACtB,SAAS,GAAG;AACR,gBAAQ,KAAK,+BAA+B,CAAC;AAAA,MACjD;AAAA,IACJ;AAAA,EACJ,CAAC,EAAE,QAAQ,OAAO,WAAW,UAAU,cAAc;AACzD;AAEA,eAAe,aAAa,QAAqB;AAC7C,QAAM,SAAS,MAAM,OAAO,OAAO;AAEnC,QAAM,OAAO,MAAc;AAC3B,MAAI,OAAO,SAAS;AAChB,SAAK,KAAK,GAAG,OAAO,OAAO;AAAA,EAC/B;AACA,MAAI,OAAO,MAAM;AACb,SAAK,KAAK,GAAG,OAAO,QAAQ,OAAO,IAAI,EAAE,KAAK,CAAC;AAAA,EACnD;AAGA,QAAM,SAAS,OAAO,IAAI,UAAU,YAAY;AAAA,IAC5C;AAAA,IACA,KAAK,OAAO;AAAA,IACZ,OAAO;AAAA,MACH,CAAC,uBAAQ,UAAU,IAAI,GAAG;AAAA,IAC9B;AAAA,IACA,SAAS;AAAA,EACb,CAAC;AAED,QAAM,oBAAoB,OAAO,QAAQ,MAAM;AACnD;AA0CA,SAAS,SAAS,MAAc;AAG5B,SAAO,KAAK,QAAQ,+EAA+E,EAAE;AACzG;AAKA,eAAe,oBAAoB,QAAoB,QAA+B;AAClF,MAAI,YAAY;AAEhB,MAAI,UAAU,MAAc;AAE5B,MAAI;AAKJ,WAAS,iBAAiB;AACtB,QAAI;AACJ,QAAI;AACJ,eAAW,QAAQ,SAAS;AACxB,YAAM,kBAAkB,SAAS,IAAI,EAAE,MAAM,2CAA2C;AACxF,UAAI,iBAAiB;AACjB,YAAI,gBAAgB,CAAC,MAAM,gBAAgB;AACvC,cAAI,aAAa,QAAW;AACxB;AAAA,UACJ;AACA,iBAAO,SAAS,SAAS,UAAU;AAAA,YAC/B,SAAS,gBAAgB,CAAC;AAAA,YAC1B,MAAM,UAAU,KAAK,IAAI;AAAA,UAC7B,CAAC;AAAA,QACL,OAAO;AACH,qBAAW,gBAAgB,CAAC;AAC5B,qBAAW,CAAC;AAAA,QAChB;AAAA,MACJ,WAAW,UAAU;AAEjB,cAAM,SAAS,KAAK,MAAM,2BAA2B;AACrD,YAAI,QAAQ;AACR,mBAAS,KAAK,OAAO,CAAC,CAAC;AACvB;AAAA,QACJ;AAGA,cAAM,UAAU,KAAK,MAAM,oEAAoE;AAC/F,YAAI,SAAS;AACT,cAAI,SAAS,QAAQ,CAAC,CAAC,EAAE,MAAM,qCAAqC,GAAG;AACnE;AAAA,UACJ;AAEA,gBAAM,OAAO,QAAQ,CAAC;AACtB,gBAAM,OAAO,QAAQ,CAAC;AACtB,gBAAM,UAAU,QAAQ,CAAC,EAAE,QAAQ,UAAY,EAAE,EAAE,QAAQ,OAAO,IAAI;AAItE,mBAAS,KAAK,QAAQ,IAAI,IAAI,IAAI,IAAI,OAAO,EAAE;AAC/C;AAAA,QACJ;AAGA,iBAAS,KAAK,IAAI;AAAA,MACtB;AAAA,IACJ;AAAA,EACJ;AASA,WAAS,YAAY,MAAc;AAE/B,eAAW,sBAAsB,QAAQ,IAAI;AAE7C,WAAO,KAAK,KAAK;AACjB,UAAM,QAAQ,SAAS,IAAI;AAC3B,UAAM,eAAe,MAAM;AAAA,MACvB;AAAA,IACJ;AAEA,QAAI,cAAc;AACd,UAAI,aAAa,CAAC,EAAE,WAAW,OAAO,GAAG;AACrC;AACA,kBAAU,CAAC;AACX,eAAO,SAAS,SAAS,aAAa,CAAC,GAAG,QAAW,KAAK;AAAA,MAC9D,WAAW,aAAa,CAAC,EAAE,WAAW,WAAW,GAAG;AAChD,eAAO,SAAS,OAAO;AAAA,MAC3B,OAAO;AACH,uBAAe;AACf,eAAO,SAAS,OAAO;AAAA,MAC3B;AAAA,IACJ;AAEA,YAAQ,KAAK,IAAI;AAAA,EACrB;AAEA,mBAAiB,SAAS,QAAQ;AAC9B,UAAM,QAAQ,MAAM,MAAM,IAAI;AAC9B,QAAI,SAAS;AACT,YAAM,CAAC,IAAI,UAAU,MAAM,CAAC;AAAA,IAChC;AAEA,cAAU,MAAM,IAAI;AAEpB,eAAW,QAAQ,OAAO;AACtB,kBAAY,IAAI;AAAA,IACpB;AAAA,EACJ;AAEA,MAAI,YAAY,QAAW;AACvB,gBAAY,OAAO;AAAA,EACvB;AACJ;AAEA,eAAe,aAAa;AACxB,MAAI,MAAM,YAAY;AAClB;AAAA,EACJ;AAEA,QAAM,OAAO,OAAO;AACpB,QAAM,cAAc;AACpB,QAAM,cAAc;AACpB,QAAM,gBAAgB;AAEtB,QAAM,aAAa;AACvB;AAEA,eAAe,gBAAgB;AAC3B,QAAM,SAAS,MAAM,OAAO,OAAO;AACnC,QAAM,SAAS,MAAM,OAAO,kBAAkB,UAAU,YAAY,UAAU,QAAQ;AACtF,QAAM,OAAO,IAAI,0BAAS,QAAQ,IAAI;AAEtC,QAAM,YAAY,IAAI,0BAAS,uBAAQ,MAAM,QAAQ,kCAAkC,CAAC;AACxF,OAAK,MAAM,SAAS;AAEpB,OAAK,KAAK,uBAAQ,MAAM,QAAQ,uBAAuB,CAAC;AAC5D;AAEA,eAAe,gBAAgB;AAC3B,QAAM,SAAS,MAAM,OAAO,OAAO;AAEnC,QAAM,QAAQ,MAAM,OAAO,qBAAqB,UAAU,YAAY,GAAG,UAAU,SAAS,cAAc;AAE1G,QAAM,UAAU,KAAK,GAAG,KAAK;AACjC;AAEA,eAAe,kBAAkB;AAC7B,QAAM,SAAS,MAAM,OAAO,OAAO;AAEnC,QAAM,SAAS,MAAM,OAAO,qBAAqB,UAAU,YAAY,GAAG,UAAU,WAAW,OAAO,GAAG;AAAA,IACrG,UAAQ,KAAK,MAAM,uBAAuB;AAAA,EAC9C;AAEA,QAAM,YAAY,KAAK,GAAG,KAAK;AACnC;AAEA,SAAS,eAAe,MAAgB,MAAc,SAAS,OAAO;AAClE,QAAM,cAAc,KAAK,QAAQ,OAAO,SAAS;AACjD,QAAM,UAAU,IAAI,OAAO,2BAA2B,WAAW,iBAAiB;AAClF,SAAO,KAAK,OAAO,OAAK,CAAC,CAAC,EAAE,MAAM,OAAO,MAAM,CAAC,MAAM;AAC1D;",
|
|
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"}
|