@datadog/datadog-ci 2.47.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -2
- package/dist/__tests__/cli.test.d.ts +1 -0
- package/dist/__tests__/cli.test.js +92 -0
- package/dist/__tests__/cli.test.js.map +1 -0
- package/dist/cli.js +1 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/cloud-run/__tests__/fixtures.d.ts +2 -0
- package/dist/commands/cloud-run/__tests__/fixtures.js +12 -0
- package/dist/commands/cloud-run/__tests__/fixtures.js.map +1 -0
- package/dist/commands/cloud-run/__tests__/flare.test.d.ts +1 -0
- package/dist/commands/cloud-run/__tests__/flare.test.js +557 -0
- package/dist/commands/cloud-run/__tests__/flare.test.js.map +1 -0
- package/dist/commands/coverage/__tests__/upload.test.d.ts +1 -0
- package/dist/commands/coverage/__tests__/upload.test.js +323 -0
- package/dist/commands/coverage/__tests__/upload.test.js.map +1 -0
- package/dist/commands/coverage/__tests__/utils.test.d.ts +1 -0
- package/dist/commands/coverage/__tests__/utils.test.js +57 -0
- package/dist/commands/coverage/__tests__/utils.test.js.map +1 -0
- package/dist/commands/coverage/api.d.ts +9 -0
- package/dist/commands/coverage/api.js +52 -0
- package/dist/commands/coverage/api.js.map +1 -0
- package/dist/commands/coverage/cli.d.ts +1 -0
- package/dist/commands/coverage/cli.js +5 -0
- package/dist/commands/coverage/cli.js.map +1 -0
- package/dist/commands/coverage/interfaces.d.ts +13 -0
- package/dist/commands/coverage/interfaces.js +3 -0
- package/dist/commands/coverage/interfaces.js.map +1 -0
- package/dist/commands/coverage/renderer.d.ts +12 -0
- package/dist/commands/coverage/renderer.js +83 -0
- package/dist/commands/coverage/renderer.js.map +1 -0
- package/dist/commands/coverage/upload.d.ts +27 -0
- package/dist/commands/coverage/upload.js +329 -0
- package/dist/commands/coverage/upload.js.map +1 -0
- package/dist/commands/coverage/utils.d.ts +3 -0
- package/dist/commands/coverage/utils.js +83 -0
- package/dist/commands/coverage/utils.js.map +1 -0
- package/dist/commands/deployment/__tests__/correlate.test.d.ts +1 -0
- package/dist/commands/deployment/__tests__/correlate.test.js +106 -0
- package/dist/commands/deployment/__tests__/correlate.test.js.map +1 -0
- package/dist/commands/deployment/__tests__/mark.test.d.ts +1 -0
- package/dist/commands/deployment/__tests__/mark.test.js +97 -0
- package/dist/commands/deployment/__tests__/mark.test.js.map +1 -0
- package/dist/commands/dora/__tests__/deployment.test.d.ts +1 -0
- package/dist/commands/dora/__tests__/deployment.test.js +201 -0
- package/dist/commands/dora/__tests__/deployment.test.js.map +1 -0
- package/dist/commands/dsyms/__tests__/upload.test.d.ts +1 -0
- package/dist/commands/dsyms/__tests__/upload.test.js +346 -0
- package/dist/commands/dsyms/__tests__/upload.test.js.map +1 -0
- package/dist/commands/dsyms/__tests__/utils.test.d.ts +1 -0
- package/dist/commands/dsyms/__tests__/utils.test.js +100 -0
- package/dist/commands/dsyms/__tests__/utils.test.js.map +1 -0
- package/dist/commands/dsyms/upload.js +3 -3
- package/dist/commands/dsyms/upload.js.map +1 -1
- package/dist/commands/dsyms/utils.js +7 -6
- package/dist/commands/dsyms/utils.js.map +1 -1
- package/dist/commands/elf-symbols/__tests__/elf.test.d.ts +1 -0
- package/dist/commands/elf-symbols/__tests__/elf.test.js +819 -0
- package/dist/commands/elf-symbols/__tests__/elf.test.js.map +1 -0
- package/dist/commands/elf-symbols/__tests__/upload.test.d.ts +1 -0
- package/dist/commands/elf-symbols/__tests__/upload.test.js +224 -0
- package/dist/commands/elf-symbols/__tests__/upload.test.js.map +1 -0
- package/dist/commands/elf-symbols/elf.d.ts +1 -0
- package/dist/commands/elf-symbols/upload.js +2 -3
- package/dist/commands/elf-symbols/upload.js.map +1 -1
- package/dist/commands/flutter-symbols/__tests__/upload.test.d.ts +1 -0
- package/dist/commands/flutter-symbols/__tests__/upload.test.js +617 -0
- package/dist/commands/flutter-symbols/__tests__/upload.test.js.map +1 -0
- package/dist/commands/flutter-symbols/upload.js +2 -2
- package/dist/commands/flutter-symbols/upload.js.map +1 -1
- package/dist/commands/gate/__tests__/evaluate.test.d.ts +1 -0
- package/dist/commands/gate/__tests__/evaluate.test.js +398 -0
- package/dist/commands/gate/__tests__/evaluate.test.js.map +1 -0
- package/dist/commands/gate/__tests__/scope.test.d.ts +1 -0
- package/dist/commands/gate/__tests__/scope.test.js +29 -0
- package/dist/commands/gate/__tests__/scope.test.js.map +1 -0
- package/dist/commands/git-metadata/__tests__/git.test.d.ts +1 -0
- package/dist/commands/git-metadata/__tests__/git.test.js +132 -0
- package/dist/commands/git-metadata/__tests__/git.test.js.map +1 -0
- package/dist/commands/git-metadata/__tests__/gitdb.test.d.ts +1 -0
- package/dist/commands/git-metadata/__tests__/gitdb.test.js +1386 -0
- package/dist/commands/git-metadata/__tests__/gitdb.test.js.map +1 -0
- package/dist/commands/git-metadata/__tests__/library.test.d.ts +1 -0
- package/dist/commands/git-metadata/__tests__/library.test.js +118 -0
- package/dist/commands/git-metadata/__tests__/library.test.js.map +1 -0
- package/dist/commands/git-metadata/__tests__/upload.test.d.ts +1 -0
- package/dist/commands/git-metadata/__tests__/upload.test.js +52 -0
- package/dist/commands/git-metadata/__tests__/upload.test.js.map +1 -0
- package/dist/commands/git-metadata/upload.d.ts +0 -1
- package/dist/commands/git-metadata/upload.js +0 -6
- package/dist/commands/git-metadata/upload.js.map +1 -1
- package/dist/commands/junit/__tests__/upload.test.d.ts +1 -0
- package/dist/commands/junit/__tests__/upload.test.js +446 -0
- package/dist/commands/junit/__tests__/upload.test.js.map +1 -0
- package/dist/commands/junit/renderer.d.ts +0 -1
- package/dist/commands/junit/renderer.js +1 -5
- package/dist/commands/junit/renderer.js.map +1 -1
- package/dist/commands/junit/upload.d.ts +0 -2
- package/dist/commands/junit/upload.js +8 -21
- package/dist/commands/junit/upload.js.map +1 -1
- package/dist/commands/lambda/__tests__/fixtures.d.ts +51 -0
- package/dist/commands/lambda/__tests__/fixtures.js +146 -0
- package/dist/commands/lambda/__tests__/fixtures.js.map +1 -0
- package/dist/commands/lambda/__tests__/flare.test.d.ts +1 -0
- package/dist/commands/lambda/__tests__/flare.test.js +730 -0
- package/dist/commands/lambda/__tests__/flare.test.js.map +1 -0
- package/dist/commands/lambda/__tests__/functions/commons.test.d.ts +1 -0
- package/dist/commands/lambda/__tests__/functions/commons.test.js +791 -0
- package/dist/commands/lambda/__tests__/functions/commons.test.js.map +1 -0
- package/dist/commands/lambda/__tests__/functions/instrument.part1.test.d.ts +1 -0
- package/dist/commands/lambda/__tests__/functions/instrument.part1.test.js +386 -0
- package/dist/commands/lambda/__tests__/functions/instrument.part1.test.js.map +1 -0
- package/dist/commands/lambda/__tests__/functions/instrument.part2.test.d.ts +1 -0
- package/dist/commands/lambda/__tests__/functions/instrument.part2.test.js +721 -0
- package/dist/commands/lambda/__tests__/functions/instrument.part2.test.js.map +1 -0
- package/dist/commands/lambda/__tests__/functions/uninstrument.test.d.ts +1 -0
- package/dist/commands/lambda/__tests__/functions/uninstrument.test.js +513 -0
- package/dist/commands/lambda/__tests__/functions/uninstrument.test.js.map +1 -0
- package/dist/commands/lambda/__tests__/functions/versionChecker.test.d.ts +1 -0
- package/dist/commands/lambda/__tests__/functions/versionChecker.test.js +33 -0
- package/dist/commands/lambda/__tests__/functions/versionChecker.test.js.map +1 -0
- package/dist/commands/lambda/__tests__/instrument.test.d.ts +1 -0
- package/dist/commands/lambda/__tests__/instrument.test.js +1537 -0
- package/dist/commands/lambda/__tests__/instrument.test.js.map +1 -0
- package/dist/commands/lambda/__tests__/loggroup.test.d.ts +1 -0
- package/dist/commands/lambda/__tests__/loggroup.test.js +340 -0
- package/dist/commands/lambda/__tests__/loggroup.test.js.map +1 -0
- package/dist/commands/lambda/__tests__/prompt.test.d.ts +1 -0
- package/dist/commands/lambda/__tests__/prompt.test.js +206 -0
- package/dist/commands/lambda/__tests__/prompt.test.js.map +1 -0
- package/dist/commands/lambda/__tests__/tags.test.d.ts +1 -0
- package/dist/commands/lambda/__tests__/tags.test.js +305 -0
- package/dist/commands/lambda/__tests__/tags.test.js.map +1 -0
- package/dist/commands/lambda/__tests__/uninstrument.test.d.ts +1 -0
- package/dist/commands/lambda/__tests__/uninstrument.test.js +722 -0
- package/dist/commands/lambda/__tests__/uninstrument.test.js.map +1 -0
- package/dist/commands/lambda/constants.d.ts +2 -0
- package/dist/commands/lambda/constants.js +4 -0
- package/dist/commands/lambda/constants.js.map +1 -1
- package/dist/commands/lambda/functions/commons.d.ts +1 -1
- package/dist/commands/measure/__tests__/measure.test.d.ts +1 -0
- package/dist/commands/measure/__tests__/measure.test.js +102 -0
- package/dist/commands/measure/__tests__/measure.test.js.map +1 -0
- package/dist/commands/measure/measure.d.ts +0 -1
- package/dist/commands/measure/measure.js +2 -9
- package/dist/commands/measure/measure.js.map +1 -1
- package/dist/commands/react-native/__tests__/codepush.test.d.ts +1 -0
- package/dist/commands/react-native/__tests__/codepush.test.js +161 -0
- package/dist/commands/react-native/__tests__/codepush.test.js.map +1 -0
- package/dist/commands/react-native/__tests__/interfaces.test.d.ts +1 -0
- package/dist/commands/react-native/__tests__/interfaces.test.js +33 -0
- package/dist/commands/react-native/__tests__/interfaces.test.js.map +1 -0
- package/dist/commands/react-native/__tests__/upload.test.d.ts +1 -0
- package/dist/commands/react-native/__tests__/upload.test.js +238 -0
- package/dist/commands/react-native/__tests__/upload.test.js.map +1 -0
- package/dist/commands/react-native/__tests__/utils.test.d.ts +1 -0
- package/dist/commands/react-native/__tests__/utils.test.js +27 -0
- package/dist/commands/react-native/__tests__/utils.test.js.map +1 -0
- package/dist/commands/react-native/__tests__/xcode.test.d.ts +1 -0
- package/dist/commands/react-native/__tests__/xcode.test.js +465 -0
- package/dist/commands/react-native/__tests__/xcode.test.js.map +1 -0
- package/dist/commands/sarif/__tests__/upload.test.d.ts +1 -0
- package/dist/commands/sarif/__tests__/upload.test.js +218 -0
- package/dist/commands/sarif/__tests__/upload.test.js.map +1 -0
- package/dist/commands/sarif/__tests__/validation.test.d.ts +1 -0
- package/dist/commands/sarif/__tests__/validation.test.js +19 -0
- package/dist/commands/sarif/__tests__/validation.test.js.map +1 -0
- package/dist/commands/sarif/api.js +1 -1
- package/dist/commands/sarif/api.js.map +1 -1
- package/dist/commands/sarif/interfaces.d.ts +0 -1
- package/dist/commands/sarif/renderer.d.ts +2 -2
- package/dist/commands/sarif/renderer.js +5 -5
- package/dist/commands/sarif/renderer.js.map +1 -1
- package/dist/commands/sarif/upload.d.ts +1 -1
- package/dist/commands/sarif/upload.js +15 -10
- package/dist/commands/sarif/upload.js.map +1 -1
- package/dist/commands/sbom/__tests__/payload.test.d.ts +1 -0
- package/dist/commands/sbom/__tests__/payload.test.js +306 -0
- package/dist/commands/sbom/__tests__/payload.test.js.map +1 -0
- package/dist/commands/sbom/__tests__/validation.test.d.ts +1 -0
- package/dist/commands/sbom/__tests__/validation.test.js +141 -0
- package/dist/commands/sbom/__tests__/validation.test.js.map +1 -0
- package/dist/commands/sbom/json-schema/spdx/spdx.schema.json +428 -198
- package/dist/commands/sbom/language.js +5 -1
- package/dist/commands/sbom/language.js.map +1 -1
- package/dist/commands/sbom/renderer.d.ts +2 -2
- package/dist/commands/sbom/renderer.js +7 -1
- package/dist/commands/sbom/renderer.js.map +1 -1
- package/dist/commands/sbom/upload.d.ts +1 -1
- package/dist/commands/sbom/upload.js +11 -4
- package/dist/commands/sbom/upload.js.map +1 -1
- package/dist/commands/sbom/validation.d.ts +5 -0
- package/dist/commands/sbom/validation.js +23 -10
- package/dist/commands/sbom/validation.js.map +1 -1
- package/dist/commands/sourcemaps/__tests__/upload.test.d.ts +1 -0
- package/dist/commands/sourcemaps/__tests__/upload.test.js +270 -0
- package/dist/commands/sourcemaps/__tests__/upload.test.js.map +1 -0
- package/dist/commands/sourcemaps/__tests__/utils.test.d.ts +1 -0
- package/dist/commands/sourcemaps/__tests__/utils.test.js +31 -0
- package/dist/commands/sourcemaps/__tests__/utils.test.js.map +1 -0
- package/dist/commands/sourcemaps/upload.d.ts +1 -0
- package/dist/commands/sourcemaps/upload.js +6 -2
- package/dist/commands/sourcemaps/upload.js.map +1 -1
- package/dist/commands/stepfunctions/__tests__/awsCommands.test.d.ts +1 -0
- package/dist/commands/stepfunctions/__tests__/awsCommands.test.js +210 -0
- package/dist/commands/stepfunctions/__tests__/awsCommands.test.js.map +1 -0
- package/dist/commands/stepfunctions/__tests__/fixtures/aws-resources.d.ts +6 -0
- package/dist/commands/stepfunctions/__tests__/fixtures/aws-resources.js +45 -0
- package/dist/commands/stepfunctions/__tests__/fixtures/aws-resources.js.map +1 -0
- package/dist/commands/stepfunctions/__tests__/fixtures/cli.d.ts +5 -0
- package/dist/commands/stepfunctions/__tests__/fixtures/cli.js +19 -0
- package/dist/commands/stepfunctions/__tests__/fixtures/cli.js.map +1 -0
- package/dist/commands/stepfunctions/__tests__/helpers.test.d.ts +1 -0
- package/dist/commands/stepfunctions/__tests__/helpers.test.js +501 -0
- package/dist/commands/stepfunctions/__tests__/helpers.test.js.map +1 -0
- package/dist/commands/stepfunctions/__tests__/instrument.test.d.ts +1 -0
- package/dist/commands/stepfunctions/__tests__/instrument.test.js +431 -0
- package/dist/commands/stepfunctions/__tests__/instrument.test.js.map +1 -0
- package/dist/commands/stepfunctions/__tests__/uninstrument.test.d.ts +1 -0
- package/dist/commands/stepfunctions/__tests__/uninstrument.test.js +166 -0
- package/dist/commands/stepfunctions/__tests__/uninstrument.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/api.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/api.test.js +416 -0
- package/dist/commands/synthetics/__tests__/api.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/batch.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/batch.test.js +906 -0
- package/dist/commands/synthetics/__tests__/batch.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/cli.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/cli.test.js +1371 -0
- package/dist/commands/synthetics/__tests__/cli.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/deploy-tests-lib.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/deploy-tests-lib.test.js +112 -0
- package/dist/commands/synthetics/__tests__/deploy-tests-lib.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/fixtures.d.ts +123 -0
- package/dist/commands/synthetics/__tests__/fixtures.js +493 -0
- package/dist/commands/synthetics/__tests__/fixtures.js.map +1 -0
- package/dist/commands/synthetics/__tests__/import-tests-lib.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/import-tests-lib.test.js +186 -0
- package/dist/commands/synthetics/__tests__/import-tests-lib.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/mobile.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/mobile.test.js +376 -0
- package/dist/commands/synthetics/__tests__/mobile.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/multilocator.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/multilocator.test.js +132 -0
- package/dist/commands/synthetics/__tests__/multilocator.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/reporters/default.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/reporters/default.test.js +410 -0
- package/dist/commands/synthetics/__tests__/reporters/default.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/reporters/junit.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/reporters/junit.test.js +354 -0
- package/dist/commands/synthetics/__tests__/reporters/junit.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/reporters/mobile/app-upload.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/reporters/mobile/app-upload.test.js +232 -0
- package/dist/commands/synthetics/__tests__/reporters/mobile/app-upload.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/run-tests-lib.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/run-tests-lib.test.js +698 -0
- package/dist/commands/synthetics/__tests__/run-tests-lib.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/test.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/test.test.js +269 -0
- package/dist/commands/synthetics/__tests__/test.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/tunnel/crypto.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/tunnel/crypto.test.js +21 -0
- package/dist/commands/synthetics/__tests__/tunnel/crypto.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/tunnel/tunnel.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/tunnel/tunnel.test.js +80 -0
- package/dist/commands/synthetics/__tests__/tunnel/tunnel.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/tunnel/websocket.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/tunnel/websocket.test.js +109 -0
- package/dist/commands/synthetics/__tests__/tunnel/websocket.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/utils/internal.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/utils/internal.test.js +161 -0
- package/dist/commands/synthetics/__tests__/utils/internal.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/utils/public.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/utils/public.test.js +575 -0
- package/dist/commands/synthetics/__tests__/utils/public.test.js.map +1 -0
- package/dist/commands/synthetics/api.d.ts +4 -2
- package/dist/commands/synthetics/api.js +20 -1
- package/dist/commands/synthetics/api.js.map +1 -1
- package/dist/commands/synthetics/batch.d.ts +4 -2
- package/dist/commands/synthetics/batch.js +65 -7
- package/dist/commands/synthetics/batch.js.map +1 -1
- package/dist/commands/synthetics/cli.js +3 -1
- package/dist/commands/synthetics/cli.js.map +1 -1
- package/dist/commands/synthetics/deploy-tests-command.d.ts +22 -0
- package/dist/commands/synthetics/deploy-tests-command.js +150 -0
- package/dist/commands/synthetics/deploy-tests-command.js.map +1 -0
- package/dist/commands/synthetics/deploy-tests-lib.d.ts +2 -0
- package/dist/commands/synthetics/deploy-tests-lib.js +72 -0
- package/dist/commands/synthetics/deploy-tests-lib.js.map +1 -0
- package/dist/commands/synthetics/errors.d.ts +1 -1
- package/dist/commands/synthetics/errors.js +1 -0
- package/dist/commands/synthetics/errors.js.map +1 -1
- package/dist/commands/synthetics/import-tests-command.d.ts +22 -0
- package/dist/commands/synthetics/import-tests-command.js +142 -0
- package/dist/commands/synthetics/import-tests-command.js.map +1 -0
- package/dist/commands/synthetics/import-tests-lib.d.ts +2 -0
- package/dist/commands/synthetics/import-tests-lib.js +71 -0
- package/dist/commands/synthetics/import-tests-lib.js.map +1 -0
- package/dist/commands/synthetics/interfaces.d.ts +74 -28
- package/dist/commands/synthetics/interfaces.js.map +1 -1
- package/dist/commands/synthetics/local-test-definition.d.ts +2 -0
- package/dist/commands/synthetics/local-test-definition.js +16 -0
- package/dist/commands/synthetics/local-test-definition.js.map +1 -0
- package/dist/commands/synthetics/mobile.js +2 -2
- package/dist/commands/synthetics/mobile.js.map +1 -1
- package/dist/commands/synthetics/multilocator.d.ts +3 -0
- package/dist/commands/synthetics/multilocator.js +98 -0
- package/dist/commands/synthetics/multilocator.js.map +1 -0
- package/dist/commands/synthetics/reporters/junit.d.ts +1 -2
- package/dist/commands/synthetics/reporters/junit.js +5 -6
- package/dist/commands/synthetics/reporters/junit.js.map +1 -1
- package/dist/commands/synthetics/run-tests-command.d.ts +0 -9
- package/dist/commands/synthetics/run-tests-command.js +22 -64
- package/dist/commands/synthetics/run-tests-command.js.map +1 -1
- package/dist/commands/synthetics/run-tests-lib.js +15 -12
- package/dist/commands/synthetics/run-tests-lib.js.map +1 -1
- package/dist/commands/synthetics/test.d.ts +10 -19
- package/dist/commands/synthetics/test.js +93 -13
- package/dist/commands/synthetics/test.js.map +1 -1
- package/dist/commands/synthetics/tunnel/tunnel.js +2 -2
- package/dist/commands/synthetics/tunnel/tunnel.js.map +1 -1
- package/dist/commands/synthetics/utils/internal.d.ts +3 -1
- package/dist/commands/synthetics/utils/internal.js +18 -8
- package/dist/commands/synthetics/utils/internal.js.map +1 -1
- package/dist/commands/synthetics/utils/public.d.ts +5 -26
- package/dist/commands/synthetics/utils/public.js +13 -248
- package/dist/commands/synthetics/utils/public.js.map +1 -1
- package/dist/commands/tag/__tests__/tag.test.d.ts +1 -0
- package/dist/commands/tag/__tests__/tag.test.js +85 -0
- package/dist/commands/tag/__tests__/tag.test.js.map +1 -0
- package/dist/commands/trace/__tests__/trace.test.d.ts +1 -0
- package/dist/commands/trace/__tests__/trace.test.js +145 -0
- package/dist/commands/trace/__tests__/trace.test.js.map +1 -0
- package/dist/commands/unity-symbols/__tests__/upload.test.d.ts +1 -0
- package/dist/commands/unity-symbols/__tests__/upload.test.js +369 -0
- package/dist/commands/unity-symbols/__tests__/upload.test.js.map +1 -0
- package/dist/commands/unity-symbols/upload.js +2 -2
- package/dist/commands/unity-symbols/upload.js.map +1 -1
- package/dist/helpers/__tests__/app.test.d.ts +1 -0
- package/dist/helpers/__tests__/app.test.js +31 -0
- package/dist/helpers/__tests__/app.test.js.map +1 -0
- package/dist/helpers/__tests__/ci.test.d.ts +1 -0
- package/dist/helpers/__tests__/ci.test.js +295 -0
- package/dist/helpers/__tests__/ci.test.js.map +1 -0
- package/dist/helpers/__tests__/env.test.d.ts +1 -0
- package/dist/helpers/__tests__/env.test.js +74 -0
- package/dist/helpers/__tests__/env.test.js.map +1 -0
- package/dist/helpers/__tests__/fips.test.d.ts +1 -0
- package/dist/helpers/__tests__/fips.test.js +30 -0
- package/dist/helpers/__tests__/fips.test.js.map +1 -0
- package/dist/helpers/__tests__/fixtures.d.ts +41 -0
- package/dist/helpers/__tests__/fixtures.js +80 -0
- package/dist/helpers/__tests__/fixtures.js.map +1 -0
- package/dist/helpers/__tests__/flare.test.d.ts +1 -0
- package/dist/helpers/__tests__/flare.test.js +226 -0
- package/dist/helpers/__tests__/flare.test.js.map +1 -0
- package/dist/helpers/__tests__/fs.test.d.ts +1 -0
- package/dist/helpers/__tests__/fs.test.js +189 -0
- package/dist/helpers/__tests__/fs.test.js.map +1 -0
- package/dist/helpers/__tests__/id.test.d.ts +1 -0
- package/dist/helpers/__tests__/id.test.js +24 -0
- package/dist/helpers/__tests__/id.test.js.map +1 -0
- package/dist/helpers/__tests__/plist.test.d.ts +1 -0
- package/dist/helpers/__tests__/plist.test.js +43 -0
- package/dist/helpers/__tests__/plist.test.js.map +1 -0
- package/dist/helpers/__tests__/prompt.test.d.ts +1 -0
- package/dist/helpers/__tests__/prompt.test.js +71 -0
- package/dist/helpers/__tests__/prompt.test.js.map +1 -0
- package/dist/helpers/__tests__/retry.test.d.ts +1 -0
- package/dist/helpers/__tests__/retry.test.js +99 -0
- package/dist/helpers/__tests__/retry.test.js.map +1 -0
- package/dist/helpers/__tests__/tags.test.d.ts +1 -0
- package/dist/helpers/__tests__/tags.test.js +303 -0
- package/dist/helpers/__tests__/tags.test.js.map +1 -0
- package/dist/helpers/__tests__/upload.test.d.ts +1 -0
- package/dist/helpers/__tests__/upload.test.js +231 -0
- package/dist/helpers/__tests__/upload.test.js.map +1 -0
- package/dist/helpers/__tests__/user-provided-git.test.d.ts +1 -0
- package/dist/helpers/__tests__/user-provided-git.test.js +119 -0
- package/dist/helpers/__tests__/user-provided-git.test.js.map +1 -0
- package/dist/helpers/__tests__/utils.test.d.ts +1 -0
- package/dist/helpers/__tests__/utils.test.js +429 -0
- package/dist/helpers/__tests__/utils.test.js.map +1 -0
- package/dist/helpers/__tests__/validation.test.d.ts +1 -0
- package/dist/helpers/__tests__/validation.test.js +25 -0
- package/dist/helpers/__tests__/validation.test.js.map +1 -0
- package/dist/helpers/git/__tests__/format-git-sourcemaps-data.test.d.ts +1 -0
- package/dist/helpers/git/__tests__/format-git-sourcemaps-data.test.js +103 -0
- package/dist/helpers/git/__tests__/format-git-sourcemaps-data.test.js.map +1 -0
- package/dist/helpers/git/__tests__/format-git-span-data.test.d.ts +1 -0
- package/dist/helpers/git/__tests__/format-git-span-data.test.js +121 -0
- package/dist/helpers/git/__tests__/format-git-span-data.test.js.map +1 -0
- package/dist/helpers/git/__tests__/get-git-data.test.d.ts +1 -0
- package/dist/helpers/git/__tests__/get-git-data.test.js +72 -0
- package/dist/helpers/git/__tests__/get-git-data.test.js.map +1 -0
- package/dist/helpers/id.js.map +1 -0
- package/dist/helpers/tags.d.ts +1 -4
- package/dist/helpers/tags.js +2 -6
- package/dist/helpers/tags.js.map +1 -1
- package/dist/helpers/utils.d.ts +0 -4
- package/dist/helpers/utils.js +1 -21
- package/dist/helpers/utils.js.map +1 -1
- package/package.json +16 -17
- package/dist/commands/junit/id.js.map +0 -1
- package/dist/commands/synthetics/compatibility.d.ts +0 -7
- package/dist/commands/synthetics/compatibility.js +0 -83
- package/dist/commands/synthetics/compatibility.js.map +0 -1
- /package/dist/{commands/junit → helpers}/id.d.ts +0 -0
- /package/dist/{commands/junit → helpers}/id.js +0 -0
|
@@ -0,0 +1,446 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
const os_1 = __importDefault(require("os"));
|
|
16
|
+
const advanced_1 = require("clipanion/lib/advanced");
|
|
17
|
+
const fixtures_1 = require("../../../helpers/__tests__/fixtures");
|
|
18
|
+
const id_1 = __importDefault(require("../../../helpers/id"));
|
|
19
|
+
const renderer_1 = require("../renderer");
|
|
20
|
+
const upload_1 = require("../upload");
|
|
21
|
+
jest.mock('../../../helpers/id', () => jest.fn());
|
|
22
|
+
const makeCli = () => {
|
|
23
|
+
const cli = new advanced_1.Cli();
|
|
24
|
+
cli.register(upload_1.UploadJUnitXMLCommand);
|
|
25
|
+
return cli;
|
|
26
|
+
};
|
|
27
|
+
describe('upload', () => {
|
|
28
|
+
describe('getApiHelper', () => {
|
|
29
|
+
test('should throw an error if API key is undefined', () => {
|
|
30
|
+
process.env = {};
|
|
31
|
+
const write = jest.fn();
|
|
32
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
33
|
+
command.context = { stdout: { write } };
|
|
34
|
+
expect(command['getApiHelper'].bind(command)).toThrow('API key is missing');
|
|
35
|
+
expect(write.mock.calls[0][0]).toContain('DD_API_KEY');
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
describe('getMatchingJUnitXMLFiles', () => {
|
|
39
|
+
test('should read all xml files and reject invalid ones', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
40
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
41
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
42
|
+
const [firstFile, secondFile] = yield command['getMatchingJUnitXMLFiles'].call({
|
|
43
|
+
basePaths: ['./src/commands/junit/__tests__/fixtures'],
|
|
44
|
+
config: {},
|
|
45
|
+
context,
|
|
46
|
+
service: 'service',
|
|
47
|
+
}, {}, {}, {}, {}, {});
|
|
48
|
+
expect(firstFile).toMatchObject({
|
|
49
|
+
xmlPath: './src/commands/junit/__tests__/fixtures/java-report.xml',
|
|
50
|
+
});
|
|
51
|
+
expect(secondFile).toMatchObject({
|
|
52
|
+
xmlPath: './src/commands/junit/__tests__/fixtures/go-report.xml',
|
|
53
|
+
});
|
|
54
|
+
const output = context.stdout.toString();
|
|
55
|
+
expect(output).toContain((0, renderer_1.renderInvalidFile)('./src/commands/junit/__tests__/fixtures/empty.xml', 'Start tag expected.'));
|
|
56
|
+
expect(output).toContain((0, renderer_1.renderInvalidFile)('./src/commands/junit/__tests__/fixtures/invalid.xml', 'Neither <testsuites> nor <testsuite> are the root tag.'));
|
|
57
|
+
}));
|
|
58
|
+
test('should allow single files', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
59
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
60
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
61
|
+
const files = yield command['getMatchingJUnitXMLFiles'].call({
|
|
62
|
+
basePaths: ['./src/commands/junit/__tests__/fixtures/go-report.xml'],
|
|
63
|
+
config: {},
|
|
64
|
+
context,
|
|
65
|
+
service: 'service',
|
|
66
|
+
}, {}, {}, {}, {}, {});
|
|
67
|
+
expect(files.length).toEqual(1);
|
|
68
|
+
expect(files[0]).toMatchObject({
|
|
69
|
+
xmlPath: './src/commands/junit/__tests__/fixtures/go-report.xml',
|
|
70
|
+
});
|
|
71
|
+
}));
|
|
72
|
+
test('should not fail for invalid single files', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
73
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
74
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
75
|
+
const files = yield command['getMatchingJUnitXMLFiles'].call({
|
|
76
|
+
basePaths: ['./src/commands/junit/__tests__/fixtures/does-not-exist.xml'],
|
|
77
|
+
config: {},
|
|
78
|
+
context,
|
|
79
|
+
service: 'service',
|
|
80
|
+
}, {}, {}, {}, {}, {});
|
|
81
|
+
expect(files.length).toEqual(0);
|
|
82
|
+
}));
|
|
83
|
+
test('should allow folder and single unit paths', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
84
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
85
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
86
|
+
const [firstFile, secondFile, thirdFile] = yield command['getMatchingJUnitXMLFiles'].call({
|
|
87
|
+
basePaths: [
|
|
88
|
+
'./src/commands/junit/__tests__/fixtures',
|
|
89
|
+
'./src/commands/junit/__tests__/fixtures/subfolder/js-report.xml',
|
|
90
|
+
],
|
|
91
|
+
config: {},
|
|
92
|
+
context,
|
|
93
|
+
service: 'service',
|
|
94
|
+
}, {}, {}, {}, {}, {});
|
|
95
|
+
expect(firstFile).toMatchObject({
|
|
96
|
+
xmlPath: './src/commands/junit/__tests__/fixtures/java-report.xml',
|
|
97
|
+
});
|
|
98
|
+
expect(secondFile).toMatchObject({
|
|
99
|
+
xmlPath: './src/commands/junit/__tests__/fixtures/go-report.xml',
|
|
100
|
+
});
|
|
101
|
+
expect(thirdFile).toMatchObject({
|
|
102
|
+
xmlPath: './src/commands/junit/__tests__/fixtures/subfolder/js-report.xml',
|
|
103
|
+
});
|
|
104
|
+
}));
|
|
105
|
+
test('should allow folders with extensions', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
106
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
107
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
108
|
+
const [firstFile, secondFile] = yield command['getMatchingJUnitXMLFiles'].call({
|
|
109
|
+
basePaths: ['./src/commands/junit/__tests__/fixtures/junit.xml'],
|
|
110
|
+
config: {},
|
|
111
|
+
context,
|
|
112
|
+
service: 'service',
|
|
113
|
+
}, {}, {}, {}, {}, {});
|
|
114
|
+
expect(firstFile).toMatchObject({
|
|
115
|
+
xmlPath: './src/commands/junit/__tests__/fixtures/junit.xml/valid-report.xml',
|
|
116
|
+
});
|
|
117
|
+
expect(secondFile).toMatchObject({
|
|
118
|
+
xmlPath: './src/commands/junit/__tests__/fixtures/junit.xml/valid-report-2.xml',
|
|
119
|
+
});
|
|
120
|
+
}));
|
|
121
|
+
test('should not have repeated files', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
122
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
123
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
124
|
+
const files = yield command['getMatchingJUnitXMLFiles'].call({
|
|
125
|
+
basePaths: [
|
|
126
|
+
'./src/commands/junit/__tests__/fixtures',
|
|
127
|
+
'./src/commands/junit/__tests__/fixtures/go-report.xml',
|
|
128
|
+
],
|
|
129
|
+
config: {},
|
|
130
|
+
context,
|
|
131
|
+
service: 'service',
|
|
132
|
+
}, {}, {}, {}, {}, {});
|
|
133
|
+
expect(files.length).toEqual(2);
|
|
134
|
+
}));
|
|
135
|
+
test('should set hostname', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
136
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
137
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
138
|
+
const [firstFile, secondFile] = yield command['getMatchingJUnitXMLFiles'].call({
|
|
139
|
+
basePaths: ['./src/commands/junit/__tests__/fixtures'],
|
|
140
|
+
config: {},
|
|
141
|
+
context,
|
|
142
|
+
service: 'service',
|
|
143
|
+
}, {}, {}, {}, {}, {});
|
|
144
|
+
expect(firstFile.hostname).toEqual(os_1.default.hostname());
|
|
145
|
+
expect(secondFile.hostname).toEqual(os_1.default.hostname());
|
|
146
|
+
}));
|
|
147
|
+
test('should set logsEnabled for each file', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
148
|
+
process.env.DD_CIVISIBILITY_LOGS_ENABLED = 'true';
|
|
149
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
150
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
151
|
+
const [firstFile, secondFile] = yield command['getMatchingJUnitXMLFiles'].call({
|
|
152
|
+
basePaths: ['./src/commands/junit/__tests__/fixtures'],
|
|
153
|
+
config: {},
|
|
154
|
+
context,
|
|
155
|
+
logs: true,
|
|
156
|
+
service: 'service',
|
|
157
|
+
}, {}, {}, {}, {}, {});
|
|
158
|
+
expect(firstFile.logsEnabled).toBe(true);
|
|
159
|
+
expect(secondFile.logsEnabled).toBe(true);
|
|
160
|
+
}));
|
|
161
|
+
test('should show different error on no test report', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
162
|
+
process.env.DD_CIVISIBILITY_LOGS_ENABLED = 'true';
|
|
163
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
164
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
165
|
+
yield command['getMatchingJUnitXMLFiles'].call({
|
|
166
|
+
basePaths: ['./src/commands/junit/__tests__/fixtures/subfolder/invalid-no-tests.xml'],
|
|
167
|
+
config: {},
|
|
168
|
+
context,
|
|
169
|
+
logs: true,
|
|
170
|
+
service: 'service',
|
|
171
|
+
}, {}, {}, {}, {}, {});
|
|
172
|
+
const output = context.stdout.toString();
|
|
173
|
+
expect(output).toContain((0, renderer_1.renderInvalidFile)('./src/commands/junit/__tests__/fixtures/subfolder/invalid-no-tests.xml', 'The junit report file is empty, there are no <testcase> elements.'));
|
|
174
|
+
}));
|
|
175
|
+
test('should fetch nested folders', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
176
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
177
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
178
|
+
const files = yield command['getMatchingJUnitXMLFiles'].call({
|
|
179
|
+
basePaths: ['**/junit/**/*.xml'],
|
|
180
|
+
config: {},
|
|
181
|
+
context,
|
|
182
|
+
service: 'service',
|
|
183
|
+
}, {}, {}, {}, {}, {});
|
|
184
|
+
const fileNames = files.map((file) => file.xmlPath);
|
|
185
|
+
expect(fileNames).toEqual([
|
|
186
|
+
'./src/commands/junit/__tests__/fixtures/java-report.xml',
|
|
187
|
+
'./src/commands/junit/__tests__/fixtures/go-report.xml',
|
|
188
|
+
'./src/commands/junit/__tests__/fixtures/subfolder/js-report.xml',
|
|
189
|
+
'./src/commands/junit/__tests__/fixtures/junit.xml/valid-report.xml',
|
|
190
|
+
'./src/commands/junit/__tests__/fixtures/junit.xml/valid-report-2.xml',
|
|
191
|
+
]);
|
|
192
|
+
}));
|
|
193
|
+
test('should fetch nested folders and ignore non xml files', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
194
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
195
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
196
|
+
const files = yield command['getMatchingJUnitXMLFiles'].call({
|
|
197
|
+
basePaths: ['**/junit/**'],
|
|
198
|
+
config: {},
|
|
199
|
+
context,
|
|
200
|
+
service: 'service',
|
|
201
|
+
}, {}, {}, {}, {}, {});
|
|
202
|
+
const fileNames = files.map((file) => file.xmlPath);
|
|
203
|
+
expect(fileNames).toEqual([
|
|
204
|
+
'./src/commands/junit/__tests__/fixtures/java-report.xml',
|
|
205
|
+
'./src/commands/junit/__tests__/fixtures/go-report.xml',
|
|
206
|
+
'./src/commands/junit/__tests__/fixtures/subfolder/js-report.xml',
|
|
207
|
+
'./src/commands/junit/__tests__/fixtures/junit.xml/valid-report.xml',
|
|
208
|
+
'./src/commands/junit/__tests__/fixtures/junit.xml/valid-report-2.xml',
|
|
209
|
+
]);
|
|
210
|
+
}));
|
|
211
|
+
});
|
|
212
|
+
describe('getSpanTags', () => {
|
|
213
|
+
test('should parse DD_ENV environment variable', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
214
|
+
process.env.DD_ENV = 'ci';
|
|
215
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
216
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
217
|
+
const spanTags = yield command['getSpanTags'].call({
|
|
218
|
+
config: {
|
|
219
|
+
env: process.env.DD_ENV,
|
|
220
|
+
},
|
|
221
|
+
context,
|
|
222
|
+
});
|
|
223
|
+
expect(spanTags).toMatchObject({
|
|
224
|
+
env: 'ci',
|
|
225
|
+
});
|
|
226
|
+
}));
|
|
227
|
+
});
|
|
228
|
+
describe('parseCustomTags', () => {
|
|
229
|
+
test('should parse tags argument', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
230
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
231
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
232
|
+
const spanTags = command['getCustomTags'].call({
|
|
233
|
+
config: {},
|
|
234
|
+
context,
|
|
235
|
+
tags: ['key1:value1', 'key2:value2'],
|
|
236
|
+
});
|
|
237
|
+
expect(spanTags).toMatchObject({
|
|
238
|
+
key1: 'value1',
|
|
239
|
+
key2: 'value2',
|
|
240
|
+
});
|
|
241
|
+
}));
|
|
242
|
+
test('should parse DD_TAGS environment variable', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
243
|
+
process.env.DD_TAGS = 'key1:https://google.com,key2:value2';
|
|
244
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
245
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
246
|
+
const spanTags = command['getCustomTags'].call({
|
|
247
|
+
config: {
|
|
248
|
+
envVarTags: process.env.DD_TAGS,
|
|
249
|
+
},
|
|
250
|
+
context,
|
|
251
|
+
});
|
|
252
|
+
expect(spanTags).toMatchObject({
|
|
253
|
+
key1: 'https://google.com',
|
|
254
|
+
key2: 'value2',
|
|
255
|
+
});
|
|
256
|
+
}));
|
|
257
|
+
test('should parse measures argument', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
258
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
259
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
260
|
+
const spanTags = command['getCustomMeasures'].call({
|
|
261
|
+
config: {},
|
|
262
|
+
context,
|
|
263
|
+
measures: ['key1:10', 'key2:20'],
|
|
264
|
+
});
|
|
265
|
+
expect(spanTags).toMatchObject({
|
|
266
|
+
key1: 10,
|
|
267
|
+
key2: 20,
|
|
268
|
+
});
|
|
269
|
+
}));
|
|
270
|
+
test('should parse DD_MEASURES environment variable', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
271
|
+
process.env.DD_MEASURES = 'key1:321,key2:123,key3:321.1,key4:abc,key5:-12.1';
|
|
272
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
273
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
274
|
+
const spanTags = command['getCustomMeasures'].call({
|
|
275
|
+
config: {
|
|
276
|
+
envVarMeasures: process.env.DD_MEASURES,
|
|
277
|
+
},
|
|
278
|
+
context,
|
|
279
|
+
});
|
|
280
|
+
expect(spanTags).toMatchObject({
|
|
281
|
+
key1: 321,
|
|
282
|
+
key2: 123,
|
|
283
|
+
key3: 321.1,
|
|
284
|
+
key5: -12.1,
|
|
285
|
+
});
|
|
286
|
+
}));
|
|
287
|
+
test('should parse report tags argument', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
288
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
289
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
290
|
+
const spanTags = command['getReportTags'].call({
|
|
291
|
+
config: {},
|
|
292
|
+
context,
|
|
293
|
+
reportTags: ['key1:value1', 'key2:value2'],
|
|
294
|
+
});
|
|
295
|
+
expect(spanTags).toMatchObject({
|
|
296
|
+
key1: 'value1',
|
|
297
|
+
key2: 'value2',
|
|
298
|
+
});
|
|
299
|
+
}));
|
|
300
|
+
test('should parse report measures argument', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
301
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
302
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
303
|
+
const spanTags = command['getReportMeasures'].call({
|
|
304
|
+
config: {},
|
|
305
|
+
context,
|
|
306
|
+
reportMeasures: ['key1:20', 'key2:30'],
|
|
307
|
+
});
|
|
308
|
+
expect(spanTags).toMatchObject({
|
|
309
|
+
key1: 20,
|
|
310
|
+
key2: 30,
|
|
311
|
+
});
|
|
312
|
+
}));
|
|
313
|
+
});
|
|
314
|
+
describe('parseXPathTags', () => {
|
|
315
|
+
test('should parse xpath assigments', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
316
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
317
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
318
|
+
const xPathTags = command['parseXPathTags'].call({
|
|
319
|
+
basePaths: ['./src/commands/junit/__tests__/fixtures'],
|
|
320
|
+
config: {},
|
|
321
|
+
context,
|
|
322
|
+
service: 'service',
|
|
323
|
+
}, ['test.suite=/testcase/@classname', "custom_tag=/testcase/..//property[@name='property-name']"]);
|
|
324
|
+
expect(xPathTags).toMatchObject({
|
|
325
|
+
'test.suite': '/testcase/@classname',
|
|
326
|
+
custom_tag: "/testcase/..//property[@name='property-name']",
|
|
327
|
+
});
|
|
328
|
+
}));
|
|
329
|
+
test('should alert of invalid values', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
330
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
331
|
+
const command = new upload_1.UploadJUnitXMLCommand();
|
|
332
|
+
command['parseXPathTags'].call({
|
|
333
|
+
basePaths: ['./src/commands/junit/__tests__/fixtures'],
|
|
334
|
+
config: {},
|
|
335
|
+
context,
|
|
336
|
+
service: 'service',
|
|
337
|
+
}, ['test.suite=/testcase/@classname', 'invalid']);
|
|
338
|
+
const errOutput = context.stderr.toString().split(os_1.default.EOL);
|
|
339
|
+
expect(errOutput[0]).toContain('Invalid xpath');
|
|
340
|
+
}));
|
|
341
|
+
});
|
|
342
|
+
});
|
|
343
|
+
describe('execute', () => {
|
|
344
|
+
const runCLI = (extraArgs) => __awaiter(void 0, void 0, void 0, function* () {
|
|
345
|
+
const cli = makeCli();
|
|
346
|
+
const context = (0, fixtures_1.createMockContext)();
|
|
347
|
+
process.env = { DD_API_KEY: 'PLACEHOLDER' };
|
|
348
|
+
const code = yield cli.run(['junit', 'upload', '--service', 'test-service', '--dry-run', '--logs', ...extraArgs], context);
|
|
349
|
+
return { context, code };
|
|
350
|
+
});
|
|
351
|
+
test('relative path with double dots', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
352
|
+
const { context, code } = yield runCLI(['./src/commands/junit/__tests__/doesnotexist/../fixtures']);
|
|
353
|
+
const output = context.stdout.toString().split(os_1.default.EOL);
|
|
354
|
+
expect(code).toBe(0);
|
|
355
|
+
checkConsoleOutput(output, {
|
|
356
|
+
basePaths: ['src/commands/junit/__tests__/fixtures'],
|
|
357
|
+
concurrency: 20,
|
|
358
|
+
service: 'test-service',
|
|
359
|
+
});
|
|
360
|
+
}));
|
|
361
|
+
test('multiple paths', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
362
|
+
const { context, code } = yield runCLI(['./src/commands/junit/first/', './src/commands/junit/second/']);
|
|
363
|
+
const output = context.stdout.toString().split(os_1.default.EOL);
|
|
364
|
+
expect(code).toBe(0);
|
|
365
|
+
checkConsoleOutput(output, {
|
|
366
|
+
basePaths: ['src/commands/junit/first/', 'src/commands/junit/second/'],
|
|
367
|
+
concurrency: 20,
|
|
368
|
+
service: 'test-service',
|
|
369
|
+
});
|
|
370
|
+
}));
|
|
371
|
+
test('absolute path', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
372
|
+
const { context, code } = yield runCLI([process.cwd() + '/src/commands/junit/__tests__/fixtures']);
|
|
373
|
+
const output = context.stdout.toString().split(os_1.default.EOL);
|
|
374
|
+
expect(code).toBe(0);
|
|
375
|
+
checkConsoleOutput(output, {
|
|
376
|
+
basePaths: [`${process.cwd()}/src/commands/junit/__tests__/fixtures`],
|
|
377
|
+
concurrency: 20,
|
|
378
|
+
service: 'test-service',
|
|
379
|
+
});
|
|
380
|
+
}));
|
|
381
|
+
test('single file', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
382
|
+
const { context, code } = yield runCLI([process.cwd() + '/src/commands/junit/__tests__/fixtures/single_file.xml']);
|
|
383
|
+
const output = context.stdout.toString().split(os_1.default.EOL);
|
|
384
|
+
const path = `${process.cwd()}/src/commands/junit/__tests__/fixtures/single_file.xml`;
|
|
385
|
+
expect(code).toBe(0);
|
|
386
|
+
expect(output[0]).toContain('DRY-RUN MODE ENABLED. WILL NOT UPLOAD JUNIT XML');
|
|
387
|
+
expect(output[1]).toContain('Starting upload with concurrency 20.');
|
|
388
|
+
expect(output[2]).toContain(`Will upload jUnit XML file ${path}`);
|
|
389
|
+
expect(output[3]).toContain('service: test-service');
|
|
390
|
+
}));
|
|
391
|
+
test('with git metadata without argument (default value is true)', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
392
|
+
const { context, code } = yield runCLI([
|
|
393
|
+
'--verbose',
|
|
394
|
+
process.cwd() + '/src/commands/junit/__tests__/fixtures/single_file.xml',
|
|
395
|
+
]);
|
|
396
|
+
const output = context.stdout.toString().split(os_1.default.EOL);
|
|
397
|
+
expect(id_1.default).toHaveBeenCalled();
|
|
398
|
+
expect(code).toBe(0);
|
|
399
|
+
expect(output[5]).toContain('Syncing git metadata');
|
|
400
|
+
}));
|
|
401
|
+
test('without git metadata (with argument)', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
402
|
+
const { context, code } = yield runCLI([
|
|
403
|
+
'--verbose',
|
|
404
|
+
'--skip-git-metadata-upload',
|
|
405
|
+
process.cwd() + '/src/commands/junit/__tests__/fixtures/single_file.xml',
|
|
406
|
+
]);
|
|
407
|
+
const output = context.stdout.toString().split(os_1.default.EOL);
|
|
408
|
+
expect(id_1.default).not.toHaveBeenCalled();
|
|
409
|
+
expect(code).toBe(0);
|
|
410
|
+
expect(output[5]).toContain('Not syncing git metadata (skip git upload flag detected)');
|
|
411
|
+
}));
|
|
412
|
+
test('without git metadata (with argument set to 1)', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
413
|
+
const { context, code } = yield runCLI([
|
|
414
|
+
'--verbose',
|
|
415
|
+
'--skip-git-metadata-upload=1',
|
|
416
|
+
process.cwd() + '/src/commands/junit/__tests__/fixtures/single_file.xml',
|
|
417
|
+
]);
|
|
418
|
+
const output = context.stdout.toString().split(os_1.default.EOL);
|
|
419
|
+
expect(id_1.default).not.toHaveBeenCalled();
|
|
420
|
+
expect(code).toBe(0);
|
|
421
|
+
expect(output[5]).toContain('Not syncing git metadata (skip git upload flag detected)');
|
|
422
|
+
}));
|
|
423
|
+
test('with git metadata (with argument set to 0)', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
424
|
+
const { context, code } = yield runCLI([
|
|
425
|
+
'--skip-git-metadata-upload=0',
|
|
426
|
+
process.cwd() + '/src/commands/junit/__tests__/fixtures/single_file.xml',
|
|
427
|
+
]);
|
|
428
|
+
const output = context.stdout.toString().split(os_1.default.EOL);
|
|
429
|
+
expect(code).toBe(0);
|
|
430
|
+
expect(output[5]).toContain('Syncing git metadata');
|
|
431
|
+
}));
|
|
432
|
+
test('id headers are added when git metadata is uploaded', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
433
|
+
yield runCLI([
|
|
434
|
+
'--skip-git-metadata-upload=0',
|
|
435
|
+
process.cwd() + '/src/commands/junit/__tests__/fixtures/single_file.xml',
|
|
436
|
+
]);
|
|
437
|
+
expect(id_1.default).toHaveBeenCalled();
|
|
438
|
+
}), 10000000);
|
|
439
|
+
});
|
|
440
|
+
const checkConsoleOutput = (output, expected) => {
|
|
441
|
+
expect(output[0]).toContain('DRY-RUN MODE ENABLED. WILL NOT UPLOAD JUNIT XML');
|
|
442
|
+
expect(output[1]).toContain(`Starting upload with concurrency ${expected.concurrency}.`);
|
|
443
|
+
expect(output[2]).toContain(`Will look for jUnit XML files in ${expected.basePaths.join(', ')}`);
|
|
444
|
+
expect(output[3]).toContain(`service: ${expected.service}`);
|
|
445
|
+
};
|
|
446
|
+
//# sourceMappingURL=upload.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upload.test.js","sourceRoot":"","sources":["../../../../src/commands/junit/__tests__/upload.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,6 @@ export declare const renderInvalidFile: (xmlPath: string, errorMessage: string)
|
|
|
4
4
|
export declare const renderFailedUpload: (payload: Payload, errorMessage: string) => string;
|
|
5
5
|
export declare const renderFailedGitDBSync: (err: any) => string;
|
|
6
6
|
export declare const renderRetriedUpload: (payload: Payload, errorMessage: string, attempt: number) => string;
|
|
7
|
-
export declare const renderDeprecatedMention: (deprecatedMention: string, newMention: string, deprecatedType: string) => string;
|
|
8
7
|
export declare const renderSuccessfulUpload: (dryRun: boolean, fileCount: number, duration: number) => string;
|
|
9
8
|
export declare const renderSuccessfulGitDBSync: (dryRun: boolean, elapsed: number) => string;
|
|
10
9
|
export declare const renderSuccessfulCommand: (spanTags: SpanTags, service: string, env?: string) => string;
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.renderCommandInfo = exports.renderUpload = exports.renderDryRunUpload = exports.renderSuccessfulCommand = exports.renderSuccessfulGitDBSync = exports.renderSuccessfulUpload = exports.
|
|
6
|
+
exports.renderCommandInfo = exports.renderUpload = exports.renderDryRunUpload = exports.renderSuccessfulCommand = exports.renderSuccessfulGitDBSync = exports.renderSuccessfulUpload = exports.renderRetriedUpload = exports.renderFailedGitDBSync = exports.renderFailedUpload = exports.renderInvalidFile = void 0;
|
|
7
7
|
const path_1 = __importDefault(require("path"));
|
|
8
8
|
const chalk_1 = __importDefault(require("chalk"));
|
|
9
9
|
const utils_1 = require("./utils");
|
|
@@ -31,10 +31,6 @@ const renderRetriedUpload = (payload, errorMessage, attempt) => {
|
|
|
31
31
|
return chalk_1.default.yellow(`[attempt ${attempt}] Retrying jUnitXML upload ${jUnitXMLPath}: ${errorMessage}\n`);
|
|
32
32
|
};
|
|
33
33
|
exports.renderRetriedUpload = renderRetriedUpload;
|
|
34
|
-
const renderDeprecatedMention = (deprecatedMention, newMention, deprecatedType) => {
|
|
35
|
-
return chalk_1.default.yellow(`${ICONS.WARNING} The "${deprecatedMention}" ${deprecatedType} is deprecated. Please use the "${newMention}" ${deprecatedType} instead.\n`);
|
|
36
|
-
};
|
|
37
|
-
exports.renderDeprecatedMention = renderDeprecatedMention;
|
|
38
34
|
const renderSuccessfulUpload = (dryRun, fileCount, duration) => {
|
|
39
35
|
return chalk_1.default.green(`${dryRun ? '[DRYRUN] ' : ''}${ICONS.SUCCESS} Uploaded ${fileCount} files in ${duration} seconds.`);
|
|
40
36
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../../src/commands/junit/renderer.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;AAEvB,kDAAyB;AAKzB,mCAAgE;AAEhE,MAAM,KAAK,GAAG;IACZ,MAAM,EAAE,GAAG;IACX,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,IAAI;CACd,CAAA;AAEM,MAAM,iBAAiB,GAAG,CAAC,OAAe,EAAE,YAAoB,EAAE,EAAE;IACzE,MAAM,YAAY,GAAG,IAAI,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAA;IAEnD,OAAO,eAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,0BAA0B,YAAY,KAAK,YAAY,IAAI,CAAC,CAAA;AAC9F,CAAC,CAAA;AAJY,QAAA,iBAAiB,qBAI7B;AAEM,MAAM,kBAAkB,GAAG,CAAC,OAAgB,EAAE,YAAoB,EAAE,EAAE;IAC3E,MAAM,YAAY,GAAG,IAAI,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAA;IAE3D,OAAO,eAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,+BAA+B,YAAY,KAAK,YAAY,IAAI,CAAC,CAAA;AACnG,CAAC,CAAA;AAJY,QAAA,kBAAkB,sBAI9B;AAEM,MAAM,qBAAqB,GAAG,CAAC,GAAQ,EAAE,EAAE;IAChD,OAAO,eAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,iCAAiC,GAAG,IAAI,CAAC,CAAA;AAChF,CAAC,CAAA;AAFY,QAAA,qBAAqB,yBAEjC;AAEM,MAAM,mBAAmB,GAAG,CAAC,OAAgB,EAAE,YAAoB,EAAE,OAAe,EAAE,EAAE;IAC7F,MAAM,YAAY,GAAG,IAAI,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAA;IAE3D,OAAO,eAAK,CAAC,MAAM,CAAC,YAAY,OAAO,8BAA8B,YAAY,KAAK,YAAY,IAAI,CAAC,CAAA;AACzG,CAAC,CAAA;AAJY,QAAA,mBAAmB,uBAI/B;AAEM,MAAM,
|
|
1
|
+
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../../src/commands/junit/renderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,12 +8,10 @@ export declare class UploadJUnitXMLCommand extends Command {
|
|
|
8
8
|
private env;
|
|
9
9
|
private logs;
|
|
10
10
|
private maxConcurrency;
|
|
11
|
-
private metrics;
|
|
12
11
|
private measures;
|
|
13
12
|
private service;
|
|
14
13
|
private tags;
|
|
15
14
|
private reportTags;
|
|
16
|
-
private reportMetrics;
|
|
17
15
|
private reportMeasures;
|
|
18
16
|
private rawXPathTags;
|
|
19
17
|
private gitRepositoryURL;
|
|
@@ -42,7 +42,7 @@ const path_1 = __importDefault(require("path"));
|
|
|
42
42
|
const chalk_1 = __importDefault(require("chalk"));
|
|
43
43
|
const clipanion_1 = require("clipanion");
|
|
44
44
|
const fast_xml_parser_1 = require("fast-xml-parser");
|
|
45
|
-
const glob_1 =
|
|
45
|
+
const glob_1 = require("glob");
|
|
46
46
|
const t = __importStar(require("typanion"));
|
|
47
47
|
const constants_1 = require("../../constants");
|
|
48
48
|
const ci_1 = require("../../helpers/ci");
|
|
@@ -50,6 +50,7 @@ const concurrency_1 = require("../../helpers/concurrency");
|
|
|
50
50
|
const env_1 = require("../../helpers/env");
|
|
51
51
|
const fips_1 = require("../../helpers/fips");
|
|
52
52
|
const format_git_span_data_1 = require("../../helpers/git/format-git-span-data");
|
|
53
|
+
const id_1 = __importDefault(require("../../helpers/id"));
|
|
53
54
|
const logger_1 = require("../../helpers/logger");
|
|
54
55
|
const retry_1 = require("../../helpers/retry");
|
|
55
56
|
const tags_1 = require("../../helpers/tags");
|
|
@@ -60,7 +61,6 @@ const git_1 = require("../git-metadata/git");
|
|
|
60
61
|
const gitdb_1 = require("../git-metadata/gitdb");
|
|
61
62
|
const library_1 = require("../git-metadata/library");
|
|
62
63
|
const api_1 = require("./api");
|
|
63
|
-
const id_1 = __importDefault(require("./id"));
|
|
64
64
|
const renderer_1 = require("./renderer");
|
|
65
65
|
const utils_2 = require("./utils");
|
|
66
66
|
const TRACE_ID_HTTP_HEADER = 'x-datadog-trace-id';
|
|
@@ -96,12 +96,10 @@ class UploadJUnitXMLCommand extends clipanion_1.Command {
|
|
|
96
96
|
validator: t.isBoolean(),
|
|
97
97
|
});
|
|
98
98
|
this.maxConcurrency = clipanion_1.Option.String('--max-concurrency', '20', { validator: validation.isInteger() });
|
|
99
|
-
this.metrics = clipanion_1.Option.Array('--metrics', { hidden: true });
|
|
100
99
|
this.measures = clipanion_1.Option.Array('--measures');
|
|
101
100
|
this.service = clipanion_1.Option.String('--service', { env: 'DD_SERVICE' });
|
|
102
101
|
this.tags = clipanion_1.Option.Array('--tags');
|
|
103
102
|
this.reportTags = clipanion_1.Option.Array('--report-tags');
|
|
104
|
-
this.reportMetrics = clipanion_1.Option.Array('--report-metrics', { hidden: true });
|
|
105
103
|
this.reportMeasures = clipanion_1.Option.Array('--report-measures');
|
|
106
104
|
this.rawXPathTags = clipanion_1.Option.Array('--xpath-tag');
|
|
107
105
|
this.gitRepositoryURL = clipanion_1.Option.String('--git-repository-url');
|
|
@@ -229,7 +227,7 @@ class UploadJUnitXMLCommand extends clipanion_1.Command {
|
|
|
229
227
|
}
|
|
230
228
|
let globPattern;
|
|
231
229
|
// It's either a folder (possibly including .xml extension) or a glob pattern
|
|
232
|
-
if (glob_1.
|
|
230
|
+
if (glob_1.glob.hasMagic(basePath)) {
|
|
233
231
|
// It's a glob pattern so we just use it as is
|
|
234
232
|
globPattern = basePath;
|
|
235
233
|
}
|
|
@@ -237,7 +235,9 @@ class UploadJUnitXMLCommand extends clipanion_1.Command {
|
|
|
237
235
|
// It's a folder
|
|
238
236
|
globPattern = (0, utils_1.buildPath)(basePath, '*.xml');
|
|
239
237
|
}
|
|
240
|
-
const filesToUpload = glob_1.
|
|
238
|
+
const filesToUpload = glob_1.glob
|
|
239
|
+
.sync(globPattern, { dotRelative: true })
|
|
240
|
+
.filter((file) => path_1.default.extname(file) === '.xml');
|
|
241
241
|
return acc.concat(filesToUpload);
|
|
242
242
|
}, [])
|
|
243
243
|
.filter(utils_2.isFile);
|
|
@@ -278,28 +278,15 @@ class UploadJUnitXMLCommand extends clipanion_1.Command {
|
|
|
278
278
|
getCustomMeasures() {
|
|
279
279
|
const envVarMetrics = this.config.envVarMetrics ? (0, tags_1.parseMetrics)(this.config.envVarMetrics.split(',')) : {};
|
|
280
280
|
const envVarMeasures = this.config.envVarMeasures ? (0, tags_1.parseMetrics)(this.config.envVarMeasures.split(',')) : {};
|
|
281
|
-
const cliMetrics = this.metrics ? (0, tags_1.parseMetrics)(this.metrics) : {};
|
|
282
281
|
const cliMeasures = this.measures ? (0, tags_1.parseMetrics)(this.measures) : {};
|
|
283
|
-
|
|
284
|
-
if (this.metrics) {
|
|
285
|
-
this.context.stdout.write((0, renderer_1.renderDeprecatedMention)('--metrics', '--measures', 'option'));
|
|
286
|
-
}
|
|
287
|
-
if (this.config.envVarMetrics) {
|
|
288
|
-
this.context.stdout.write((0, renderer_1.renderDeprecatedMention)('DD_METRICS', 'DD_MEASURES', 'environment variable'));
|
|
289
|
-
}
|
|
290
|
-
return Object.assign(Object.assign(Object.assign(Object.assign({}, cliMetrics), cliMeasures), envVarMetrics), envVarMeasures);
|
|
282
|
+
return Object.assign(Object.assign(Object.assign({}, cliMeasures), envVarMetrics), envVarMeasures);
|
|
291
283
|
}
|
|
292
284
|
getReportTags() {
|
|
293
285
|
return this.reportTags ? (0, tags_1.parseTags)(this.reportTags) : {};
|
|
294
286
|
}
|
|
295
287
|
getReportMeasures() {
|
|
296
|
-
const cliMetrics = this.reportMetrics ? (0, tags_1.parseMetrics)(this.reportMetrics) : {};
|
|
297
288
|
const cliMeasures = this.reportMeasures ? (0, tags_1.parseMetrics)(this.reportMeasures) : {};
|
|
298
|
-
|
|
299
|
-
if (this.reportMetrics) {
|
|
300
|
-
this.context.stdout.write((0, renderer_1.renderDeprecatedMention)('--report-metrics', '--report-measures', 'option'));
|
|
301
|
-
}
|
|
302
|
-
return Object.assign(Object.assign({}, cliMetrics), cliMeasures);
|
|
289
|
+
return Object.assign({}, cliMeasures);
|
|
303
290
|
}
|
|
304
291
|
uploadJUnitXML(api, jUnitXML) {
|
|
305
292
|
return __awaiter(this, void 0, void 0, function* () {
|