From 37448058664363523b9eef12b7ac934841b5fd7f Mon Sep 17 00:00:00 2001 From: Michal Dorner Date: Mon, 25 Jan 2021 12:53:45 +0100 Subject: [PATCH] Add `list-suites` and `list-tests` options to limit report size --- README.md | 11 + __tests__/__outputs__/dart-json.md | 8 +- __tests__/__outputs__/dotnet-trx.md | 4 +- __tests__/__outputs__/jest-junit.md | 8 +- __tests__/__outputs__/jest-test-results.md | 9578 +--- .../__snapshots__/dart-json.test.ts.snap | 112 +- .../__snapshots__/dotnet-trx.test.ts.snap | 79 +- .../__snapshots__/jest-junit.test.ts.snap | 37100 ++++++++++++---- __tests__/dart-json.test.ts | 10 +- __tests__/dotnet-trx.test.ts | 10 +- __tests__/jest-junit.test.ts | 20 +- action.yml | 41 +- src/main.ts | 33 +- src/parsers/dart-json/dart-json-parser.ts | 13 +- src/parsers/dotnet-trx/dotnet-trx-parser.ts | 14 +- src/parsers/jest-junit/jest-junit-parser.ts | 14 +- src/parsers/parser-types.ts | 8 +- src/report/get-report.ts | 95 +- src/report/test-results.ts | 12 + src/utils/github-utils.ts | 9 +- 20 files changed, 28619 insertions(+), 18560 deletions(-) diff --git a/README.md b/README.md index 417a9d0..57f5b82 100644 --- a/README.md +++ b/README.md @@ -61,6 +61,17 @@ jobs: # jest-junit reporter: '' + # Limits which test suites are listed: + # all + # only-failed + list-suites: 'all' + + # Limits which test cases are listed: + # all + # failed + # none + list-tests: 'all' + # Limits number of created annotations with error message and stack trace captured during test execution. # Must be less or equal to 50. max-annotations: '10' diff --git a/__tests__/__outputs__/dart-json.md b/__tests__/__outputs__/dart-json.md index ee54e1d..8d07637 100644 --- a/__tests__/__outputs__/dart-json.md +++ b/__tests__/__outputs__/dart-json.md @@ -6,12 +6,12 @@ | Result | Suite | Tests | Time | Passed ✔️ | Skipped ✖️ | Failed ❌ | | :---: | :--- | ---: | ---: | ---: | ---: | ---: | -| ❌ | [test\main_test.dart](#ts-0-test-maintest-dart) | 4 | 74ms | 1 | 0 | 3 | -| ❌ | [test\second_test.dart](#ts-1-test-secondtest-dart) | 2 | 51ms | 0 | 1 | 1 | +| ❌ | [test\main_test.dart](#r0s0-test-maintest-dart) | 4 | 74ms | 1 | 0 | 3 | +| ❌ | [test\second_test.dart](#r0s1-test-secondtest-dart) | 2 | 51ms | 0 | 1 | 1 | # Test Suites -## test\main_test.dart ❌ +## test\main_test.dart ❌ ### Test 1 @@ -32,7 +32,7 @@ | :---: | :--- | ---: | | ❌ | Test 2 Exception in test | 12ms | -## test\second_test.dart ❌ +## test\second_test.dart ❌ | Result | Test | Time | | :---: | :--- | ---: | diff --git a/__tests__/__outputs__/dotnet-trx.md b/__tests__/__outputs__/dotnet-trx.md index f89a007..25ed675 100644 --- a/__tests__/__outputs__/dotnet-trx.md +++ b/__tests__/__outputs__/dotnet-trx.md @@ -6,11 +6,11 @@ | Result | Suite | Tests | Time | Passed ✔️ | Skipped ✖️ | Failed ❌ | | :---: | :--- | ---: | ---: | ---: | ---: | ---: | -| ❌ | [DotnetTests.XUnitTests.CalculatorTests](#ts-0-DotnetTests-XUnitTests-CalculatorTests) | 7 | 109.5761ms | 3 | 1 | 3 | +| ❌ | [DotnetTests.XUnitTests.CalculatorTests](#r0s0-DotnetTests-XUnitTests-CalculatorTests) | 7 | 109.5761ms | 3 | 1 | 3 | # Test Suites -## DotnetTests.XUnitTests.CalculatorTests ❌ +## DotnetTests.XUnitTests.CalculatorTests ❌ | Result | Test | Time | | :---: | :--- | ---: | diff --git a/__tests__/__outputs__/jest-junit.md b/__tests__/__outputs__/jest-junit.md index 97ca5c1..8f843b0 100644 --- a/__tests__/__outputs__/jest-junit.md +++ b/__tests__/__outputs__/jest-junit.md @@ -6,12 +6,12 @@ | Result | Suite | Tests | Time | Passed ✔️ | Skipped ✖️ | Failed ❌ | | :---: | :--- | ---: | ---: | ---: | ---: | ---: | -| ❌ | [__tests__\main.test.js](#ts-0-tests-main-test-js) | 4 | 486ms | 1 | 0 | 3 | -| ❌ | [__tests__\second.test.js](#ts-1-tests-second-test-js) | 2 | 82ms | 0 | 1 | 1 | +| ❌ | [__tests__\main.test.js](#r0s0-tests-main-test-js) | 4 | 486ms | 1 | 0 | 3 | +| ❌ | [__tests__\second.test.js](#r0s1-tests-second-test-js) | 2 | 82ms | 0 | 1 | 1 | # Test Suites -## __tests__\main.test.js ❌ +## __tests__\main.test.js ❌ ### Test 1 @@ -32,7 +32,7 @@ | :---: | :--- | ---: | | ❌ | Exception in test | 0ms | -## __tests__\second.test.js ❌ +## __tests__\second.test.js ❌ | Result | Test | Time | | :---: | :--- | ---: | diff --git a/__tests__/__outputs__/jest-test-results.md b/__tests__/__outputs__/jest-test-results.md index 2ba4e8e..b32b55c 100644 --- a/__tests__/__outputs__/jest-test-results.md +++ b/__tests__/__outputs__/jest-test-results.md @@ -6,9170 +6,434 @@ | Result | Suite | Tests | Time | Passed ✔️ | Skipped ✖️ | Failed ❌ | | :---: | :--- | ---: | ---: | ---: | ---: | ---: | -| ✔️ | [packages/jest-config/src/__tests__/normalize.test.js](#ts-0-packages-jest-config-src-tests-normalize-test-js) | 118 | 798ms | 118 | 0 | 0 | -| ✔️ | [packages/jest-repl/src/__tests__/jest_repl.test.js](#ts-1-packages-jest-repl-src-tests-jestrepl-test-js) | 1 | 1172ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-snapshot/src/__tests__/printSnapshot.test.ts](#ts-2-packages-jest-snapshot-src-tests-printSnapshot-test-ts) | 71 | 1188ms | 71 | 0 | 0 | -| ✔️ | [packages/jest-config/src/__tests__/Defaults.test.ts](#ts-3-packages-jest-config-src-tests-Defaults-test-ts) | 1 | 672ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-resolve/src/__tests__/resolve.test.ts](#ts-4-packages-jest-resolve-src-tests-resolve-test-ts) | 16 | 1308ms | 16 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/matchers-toEqual.property.test.ts](#ts-5-packages-expect-src-tests-matchers-toEqual-property-test-ts) | 2 | 1062ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/SummaryReporter.test.js](#ts-6-packages-jest-reporters-src-tests-SummaryReporter-test-js) | 4 | 366ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-config/src/__tests__/readConfigs.test.ts](#ts-7-packages-jest-config-src-tests-readConfigs-test-ts) | 3 | 135ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/generateEmptyCoverage.test.js](#ts-8-packages-jest-reporters-src-tests-generateEmptyCoverage-test-js) | 3 | 1129ms | 3 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/asymmetricMatchers.test.ts](#ts-9-packages-expect-src-tests-asymmetricMatchers-test-ts) | 38 | 207ms | 38 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/CoverageReporter.test.js](#ts-10-packages-jest-reporters-src-tests-CoverageReporter-test-js) | 12 | 397ms | 12 | 0 | 0 | -| ✔️ | [packages/jest-snapshot/src/__tests__/InlineSnapshots.test.ts](#ts-11-packages-jest-snapshot-src-tests-InlineSnapshots-test-ts) | 22 | 1149ms | 22 | 0 | 0 | -| ✔️ | [packages/jest-config/src/__tests__/readConfig.test.ts](#ts-12-packages-jest-config-src-tests-readConfig-test-ts) | 1 | 76ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-watcher/src/lib/__tests__/scroll.test.ts](#ts-13-packages-jest-watcher-src-lib-tests-scroll-test-ts) | 5 | 57ms | 5 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/toThrowMatchers.test.ts](#ts-14-packages-expect-src-tests-toThrowMatchers-test-ts) | 98 | 257ms | 98 | 0 | 0 | -| ✔️ | [packages/jest-validate/src/__tests__/validate.test.ts](#ts-15-packages-jest-validate-src-tests-validate-test-ts) | 23 | 283ms | 23 | 0 | 0 | -| ✔️ | [packages/jest-snapshot/src/__tests__/SnapshotResolver.test.ts](#ts-16-packages-jest-snapshot-src-tests-SnapshotResolver-test-ts) | 10 | 98ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/CoverageWorker.test.js](#ts-17-packages-jest-reporters-src-tests-CoverageWorker-test-js) | 2 | 199ms | 2 | 0 | 0 | -| ✔️ | [packages/babel-jest/src/__tests__/index.ts](#ts-18-packages-babel-jest-src-tests-index-ts) | 6 | 371ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-config/src/__tests__/resolveConfigPath.test.ts](#ts-19-packages-jest-config-src-tests-resolveConfigPath-test-ts) | 10 | 183ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/VerboseReporter.test.js](#ts-20-packages-jest-reporters-src-tests-VerboseReporter-test-js) | 11 | 425ms | 11 | 0 | 0 | -| ✔️ | [packages/jest-snapshot/src/__tests__/utils.test.ts](#ts-21-packages-jest-snapshot-src-tests-utils-test-ts) | 26 | 214ms | 26 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/NotifyReporter.test.ts](#ts-22-packages-jest-reporters-src-tests-NotifyReporter-test-ts) | 18 | 166ms | 18 | 0 | 0 | -| ✔️ | [packages/jest-repl/src/__tests__/runtime_cli.test.js](#ts-23-packages-jest-repl-src-tests-runtimecli-test-js) | 4 | 4094.0000000000005ms | 4 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/extend.test.ts](#ts-24-packages-expect-src-tests-extend-test-ts) | 10 | 99ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-source-map/src/__tests__/getCallsite.test.ts](#ts-25-packages-jest-source-map-src-tests-getCallsite-test-ts) | 3 | 86ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-config/src/__tests__/setFromArgv.test.ts](#ts-26-packages-jest-config-src-tests-setFromArgv-test-ts) | 4 | 53ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-watcher/src/lib/__tests__/prompt.test.ts](#ts-27-packages-jest-watcher-src-lib-tests-prompt-test-ts) | 3 | 91ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-docblock/src/__tests__/index.test.ts](#ts-28-packages-jest-docblock-src-tests-index-test-ts) | 36 | 177ms | 36 | 0 | 0 | -| ✔️ | [packages/jest-snapshot/src/__tests__/dedentLines.test.ts](#ts-29-packages-jest-snapshot-src-tests-dedentLines-test-ts) | 17 | 94ms | 17 | 0 | 0 | -| ✔️ | [packages/jest-config/src/__tests__/getMaxWorkers.test.ts](#ts-30-packages-jest-config-src-tests-getMaxWorkers-test-ts) | 7 | 67ms | 7 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/utils.test.ts](#ts-31-packages-jest-reporters-src-tests-utils-test-ts) | 10 | 85ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-snapshot/src/__tests__/throwMatcher.test.ts](#ts-32-packages-jest-snapshot-src-tests-throwMatcher-test-ts) | 3 | 481ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-snapshot/src/__tests__/matcher.test.ts](#ts-33-packages-jest-snapshot-src-tests-matcher-test-ts) | 1 | 131ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-config/src/__tests__/validatePattern.test.ts](#ts-34-packages-jest-config-src-tests-validatePattern-test-ts) | 4 | 52ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-resolve/src/__tests__/isBuiltinModule.test.ts](#ts-35-packages-jest-resolve-src-tests-isBuiltinModule-test-ts) | 4 | 36ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-globals/src/__tests__/index.ts](#ts-36-packages-jest-globals-src-tests-index-ts) | 1 | 533ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-regex-util/src/__tests__/index.test.ts](#ts-37-packages-jest-regex-util-src-tests-index-test-ts) | 8 | 56ms | 8 | 0 | 0 | -| ✔️ | [packages/jest-snapshot/src/__tests__/mockSerializer.test.ts](#ts-38-packages-jest-snapshot-src-tests-mockSerializer-test-ts) | 10 | 45ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/getWatermarks.test.ts](#ts-39-packages-jest-reporters-src-tests-getWatermarks-test-ts) | 2 | 37ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/DefaultReporter.test.js](#ts-40-packages-jest-reporters-src-tests-DefaultReporter-test-js) | 2 | 148ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/getResultHeader.test.js](#ts-41-packages-jest-reporters-src-tests-getResultHeader-test-js) | 4 | 30ms | 4 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/toEqual-dom.test.ts](#ts-42-packages-expect-src-tests-toEqual-dom-test-ts) | 12 | 99ms | 12 | 0 | 0 | -| ✔️ | [packages/jest-environment-node/src/__tests__/node_environment.test.ts](#ts-43-packages-jest-environment-node-src-tests-nodeenvironment-test-ts) | 6 | 184ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/getSnapshotStatus.test.js](#ts-44-packages-jest-reporters-src-tests-getSnapshotStatus-test-js) | 3 | 28ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-validate/src/__tests__/validateCLIOptions.test.js](#ts-45-packages-jest-validate-src-tests-validateCLIOptions-test-js) | 6 | 83ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/getSnapshotSummary.test.js](#ts-46-packages-jest-reporters-src-tests-getSnapshotSummary-test-js) | 4 | 49ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-watcher/src/lib/__tests__/formatTestNameByPattern.test.ts](#ts-47-packages-jest-watcher-src-lib-tests-formatTestNameByPattern-test-ts) | 11 | 129ms | 11 | 0 | 0 | -| ✔️ | [packages/jest-transform/src/__tests__/shouldInstrument.test.ts](#ts-48-packages-jest-transform-src-tests-shouldInstrument-test-ts) | 25 | 155ms | 25 | 0 | 0 | -| ✔️ | [packages/jest-transform/src/__tests__/ScriptTransformer.test.ts](#ts-49-packages-jest-transform-src-tests-ScriptTransformer-test-ts) | 22 | 1660ms | 22 | 0 | 0 | -| ✔️ | [packages/jest-circus/src/__tests__/baseTest.test.ts](#ts-50-packages-jest-circus-src-tests-baseTest-test-ts) | 2 | 2902ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-mock/src/__tests__/index.test.ts](#ts-51-packages-jest-mock-src-tests-index-test-ts) | 84 | 509ms | 84 | 0 | 0 | -| ✔️ | [packages/jest-circus/src/__tests__/hooks.test.ts](#ts-52-packages-jest-circus-src-tests-hooks-test-ts) | 3 | 3762ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_module.test.js](#ts-53-packages-jest-runtime-src-tests-runtimerequiremodule-test-js) | 27 | 2439ms | 27 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_mock.test.js](#ts-54-packages-jest-runtime-src-tests-runtimemock-test-js) | 4 | 743ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-circus/src/__tests__/circusItTestError.test.ts](#ts-55-packages-jest-circus-src-tests-circusItTestError-test-ts) | 8 | 300ms | 8 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/base/__tests__/BaseWorkerPool.test.js](#ts-56-packages-jest-worker-src-base-tests-BaseWorkerPool-test-js) | 11 | 653ms | 11 | 0 | 0 | -| ✔️ | [packages/pretty-format/src/__tests__/Immutable.test.ts](#ts-57-packages-pretty-format-src-tests-Immutable-test-ts) | 111 | 443ms | 111 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/Runtime-sourceMaps.test.js](#ts-58-packages-jest-runtime-src-tests-Runtime-sourceMaps-test-js) | 1 | 584ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-environment-jsdom/src/__tests__/jsdom_environment.test.ts](#ts-59-packages-jest-environment-jsdom-src-tests-jsdomenvironment-test-ts) | 2 | 783ms | 2 | 0 | 0 | -| ✔️ | [packages/babel-plugin-jest-hoist/src/__tests__/hoistPlugin.test.ts](#ts-60-packages-babel-plugin-jest-hoist-src-tests-hoistPlugin-test-ts) | 4 | 347ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/workers/__tests__/ChildProcessWorker.test.js](#ts-61-packages-jest-worker-src-workers-tests-ChildProcessWorker-test-js) | 17 | 184ms | 17 | 0 | 0 | -| ✔️ | [packages/jest-each/src/__tests__/array.test.ts](#ts-62-packages-jest-each-src-tests-array-test-ts) | 159 | 192ms | 159 | 0 | 0 | -| ✔️ | [packages/jest-each/src/__tests__/template.test.ts](#ts-63-packages-jest-each-src-tests-template-test-ts) | 242 | 483ms | 242 | 0 | 0 | -| ✔️ | [packages/pretty-format/src/__tests__/react.test.tsx](#ts-64-packages-pretty-format-src-tests-react-test-tsx) | 55 | 325ms | 55 | 0 | 0 | -| ✔️ | [packages/jest-circus/src/__tests__/afterAll.test.ts](#ts-65-packages-jest-circus-src-tests-afterAll-test-ts) | 6 | 5755ms | 6 | 0 | 0 | -| ✔️ | [packages/pretty-format/src/__tests__/prettyFormat.test.ts](#ts-66-packages-pretty-format-src-tests-prettyFormat-test-ts) | 86 | 219ms | 86 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/__tests__/Farm.test.js](#ts-67-packages-jest-worker-src-tests-Farm-test-js) | 10 | 158ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/workers/__tests__/threadChild.test.js](#ts-68-packages-jest-worker-src-workers-tests-threadChild-test-js) | 10 | 120ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/queueRunner.test.ts](#ts-69-packages-jest-jasmine2-src-tests-queueRunner-test-ts) | 6 | 93ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/workers/__tests__/NodeThreadsWorker.test.js](#ts-70-packages-jest-worker-src-workers-tests-NodeThreadsWorker-test-js) | 15 | 258ms | 15 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/workers/__tests__/processChild.test.js](#ts-71-packages-jest-worker-src-workers-tests-processChild-test-js) | 10 | 135ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-runner/src/__tests__/testRunner.test.ts](#ts-72-packages-jest-runner-src-tests-testRunner-test-ts) | 2 | 905ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-circus/src/__tests__/hooksError.test.ts](#ts-73-packages-jest-circus-src-tests-hooksError-test-ts) | 32 | 127ms | 32 | 0 | 0 | -| ✔️ | [packages/jest-serializer/src/__tests__/index.test.ts](#ts-74-packages-jest-serializer-src-tests-index-test-ts) | 17 | 158ms | 17 | 0 | 0 | -| ✔️ | [packages/jest-console/src/__tests__/bufferedConsole.test.ts](#ts-75-packages-jest-console-src-tests-bufferedConsole-test-ts) | 20 | 171ms | 20 | 0 | 0 | -| ✔️ | [packages/jest-console/src/__tests__/CustomConsole.test.ts](#ts-76-packages-jest-console-src-tests-CustomConsole-test-ts) | 23 | 115ms | 23 | 0 | 0 | -| ✔️ | [packages/pretty-format/src/__tests__/DOMCollection.test.ts](#ts-77-packages-pretty-format-src-tests-DOMCollection-test-ts) | 10 | 64ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-circus/src/__tests__/circusItTodoTestError.test.ts](#ts-78-packages-jest-circus-src-tests-circusItTodoTestError-test-ts) | 3 | 81ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-test-sequencer/src/__tests__/test_sequencer.test.js](#ts-79-packages-jest-test-sequencer-src-tests-testsequencer-test-js) | 8 | 251ms | 8 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/Suite.test.ts](#ts-80-packages-jest-jasmine2-src-tests-Suite-test-ts) | 1 | 84ms | 1 | 0 | 0 | -| ✔️ | [packages/pretty-format/src/__tests__/AsymmetricMatcher.test.ts](#ts-81-packages-pretty-format-src-tests-AsymmetricMatcher-test-ts) | 38 | 137ms | 38 | 0 | 0 | -| ✔️ | [packages/pretty-format/src/__tests__/ConvertAnsi.test.ts](#ts-82-packages-pretty-format-src-tests-ConvertAnsi-test-ts) | 6 | 43ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-console/src/__tests__/getConsoleOutput.test.ts](#ts-83-packages-jest-console-src-tests-getConsoleOutput-test-ts) | 12 | 56ms | 12 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/expectationResultFactory.test.ts](#ts-84-packages-jest-jasmine2-src-tests-expectationResultFactory-test-ts) | 7 | 70ms | 7 | 0 | 0 | -| ✔️ | [packages/jest-each/src/__tests__/index.test.ts](#ts-85-packages-jest-each-src-tests-index-test-ts) | 10 | 44ms | 10 | 0 | 0 | -| ✔️ | [packages/pretty-format/src/__tests__/DOMElement.test.ts](#ts-86-packages-pretty-format-src-tests-DOMElement-test-ts) | 28 | 148ms | 28 | 0 | 0 | -| ✔️ | [packages/jest-test-result/src/__tests__/formatTestResults.test.ts](#ts-87-packages-jest-test-result-src-tests-formatTestResults-test-ts) | 1 | 53ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/__tests__/index.test.js](#ts-88-packages-jest-worker-src-tests-index-test-js) | 8 | 230ms | 8 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/hooksError.test.ts](#ts-89-packages-jest-jasmine2-src-tests-hooksError-test-ts) | 32 | 51ms | 32 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/reporter.test.ts](#ts-90-packages-jest-jasmine2-src-tests-reporter-test-ts) | 1 | 107ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/todoError.test.ts](#ts-91-packages-jest-jasmine2-src-tests-todoError-test-ts) | 3 | 27ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/itTestError.test.ts](#ts-92-packages-jest-jasmine2-src-tests-itTestError-test-ts) | 6 | 32ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/iterators.test.ts](#ts-93-packages-jest-jasmine2-src-tests-iterators-test-ts) | 4 | 43ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/pTimeout.test.ts](#ts-94-packages-jest-jasmine2-src-tests-pTimeout-test-ts) | 3 | 44ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-create-cache-key-function/src/__tests__/index.test.ts](#ts-95-packages-jest-create-cache-key-function-src-tests-index-test-ts) | 1 | 75ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/concurrent.test.ts](#ts-96-packages-jest-jasmine2-src-tests-concurrent-test-ts) | 3 | 24ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/itToTestAlias.test.ts](#ts-97-packages-jest-jasmine2-src-tests-itToTestAlias-test-ts) | 1 | 23ms | 1 | 0 | 0 | -| ✔️ | [packages/pretty-format/src/__tests__/ReactElement.test.ts](#ts-98-packages-pretty-format-src-tests-ReactElement-test-ts) | 3 | 64ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/__tests__/FifoQueue.test.js](#ts-99-packages-jest-worker-src-tests-FifoQueue-test-js) | 3 | 48ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/__tests__/PriorityQueue.test.js](#ts-100-packages-jest-worker-src-tests-PriorityQueue-test-js) | 5 | 63ms | 5 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/SearchSource.test.ts](#ts-101-packages-jest-core-src-tests-SearchSource-test-ts) | 27 | 2596ms | 27 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/matchers.test.js](#ts-102-packages-expect-src-tests-matchers-test-js) | 592 | 862ms | 592 | 0 | 0 | -| ✔️ | [e2e/__tests__/jestRequireActual.test.ts](#ts-103-e2e-tests-jestRequireActual-test-ts) | 1 | 1665ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/watch.test.js](#ts-104-packages-jest-core-src-tests-watch-test-js) | 80 | 6755ms | 80 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_module_or_mock_transitive_deps.test.js](#ts-105-packages-jest-runtime-src-tests-runtimerequiremoduleormocktransitivedeps-test-js) | 6 | 2366ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/watchFileChanges.test.ts](#ts-106-packages-jest-core-src-tests-watchFileChanges-test-ts) | 1 | 1514ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/__tests__/index.test.js](#ts-107-packages-jest-haste-map-src-tests-index-test-js) | 44 | 1145ms | 44 | 0 | 0 | -| ✔️ | [e2e/__tests__/coverageHandlebars.test.ts](#ts-108-e2e-tests-coverageHandlebars-test-ts) | 1 | 1873ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/compareDomNodes.test.ts](#ts-109-e2e-tests-compareDomNodes-test-ts) | 1 | 1407ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/jestEnvironmentJsdom.test.ts](#ts-110-e2e-tests-jestEnvironmentJsdom-test-ts) | 1 | 1744ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/resolve.test.ts](#ts-111-e2e-tests-resolve-test-ts) | 1 | 1863ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/snapshot.test.ts](#ts-112-e2e-tests-snapshot-test-ts) | 9 | 13899ms | 9 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_module_or_mock.test.js](#ts-113-packages-jest-runtime-src-tests-runtimerequiremoduleormock-test-js) | 17 | 1223ms | 17 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_mock.test.js](#ts-114-packages-jest-runtime-src-tests-runtimerequiremock-test-js) | 13 | 962ms | 13 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_node_path.test.js](#ts-115-packages-jest-runtime-src-tests-runtimenodepath-test-js) | 4 | 1088ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_resolve.test.ts](#ts-116-packages-jest-runtime-src-tests-runtimerequireresolve-test-ts) | 5 | 707ms | 5 | 0 | 0 | -| ✔️ | [packages/jest-leak-detector/src/__tests__/index.test.ts](#ts-117-packages-jest-leak-detector-src-tests-index-test-ts) | 6 | 986ms | 6 | 0 | 0 | -| ✔️ | [e2e/__tests__/jasmineAsyncWithPendingDuringTest.ts](#ts-118-e2e-tests-jasmineAsyncWithPendingDuringTest-ts) | 2 | 72ms | 1 | 1 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/TestScheduler.test.js](#ts-119-packages-jest-core-src-tests-TestScheduler-test-js) | 8 | 520ms | 8 | 0 | 0 | -| ✔️ | [e2e/__tests__/expectInVm.test.ts](#ts-120-e2e-tests-expectInVm-test-ts) | 1 | 1527ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_actual.test.js](#ts-121-packages-jest-runtime-src-tests-runtimerequireactual-test-js) | 2 | 478ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_cache.test.js](#ts-122-packages-jest-runtime-src-tests-runtimerequirecache-test-js) | 2 | 454ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_module_directories.test.js](#ts-123-packages-jest-runtime-src-tests-runtimemoduledirectories-test-js) | 4 | 525ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_internal_module.test.js](#ts-124-packages-jest-runtime-src-tests-runtimeinternalmodule-test-js) | 4 | 727ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-cli/src/__tests__/cli/args.test.ts](#ts-125-packages-jest-cli-src-tests-cli-args-test-ts) | 17 | 345ms | 17 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_jest_spy_on.test.js](#ts-126-packages-jest-runtime-src-tests-runtimejestspyon-test-js) | 2 | 521ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-resolve-dependencies/src/__tests__/dependency_resolver.test.ts](#ts-127-packages-jest-resolve-dependencies-src-tests-dependencyresolver-test-ts) | 11 | 666ms | 11 | 0 | 0 | -| ✔️ | [packages/jest-message-util/src/__tests__/messages.test.ts](#ts-128-packages-jest-message-util-src-tests-messages-test-ts) | 11 | 205ms | 11 | 0 | 0 | -| ✔️ | [packages/jest-diff/src/__tests__/diff.test.ts](#ts-129-packages-jest-diff-src-tests-diff-test-ts) | 107 | 625ms | 107 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/watchTestNamePatternMode.test.js](#ts-130-packages-jest-core-src-tests-watchTestNamePatternMode-test-js) | 1 | 246ms | 1 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/spyMatchers.test.ts](#ts-131-packages-expect-src-tests-spyMatchers-test-ts) | 248 | 395ms | 248 | 0 | 0 | -| ❌ | [e2e/__tests__/jestChangedFiles.test.ts](#ts-132-e2e-tests-jestChangedFiles-test-ts) | 10 | 9045ms | 9 | 0 | 1 | -| ✔️ | [packages/jest-matcher-utils/src/__tests__/index.test.ts](#ts-133-packages-jest-matcher-utils-src-tests-index-test-ts) | 48 | 391ms | 48 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/watchFilenamePatternMode.test.js](#ts-134-packages-jest-core-src-tests-watchFilenamePatternMode-test-js) | 2 | 165ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_create_mock_from_module.test.js](#ts-135-packages-jest-runtime-src-tests-runtimecreatemockfrommodule-test-js) | 3 | 606ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_environment.test.js](#ts-136-packages-jest-runtime-src-tests-runtimeenvironment-test-js) | 2 | 497ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/__tests__/includes_dotfiles.test.ts](#ts-137-packages-jest-haste-map-src-tests-includesdotfiles-test-ts) | 1 | 337ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/crawlers/__tests__/watchman.test.js](#ts-138-packages-jest-haste-map-src-crawlers-tests-watchman-test-js) | 8 | 153ms | 8 | 0 | 0 | -| ✔️ | [packages/jest-fake-timers/src/__tests__/legacyFakeTimers.test.ts](#ts-139-packages-jest-fake-timers-src-tests-legacyFakeTimers-test-ts) | 50 | 302ms | 50 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_jest_fn.js](#ts-140-packages-jest-runtime-src-tests-runtimejestfn-js) | 4 | 479ms | 4 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/matchers-toStrictEqual.property.test.ts](#ts-141-packages-expect-src-tests-matchers-toStrictEqual-property-test-ts) | 3 | 394ms | 3 | 0 | 0 | -| ✔️ | [packages/diff-sequences/src/__tests__/index.property.test.ts](#ts-142-packages-diff-sequences-src-tests-index-property-test-ts) | 7 | 357ms | 7 | 0 | 0 | -| ✔️ | [packages/jest-fake-timers/src/__tests__/modernFakeTimers.test.ts](#ts-143-packages-jest-fake-timers-src-tests-modernFakeTimers-test-ts) | 40 | 317ms | 40 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/matchers-toContain.property.test.ts](#ts-144-packages-expect-src-tests-matchers-toContain-property-test-ts) | 2 | 236ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_wrap.js](#ts-145-packages-jest-runtime-src-tests-runtimewrap-js) | 2 | 263ms | 2 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/matchers-toContainEqual.property.test.ts](#ts-146-packages-expect-src-tests-matchers-toContainEqual-property-test-ts) | 2 | 287ms | 2 | 0 | 0 | -| ✔️ | [packages/diff-sequences/src/__tests__/index.test.ts](#ts-147-packages-diff-sequences-src-tests-index-test-ts) | 48 | 195ms | 48 | 0 | 0 | -| ✔️ | [packages/jest-get-type/src/__tests__/getType.test.ts](#ts-148-packages-jest-get-type-src-tests-getType-test-ts) | 14 | 45ms | 14 | 0 | 0 | -| ✔️ | [packages/jest-cli/src/init/__tests__/init.test.js](#ts-149-packages-jest-cli-src-init-tests-init-test-js) | 24 | 119ms | 24 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_module_no_ext.test.js](#ts-150-packages-jest-runtime-src-tests-runtimerequiremodulenoext-test-js) | 1 | 261ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-util/src/__tests__/deepCyclicCopy.test.ts](#ts-151-packages-jest-util-src-tests-deepCyclicCopy-test-ts) | 12 | 86ms | 12 | 0 | 0 | -| ✔️ | [e2e/__tests__/version.test.ts](#ts-152-e2e-tests-version-test-ts) | 1 | 138ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-util/src/__tests__/createProcessObject.test.ts](#ts-153-packages-jest-util-src-tests-createProcessObject-test-ts) | 4 | 81ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/instrumentation.test.ts](#ts-154-packages-jest-runtime-src-tests-instrumentation-test-ts) | 1 | 275ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/runJest.test.js](#ts-155-packages-jest-core-src-tests-runJest-test-js) | 2 | 261ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-matcher-utils/src/__tests__/Replaceable.test.ts](#ts-156-packages-jest-matcher-utils-src-tests-Replaceable-test-ts) | 17 | 111ms | 17 | 0 | 0 | -| ✔️ | [packages/jest-util/src/__tests__/formatTime.test.ts](#ts-157-packages-jest-util-src-tests-formatTime-test-ts) | 11 | 82ms | 11 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/__tests__/thread-integration.test.js](#ts-158-packages-jest-worker-src-tests-thread-integration-test-js) | 6 | 114ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/__tests__/worker.test.js](#ts-159-packages-jest-haste-map-src-tests-worker-test-js) | 7 | 100ms | 7 | 0 | 0 | -| ✔️ | [packages/jest-matcher-utils/src/__tests__/printDiffOrStringify.test.ts](#ts-160-packages-jest-matcher-utils-src-tests-printDiffOrStringify-test-ts) | 21 | 114ms | 21 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/utils.test.ts](#ts-161-packages-expect-src-tests-utils-test-ts) | 41 | 147ms | 41 | 0 | 0 | -| ✔️ | [packages/jest-matcher-utils/src/__tests__/deepCyclicCopyReplaceable.test.ts](#ts-162-packages-jest-matcher-utils-src-tests-deepCyclicCopyReplaceable-test-ts) | 11 | 49ms | 11 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/isError.test.ts](#ts-163-packages-expect-src-tests-isError-test-ts) | 4 | 43ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-get-type/src/__tests__/isPrimitive.test.ts](#ts-164-packages-jest-get-type-src-tests-isPrimitive-test-ts) | 18 | 36ms | 18 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/crawlers/__tests__/node.test.js](#ts-165-packages-jest-haste-map-src-crawlers-tests-node-test-js) | 10 | 170ms | 10 | 0 | 0 | -| ❌ | [e2e/__tests__/onlyChanged.test.ts](#ts-166-e2e-tests-onlyChanged-test-ts) | 9 | 22281ms | 8 | 0 | 1 | -| ✔️ | [packages/jest-diff/src/__tests__/joinAlignedDiffs.test.ts](#ts-167-packages-jest-diff-src-tests-joinAlignedDiffs-test-ts) | 6 | 44ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/SnapshotInteractiveMode.test.js](#ts-168-packages-jest-core-src-tests-SnapshotInteractiveMode-test-js) | 13 | 89ms | 13 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/Runtime-statics.test.js](#ts-169-packages-jest-runtime-src-tests-Runtime-statics-test-js) | 2 | 162ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-diff/src/__tests__/getAlignedDiffs.test.ts](#ts-170-packages-jest-diff-src-tests-getAlignedDiffs-test-ts) | 24 | 72ms | 24 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/assertionCounts.test.ts](#ts-171-packages-expect-src-tests-assertionCounts-test-ts) | 6 | 60ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/lib/__tests__/getPlatformExtension.test.js](#ts-172-packages-jest-haste-map-src-lib-tests-getPlatformExtension-test-js) | 1 | 35ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/lib/__tests__/isRegExpSupported.test.js](#ts-173-packages-jest-haste-map-src-lib-tests-isRegExpSupported-test-js) | 2 | 31ms | 2 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/stacktrace.test.ts](#ts-174-packages-expect-src-tests-stacktrace-test-ts) | 3 | 69ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/__tests__/process-integration.test.js](#ts-175-packages-jest-worker-src-tests-process-integration-test-js) | 5 | 62ms | 5 | 0 | 0 | -| ✔️ | [packages/jest-core/src/lib/__tests__/isValidPath.test.ts](#ts-176-packages-jest-core-src-lib-tests-isValidPath-test-ts) | 3 | 166ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-util/src/__tests__/errorWithStack.test.ts](#ts-177-packages-jest-util-src-tests-errorWithStack-test-ts) | 1 | 41ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-util/src/__tests__/isInteractive.test.ts](#ts-178-packages-jest-util-src-tests-isInteractive-test-ts) | 2 | 35ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-diff/src/__tests__/diffStringsRaw.test.ts](#ts-179-packages-jest-diff-src-tests-diffStringsRaw-test-ts) | 2 | 55ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-util/src/__tests__/globsToMatcher.test.ts](#ts-180-packages-jest-util-src-tests-globsToMatcher-test-ts) | 4 | 56ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/testSchedulerHelper.test.js](#ts-181-packages-jest-core-src-tests-testSchedulerHelper-test-js) | 12 | 48ms | 12 | 0 | 0 | -| ✔️ | [packages/jest-util/src/__tests__/installCommonGlobals.test.ts](#ts-182-packages-jest-util-src-tests-installCommonGlobals-test-ts) | 2 | 68ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/__tests__/get_mock_name.test.js](#ts-183-packages-jest-haste-map-src-tests-getmockname-test-js) | 1 | 22ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/__tests__/WorkerPool.test.js](#ts-184-packages-jest-worker-src-tests-WorkerPool-test-js) | 3 | 51ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/lib/__tests__/dependencyExtractor.test.js](#ts-185-packages-jest-haste-map-src-lib-tests-dependencyExtractor-test-js) | 15 | 56ms | 15 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/lib/__tests__/normalizePathSep.test.js](#ts-186-packages-jest-haste-map-src-lib-tests-normalizePathSep-test-js) | 2 | 35ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/lib/__tests__/fast_path.test.js](#ts-187-packages-jest-haste-map-src-lib-tests-fastpath-test-js) | 5 | 29ms | 5 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/FailedTestsCache.test.js](#ts-188-packages-jest-core-src-tests-FailedTestsCache-test-js) | 1 | 25ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/getNoTestsFoundMessage.test.js](#ts-189-packages-jest-core-src-tests-getNoTestsFoundMessage-test-js) | 5 | 61ms | 5 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/globals.test.ts](#ts-190-packages-jest-core-src-tests-globals-test-ts) | 1 | 22ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-core/src/lib/__tests__/logDebugMessages.test.ts](#ts-191-packages-jest-core-src-lib-tests-logDebugMessages-test-ts) | 3 | 48ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-util/src/__tests__/isPromise.test.ts](#ts-192-packages-jest-util-src-tests-isPromise-test-ts) | 10 | 30ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-cli/src/init/__tests__/modifyPackageJson.test.ts](#ts-193-packages-jest-cli-src-init-tests-modifyPackageJson-test-ts) | 4 | 30ms | 4 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/symbolInObjects.test.ts](#ts-194-packages-expect-src-tests-symbolInObjects-test-ts) | 3 | 33ms | 3 | 0 | 0 | -| ✔️ | [e2e/test-in-root/test.js](#ts-195-e2e-test-in-root-test-js) | 1 | 37ms | 1 | 0 | 0 | -| ✔️ | [e2e/test-in-root/spec.js](#ts-196-e2e-test-in-root-spec-js) | 1 | 19ms | 1 | 0 | 0 | -| ✔️ | [e2e/v8-coverage/empty-sourcemap/test.ts](#ts-197-e2e-v8-coverage-empty-sourcemap-test-ts) | 1 | 31ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-matcher-utils/src/__tests__/deepCyclicCopyReplaceableDom.test.ts](#ts-198-packages-jest-matcher-utils-src-tests-deepCyclicCopyReplaceableDom-test-ts) | 2 | 48ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/nativeEsmTypescript.test.ts](#ts-199-e2e-tests-nativeEsmTypescript-test-ts) | 1 | 956ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/coverageRemapping.test.ts](#ts-200-e2e-tests-coverageRemapping-test-ts) | 1 | 12701ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/globalTeardown.test.ts](#ts-201-e2e-tests-globalTeardown-test-ts) | 7 | 11886ms | 7 | 0 | 0 | -| ✔️ | [e2e/__tests__/multiProjectRunner.test.ts](#ts-202-e2e-tests-multiProjectRunner-test-ts) | 14 | 16360ms | 14 | 0 | 0 | -| ✔️ | [e2e/__tests__/toMatchSnapshot.test.ts](#ts-203-e2e-tests-toMatchSnapshot-test-ts) | 9 | 17025ms | 9 | 0 | 0 | -| ✔️ | [e2e/__tests__/detectOpenHandles.ts](#ts-204-e2e-tests-detectOpenHandles-ts) | 8 | 7528ms | 8 | 0 | 0 | -| ✔️ | [e2e/__tests__/failures.test.ts](#ts-205-e2e-tests-failures-test-ts) | 7 | 10353ms | 7 | 0 | 0 | -| ✔️ | [e2e/__tests__/console.test.ts](#ts-206-e2e-tests-console-test-ts) | 7 | 8071.999999999999ms | 7 | 0 | 0 | -| ✔️ | [e2e/__tests__/globals.test.ts](#ts-207-e2e-tests-globals-test-ts) | 10 | 7505ms | 10 | 0 | 0 | -| ✔️ | [e2e/__tests__/coverageThreshold.test.ts](#ts-208-e2e-tests-coverageThreshold-test-ts) | 5 | 4868ms | 5 | 0 | 0 | -| ✔️ | [e2e/__tests__/testPathPatternReporterMessage.test.ts](#ts-209-e2e-tests-testPathPatternReporterMessage-test-ts) | 1 | 3076ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/filter.test.ts](#ts-210-e2e-tests-filter-test-ts) | 7 | 5422ms | 7 | 0 | 0 | -| ✔️ | [e2e/__tests__/selectProjects.test.ts](#ts-211-e2e-tests-selectProjects-test-ts) | 18 | 5236ms | 18 | 0 | 0 | -| ✔️ | [e2e/__tests__/mockNames.test.ts](#ts-212-e2e-tests-mockNames-test-ts) | 8 | 6771ms | 8 | 0 | 0 | -| ✔️ | [e2e/__tests__/stackTrace.test.ts](#ts-213-e2e-tests-stackTrace-test-ts) | 7 | 4725ms | 7 | 0 | 0 | -| ✔️ | [e2e/__tests__/each.test.ts](#ts-214-e2e-tests-each-test-ts) | 7 | 4721ms | 7 | 0 | 0 | -| ✔️ | [e2e/__tests__/toThrowErrorMatchingInlineSnapshot.test.ts](#ts-215-e2e-tests-toThrowErrorMatchingInlineSnapshot-test-ts) | 4 | 3562ms | 4 | 0 | 0 | -| ✔️ | [e2e/__tests__/watchModeNoAccess.test.ts](#ts-216-e2e-tests-watchModeNoAccess-test-ts) | 1 | 4370ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/pnp.test.ts](#ts-217-e2e-tests-pnp-test-ts) | 1 | 2715ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/declarationErrors.test.ts](#ts-218-e2e-tests-declarationErrors-test-ts) | 3 | 2389ms | 3 | 0 | 0 | -| ✔️ | [e2e/__tests__/wrongEnv.test.ts](#ts-219-e2e-tests-wrongEnv-test-ts) | 5 | 3877ms | 5 | 0 | 0 | -| ✔️ | [e2e/__tests__/setupFilesAfterEnvConfig.test.ts](#ts-220-e2e-tests-setupFilesAfterEnvConfig-test-ts) | 2 | 1967ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/noTestsFound.test.ts](#ts-221-e2e-tests-noTestsFound-test-ts) | 5 | 2739ms | 5 | 0 | 0 | -| ✔️ | [e2e/__tests__/customMatcherStackTrace.test.ts](#ts-222-e2e-tests-customMatcherStackTrace-test-ts) | 2 | 1539ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/nestedTestDefinitions.test.ts](#ts-223-e2e-tests-nestedTestDefinitions-test-ts) | 4 | 4641ms | 4 | 0 | 0 | -| ✔️ | [e2e/__tests__/autoClearMocks.test.ts](#ts-224-e2e-tests-autoClearMocks-test-ts) | 2 | 1681ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/forceExit.test.ts](#ts-225-e2e-tests-forceExit-test-ts) | 1 | 2208ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/testFailureExitCode.test.ts](#ts-226-e2e-tests-testFailureExitCode-test-ts) | 2 | 4476ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/promiseReject.test.ts](#ts-227-e2e-tests-promiseReject-test-ts) | 1 | 967ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/timerResetMocks.test.ts](#ts-228-e2e-tests-timerResetMocks-test-ts) | 2 | 1878ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/testEnvironmentAsync.test.ts](#ts-229-e2e-tests-testEnvironmentAsync-test-ts) | 1 | 1493ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/resolveNoFileExtensions.test.ts](#ts-230-e2e-tests-resolveNoFileExtensions-test-ts) | 2 | 1263ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/nestedEventLoop.test.ts](#ts-231-e2e-tests-nestedEventLoop-test-ts) | 1 | 1422ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/useStderr.test.ts](#ts-232-e2e-tests-useStderr-test-ts) | 1 | 1352ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/domDiffing.test.ts](#ts-233-e2e-tests-domDiffing-test-ts) | 1 | 1361ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/consoleAfterTeardown.test.ts](#ts-234-e2e-tests-consoleAfterTeardown-test-ts) | 1 | 1341ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/testInRoot.test.ts](#ts-235-e2e-tests-testInRoot-test-ts) | 1 | 1008.9999999999999ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/requireMainIsolateModules.test.ts](#ts-236-e2e-tests-requireMainIsolateModules-test-ts) | 1 | 976ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/clearCache.test.ts](#ts-237-e2e-tests-clearCache-test-ts) | 2 | 1004ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/runtimeInternalModuleRegistry.test.ts](#ts-238-e2e-tests-runtimeInternalModuleRegistry-test-ts) | 1 | 1202ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/resolveNodeModule.test.ts](#ts-239-e2e-tests-resolveNodeModule-test-ts) | 1 | 943ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/setImmediate.test.ts](#ts-240-e2e-tests-setImmediate-test-ts) | 1 | 904ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/emptySuiteError.test.ts](#ts-241-e2e-tests-emptySuiteError-test-ts) | 1 | 885ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/badSourceMap.test.ts](#ts-242-e2e-tests-badSourceMap-test-ts) | 1 | 858ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/timerUseRealTimers.test.ts](#ts-243-e2e-tests-timerUseRealTimers-test-ts) | 1 | 1018ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/global-mutation.test.ts](#ts-244-e2e-tests-global-mutation-test-ts) | 1 | 40ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/runProgrammatically.test.ts](#ts-245-e2e-tests-runProgrammatically-test-ts) | 2 | 575ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/symbol.test.ts](#ts-246-e2e-tests-symbol-test-ts) | 1 | 49ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/hasteMapMockChanged.test.ts](#ts-247-e2e-tests-hasteMapMockChanged-test-ts) | 1 | 379ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/existentRoots.test.ts](#ts-248-e2e-tests-existentRoots-test-ts) | 4 | 627ms | 4 | 0 | 0 | -| ✔️ | [e2e/__tests__/doneInHooks.test.ts](#ts-249-e2e-tests-doneInHooks-test-ts) | 1 | 855ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/testEnvironmentCircusAsync.test.ts](#ts-250-e2e-tests-testEnvironmentCircusAsync-test-ts) | 1 | 1507ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/moduleNameMapper.test.ts](#ts-251-e2e-tests-moduleNameMapper-test-ts) | 5 | 5395ms | 5 | 0 | 0 | -| ✔️ | [e2e/__tests__/customReporters.test.ts](#ts-252-e2e-tests-customReporters-test-ts) | 9 | 6553ms | 9 | 0 | 0 | -| ✔️ | [e2e/__tests__/findRelatedFiles.test.ts](#ts-253-e2e-tests-findRelatedFiles-test-ts) | 5 | 6230ms | 5 | 0 | 0 | -| ✔️ | [e2e/__tests__/env.test.ts](#ts-254-e2e-tests-env-test-ts) | 6 | 5221ms | 6 | 0 | 0 | -| ✔️ | [e2e/__tests__/globalSetup.test.ts](#ts-255-e2e-tests-globalSetup-test-ts) | 10 | 13926ms | 10 | 0 | 0 | -| ✔️ | [e2e/__tests__/workerForceExit.test.ts](#ts-256-e2e-tests-workerForceExit-test-ts) | 2 | 4751ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/babelPluginJestHoist.test.ts](#ts-257-e2e-tests-babelPluginJestHoist-test-ts) | 1 | 6249ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/coverageTransformInstrumented.test.ts](#ts-258-e2e-tests-coverageTransformInstrumented-test-ts) | 1 | 5029ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/timeoutsLegacy.test.ts](#ts-259-e2e-tests-timeoutsLegacy-test-ts) | 4 | 71ms | 1 | 3 | 0 | -| ✔️ | [e2e/__tests__/asyncRegenerator.test.ts](#ts-260-e2e-tests-asyncRegenerator-test-ts) | 1 | 4127ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/toThrowErrorMatchingSnapshot.test.ts](#ts-261-e2e-tests-toThrowErrorMatchingSnapshot-test-ts) | 5 | 3524ms | 5 | 0 | 0 | -| ✔️ | [e2e/__tests__/testTodo.test.ts](#ts-262-e2e-tests-testTodo-test-ts) | 5 | 3573ms | 5 | 0 | 0 | -| ✔️ | [e2e/__tests__/onlyFailuresNonWatch.test.ts](#ts-263-e2e-tests-onlyFailuresNonWatch-test-ts) | 1 | 2893ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/presets.test.ts](#ts-264-e2e-tests-presets-test-ts) | 2 | 1966ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/expectAsyncMatcher.test.ts](#ts-265-e2e-tests-expectAsyncMatcher-test-ts) | 2 | 2732ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/transform.test.ts](#ts-266-e2e-tests-transform-test-ts) | 16 | 26740ms | 16 | 0 | 0 | -| ✔️ | [e2e/__tests__/chaiAssertionLibrary.ts](#ts-267-e2e-tests-chaiAssertionLibrary-ts) | 1 | 1902ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/stackTraceSourceMapsWithCoverage.test.ts](#ts-268-e2e-tests-stackTraceSourceMapsWithCoverage-test-ts) | 1 | 2444ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/customTestSequencers.test.ts](#ts-269-e2e-tests-customTestSequencers-test-ts) | 3 | 2757ms | 3 | 0 | 0 | -| ✔️ | [e2e/__tests__/beforeAllFiltered.ts](#ts-270-e2e-tests-beforeAllFiltered-ts) | 1 | 958ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/fakePromises.test.ts](#ts-271-e2e-tests-fakePromises-test-ts) | 2 | 1716ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/stackTraceSourceMaps.test.ts](#ts-272-e2e-tests-stackTraceSourceMaps-test-ts) | 1 | 2185ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/dynamicRequireDependencies.ts](#ts-273-e2e-tests-dynamicRequireDependencies-ts) | 1 | 847ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/overrideGlobals.test.ts](#ts-274-e2e-tests-overrideGlobals-test-ts) | 2 | 2045.9999999999998ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/executeTestsOnceInMpr.ts](#ts-275-e2e-tests-executeTestsOnceInMpr-ts) | 1 | 976ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/moduleParentNullInTest.ts](#ts-276-e2e-tests-moduleParentNullInTest-ts) | 1 | 886ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/requireAfterTeardown.test.ts](#ts-277-e2e-tests-requireAfterTeardown-test-ts) | 1 | 921ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/lifecycles.ts](#ts-278-e2e-tests-lifecycles-ts) | 1 | 861ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/hasteMapSha1.test.ts](#ts-279-e2e-tests-hasteMapSha1-test-ts) | 1 | 298ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/json.test.ts](#ts-280-e2e-tests-json-test-ts) | 2 | 29ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/testResultsProcessor.test.ts](#ts-281-e2e-tests-testResultsProcessor-test-ts) | 1 | 910ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/debug.test.ts](#ts-282-e2e-tests-debug-test-ts) | 1 | 899ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/importedGlobals.test.ts](#ts-283-e2e-tests-importedGlobals-test-ts) | 1 | 1043ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/customResolver.test.ts](#ts-284-e2e-tests-customResolver-test-ts) | 1 | 826ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/circularInequality.test.ts](#ts-285-e2e-tests-circularInequality-test-ts) | 1 | 1451ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/injectGlobals.test.ts](#ts-286-e2e-tests-injectGlobals-test-ts) | 2 | 1860ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/skipBeforeAfterAll.test.ts](#ts-287-e2e-tests-skipBeforeAfterAll-test-ts) | 1 | 1061ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/customInlineSnapshotMatchers.test.ts](#ts-288-e2e-tests-customInlineSnapshotMatchers-test-ts) | 1 | 2206ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/regexCharInPath.test.ts](#ts-289-e2e-tests-regexCharInPath-test-ts) | 1 | 962ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/noTestFound.test.ts](#ts-290-e2e-tests-noTestFound-test-ts) | 2 | 1063ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/nativeEsm.test.ts](#ts-291-e2e-tests-nativeEsm-test-ts) | 3 | 905ms | 2 | 1 | 0 | -| ✔️ | [e2e/__tests__/supportsDashedArgs.ts](#ts-292-e2e-tests-supportsDashedArgs-ts) | 2 | 968ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/transformLinkedModules.test.ts](#ts-293-e2e-tests-transformLinkedModules-test-ts) | 1 | 783ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/testNamePattern.test.ts](#ts-294-e2e-tests-testNamePattern-test-ts) | 1 | 859ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/nativeAsyncMock.test.ts](#ts-295-e2e-tests-nativeAsyncMock-test-ts) | 1 | 55ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/hasteMapSize.test.ts](#ts-296-e2e-tests-hasteMapSize-test-ts) | 2 | 397ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/circusDeclarationErrors.test.ts](#ts-297-e2e-tests-circusDeclarationErrors-test-ts) | 1 | 869ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/testEnvironmentCircus.test.ts](#ts-298-e2e-tests-testEnvironmentCircus-test-ts) | 1 | 1501ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/callDoneTwice.test.ts](#ts-299-e2e-tests-callDoneTwice-test-ts) | 1 | 882ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/emptyDescribeWithHooks.test.ts](#ts-300-e2e-tests-emptyDescribeWithHooks-test-ts) | 4 | 2886ms | 4 | 0 | 0 | -| ✔️ | [e2e/__tests__/errorOnDeprecated.test.ts](#ts-301-e2e-tests-errorOnDeprecated-test-ts) | 25 | 56ms | 1 | 24 | 0 | -| ✔️ | [e2e/__tests__/testRetries.test.ts](#ts-302-e2e-tests-testRetries-test-ts) | 4 | 3277ms | 4 | 0 | 0 | -| ✔️ | [e2e/__tests__/jest.config.ts.test.ts](#ts-303-e2e-tests-jest-config-ts-test-ts) | 5 | 14322ms | 5 | 0 | 0 | -| ✔️ | [e2e/__tests__/coverageReport.test.ts](#ts-304-e2e-tests-coverageReport-test-ts) | 12 | 22264ms | 12 | 0 | 0 | -| ✔️ | [e2e/__tests__/toMatchInlineSnapshot.test.ts](#ts-305-e2e-tests-toMatchInlineSnapshot-test-ts) | 12 | 23917ms | 12 | 0 | 0 | -| ✔️ | [examples/react-native/__tests__/intro.test.js](#ts-306-examples-react-native-tests-intro-test-js) | 4 | 8559ms | 4 | 0 | 0 | -| ✔️ | [e2e/__tests__/toMatchInlineSnapshotWithRetries.test.ts](#ts-307-e2e-tests-toMatchInlineSnapshotWithRetries-test-ts) | 3 | 4670ms | 3 | 0 | 0 | -| ✔️ | [e2e/__tests__/timeouts.test.ts](#ts-308-e2e-tests-timeouts-test-ts) | 4 | 4029ms | 4 | 0 | 0 | -| ✔️ | [e2e/__tests__/toMatchSnapshotWithStringSerializer.test.ts](#ts-309-e2e-tests-toMatchSnapshotWithStringSerializer-test-ts) | 3 | 3544ms | 3 | 0 | 0 | -| ✔️ | [e2e/__tests__/jasmineAsync.test.ts](#ts-310-e2e-tests-jasmineAsync-test-ts) | 15 | 28291ms | 15 | 0 | 0 | -| ✔️ | [e2e/__tests__/config.test.ts](#ts-311-e2e-tests-config-test-ts) | 6 | 3945ms | 6 | 0 | 0 | -| ✔️ | [e2e/__tests__/fatalWorkerError.test.ts](#ts-312-e2e-tests-fatalWorkerError-test-ts) | 1 | 3167ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/toMatchSnapshotWithRetries.test.ts](#ts-313-e2e-tests-toMatchSnapshotWithRetries-test-ts) | 2 | 4435ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/watchModePatterns.test.ts](#ts-314-e2e-tests-watchModePatterns-test-ts) | 2 | 3503ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/unexpectedToken.test.ts](#ts-315-e2e-tests-unexpectedToken-test-ts) | 3 | 3411ms | 3 | 0 | 0 | -| ✔️ | [e2e/__tests__/jestRequireMock.test.ts](#ts-316-e2e-tests-jestRequireMock-test-ts) | 1 | 2119ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/typescriptCoverage.test.ts](#ts-317-e2e-tests-typescriptCoverage-test-ts) | 1 | 2893ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/jest.config.js.test.ts](#ts-318-e2e-tests-jest-config-js-test-ts) | 3 | 2134ms | 3 | 0 | 0 | -| ✔️ | [e2e/__tests__/requireMainResetModules.test.ts](#ts-319-e2e-tests-requireMainResetModules-test-ts) | 2 | 1961ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/modernFakeTimers.test.ts](#ts-320-e2e-tests-modernFakeTimers-test-ts) | 2 | 1680ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/runTestsByPath.test.ts](#ts-321-e2e-tests-runTestsByPath-test-ts) | 1 | 1999ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/testEnvironment.test.ts](#ts-322-e2e-tests-testEnvironment-test-ts) | 1 | 1628ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/circusConcurrentEach.test.ts](#ts-323-e2e-tests-circusConcurrentEach-test-ts) | 2 | 1591ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/autoRestoreMocks.test.ts](#ts-324-e2e-tests-autoRestoreMocks-test-ts) | 2 | 1797ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/jsonReporter.test.ts](#ts-325-e2e-tests-jsonReporter-test-ts) | 2 | 1514ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/autoResetMocks.test.ts](#ts-326-e2e-tests-autoResetMocks-test-ts) | 2 | 1666ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/focusedTests.test.ts](#ts-327-e2e-tests-focusedTests-test-ts) | 1 | 888ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/watchModeOnlyFailed.test.ts](#ts-328-e2e-tests-watchModeOnlyFailed-test-ts) | 1 | 1394ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/beforeEachQueue.ts](#ts-329-e2e-tests-beforeEachQueue-ts) | 2 | 55ms | 1 | 1 | 0 | -| ✔️ | [e2e/__tests__/extraGlobals.test.ts](#ts-330-e2e-tests-extraGlobals-test-ts) | 1 | 1010.9999999999999ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/snapshotSerializers.test.ts](#ts-331-e2e-tests-snapshotSerializers-test-ts) | 2 | 2065ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/locationInResults.test.ts](#ts-332-e2e-tests-locationInResults-test-ts) | 2 | 1764ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/consoleLogOutputWhenRunInBand.test.ts](#ts-333-e2e-tests-consoleLogOutputWhenRunInBand-test-ts) | 1 | 793ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/dependencyClash.test.ts](#ts-334-e2e-tests-dependencyClash-test-ts) | 1 | 833ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/coverageWithoutTransform.test.ts](#ts-335-e2e-tests-coverageWithoutTransform-test-ts) | 1 | 1075ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/cliHandlesExactFilenames.test.ts](#ts-336-e2e-tests-cliHandlesExactFilenames-test-ts) | 2 | 1230ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/requireMainAfterCreateRequire.test.ts](#ts-337-e2e-tests-requireMainAfterCreateRequire-test-ts) | 1 | 966ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/resetModules.test.ts](#ts-338-e2e-tests-resetModules-test-ts) | 1 | 926ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/watchModeUpdateSnapshot.test.ts](#ts-339-e2e-tests-watchModeUpdateSnapshot-test-ts) | 1 | 1075ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/generatorMock.test.ts](#ts-340-e2e-tests-generatorMock-test-ts) | 1 | 1027ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/resolveGetPaths.test.ts](#ts-341-e2e-tests-resolveGetPaths-test-ts) | 1 | 1155ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/v8Coverage.test.ts](#ts-342-e2e-tests-v8Coverage-test-ts) | 2 | 2412ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/resolveWithPaths.test.ts](#ts-343-e2e-tests-resolveWithPaths-test-ts) | 1 | 1170ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/logHeapUsage.test.ts](#ts-344-e2e-tests-logHeapUsage-test-ts) | 1 | 884ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/requireMain.test.ts](#ts-345-e2e-tests-requireMain-test-ts) | 1 | 1137ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/snapshotMockFs.test.ts](#ts-346-e2e-tests-snapshotMockFs-test-ts) | 1 | 883ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/snapshot-unknown.test.ts](#ts-347-e2e-tests-snapshot-unknown-test-ts) | 1 | 838ms | 1 | 0 | 0 | -| ✔️ | [examples/angular/app.component.spec.ts](#ts-348-examples-angular-app-component-spec-ts) | 3 | 654ms | 3 | 0 | 0 | -| ✔️ | [e2e/__tests__/stackTraceNoCaptureStackTrace.test.ts](#ts-349-e2e-tests-stackTraceNoCaptureStackTrace-test-ts) | 1 | 899ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/testNamePatternSkipped.test.ts](#ts-350-e2e-tests-testNamePatternSkipped-test-ts) | 1 | 991ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/failureDetailsProperty.test.ts](#ts-351-e2e-tests-failureDetailsProperty-test-ts) | 1 | 907ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/snapshotResolver.test.ts](#ts-352-e2e-tests-snapshotResolver-test-ts) | 1 | 823ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/processExit.test.ts](#ts-353-e2e-tests-processExit-test-ts) | 1 | 1070ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/nodePath.test.ts](#ts-354-e2e-tests-nodePath-test-ts) | 1 | 866ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/verbose.test.ts](#ts-355-e2e-tests-verbose-test-ts) | 1 | 683ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/listTests.test.ts](#ts-356-e2e-tests-listTests-test-ts) | 2 | 945ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/createProcessObject.test.ts](#ts-357-e2e-tests-createProcessObject-test-ts) | 1 | 908ms | 1 | 0 | 0 | -| ✔️ | [examples/react-testing-library/__tests__/CheckboxWithLabel-test.js](#ts-358-examples-react-testing-library-tests-CheckboxWithLabel-test-js) | 1 | 469ms | 1 | 0 | 0 | -| ✔️ | [examples/angular/shared/data.service.spec.ts](#ts-359-examples-angular-shared-data-service-spec-ts) | 2 | 431ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/environmentAfterTeardown.test.ts](#ts-360-e2e-tests-environmentAfterTeardown-test-ts) | 1 | 892ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/esmConfigFile.test.ts](#ts-361-e2e-tests-esmConfigFile-test-ts) | 3 | 526ms | 3 | 0 | 0 | -| ✔️ | [examples/enzyme/__tests__/CheckboxWithLabel-test.js](#ts-362-examples-enzyme-tests-CheckboxWithLabel-test-js) | 1 | 434ms | 1 | 0 | 0 | -| ✔️ | [examples/module-mock/__tests__/mock_per_test.js](#ts-363-examples-module-mock-tests-mockpertest-js) | 2 | 116ms | 2 | 0 | 0 | -| ✔️ | [examples/mongodb/__test__/db.test.js](#ts-364-examples-mongodb-test-db-test-js) | 1 | 236ms | 1 | 0 | 0 | -| ✔️ | [examples/snapshot/__tests__/link.react.test.js](#ts-365-examples-snapshot-tests-link-react-test-js) | 4 | 181ms | 4 | 0 | 0 | -| ✔️ | [examples/typescript/__tests__/CheckboxWithLabel-test.tsx](#ts-366-examples-typescript-tests-CheckboxWithLabel-test-tsx) | 1 | 227ms | 1 | 0 | 0 | -| ✔️ | [examples/react/__tests__/CheckboxWithLabel-test.js](#ts-367-examples-react-tests-CheckboxWithLabel-test-js) | 1 | 256ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/showConfig.test.ts](#ts-368-e2e-tests-showConfig-test-ts) | 1 | 195ms | 1 | 0 | 0 | -| ✔️ | [examples/snapshot/__tests__/clock.react.test.js](#ts-369-examples-snapshot-tests-clock-react-test-js) | 1 | 62ms | 1 | 0 | 0 | -| ✔️ | [examples/timer/__tests__/infinite_timer_game.test.js](#ts-370-examples-timer-tests-infinitetimergame-test-js) | 1 | 94ms | 1 | 0 | 0 | -| ✔️ | [examples/jquery/__tests__/fetch_current_user.test.js](#ts-371-examples-jquery-tests-fetchcurrentuser-test-js) | 2 | 196ms | 2 | 0 | 0 | -| ✔️ | [examples/jquery/__tests__/display_user.test.js](#ts-372-examples-jquery-tests-displayuser-test-js) | 1 | 196ms | 1 | 0 | 0 | -| ✔️ | [examples/timer/__tests__/timer_game.test.js](#ts-373-examples-timer-tests-timergame-test-js) | 3 | 74ms | 3 | 0 | 0 | -| ✔️ | [examples/async/__tests__/user.test.js](#ts-374-examples-async-tests-user-test-js) | 8 | 96ms | 8 | 0 | 0 | -| ✔️ | [examples/automatic-mocks/__tests__/createMockFromModule.test.js](#ts-375-examples-automatic-mocks-tests-createMockFromModule-test-js) | 2 | 115ms | 2 | 0 | 0 | -| ✔️ | [examples/manual-mocks/__tests__/file_summarizer.test.js](#ts-376-examples-manual-mocks-tests-filesummarizer-test-js) | 1 | 87ms | 1 | 0 | 0 | -| ✔️ | [examples/typescript/__tests__/calc.test.ts](#ts-377-examples-typescript-tests-calc-test-ts) | 6 | 276ms | 6 | 0 | 0 | -| ✔️ | [examples/getting-started/sum.test.js](#ts-378-examples-getting-started-sum-test-js) | 1 | 78ms | 1 | 0 | 0 | -| ✔️ | [examples/angular/shared/sub.service.spec.ts](#ts-379-examples-angular-shared-sub-service-spec-ts) | 1 | 109ms | 1 | 0 | 0 | -| ✔️ | [examples/manual-mocks/__tests__/user.test.js](#ts-380-examples-manual-mocks-tests-user-test-js) | 1 | 41ms | 1 | 0 | 0 | -| ✔️ | [examples/typescript/__tests__/sum-test.ts](#ts-381-examples-typescript-tests-sum-test-ts) | 2 | 69ms | 2 | 0 | 0 | -| ✔️ | [examples/automatic-mocks/__tests__/automock.test.js](#ts-382-examples-automatic-mocks-tests-automock-test-js) | 2 | 74ms | 2 | 0 | 0 | -| ✔️ | [examples/manual-mocks/__tests__/lodashMocking.test.js](#ts-383-examples-manual-mocks-tests-lodashMocking-test-js) | 1 | 109ms | 1 | 0 | 0 | -| ✔️ | [examples/manual-mocks/__tests__/userMocked.test.js](#ts-384-examples-manual-mocks-tests-userMocked-test-js) | 1 | 105ms | 1 | 0 | 0 | -| ✔️ | [examples/typescript/__tests__/sum.test.js](#ts-385-examples-typescript-tests-sum-test-js) | 2 | 100ms | 2 | 0 | 0 | -| ✔️ | [e2e/custom-test-sequencer/b.test.js](#ts-386-e2e-custom-test-sequencer-b-test-js) | 1 | 21ms | 1 | 0 | 0 | -| ✔️ | [examples/typescript/__tests__/sub-test.ts](#ts-387-examples-typescript-tests-sub-test-ts) | 1 | 43ms | 1 | 0 | 0 | -| ✔️ | [examples/module-mock/__tests__/full_mock.js](#ts-388-examples-module-mock-tests-fullmock-js) | 1 | 60ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/global.test.ts](#ts-389-e2e-tests-global-test-ts) | 1 | 31ms | 1 | 0 | 0 | -| ✔️ | [examples/automatic-mocks/__tests__/disableAutomocking.test.js](#ts-390-examples-automatic-mocks-tests-disableAutomocking-test-js) | 1 | 24ms | 1 | 0 | 0 | -| ✔️ | [e2e/timer-reset-mocks/after-reset-all-mocks/timerAndMock.test.js](#ts-391-e2e-timer-reset-mocks-after-reset-all-mocks-timerAndMock-test-js) | 2 | 30ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/requireV8Module.test.ts](#ts-392-e2e-tests-requireV8Module-test-ts) | 1 | 30ms | 1 | 0 | 0 | -| ✔️ | [e2e/timer-reset-mocks/with-reset-mocks/timerWithMock.test.js](#ts-393-e2e-timer-reset-mocks-with-reset-mocks-timerWithMock-test-js) | 1 | 34ms | 1 | 0 | 0 | -| ✔️ | [examples/module-mock/__tests__/partial_mock.js](#ts-394-examples-module-mock-tests-partialmock-js) | 1 | 215ms | 1 | 0 | 0 | -| ✔️ | [e2e/custom-test-sequencer/d.test.js](#ts-395-e2e-custom-test-sequencer-d-test-js) | 1 | 21ms | 1 | 0 | 0 | -| ✔️ | [e2e/custom-test-sequencer/a.test.js](#ts-396-e2e-custom-test-sequencer-a-test-js) | 1 | 29ms | 1 | 0 | 0 | -| ✔️ | [e2e/custom-test-sequencer/e.test.js](#ts-397-e2e-custom-test-sequencer-e-test-js) | 1 | 27ms | 1 | 0 | 0 | -| ✔️ | [e2e/custom-test-sequencer/c.test.js](#ts-398-e2e-custom-test-sequencer-c-test-js) | 1 | 42ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/asyncAndCallback.test.ts](#ts-399-e2e-tests-asyncAndCallback-test-ts) | 1 | 746ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-config/src/__tests__/normalize.test.js](#r0s0-packages-jest-config-src-tests-normalize-test-js) | 118 | 798ms | 118 | 0 | 0 | +| ✔️ | [packages/jest-repl/src/__tests__/jest_repl.test.js](#r0s1-packages-jest-repl-src-tests-jestrepl-test-js) | 1 | 1172ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-snapshot/src/__tests__/printSnapshot.test.ts](#r0s2-packages-jest-snapshot-src-tests-printSnapshot-test-ts) | 71 | 1188ms | 71 | 0 | 0 | +| ✔️ | [packages/jest-config/src/__tests__/Defaults.test.ts](#r0s3-packages-jest-config-src-tests-Defaults-test-ts) | 1 | 672ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-resolve/src/__tests__/resolve.test.ts](#r0s4-packages-jest-resolve-src-tests-resolve-test-ts) | 16 | 1308ms | 16 | 0 | 0 | +| ✔️ | [packages/expect/src/__tests__/matchers-toEqual.property.test.ts](#r0s5-packages-expect-src-tests-matchers-toEqual-property-test-ts) | 2 | 1062ms | 2 | 0 | 0 | +| ✔️ | [packages/jest-reporters/src/__tests__/SummaryReporter.test.js](#r0s6-packages-jest-reporters-src-tests-SummaryReporter-test-js) | 4 | 366ms | 4 | 0 | 0 | +| ✔️ | [packages/jest-config/src/__tests__/readConfigs.test.ts](#r0s7-packages-jest-config-src-tests-readConfigs-test-ts) | 3 | 135ms | 3 | 0 | 0 | +| ✔️ | [packages/jest-reporters/src/__tests__/generateEmptyCoverage.test.js](#r0s8-packages-jest-reporters-src-tests-generateEmptyCoverage-test-js) | 3 | 1129ms | 3 | 0 | 0 | +| ✔️ | [packages/expect/src/__tests__/asymmetricMatchers.test.ts](#r0s9-packages-expect-src-tests-asymmetricMatchers-test-ts) | 38 | 207ms | 38 | 0 | 0 | +| ✔️ | [packages/jest-reporters/src/__tests__/CoverageReporter.test.js](#r0s10-packages-jest-reporters-src-tests-CoverageReporter-test-js) | 12 | 397ms | 12 | 0 | 0 | +| ✔️ | [packages/jest-snapshot/src/__tests__/InlineSnapshots.test.ts](#r0s11-packages-jest-snapshot-src-tests-InlineSnapshots-test-ts) | 22 | 1149ms | 22 | 0 | 0 | +| ✔️ | [packages/jest-config/src/__tests__/readConfig.test.ts](#r0s12-packages-jest-config-src-tests-readConfig-test-ts) | 1 | 76ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-watcher/src/lib/__tests__/scroll.test.ts](#r0s13-packages-jest-watcher-src-lib-tests-scroll-test-ts) | 5 | 57ms | 5 | 0 | 0 | +| ✔️ | [packages/expect/src/__tests__/toThrowMatchers.test.ts](#r0s14-packages-expect-src-tests-toThrowMatchers-test-ts) | 98 | 257ms | 98 | 0 | 0 | +| ✔️ | [packages/jest-validate/src/__tests__/validate.test.ts](#r0s15-packages-jest-validate-src-tests-validate-test-ts) | 23 | 283ms | 23 | 0 | 0 | +| ✔️ | [packages/jest-snapshot/src/__tests__/SnapshotResolver.test.ts](#r0s16-packages-jest-snapshot-src-tests-SnapshotResolver-test-ts) | 10 | 98ms | 10 | 0 | 0 | +| ✔️ | [packages/jest-reporters/src/__tests__/CoverageWorker.test.js](#r0s17-packages-jest-reporters-src-tests-CoverageWorker-test-js) | 2 | 199ms | 2 | 0 | 0 | +| ✔️ | [packages/babel-jest/src/__tests__/index.ts](#r0s18-packages-babel-jest-src-tests-index-ts) | 6 | 371ms | 6 | 0 | 0 | +| ✔️ | [packages/jest-config/src/__tests__/resolveConfigPath.test.ts](#r0s19-packages-jest-config-src-tests-resolveConfigPath-test-ts) | 10 | 183ms | 10 | 0 | 0 | +| ✔️ | [packages/jest-reporters/src/__tests__/VerboseReporter.test.js](#r0s20-packages-jest-reporters-src-tests-VerboseReporter-test-js) | 11 | 425ms | 11 | 0 | 0 | +| ✔️ | [packages/jest-snapshot/src/__tests__/utils.test.ts](#r0s21-packages-jest-snapshot-src-tests-utils-test-ts) | 26 | 214ms | 26 | 0 | 0 | +| ✔️ | [packages/jest-reporters/src/__tests__/NotifyReporter.test.ts](#r0s22-packages-jest-reporters-src-tests-NotifyReporter-test-ts) | 18 | 166ms | 18 | 0 | 0 | +| ✔️ | [packages/jest-repl/src/__tests__/runtime_cli.test.js](#r0s23-packages-jest-repl-src-tests-runtimecli-test-js) | 4 | 4094.0000000000005ms | 4 | 0 | 0 | +| ✔️ | [packages/expect/src/__tests__/extend.test.ts](#r0s24-packages-expect-src-tests-extend-test-ts) | 10 | 99ms | 10 | 0 | 0 | +| ✔️ | [packages/jest-source-map/src/__tests__/getCallsite.test.ts](#r0s25-packages-jest-source-map-src-tests-getCallsite-test-ts) | 3 | 86ms | 3 | 0 | 0 | +| ✔️ | [packages/jest-config/src/__tests__/setFromArgv.test.ts](#r0s26-packages-jest-config-src-tests-setFromArgv-test-ts) | 4 | 53ms | 4 | 0 | 0 | +| ✔️ | [packages/jest-watcher/src/lib/__tests__/prompt.test.ts](#r0s27-packages-jest-watcher-src-lib-tests-prompt-test-ts) | 3 | 91ms | 3 | 0 | 0 | +| ✔️ | [packages/jest-docblock/src/__tests__/index.test.ts](#r0s28-packages-jest-docblock-src-tests-index-test-ts) | 36 | 177ms | 36 | 0 | 0 | +| ✔️ | [packages/jest-snapshot/src/__tests__/dedentLines.test.ts](#r0s29-packages-jest-snapshot-src-tests-dedentLines-test-ts) | 17 | 94ms | 17 | 0 | 0 | +| ✔️ | [packages/jest-config/src/__tests__/getMaxWorkers.test.ts](#r0s30-packages-jest-config-src-tests-getMaxWorkers-test-ts) | 7 | 67ms | 7 | 0 | 0 | +| ✔️ | [packages/jest-reporters/src/__tests__/utils.test.ts](#r0s31-packages-jest-reporters-src-tests-utils-test-ts) | 10 | 85ms | 10 | 0 | 0 | +| ✔️ | [packages/jest-snapshot/src/__tests__/throwMatcher.test.ts](#r0s32-packages-jest-snapshot-src-tests-throwMatcher-test-ts) | 3 | 481ms | 3 | 0 | 0 | +| ✔️ | [packages/jest-snapshot/src/__tests__/matcher.test.ts](#r0s33-packages-jest-snapshot-src-tests-matcher-test-ts) | 1 | 131ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-config/src/__tests__/validatePattern.test.ts](#r0s34-packages-jest-config-src-tests-validatePattern-test-ts) | 4 | 52ms | 4 | 0 | 0 | +| ✔️ | [packages/jest-resolve/src/__tests__/isBuiltinModule.test.ts](#r0s35-packages-jest-resolve-src-tests-isBuiltinModule-test-ts) | 4 | 36ms | 4 | 0 | 0 | +| ✔️ | [packages/jest-globals/src/__tests__/index.ts](#r0s36-packages-jest-globals-src-tests-index-ts) | 1 | 533ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-regex-util/src/__tests__/index.test.ts](#r0s37-packages-jest-regex-util-src-tests-index-test-ts) | 8 | 56ms | 8 | 0 | 0 | +| ✔️ | [packages/jest-snapshot/src/__tests__/mockSerializer.test.ts](#r0s38-packages-jest-snapshot-src-tests-mockSerializer-test-ts) | 10 | 45ms | 10 | 0 | 0 | +| ✔️ | [packages/jest-reporters/src/__tests__/getWatermarks.test.ts](#r0s39-packages-jest-reporters-src-tests-getWatermarks-test-ts) | 2 | 37ms | 2 | 0 | 0 | +| ✔️ | [packages/jest-reporters/src/__tests__/DefaultReporter.test.js](#r0s40-packages-jest-reporters-src-tests-DefaultReporter-test-js) | 2 | 148ms | 2 | 0 | 0 | +| ✔️ | [packages/jest-reporters/src/__tests__/getResultHeader.test.js](#r0s41-packages-jest-reporters-src-tests-getResultHeader-test-js) | 4 | 30ms | 4 | 0 | 0 | +| ✔️ | [packages/expect/src/__tests__/toEqual-dom.test.ts](#r0s42-packages-expect-src-tests-toEqual-dom-test-ts) | 12 | 99ms | 12 | 0 | 0 | +| ✔️ | [packages/jest-environment-node/src/__tests__/node_environment.test.ts](#r0s43-packages-jest-environment-node-src-tests-nodeenvironment-test-ts) | 6 | 184ms | 6 | 0 | 0 | +| ✔️ | [packages/jest-reporters/src/__tests__/getSnapshotStatus.test.js](#r0s44-packages-jest-reporters-src-tests-getSnapshotStatus-test-js) | 3 | 28ms | 3 | 0 | 0 | +| ✔️ | [packages/jest-validate/src/__tests__/validateCLIOptions.test.js](#r0s45-packages-jest-validate-src-tests-validateCLIOptions-test-js) | 6 | 83ms | 6 | 0 | 0 | +| ✔️ | [packages/jest-reporters/src/__tests__/getSnapshotSummary.test.js](#r0s46-packages-jest-reporters-src-tests-getSnapshotSummary-test-js) | 4 | 49ms | 4 | 0 | 0 | +| ✔️ | [packages/jest-watcher/src/lib/__tests__/formatTestNameByPattern.test.ts](#r0s47-packages-jest-watcher-src-lib-tests-formatTestNameByPattern-test-ts) | 11 | 129ms | 11 | 0 | 0 | +| ✔️ | [packages/jest-transform/src/__tests__/shouldInstrument.test.ts](#r0s48-packages-jest-transform-src-tests-shouldInstrument-test-ts) | 25 | 155ms | 25 | 0 | 0 | +| ✔️ | [packages/jest-transform/src/__tests__/ScriptTransformer.test.ts](#r0s49-packages-jest-transform-src-tests-ScriptTransformer-test-ts) | 22 | 1660ms | 22 | 0 | 0 | +| ✔️ | [packages/jest-circus/src/__tests__/baseTest.test.ts](#r0s50-packages-jest-circus-src-tests-baseTest-test-ts) | 2 | 2902ms | 2 | 0 | 0 | +| ✔️ | [packages/jest-mock/src/__tests__/index.test.ts](#r0s51-packages-jest-mock-src-tests-index-test-ts) | 84 | 509ms | 84 | 0 | 0 | +| ✔️ | [packages/jest-circus/src/__tests__/hooks.test.ts](#r0s52-packages-jest-circus-src-tests-hooks-test-ts) | 3 | 3762ms | 3 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_module.test.js](#r0s53-packages-jest-runtime-src-tests-runtimerequiremodule-test-js) | 27 | 2439ms | 27 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/runtime_mock.test.js](#r0s54-packages-jest-runtime-src-tests-runtimemock-test-js) | 4 | 743ms | 4 | 0 | 0 | +| ✔️ | [packages/jest-circus/src/__tests__/circusItTestError.test.ts](#r0s55-packages-jest-circus-src-tests-circusItTestError-test-ts) | 8 | 300ms | 8 | 0 | 0 | +| ✔️ | [packages/jest-worker/src/base/__tests__/BaseWorkerPool.test.js](#r0s56-packages-jest-worker-src-base-tests-BaseWorkerPool-test-js) | 11 | 653ms | 11 | 0 | 0 | +| ✔️ | [packages/pretty-format/src/__tests__/Immutable.test.ts](#r0s57-packages-pretty-format-src-tests-Immutable-test-ts) | 111 | 443ms | 111 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/Runtime-sourceMaps.test.js](#r0s58-packages-jest-runtime-src-tests-Runtime-sourceMaps-test-js) | 1 | 584ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-environment-jsdom/src/__tests__/jsdom_environment.test.ts](#r0s59-packages-jest-environment-jsdom-src-tests-jsdomenvironment-test-ts) | 2 | 783ms | 2 | 0 | 0 | +| ✔️ | [packages/babel-plugin-jest-hoist/src/__tests__/hoistPlugin.test.ts](#r0s60-packages-babel-plugin-jest-hoist-src-tests-hoistPlugin-test-ts) | 4 | 347ms | 4 | 0 | 0 | +| ✔️ | [packages/jest-worker/src/workers/__tests__/ChildProcessWorker.test.js](#r0s61-packages-jest-worker-src-workers-tests-ChildProcessWorker-test-js) | 17 | 184ms | 17 | 0 | 0 | +| ✔️ | [packages/jest-each/src/__tests__/array.test.ts](#r0s62-packages-jest-each-src-tests-array-test-ts) | 159 | 192ms | 159 | 0 | 0 | +| ✔️ | [packages/jest-each/src/__tests__/template.test.ts](#r0s63-packages-jest-each-src-tests-template-test-ts) | 242 | 483ms | 242 | 0 | 0 | +| ✔️ | [packages/pretty-format/src/__tests__/react.test.tsx](#r0s64-packages-pretty-format-src-tests-react-test-tsx) | 55 | 325ms | 55 | 0 | 0 | +| ✔️ | [packages/jest-circus/src/__tests__/afterAll.test.ts](#r0s65-packages-jest-circus-src-tests-afterAll-test-ts) | 6 | 5755ms | 6 | 0 | 0 | +| ✔️ | [packages/pretty-format/src/__tests__/prettyFormat.test.ts](#r0s66-packages-pretty-format-src-tests-prettyFormat-test-ts) | 86 | 219ms | 86 | 0 | 0 | +| ✔️ | [packages/jest-worker/src/__tests__/Farm.test.js](#r0s67-packages-jest-worker-src-tests-Farm-test-js) | 10 | 158ms | 10 | 0 | 0 | +| ✔️ | [packages/jest-worker/src/workers/__tests__/threadChild.test.js](#r0s68-packages-jest-worker-src-workers-tests-threadChild-test-js) | 10 | 120ms | 10 | 0 | 0 | +| ✔️ | [packages/jest-jasmine2/src/__tests__/queueRunner.test.ts](#r0s69-packages-jest-jasmine2-src-tests-queueRunner-test-ts) | 6 | 93ms | 6 | 0 | 0 | +| ✔️ | [packages/jest-worker/src/workers/__tests__/NodeThreadsWorker.test.js](#r0s70-packages-jest-worker-src-workers-tests-NodeThreadsWorker-test-js) | 15 | 258ms | 15 | 0 | 0 | +| ✔️ | [packages/jest-worker/src/workers/__tests__/processChild.test.js](#r0s71-packages-jest-worker-src-workers-tests-processChild-test-js) | 10 | 135ms | 10 | 0 | 0 | +| ✔️ | [packages/jest-runner/src/__tests__/testRunner.test.ts](#r0s72-packages-jest-runner-src-tests-testRunner-test-ts) | 2 | 905ms | 2 | 0 | 0 | +| ✔️ | [packages/jest-circus/src/__tests__/hooksError.test.ts](#r0s73-packages-jest-circus-src-tests-hooksError-test-ts) | 32 | 127ms | 32 | 0 | 0 | +| ✔️ | [packages/jest-serializer/src/__tests__/index.test.ts](#r0s74-packages-jest-serializer-src-tests-index-test-ts) | 17 | 158ms | 17 | 0 | 0 | +| ✔️ | [packages/jest-console/src/__tests__/bufferedConsole.test.ts](#r0s75-packages-jest-console-src-tests-bufferedConsole-test-ts) | 20 | 171ms | 20 | 0 | 0 | +| ✔️ | [packages/jest-console/src/__tests__/CustomConsole.test.ts](#r0s76-packages-jest-console-src-tests-CustomConsole-test-ts) | 23 | 115ms | 23 | 0 | 0 | +| ✔️ | [packages/pretty-format/src/__tests__/DOMCollection.test.ts](#r0s77-packages-pretty-format-src-tests-DOMCollection-test-ts) | 10 | 64ms | 10 | 0 | 0 | +| ✔️ | [packages/jest-circus/src/__tests__/circusItTodoTestError.test.ts](#r0s78-packages-jest-circus-src-tests-circusItTodoTestError-test-ts) | 3 | 81ms | 3 | 0 | 0 | +| ✔️ | [packages/jest-test-sequencer/src/__tests__/test_sequencer.test.js](#r0s79-packages-jest-test-sequencer-src-tests-testsequencer-test-js) | 8 | 251ms | 8 | 0 | 0 | +| ✔️ | [packages/jest-jasmine2/src/__tests__/Suite.test.ts](#r0s80-packages-jest-jasmine2-src-tests-Suite-test-ts) | 1 | 84ms | 1 | 0 | 0 | +| ✔️ | [packages/pretty-format/src/__tests__/AsymmetricMatcher.test.ts](#r0s81-packages-pretty-format-src-tests-AsymmetricMatcher-test-ts) | 38 | 137ms | 38 | 0 | 0 | +| ✔️ | [packages/pretty-format/src/__tests__/ConvertAnsi.test.ts](#r0s82-packages-pretty-format-src-tests-ConvertAnsi-test-ts) | 6 | 43ms | 6 | 0 | 0 | +| ✔️ | [packages/jest-console/src/__tests__/getConsoleOutput.test.ts](#r0s83-packages-jest-console-src-tests-getConsoleOutput-test-ts) | 12 | 56ms | 12 | 0 | 0 | +| ✔️ | [packages/jest-jasmine2/src/__tests__/expectationResultFactory.test.ts](#r0s84-packages-jest-jasmine2-src-tests-expectationResultFactory-test-ts) | 7 | 70ms | 7 | 0 | 0 | +| ✔️ | [packages/jest-each/src/__tests__/index.test.ts](#r0s85-packages-jest-each-src-tests-index-test-ts) | 10 | 44ms | 10 | 0 | 0 | +| ✔️ | [packages/pretty-format/src/__tests__/DOMElement.test.ts](#r0s86-packages-pretty-format-src-tests-DOMElement-test-ts) | 28 | 148ms | 28 | 0 | 0 | +| ✔️ | [packages/jest-test-result/src/__tests__/formatTestResults.test.ts](#r0s87-packages-jest-test-result-src-tests-formatTestResults-test-ts) | 1 | 53ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-worker/src/__tests__/index.test.js](#r0s88-packages-jest-worker-src-tests-index-test-js) | 8 | 230ms | 8 | 0 | 0 | +| ✔️ | [packages/jest-jasmine2/src/__tests__/hooksError.test.ts](#r0s89-packages-jest-jasmine2-src-tests-hooksError-test-ts) | 32 | 51ms | 32 | 0 | 0 | +| ✔️ | [packages/jest-jasmine2/src/__tests__/reporter.test.ts](#r0s90-packages-jest-jasmine2-src-tests-reporter-test-ts) | 1 | 107ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-jasmine2/src/__tests__/todoError.test.ts](#r0s91-packages-jest-jasmine2-src-tests-todoError-test-ts) | 3 | 27ms | 3 | 0 | 0 | +| ✔️ | [packages/jest-jasmine2/src/__tests__/itTestError.test.ts](#r0s92-packages-jest-jasmine2-src-tests-itTestError-test-ts) | 6 | 32ms | 6 | 0 | 0 | +| ✔️ | [packages/jest-jasmine2/src/__tests__/iterators.test.ts](#r0s93-packages-jest-jasmine2-src-tests-iterators-test-ts) | 4 | 43ms | 4 | 0 | 0 | +| ✔️ | [packages/jest-jasmine2/src/__tests__/pTimeout.test.ts](#r0s94-packages-jest-jasmine2-src-tests-pTimeout-test-ts) | 3 | 44ms | 3 | 0 | 0 | +| ✔️ | [packages/jest-create-cache-key-function/src/__tests__/index.test.ts](#r0s95-packages-jest-create-cache-key-function-src-tests-index-test-ts) | 1 | 75ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-jasmine2/src/__tests__/concurrent.test.ts](#r0s96-packages-jest-jasmine2-src-tests-concurrent-test-ts) | 3 | 24ms | 3 | 0 | 0 | +| ✔️ | [packages/jest-jasmine2/src/__tests__/itToTestAlias.test.ts](#r0s97-packages-jest-jasmine2-src-tests-itToTestAlias-test-ts) | 1 | 23ms | 1 | 0 | 0 | +| ✔️ | [packages/pretty-format/src/__tests__/ReactElement.test.ts](#r0s98-packages-pretty-format-src-tests-ReactElement-test-ts) | 3 | 64ms | 3 | 0 | 0 | +| ✔️ | [packages/jest-worker/src/__tests__/FifoQueue.test.js](#r0s99-packages-jest-worker-src-tests-FifoQueue-test-js) | 3 | 48ms | 3 | 0 | 0 | +| ✔️ | [packages/jest-worker/src/__tests__/PriorityQueue.test.js](#r0s100-packages-jest-worker-src-tests-PriorityQueue-test-js) | 5 | 63ms | 5 | 0 | 0 | +| ✔️ | [packages/jest-core/src/__tests__/SearchSource.test.ts](#r0s101-packages-jest-core-src-tests-SearchSource-test-ts) | 27 | 2596ms | 27 | 0 | 0 | +| ✔️ | [packages/expect/src/__tests__/matchers.test.js](#r0s102-packages-expect-src-tests-matchers-test-js) | 592 | 862ms | 592 | 0 | 0 | +| ✔️ | [e2e/__tests__/jestRequireActual.test.ts](#r0s103-e2e-tests-jestRequireActual-test-ts) | 1 | 1665ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-core/src/__tests__/watch.test.js](#r0s104-packages-jest-core-src-tests-watch-test-js) | 80 | 6755ms | 80 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_module_or_mock_transitive_deps.test.js](#r0s105-packages-jest-runtime-src-tests-runtimerequiremoduleormocktransitivedeps-test-js) | 6 | 2366ms | 6 | 0 | 0 | +| ✔️ | [packages/jest-core/src/__tests__/watchFileChanges.test.ts](#r0s106-packages-jest-core-src-tests-watchFileChanges-test-ts) | 1 | 1514ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-haste-map/src/__tests__/index.test.js](#r0s107-packages-jest-haste-map-src-tests-index-test-js) | 44 | 1145ms | 44 | 0 | 0 | +| ✔️ | [e2e/__tests__/coverageHandlebars.test.ts](#r0s108-e2e-tests-coverageHandlebars-test-ts) | 1 | 1873ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/compareDomNodes.test.ts](#r0s109-e2e-tests-compareDomNodes-test-ts) | 1 | 1407ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/jestEnvironmentJsdom.test.ts](#r0s110-e2e-tests-jestEnvironmentJsdom-test-ts) | 1 | 1744ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/resolve.test.ts](#r0s111-e2e-tests-resolve-test-ts) | 1 | 1863ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/snapshot.test.ts](#r0s112-e2e-tests-snapshot-test-ts) | 9 | 13899ms | 9 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_module_or_mock.test.js](#r0s113-packages-jest-runtime-src-tests-runtimerequiremoduleormock-test-js) | 17 | 1223ms | 17 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_mock.test.js](#r0s114-packages-jest-runtime-src-tests-runtimerequiremock-test-js) | 13 | 962ms | 13 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/runtime_node_path.test.js](#r0s115-packages-jest-runtime-src-tests-runtimenodepath-test-js) | 4 | 1088ms | 4 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_resolve.test.ts](#r0s116-packages-jest-runtime-src-tests-runtimerequireresolve-test-ts) | 5 | 707ms | 5 | 0 | 0 | +| ✔️ | [packages/jest-leak-detector/src/__tests__/index.test.ts](#r0s117-packages-jest-leak-detector-src-tests-index-test-ts) | 6 | 986ms | 6 | 0 | 0 | +| ✔️ | [e2e/__tests__/jasmineAsyncWithPendingDuringTest.ts](#r0s118-e2e-tests-jasmineAsyncWithPendingDuringTest-ts) | 2 | 72ms | 1 | 1 | 0 | +| ✔️ | [packages/jest-core/src/__tests__/TestScheduler.test.js](#r0s119-packages-jest-core-src-tests-TestScheduler-test-js) | 8 | 520ms | 8 | 0 | 0 | +| ✔️ | [e2e/__tests__/expectInVm.test.ts](#r0s120-e2e-tests-expectInVm-test-ts) | 1 | 1527ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_actual.test.js](#r0s121-packages-jest-runtime-src-tests-runtimerequireactual-test-js) | 2 | 478ms | 2 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_cache.test.js](#r0s122-packages-jest-runtime-src-tests-runtimerequirecache-test-js) | 2 | 454ms | 2 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/runtime_module_directories.test.js](#r0s123-packages-jest-runtime-src-tests-runtimemoduledirectories-test-js) | 4 | 525ms | 4 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/runtime_internal_module.test.js](#r0s124-packages-jest-runtime-src-tests-runtimeinternalmodule-test-js) | 4 | 727ms | 4 | 0 | 0 | +| ✔️ | [packages/jest-cli/src/__tests__/cli/args.test.ts](#r0s125-packages-jest-cli-src-tests-cli-args-test-ts) | 17 | 345ms | 17 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/runtime_jest_spy_on.test.js](#r0s126-packages-jest-runtime-src-tests-runtimejestspyon-test-js) | 2 | 521ms | 2 | 0 | 0 | +| ✔️ | [packages/jest-resolve-dependencies/src/__tests__/dependency_resolver.test.ts](#r0s127-packages-jest-resolve-dependencies-src-tests-dependencyresolver-test-ts) | 11 | 666ms | 11 | 0 | 0 | +| ✔️ | [packages/jest-message-util/src/__tests__/messages.test.ts](#r0s128-packages-jest-message-util-src-tests-messages-test-ts) | 11 | 205ms | 11 | 0 | 0 | +| ✔️ | [packages/jest-diff/src/__tests__/diff.test.ts](#r0s129-packages-jest-diff-src-tests-diff-test-ts) | 107 | 625ms | 107 | 0 | 0 | +| ✔️ | [packages/jest-core/src/__tests__/watchTestNamePatternMode.test.js](#r0s130-packages-jest-core-src-tests-watchTestNamePatternMode-test-js) | 1 | 246ms | 1 | 0 | 0 | +| ✔️ | [packages/expect/src/__tests__/spyMatchers.test.ts](#r0s131-packages-expect-src-tests-spyMatchers-test-ts) | 248 | 395ms | 248 | 0 | 0 | +| ❌ | [e2e/__tests__/jestChangedFiles.test.ts](#r0s132-e2e-tests-jestChangedFiles-test-ts) | 10 | 9045ms | 9 | 0 | 1 | +| ✔️ | [packages/jest-matcher-utils/src/__tests__/index.test.ts](#r0s133-packages-jest-matcher-utils-src-tests-index-test-ts) | 48 | 391ms | 48 | 0 | 0 | +| ✔️ | [packages/jest-core/src/__tests__/watchFilenamePatternMode.test.js](#r0s134-packages-jest-core-src-tests-watchFilenamePatternMode-test-js) | 2 | 165ms | 2 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/runtime_create_mock_from_module.test.js](#r0s135-packages-jest-runtime-src-tests-runtimecreatemockfrommodule-test-js) | 3 | 606ms | 3 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/runtime_environment.test.js](#r0s136-packages-jest-runtime-src-tests-runtimeenvironment-test-js) | 2 | 497ms | 2 | 0 | 0 | +| ✔️ | [packages/jest-haste-map/src/__tests__/includes_dotfiles.test.ts](#r0s137-packages-jest-haste-map-src-tests-includesdotfiles-test-ts) | 1 | 337ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-haste-map/src/crawlers/__tests__/watchman.test.js](#r0s138-packages-jest-haste-map-src-crawlers-tests-watchman-test-js) | 8 | 153ms | 8 | 0 | 0 | +| ✔️ | [packages/jest-fake-timers/src/__tests__/legacyFakeTimers.test.ts](#r0s139-packages-jest-fake-timers-src-tests-legacyFakeTimers-test-ts) | 50 | 302ms | 50 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/runtime_jest_fn.js](#r0s140-packages-jest-runtime-src-tests-runtimejestfn-js) | 4 | 479ms | 4 | 0 | 0 | +| ✔️ | [packages/expect/src/__tests__/matchers-toStrictEqual.property.test.ts](#r0s141-packages-expect-src-tests-matchers-toStrictEqual-property-test-ts) | 3 | 394ms | 3 | 0 | 0 | +| ✔️ | [packages/diff-sequences/src/__tests__/index.property.test.ts](#r0s142-packages-diff-sequences-src-tests-index-property-test-ts) | 7 | 357ms | 7 | 0 | 0 | +| ✔️ | [packages/jest-fake-timers/src/__tests__/modernFakeTimers.test.ts](#r0s143-packages-jest-fake-timers-src-tests-modernFakeTimers-test-ts) | 40 | 317ms | 40 | 0 | 0 | +| ✔️ | [packages/expect/src/__tests__/matchers-toContain.property.test.ts](#r0s144-packages-expect-src-tests-matchers-toContain-property-test-ts) | 2 | 236ms | 2 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/runtime_wrap.js](#r0s145-packages-jest-runtime-src-tests-runtimewrap-js) | 2 | 263ms | 2 | 0 | 0 | +| ✔️ | [packages/expect/src/__tests__/matchers-toContainEqual.property.test.ts](#r0s146-packages-expect-src-tests-matchers-toContainEqual-property-test-ts) | 2 | 287ms | 2 | 0 | 0 | +| ✔️ | [packages/diff-sequences/src/__tests__/index.test.ts](#r0s147-packages-diff-sequences-src-tests-index-test-ts) | 48 | 195ms | 48 | 0 | 0 | +| ✔️ | [packages/jest-get-type/src/__tests__/getType.test.ts](#r0s148-packages-jest-get-type-src-tests-getType-test-ts) | 14 | 45ms | 14 | 0 | 0 | +| ✔️ | [packages/jest-cli/src/init/__tests__/init.test.js](#r0s149-packages-jest-cli-src-init-tests-init-test-js) | 24 | 119ms | 24 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_module_no_ext.test.js](#r0s150-packages-jest-runtime-src-tests-runtimerequiremodulenoext-test-js) | 1 | 261ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-util/src/__tests__/deepCyclicCopy.test.ts](#r0s151-packages-jest-util-src-tests-deepCyclicCopy-test-ts) | 12 | 86ms | 12 | 0 | 0 | +| ✔️ | [e2e/__tests__/version.test.ts](#r0s152-e2e-tests-version-test-ts) | 1 | 138ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-util/src/__tests__/createProcessObject.test.ts](#r0s153-packages-jest-util-src-tests-createProcessObject-test-ts) | 4 | 81ms | 4 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/instrumentation.test.ts](#r0s154-packages-jest-runtime-src-tests-instrumentation-test-ts) | 1 | 275ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-core/src/__tests__/runJest.test.js](#r0s155-packages-jest-core-src-tests-runJest-test-js) | 2 | 261ms | 2 | 0 | 0 | +| ✔️ | [packages/jest-matcher-utils/src/__tests__/Replaceable.test.ts](#r0s156-packages-jest-matcher-utils-src-tests-Replaceable-test-ts) | 17 | 111ms | 17 | 0 | 0 | +| ✔️ | [packages/jest-util/src/__tests__/formatTime.test.ts](#r0s157-packages-jest-util-src-tests-formatTime-test-ts) | 11 | 82ms | 11 | 0 | 0 | +| ✔️ | [packages/jest-worker/src/__tests__/thread-integration.test.js](#r0s158-packages-jest-worker-src-tests-thread-integration-test-js) | 6 | 114ms | 6 | 0 | 0 | +| ✔️ | [packages/jest-haste-map/src/__tests__/worker.test.js](#r0s159-packages-jest-haste-map-src-tests-worker-test-js) | 7 | 100ms | 7 | 0 | 0 | +| ✔️ | [packages/jest-matcher-utils/src/__tests__/printDiffOrStringify.test.ts](#r0s160-packages-jest-matcher-utils-src-tests-printDiffOrStringify-test-ts) | 21 | 114ms | 21 | 0 | 0 | +| ✔️ | [packages/expect/src/__tests__/utils.test.ts](#r0s161-packages-expect-src-tests-utils-test-ts) | 41 | 147ms | 41 | 0 | 0 | +| ✔️ | [packages/jest-matcher-utils/src/__tests__/deepCyclicCopyReplaceable.test.ts](#r0s162-packages-jest-matcher-utils-src-tests-deepCyclicCopyReplaceable-test-ts) | 11 | 49ms | 11 | 0 | 0 | +| ✔️ | [packages/expect/src/__tests__/isError.test.ts](#r0s163-packages-expect-src-tests-isError-test-ts) | 4 | 43ms | 4 | 0 | 0 | +| ✔️ | [packages/jest-get-type/src/__tests__/isPrimitive.test.ts](#r0s164-packages-jest-get-type-src-tests-isPrimitive-test-ts) | 18 | 36ms | 18 | 0 | 0 | +| ✔️ | [packages/jest-haste-map/src/crawlers/__tests__/node.test.js](#r0s165-packages-jest-haste-map-src-crawlers-tests-node-test-js) | 10 | 170ms | 10 | 0 | 0 | +| ❌ | [e2e/__tests__/onlyChanged.test.ts](#r0s166-e2e-tests-onlyChanged-test-ts) | 9 | 22281ms | 8 | 0 | 1 | +| ✔️ | [packages/jest-diff/src/__tests__/joinAlignedDiffs.test.ts](#r0s167-packages-jest-diff-src-tests-joinAlignedDiffs-test-ts) | 6 | 44ms | 6 | 0 | 0 | +| ✔️ | [packages/jest-core/src/__tests__/SnapshotInteractiveMode.test.js](#r0s168-packages-jest-core-src-tests-SnapshotInteractiveMode-test-js) | 13 | 89ms | 13 | 0 | 0 | +| ✔️ | [packages/jest-runtime/src/__tests__/Runtime-statics.test.js](#r0s169-packages-jest-runtime-src-tests-Runtime-statics-test-js) | 2 | 162ms | 2 | 0 | 0 | +| ✔️ | [packages/jest-diff/src/__tests__/getAlignedDiffs.test.ts](#r0s170-packages-jest-diff-src-tests-getAlignedDiffs-test-ts) | 24 | 72ms | 24 | 0 | 0 | +| ✔️ | [packages/expect/src/__tests__/assertionCounts.test.ts](#r0s171-packages-expect-src-tests-assertionCounts-test-ts) | 6 | 60ms | 6 | 0 | 0 | +| ✔️ | [packages/jest-haste-map/src/lib/__tests__/getPlatformExtension.test.js](#r0s172-packages-jest-haste-map-src-lib-tests-getPlatformExtension-test-js) | 1 | 35ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-haste-map/src/lib/__tests__/isRegExpSupported.test.js](#r0s173-packages-jest-haste-map-src-lib-tests-isRegExpSupported-test-js) | 2 | 31ms | 2 | 0 | 0 | +| ✔️ | [packages/expect/src/__tests__/stacktrace.test.ts](#r0s174-packages-expect-src-tests-stacktrace-test-ts) | 3 | 69ms | 3 | 0 | 0 | +| ✔️ | [packages/jest-worker/src/__tests__/process-integration.test.js](#r0s175-packages-jest-worker-src-tests-process-integration-test-js) | 5 | 62ms | 5 | 0 | 0 | +| ✔️ | [packages/jest-core/src/lib/__tests__/isValidPath.test.ts](#r0s176-packages-jest-core-src-lib-tests-isValidPath-test-ts) | 3 | 166ms | 3 | 0 | 0 | +| ✔️ | [packages/jest-util/src/__tests__/errorWithStack.test.ts](#r0s177-packages-jest-util-src-tests-errorWithStack-test-ts) | 1 | 41ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-util/src/__tests__/isInteractive.test.ts](#r0s178-packages-jest-util-src-tests-isInteractive-test-ts) | 2 | 35ms | 2 | 0 | 0 | +| ✔️ | [packages/jest-diff/src/__tests__/diffStringsRaw.test.ts](#r0s179-packages-jest-diff-src-tests-diffStringsRaw-test-ts) | 2 | 55ms | 2 | 0 | 0 | +| ✔️ | [packages/jest-util/src/__tests__/globsToMatcher.test.ts](#r0s180-packages-jest-util-src-tests-globsToMatcher-test-ts) | 4 | 56ms | 4 | 0 | 0 | +| ✔️ | [packages/jest-core/src/__tests__/testSchedulerHelper.test.js](#r0s181-packages-jest-core-src-tests-testSchedulerHelper-test-js) | 12 | 48ms | 12 | 0 | 0 | +| ✔️ | [packages/jest-util/src/__tests__/installCommonGlobals.test.ts](#r0s182-packages-jest-util-src-tests-installCommonGlobals-test-ts) | 2 | 68ms | 2 | 0 | 0 | +| ✔️ | [packages/jest-haste-map/src/__tests__/get_mock_name.test.js](#r0s183-packages-jest-haste-map-src-tests-getmockname-test-js) | 1 | 22ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-worker/src/__tests__/WorkerPool.test.js](#r0s184-packages-jest-worker-src-tests-WorkerPool-test-js) | 3 | 51ms | 3 | 0 | 0 | +| ✔️ | [packages/jest-haste-map/src/lib/__tests__/dependencyExtractor.test.js](#r0s185-packages-jest-haste-map-src-lib-tests-dependencyExtractor-test-js) | 15 | 56ms | 15 | 0 | 0 | +| ✔️ | [packages/jest-haste-map/src/lib/__tests__/normalizePathSep.test.js](#r0s186-packages-jest-haste-map-src-lib-tests-normalizePathSep-test-js) | 2 | 35ms | 2 | 0 | 0 | +| ✔️ | [packages/jest-haste-map/src/lib/__tests__/fast_path.test.js](#r0s187-packages-jest-haste-map-src-lib-tests-fastpath-test-js) | 5 | 29ms | 5 | 0 | 0 | +| ✔️ | [packages/jest-core/src/__tests__/FailedTestsCache.test.js](#r0s188-packages-jest-core-src-tests-FailedTestsCache-test-js) | 1 | 25ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-core/src/__tests__/getNoTestsFoundMessage.test.js](#r0s189-packages-jest-core-src-tests-getNoTestsFoundMessage-test-js) | 5 | 61ms | 5 | 0 | 0 | +| ✔️ | [packages/jest-core/src/__tests__/globals.test.ts](#r0s190-packages-jest-core-src-tests-globals-test-ts) | 1 | 22ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-core/src/lib/__tests__/logDebugMessages.test.ts](#r0s191-packages-jest-core-src-lib-tests-logDebugMessages-test-ts) | 3 | 48ms | 3 | 0 | 0 | +| ✔️ | [packages/jest-util/src/__tests__/isPromise.test.ts](#r0s192-packages-jest-util-src-tests-isPromise-test-ts) | 10 | 30ms | 10 | 0 | 0 | +| ✔️ | [packages/jest-cli/src/init/__tests__/modifyPackageJson.test.ts](#r0s193-packages-jest-cli-src-init-tests-modifyPackageJson-test-ts) | 4 | 30ms | 4 | 0 | 0 | +| ✔️ | [packages/expect/src/__tests__/symbolInObjects.test.ts](#r0s194-packages-expect-src-tests-symbolInObjects-test-ts) | 3 | 33ms | 3 | 0 | 0 | +| ✔️ | [e2e/test-in-root/test.js](#r0s195-e2e-test-in-root-test-js) | 1 | 37ms | 1 | 0 | 0 | +| ✔️ | [e2e/test-in-root/spec.js](#r0s196-e2e-test-in-root-spec-js) | 1 | 19ms | 1 | 0 | 0 | +| ✔️ | [e2e/v8-coverage/empty-sourcemap/test.ts](#r0s197-e2e-v8-coverage-empty-sourcemap-test-ts) | 1 | 31ms | 1 | 0 | 0 | +| ✔️ | [packages/jest-matcher-utils/src/__tests__/deepCyclicCopyReplaceableDom.test.ts](#r0s198-packages-jest-matcher-utils-src-tests-deepCyclicCopyReplaceableDom-test-ts) | 2 | 48ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/nativeEsmTypescript.test.ts](#r0s199-e2e-tests-nativeEsmTypescript-test-ts) | 1 | 956ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/coverageRemapping.test.ts](#r0s200-e2e-tests-coverageRemapping-test-ts) | 1 | 12701ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/globalTeardown.test.ts](#r0s201-e2e-tests-globalTeardown-test-ts) | 7 | 11886ms | 7 | 0 | 0 | +| ✔️ | [e2e/__tests__/multiProjectRunner.test.ts](#r0s202-e2e-tests-multiProjectRunner-test-ts) | 14 | 16360ms | 14 | 0 | 0 | +| ✔️ | [e2e/__tests__/toMatchSnapshot.test.ts](#r0s203-e2e-tests-toMatchSnapshot-test-ts) | 9 | 17025ms | 9 | 0 | 0 | +| ✔️ | [e2e/__tests__/detectOpenHandles.ts](#r0s204-e2e-tests-detectOpenHandles-ts) | 8 | 7528ms | 8 | 0 | 0 | +| ✔️ | [e2e/__tests__/failures.test.ts](#r0s205-e2e-tests-failures-test-ts) | 7 | 10353ms | 7 | 0 | 0 | +| ✔️ | [e2e/__tests__/console.test.ts](#r0s206-e2e-tests-console-test-ts) | 7 | 8071.999999999999ms | 7 | 0 | 0 | +| ✔️ | [e2e/__tests__/globals.test.ts](#r0s207-e2e-tests-globals-test-ts) | 10 | 7505ms | 10 | 0 | 0 | +| ✔️ | [e2e/__tests__/coverageThreshold.test.ts](#r0s208-e2e-tests-coverageThreshold-test-ts) | 5 | 4868ms | 5 | 0 | 0 | +| ✔️ | [e2e/__tests__/testPathPatternReporterMessage.test.ts](#r0s209-e2e-tests-testPathPatternReporterMessage-test-ts) | 1 | 3076ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/filter.test.ts](#r0s210-e2e-tests-filter-test-ts) | 7 | 5422ms | 7 | 0 | 0 | +| ✔️ | [e2e/__tests__/selectProjects.test.ts](#r0s211-e2e-tests-selectProjects-test-ts) | 18 | 5236ms | 18 | 0 | 0 | +| ✔️ | [e2e/__tests__/mockNames.test.ts](#r0s212-e2e-tests-mockNames-test-ts) | 8 | 6771ms | 8 | 0 | 0 | +| ✔️ | [e2e/__tests__/stackTrace.test.ts](#r0s213-e2e-tests-stackTrace-test-ts) | 7 | 4725ms | 7 | 0 | 0 | +| ✔️ | [e2e/__tests__/each.test.ts](#r0s214-e2e-tests-each-test-ts) | 7 | 4721ms | 7 | 0 | 0 | +| ✔️ | [e2e/__tests__/toThrowErrorMatchingInlineSnapshot.test.ts](#r0s215-e2e-tests-toThrowErrorMatchingInlineSnapshot-test-ts) | 4 | 3562ms | 4 | 0 | 0 | +| ✔️ | [e2e/__tests__/watchModeNoAccess.test.ts](#r0s216-e2e-tests-watchModeNoAccess-test-ts) | 1 | 4370ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/pnp.test.ts](#r0s217-e2e-tests-pnp-test-ts) | 1 | 2715ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/declarationErrors.test.ts](#r0s218-e2e-tests-declarationErrors-test-ts) | 3 | 2389ms | 3 | 0 | 0 | +| ✔️ | [e2e/__tests__/wrongEnv.test.ts](#r0s219-e2e-tests-wrongEnv-test-ts) | 5 | 3877ms | 5 | 0 | 0 | +| ✔️ | [e2e/__tests__/setupFilesAfterEnvConfig.test.ts](#r0s220-e2e-tests-setupFilesAfterEnvConfig-test-ts) | 2 | 1967ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/noTestsFound.test.ts](#r0s221-e2e-tests-noTestsFound-test-ts) | 5 | 2739ms | 5 | 0 | 0 | +| ✔️ | [e2e/__tests__/customMatcherStackTrace.test.ts](#r0s222-e2e-tests-customMatcherStackTrace-test-ts) | 2 | 1539ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/nestedTestDefinitions.test.ts](#r0s223-e2e-tests-nestedTestDefinitions-test-ts) | 4 | 4641ms | 4 | 0 | 0 | +| ✔️ | [e2e/__tests__/autoClearMocks.test.ts](#r0s224-e2e-tests-autoClearMocks-test-ts) | 2 | 1681ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/forceExit.test.ts](#r0s225-e2e-tests-forceExit-test-ts) | 1 | 2208ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/testFailureExitCode.test.ts](#r0s226-e2e-tests-testFailureExitCode-test-ts) | 2 | 4476ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/promiseReject.test.ts](#r0s227-e2e-tests-promiseReject-test-ts) | 1 | 967ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/timerResetMocks.test.ts](#r0s228-e2e-tests-timerResetMocks-test-ts) | 2 | 1878ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/testEnvironmentAsync.test.ts](#r0s229-e2e-tests-testEnvironmentAsync-test-ts) | 1 | 1493ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/resolveNoFileExtensions.test.ts](#r0s230-e2e-tests-resolveNoFileExtensions-test-ts) | 2 | 1263ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/nestedEventLoop.test.ts](#r0s231-e2e-tests-nestedEventLoop-test-ts) | 1 | 1422ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/useStderr.test.ts](#r0s232-e2e-tests-useStderr-test-ts) | 1 | 1352ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/domDiffing.test.ts](#r0s233-e2e-tests-domDiffing-test-ts) | 1 | 1361ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/consoleAfterTeardown.test.ts](#r0s234-e2e-tests-consoleAfterTeardown-test-ts) | 1 | 1341ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/testInRoot.test.ts](#r0s235-e2e-tests-testInRoot-test-ts) | 1 | 1008.9999999999999ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/requireMainIsolateModules.test.ts](#r0s236-e2e-tests-requireMainIsolateModules-test-ts) | 1 | 976ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/clearCache.test.ts](#r0s237-e2e-tests-clearCache-test-ts) | 2 | 1004ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/runtimeInternalModuleRegistry.test.ts](#r0s238-e2e-tests-runtimeInternalModuleRegistry-test-ts) | 1 | 1202ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/resolveNodeModule.test.ts](#r0s239-e2e-tests-resolveNodeModule-test-ts) | 1 | 943ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/setImmediate.test.ts](#r0s240-e2e-tests-setImmediate-test-ts) | 1 | 904ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/emptySuiteError.test.ts](#r0s241-e2e-tests-emptySuiteError-test-ts) | 1 | 885ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/badSourceMap.test.ts](#r0s242-e2e-tests-badSourceMap-test-ts) | 1 | 858ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/timerUseRealTimers.test.ts](#r0s243-e2e-tests-timerUseRealTimers-test-ts) | 1 | 1018ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/global-mutation.test.ts](#r0s244-e2e-tests-global-mutation-test-ts) | 1 | 40ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/runProgrammatically.test.ts](#r0s245-e2e-tests-runProgrammatically-test-ts) | 2 | 575ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/symbol.test.ts](#r0s246-e2e-tests-symbol-test-ts) | 1 | 49ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/hasteMapMockChanged.test.ts](#r0s247-e2e-tests-hasteMapMockChanged-test-ts) | 1 | 379ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/existentRoots.test.ts](#r0s248-e2e-tests-existentRoots-test-ts) | 4 | 627ms | 4 | 0 | 0 | +| ✔️ | [e2e/__tests__/doneInHooks.test.ts](#r0s249-e2e-tests-doneInHooks-test-ts) | 1 | 855ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/testEnvironmentCircusAsync.test.ts](#r0s250-e2e-tests-testEnvironmentCircusAsync-test-ts) | 1 | 1507ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/moduleNameMapper.test.ts](#r0s251-e2e-tests-moduleNameMapper-test-ts) | 5 | 5395ms | 5 | 0 | 0 | +| ✔️ | [e2e/__tests__/customReporters.test.ts](#r0s252-e2e-tests-customReporters-test-ts) | 9 | 6553ms | 9 | 0 | 0 | +| ✔️ | [e2e/__tests__/findRelatedFiles.test.ts](#r0s253-e2e-tests-findRelatedFiles-test-ts) | 5 | 6230ms | 5 | 0 | 0 | +| ✔️ | [e2e/__tests__/env.test.ts](#r0s254-e2e-tests-env-test-ts) | 6 | 5221ms | 6 | 0 | 0 | +| ✔️ | [e2e/__tests__/globalSetup.test.ts](#r0s255-e2e-tests-globalSetup-test-ts) | 10 | 13926ms | 10 | 0 | 0 | +| ✔️ | [e2e/__tests__/workerForceExit.test.ts](#r0s256-e2e-tests-workerForceExit-test-ts) | 2 | 4751ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/babelPluginJestHoist.test.ts](#r0s257-e2e-tests-babelPluginJestHoist-test-ts) | 1 | 6249ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/coverageTransformInstrumented.test.ts](#r0s258-e2e-tests-coverageTransformInstrumented-test-ts) | 1 | 5029ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/timeoutsLegacy.test.ts](#r0s259-e2e-tests-timeoutsLegacy-test-ts) | 4 | 71ms | 1 | 3 | 0 | +| ✔️ | [e2e/__tests__/asyncRegenerator.test.ts](#r0s260-e2e-tests-asyncRegenerator-test-ts) | 1 | 4127ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/toThrowErrorMatchingSnapshot.test.ts](#r0s261-e2e-tests-toThrowErrorMatchingSnapshot-test-ts) | 5 | 3524ms | 5 | 0 | 0 | +| ✔️ | [e2e/__tests__/testTodo.test.ts](#r0s262-e2e-tests-testTodo-test-ts) | 5 | 3573ms | 5 | 0 | 0 | +| ✔️ | [e2e/__tests__/onlyFailuresNonWatch.test.ts](#r0s263-e2e-tests-onlyFailuresNonWatch-test-ts) | 1 | 2893ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/presets.test.ts](#r0s264-e2e-tests-presets-test-ts) | 2 | 1966ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/expectAsyncMatcher.test.ts](#r0s265-e2e-tests-expectAsyncMatcher-test-ts) | 2 | 2732ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/transform.test.ts](#r0s266-e2e-tests-transform-test-ts) | 16 | 26740ms | 16 | 0 | 0 | +| ✔️ | [e2e/__tests__/chaiAssertionLibrary.ts](#r0s267-e2e-tests-chaiAssertionLibrary-ts) | 1 | 1902ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/stackTraceSourceMapsWithCoverage.test.ts](#r0s268-e2e-tests-stackTraceSourceMapsWithCoverage-test-ts) | 1 | 2444ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/customTestSequencers.test.ts](#r0s269-e2e-tests-customTestSequencers-test-ts) | 3 | 2757ms | 3 | 0 | 0 | +| ✔️ | [e2e/__tests__/beforeAllFiltered.ts](#r0s270-e2e-tests-beforeAllFiltered-ts) | 1 | 958ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/fakePromises.test.ts](#r0s271-e2e-tests-fakePromises-test-ts) | 2 | 1716ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/stackTraceSourceMaps.test.ts](#r0s272-e2e-tests-stackTraceSourceMaps-test-ts) | 1 | 2185ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/dynamicRequireDependencies.ts](#r0s273-e2e-tests-dynamicRequireDependencies-ts) | 1 | 847ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/overrideGlobals.test.ts](#r0s274-e2e-tests-overrideGlobals-test-ts) | 2 | 2045.9999999999998ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/executeTestsOnceInMpr.ts](#r0s275-e2e-tests-executeTestsOnceInMpr-ts) | 1 | 976ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/moduleParentNullInTest.ts](#r0s276-e2e-tests-moduleParentNullInTest-ts) | 1 | 886ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/requireAfterTeardown.test.ts](#r0s277-e2e-tests-requireAfterTeardown-test-ts) | 1 | 921ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/lifecycles.ts](#r0s278-e2e-tests-lifecycles-ts) | 1 | 861ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/hasteMapSha1.test.ts](#r0s279-e2e-tests-hasteMapSha1-test-ts) | 1 | 298ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/json.test.ts](#r0s280-e2e-tests-json-test-ts) | 2 | 29ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/testResultsProcessor.test.ts](#r0s281-e2e-tests-testResultsProcessor-test-ts) | 1 | 910ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/debug.test.ts](#r0s282-e2e-tests-debug-test-ts) | 1 | 899ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/importedGlobals.test.ts](#r0s283-e2e-tests-importedGlobals-test-ts) | 1 | 1043ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/customResolver.test.ts](#r0s284-e2e-tests-customResolver-test-ts) | 1 | 826ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/circularInequality.test.ts](#r0s285-e2e-tests-circularInequality-test-ts) | 1 | 1451ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/injectGlobals.test.ts](#r0s286-e2e-tests-injectGlobals-test-ts) | 2 | 1860ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/skipBeforeAfterAll.test.ts](#r0s287-e2e-tests-skipBeforeAfterAll-test-ts) | 1 | 1061ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/customInlineSnapshotMatchers.test.ts](#r0s288-e2e-tests-customInlineSnapshotMatchers-test-ts) | 1 | 2206ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/regexCharInPath.test.ts](#r0s289-e2e-tests-regexCharInPath-test-ts) | 1 | 962ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/noTestFound.test.ts](#r0s290-e2e-tests-noTestFound-test-ts) | 2 | 1063ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/nativeEsm.test.ts](#r0s291-e2e-tests-nativeEsm-test-ts) | 3 | 905ms | 2 | 1 | 0 | +| ✔️ | [e2e/__tests__/supportsDashedArgs.ts](#r0s292-e2e-tests-supportsDashedArgs-ts) | 2 | 968ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/transformLinkedModules.test.ts](#r0s293-e2e-tests-transformLinkedModules-test-ts) | 1 | 783ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/testNamePattern.test.ts](#r0s294-e2e-tests-testNamePattern-test-ts) | 1 | 859ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/nativeAsyncMock.test.ts](#r0s295-e2e-tests-nativeAsyncMock-test-ts) | 1 | 55ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/hasteMapSize.test.ts](#r0s296-e2e-tests-hasteMapSize-test-ts) | 2 | 397ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/circusDeclarationErrors.test.ts](#r0s297-e2e-tests-circusDeclarationErrors-test-ts) | 1 | 869ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/testEnvironmentCircus.test.ts](#r0s298-e2e-tests-testEnvironmentCircus-test-ts) | 1 | 1501ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/callDoneTwice.test.ts](#r0s299-e2e-tests-callDoneTwice-test-ts) | 1 | 882ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/emptyDescribeWithHooks.test.ts](#r0s300-e2e-tests-emptyDescribeWithHooks-test-ts) | 4 | 2886ms | 4 | 0 | 0 | +| ✔️ | [e2e/__tests__/errorOnDeprecated.test.ts](#r0s301-e2e-tests-errorOnDeprecated-test-ts) | 25 | 56ms | 1 | 24 | 0 | +| ✔️ | [e2e/__tests__/testRetries.test.ts](#r0s302-e2e-tests-testRetries-test-ts) | 4 | 3277ms | 4 | 0 | 0 | +| ✔️ | [e2e/__tests__/jest.config.ts.test.ts](#r0s303-e2e-tests-jest-config-ts-test-ts) | 5 | 14322ms | 5 | 0 | 0 | +| ✔️ | [e2e/__tests__/coverageReport.test.ts](#r0s304-e2e-tests-coverageReport-test-ts) | 12 | 22264ms | 12 | 0 | 0 | +| ✔️ | [e2e/__tests__/toMatchInlineSnapshot.test.ts](#r0s305-e2e-tests-toMatchInlineSnapshot-test-ts) | 12 | 23917ms | 12 | 0 | 0 | +| ✔️ | [examples/react-native/__tests__/intro.test.js](#r0s306-examples-react-native-tests-intro-test-js) | 4 | 8559ms | 4 | 0 | 0 | +| ✔️ | [e2e/__tests__/toMatchInlineSnapshotWithRetries.test.ts](#r0s307-e2e-tests-toMatchInlineSnapshotWithRetries-test-ts) | 3 | 4670ms | 3 | 0 | 0 | +| ✔️ | [e2e/__tests__/timeouts.test.ts](#r0s308-e2e-tests-timeouts-test-ts) | 4 | 4029ms | 4 | 0 | 0 | +| ✔️ | [e2e/__tests__/toMatchSnapshotWithStringSerializer.test.ts](#r0s309-e2e-tests-toMatchSnapshotWithStringSerializer-test-ts) | 3 | 3544ms | 3 | 0 | 0 | +| ✔️ | [e2e/__tests__/jasmineAsync.test.ts](#r0s310-e2e-tests-jasmineAsync-test-ts) | 15 | 28291ms | 15 | 0 | 0 | +| ✔️ | [e2e/__tests__/config.test.ts](#r0s311-e2e-tests-config-test-ts) | 6 | 3945ms | 6 | 0 | 0 | +| ✔️ | [e2e/__tests__/fatalWorkerError.test.ts](#r0s312-e2e-tests-fatalWorkerError-test-ts) | 1 | 3167ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/toMatchSnapshotWithRetries.test.ts](#r0s313-e2e-tests-toMatchSnapshotWithRetries-test-ts) | 2 | 4435ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/watchModePatterns.test.ts](#r0s314-e2e-tests-watchModePatterns-test-ts) | 2 | 3503ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/unexpectedToken.test.ts](#r0s315-e2e-tests-unexpectedToken-test-ts) | 3 | 3411ms | 3 | 0 | 0 | +| ✔️ | [e2e/__tests__/jestRequireMock.test.ts](#r0s316-e2e-tests-jestRequireMock-test-ts) | 1 | 2119ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/typescriptCoverage.test.ts](#r0s317-e2e-tests-typescriptCoverage-test-ts) | 1 | 2893ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/jest.config.js.test.ts](#r0s318-e2e-tests-jest-config-js-test-ts) | 3 | 2134ms | 3 | 0 | 0 | +| ✔️ | [e2e/__tests__/requireMainResetModules.test.ts](#r0s319-e2e-tests-requireMainResetModules-test-ts) | 2 | 1961ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/modernFakeTimers.test.ts](#r0s320-e2e-tests-modernFakeTimers-test-ts) | 2 | 1680ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/runTestsByPath.test.ts](#r0s321-e2e-tests-runTestsByPath-test-ts) | 1 | 1999ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/testEnvironment.test.ts](#r0s322-e2e-tests-testEnvironment-test-ts) | 1 | 1628ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/circusConcurrentEach.test.ts](#r0s323-e2e-tests-circusConcurrentEach-test-ts) | 2 | 1591ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/autoRestoreMocks.test.ts](#r0s324-e2e-tests-autoRestoreMocks-test-ts) | 2 | 1797ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/jsonReporter.test.ts](#r0s325-e2e-tests-jsonReporter-test-ts) | 2 | 1514ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/autoResetMocks.test.ts](#r0s326-e2e-tests-autoResetMocks-test-ts) | 2 | 1666ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/focusedTests.test.ts](#r0s327-e2e-tests-focusedTests-test-ts) | 1 | 888ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/watchModeOnlyFailed.test.ts](#r0s328-e2e-tests-watchModeOnlyFailed-test-ts) | 1 | 1394ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/beforeEachQueue.ts](#r0s329-e2e-tests-beforeEachQueue-ts) | 2 | 55ms | 1 | 1 | 0 | +| ✔️ | [e2e/__tests__/extraGlobals.test.ts](#r0s330-e2e-tests-extraGlobals-test-ts) | 1 | 1010.9999999999999ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/snapshotSerializers.test.ts](#r0s331-e2e-tests-snapshotSerializers-test-ts) | 2 | 2065ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/locationInResults.test.ts](#r0s332-e2e-tests-locationInResults-test-ts) | 2 | 1764ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/consoleLogOutputWhenRunInBand.test.ts](#r0s333-e2e-tests-consoleLogOutputWhenRunInBand-test-ts) | 1 | 793ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/dependencyClash.test.ts](#r0s334-e2e-tests-dependencyClash-test-ts) | 1 | 833ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/coverageWithoutTransform.test.ts](#r0s335-e2e-tests-coverageWithoutTransform-test-ts) | 1 | 1075ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/cliHandlesExactFilenames.test.ts](#r0s336-e2e-tests-cliHandlesExactFilenames-test-ts) | 2 | 1230ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/requireMainAfterCreateRequire.test.ts](#r0s337-e2e-tests-requireMainAfterCreateRequire-test-ts) | 1 | 966ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/resetModules.test.ts](#r0s338-e2e-tests-resetModules-test-ts) | 1 | 926ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/watchModeUpdateSnapshot.test.ts](#r0s339-e2e-tests-watchModeUpdateSnapshot-test-ts) | 1 | 1075ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/generatorMock.test.ts](#r0s340-e2e-tests-generatorMock-test-ts) | 1 | 1027ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/resolveGetPaths.test.ts](#r0s341-e2e-tests-resolveGetPaths-test-ts) | 1 | 1155ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/v8Coverage.test.ts](#r0s342-e2e-tests-v8Coverage-test-ts) | 2 | 2412ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/resolveWithPaths.test.ts](#r0s343-e2e-tests-resolveWithPaths-test-ts) | 1 | 1170ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/logHeapUsage.test.ts](#r0s344-e2e-tests-logHeapUsage-test-ts) | 1 | 884ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/requireMain.test.ts](#r0s345-e2e-tests-requireMain-test-ts) | 1 | 1137ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/snapshotMockFs.test.ts](#r0s346-e2e-tests-snapshotMockFs-test-ts) | 1 | 883ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/snapshot-unknown.test.ts](#r0s347-e2e-tests-snapshot-unknown-test-ts) | 1 | 838ms | 1 | 0 | 0 | +| ✔️ | [examples/angular/app.component.spec.ts](#r0s348-examples-angular-app-component-spec-ts) | 3 | 654ms | 3 | 0 | 0 | +| ✔️ | [e2e/__tests__/stackTraceNoCaptureStackTrace.test.ts](#r0s349-e2e-tests-stackTraceNoCaptureStackTrace-test-ts) | 1 | 899ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/testNamePatternSkipped.test.ts](#r0s350-e2e-tests-testNamePatternSkipped-test-ts) | 1 | 991ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/failureDetailsProperty.test.ts](#r0s351-e2e-tests-failureDetailsProperty-test-ts) | 1 | 907ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/snapshotResolver.test.ts](#r0s352-e2e-tests-snapshotResolver-test-ts) | 1 | 823ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/processExit.test.ts](#r0s353-e2e-tests-processExit-test-ts) | 1 | 1070ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/nodePath.test.ts](#r0s354-e2e-tests-nodePath-test-ts) | 1 | 866ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/verbose.test.ts](#r0s355-e2e-tests-verbose-test-ts) | 1 | 683ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/listTests.test.ts](#r0s356-e2e-tests-listTests-test-ts) | 2 | 945ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/createProcessObject.test.ts](#r0s357-e2e-tests-createProcessObject-test-ts) | 1 | 908ms | 1 | 0 | 0 | +| ✔️ | [examples/react-testing-library/__tests__/CheckboxWithLabel-test.js](#r0s358-examples-react-testing-library-tests-CheckboxWithLabel-test-js) | 1 | 469ms | 1 | 0 | 0 | +| ✔️ | [examples/angular/shared/data.service.spec.ts](#r0s359-examples-angular-shared-data-service-spec-ts) | 2 | 431ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/environmentAfterTeardown.test.ts](#r0s360-e2e-tests-environmentAfterTeardown-test-ts) | 1 | 892ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/esmConfigFile.test.ts](#r0s361-e2e-tests-esmConfigFile-test-ts) | 3 | 526ms | 3 | 0 | 0 | +| ✔️ | [examples/enzyme/__tests__/CheckboxWithLabel-test.js](#r0s362-examples-enzyme-tests-CheckboxWithLabel-test-js) | 1 | 434ms | 1 | 0 | 0 | +| ✔️ | [examples/module-mock/__tests__/mock_per_test.js](#r0s363-examples-module-mock-tests-mockpertest-js) | 2 | 116ms | 2 | 0 | 0 | +| ✔️ | [examples/mongodb/__test__/db.test.js](#r0s364-examples-mongodb-test-db-test-js) | 1 | 236ms | 1 | 0 | 0 | +| ✔️ | [examples/snapshot/__tests__/link.react.test.js](#r0s365-examples-snapshot-tests-link-react-test-js) | 4 | 181ms | 4 | 0 | 0 | +| ✔️ | [examples/typescript/__tests__/CheckboxWithLabel-test.tsx](#r0s366-examples-typescript-tests-CheckboxWithLabel-test-tsx) | 1 | 227ms | 1 | 0 | 0 | +| ✔️ | [examples/react/__tests__/CheckboxWithLabel-test.js](#r0s367-examples-react-tests-CheckboxWithLabel-test-js) | 1 | 256ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/showConfig.test.ts](#r0s368-e2e-tests-showConfig-test-ts) | 1 | 195ms | 1 | 0 | 0 | +| ✔️ | [examples/snapshot/__tests__/clock.react.test.js](#r0s369-examples-snapshot-tests-clock-react-test-js) | 1 | 62ms | 1 | 0 | 0 | +| ✔️ | [examples/timer/__tests__/infinite_timer_game.test.js](#r0s370-examples-timer-tests-infinitetimergame-test-js) | 1 | 94ms | 1 | 0 | 0 | +| ✔️ | [examples/jquery/__tests__/fetch_current_user.test.js](#r0s371-examples-jquery-tests-fetchcurrentuser-test-js) | 2 | 196ms | 2 | 0 | 0 | +| ✔️ | [examples/jquery/__tests__/display_user.test.js](#r0s372-examples-jquery-tests-displayuser-test-js) | 1 | 196ms | 1 | 0 | 0 | +| ✔️ | [examples/timer/__tests__/timer_game.test.js](#r0s373-examples-timer-tests-timergame-test-js) | 3 | 74ms | 3 | 0 | 0 | +| ✔️ | [examples/async/__tests__/user.test.js](#r0s374-examples-async-tests-user-test-js) | 8 | 96ms | 8 | 0 | 0 | +| ✔️ | [examples/automatic-mocks/__tests__/createMockFromModule.test.js](#r0s375-examples-automatic-mocks-tests-createMockFromModule-test-js) | 2 | 115ms | 2 | 0 | 0 | +| ✔️ | [examples/manual-mocks/__tests__/file_summarizer.test.js](#r0s376-examples-manual-mocks-tests-filesummarizer-test-js) | 1 | 87ms | 1 | 0 | 0 | +| ✔️ | [examples/typescript/__tests__/calc.test.ts](#r0s377-examples-typescript-tests-calc-test-ts) | 6 | 276ms | 6 | 0 | 0 | +| ✔️ | [examples/getting-started/sum.test.js](#r0s378-examples-getting-started-sum-test-js) | 1 | 78ms | 1 | 0 | 0 | +| ✔️ | [examples/angular/shared/sub.service.spec.ts](#r0s379-examples-angular-shared-sub-service-spec-ts) | 1 | 109ms | 1 | 0 | 0 | +| ✔️ | [examples/manual-mocks/__tests__/user.test.js](#r0s380-examples-manual-mocks-tests-user-test-js) | 1 | 41ms | 1 | 0 | 0 | +| ✔️ | [examples/typescript/__tests__/sum-test.ts](#r0s381-examples-typescript-tests-sum-test-ts) | 2 | 69ms | 2 | 0 | 0 | +| ✔️ | [examples/automatic-mocks/__tests__/automock.test.js](#r0s382-examples-automatic-mocks-tests-automock-test-js) | 2 | 74ms | 2 | 0 | 0 | +| ✔️ | [examples/manual-mocks/__tests__/lodashMocking.test.js](#r0s383-examples-manual-mocks-tests-lodashMocking-test-js) | 1 | 109ms | 1 | 0 | 0 | +| ✔️ | [examples/manual-mocks/__tests__/userMocked.test.js](#r0s384-examples-manual-mocks-tests-userMocked-test-js) | 1 | 105ms | 1 | 0 | 0 | +| ✔️ | [examples/typescript/__tests__/sum.test.js](#r0s385-examples-typescript-tests-sum-test-js) | 2 | 100ms | 2 | 0 | 0 | +| ✔️ | [e2e/custom-test-sequencer/b.test.js](#r0s386-e2e-custom-test-sequencer-b-test-js) | 1 | 21ms | 1 | 0 | 0 | +| ✔️ | [examples/typescript/__tests__/sub-test.ts](#r0s387-examples-typescript-tests-sub-test-ts) | 1 | 43ms | 1 | 0 | 0 | +| ✔️ | [examples/module-mock/__tests__/full_mock.js](#r0s388-examples-module-mock-tests-fullmock-js) | 1 | 60ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/global.test.ts](#r0s389-e2e-tests-global-test-ts) | 1 | 31ms | 1 | 0 | 0 | +| ✔️ | [examples/automatic-mocks/__tests__/disableAutomocking.test.js](#r0s390-examples-automatic-mocks-tests-disableAutomocking-test-js) | 1 | 24ms | 1 | 0 | 0 | +| ✔️ | [e2e/timer-reset-mocks/after-reset-all-mocks/timerAndMock.test.js](#r0s391-e2e-timer-reset-mocks-after-reset-all-mocks-timerAndMock-test-js) | 2 | 30ms | 2 | 0 | 0 | +| ✔️ | [e2e/__tests__/requireV8Module.test.ts](#r0s392-e2e-tests-requireV8Module-test-ts) | 1 | 30ms | 1 | 0 | 0 | +| ✔️ | [e2e/timer-reset-mocks/with-reset-mocks/timerWithMock.test.js](#r0s393-e2e-timer-reset-mocks-with-reset-mocks-timerWithMock-test-js) | 1 | 34ms | 1 | 0 | 0 | +| ✔️ | [examples/module-mock/__tests__/partial_mock.js](#r0s394-examples-module-mock-tests-partialmock-js) | 1 | 215ms | 1 | 0 | 0 | +| ✔️ | [e2e/custom-test-sequencer/d.test.js](#r0s395-e2e-custom-test-sequencer-d-test-js) | 1 | 21ms | 1 | 0 | 0 | +| ✔️ | [e2e/custom-test-sequencer/a.test.js](#r0s396-e2e-custom-test-sequencer-a-test-js) | 1 | 29ms | 1 | 0 | 0 | +| ✔️ | [e2e/custom-test-sequencer/e.test.js](#r0s397-e2e-custom-test-sequencer-e-test-js) | 1 | 27ms | 1 | 0 | 0 | +| ✔️ | [e2e/custom-test-sequencer/c.test.js](#r0s398-e2e-custom-test-sequencer-c-test-js) | 1 | 42ms | 1 | 0 | 0 | +| ✔️ | [e2e/__tests__/asyncAndCallback.test.ts](#r0s399-e2e-tests-asyncAndCallback-test-ts) | 1 | 746ms | 1 | 0 | 0 | # Test Suites -## packages/jest-config/src/__tests__/normalize.test.js ✔️ +## e2e/__tests__/jestChangedFiles.test.ts ❌ | Result | Test | Time | | :---: | :--- | ---: | -| ✔️ | picks a name based on the rootDir | 6ms | -| ✔️ | keeps custom project name based on the projects rootDir | 1ms | -| ✔️ | keeps custom names based on the rootDir | 1ms | -| ✔️ | minimal config is stable across runs | 3ms | -| ✔️ | sets coverageReporters correctly when argv.json is set | 1ms | - -### rootDir - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws if the options is missing a rootDir property | 2ms | - -### automock - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | falsy automock is not overwritten | 1ms | - -### collectCoverageOnlyFrom - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | normalizes all paths relative to rootDir | 1ms | -| ✔️ | does not change absolute paths | 1ms | -| ✔️ | substitutes tokens | 1ms | - -### collectCoverageFrom - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | substitutes tokens | 1ms | - -### findRelatedTests - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | it generates --coverageCoverageFrom patterns when needed | 1ms | - -### roots - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | normalizes all paths relative to rootDir | 1ms | -| ✔️ | does not change absolute paths | 1ms | -| ✔️ | substitutes tokens | 1ms | - -### transform - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | normalizes the path | 1ms | -| ✔️ | pulls in config if it's passed as an array, and defaults to empty object | 1ms | - -### haste - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | normalizes the path for hasteImplModulePath | 1ms | - -### setupFilesAfterEnv - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | normalizes the path according to rootDir | 1ms | -| ✔️ | does not change absolute paths | 1ms | -| ✔️ | substitutes tokens | 1ms | - -### setupTestFrameworkScriptFile - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | logs a deprecation warning when `setupTestFrameworkScriptFile` is used | 1ms | -| ✔️ | logs an error when `setupTestFrameworkScriptFile` and `setupFilesAfterEnv` are used | 1ms | - -### coveragePathIgnorePatterns - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not normalize paths relative to rootDir | 1ms | -| ✔️ | does not normalize trailing slashes | 1ms | -| ✔️ | substitutes tokens | 1ms | - -### watchPathIgnorePatterns - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not normalize paths relative to rootDir | 5ms | -| ✔️ | does not normalize trailing slashes | 1ms | -| ✔️ | substitutes tokens | 1ms | - -### testPathIgnorePatterns - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not normalize paths relative to rootDir | 1ms | -| ✔️ | does not normalize trailing slashes | 1ms | -| ✔️ | substitutes tokens | 1ms | - -### modulePathIgnorePatterns - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not normalize paths relative to rootDir | 1ms | -| ✔️ | does not normalize trailing slashes | 1ms | -| ✔️ | substitutes tokens | 1ms | - -### testRunner - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to Circus | 1ms | -| ✔️ | resolves jasmine | 1ms | -| ✔️ | is overwritten by argv | 0ms | - -### coverageDirectory - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to /coverage | 0ms | - -### testEnvironment - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resolves to an environment and prefers jest-environment-`name` | 0ms | -| ✔️ | throws on invalid environment names | 1ms | -| ✔️ | works with rootDir | 1ms | - -### babel-jest - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | correctly identifies and uses babel-jest | 1ms | -| ✔️ | uses babel-jest if babel-jest is explicitly specified in a custom transform options | 1ms | - -### Upgrade help - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | logs a warning when `scriptPreprocessor` and/or `preprocessorIgnorePatterns` are used | 2ms | - -### testRegex - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | testRegex empty string is mapped to empty array | 3ms | -| ✔️ | testRegex string is mapped to an array | 0ms | -| ✔️ | testRegex array is preserved | 0ms | - -### testMatch - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | testMatch default not applied if testRegex is set | 1ms | -| ✔️ | testRegex default not applied if testMatch is set | 1ms | -| ✔️ | throws if testRegex and testMatch are both specified | 1ms | -| ✔️ | normalizes testMatch | 0ms | - -### moduleDirectories - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to node_modules | 8ms | -| ✔️ | normalizes moduleDirectories | 1ms | - -### preset - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws when preset not found | 1ms | -| ✔️ | throws when module was found but no "jest-preset.js" or "jest-preset.json" files | 1ms | -| ✔️ | throws when a dependency is missing in the preset | 44ms | -| ✔️ | throws when preset is invalid | 59ms | -| ✔️ | throws when preset evaluation throws type error | 1ms | -| ✔️ | works with "react-native" | 3ms | -| ✔️ | searches for .json and .js preset files | 0ms | -| ✔️ | merges with options | 1ms | -| ✔️ | merges with options and moduleNameMapper preset is overridden by options | 1ms | -| ✔️ | merges with options and transform preset is overridden by options | 1ms | -| ✔️ | extracts setupFilesAfterEnv from preset | 1ms | - -### preset with globals - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should merge the globals preset correctly | 1ms | - -### preset without setupFiles - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should normalize setupFiles correctly | 1ms | - -### preset without setupFilesAfterEnv - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should normalize setupFilesAfterEnv correctly | 1ms | - -### runner - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to `jest-runner` | 1ms | -| ✔️ | resolves to runners that do not have the prefix | 1ms | -| ✔️ | resolves to runners and prefers jest-runner-`name` | 1ms | -| ✔️ | throw error when a runner is not found | 7ms | - -### watchPlugins - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to undefined | 0ms | -| ✔️ | resolves to watch plugins and prefers jest-watch-`name` | 0ms | -| ✔️ | resolves watch plugins that do not have the prefix | 1ms | -| ✔️ | normalizes multiple watchPlugins | 4ms | -| ✔️ | throw error when a watch plugin is not found | 1ms | - -### testPathPattern - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to empty | 0ms | -| ✔️ | joins multiple --testPathPatterns and | 3ms | -| ✔️ | gives precedence to --all | 1ms | - -### testPathPattern --testPathPattern - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses --testPathPattern if set | 0ms | -| ✔️ | ignores invalid regular expressions and logs a warning | 1ms | -| ✔️ | joins multiple --testPathPattern if set | 1ms | - -### testPathPattern --testPathPattern posix - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should not escape the pattern | 1ms | - -### testPathPattern --testPathPattern win32 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | preserves any use of "\" | 1ms | -| ✔️ | replaces POSIX path separators | 9ms | -| ✔️ | replaces POSIX paths in multiple args | 8ms | -| ✔️ | coerces all patterns to strings | 2ms | - -### testPathPattern - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses if set | 3ms | -| ✔️ | ignores invalid regular expressions and logs a warning | 1ms | -| ✔️ | joins multiple if set | 1ms | - -### testPathPattern posix - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should not escape the pattern | 1ms | - -### testPathPattern win32 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | preserves any use of "\" | 15ms | -| ✔️ | replaces POSIX path separators | 14ms | -| ✔️ | replaces POSIX paths in multiple args | 11ms | -| ✔️ | coerces all patterns to strings | 4ms | - -### moduleFileExtensions - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to something useful | 0ms | -| ✔️ | throws if missing `js` but using jest-runner | 1ms | -| ✔️ | does not throw if missing `js` with a custom runner | 2ms | - -### cwd - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is set to process.cwd | 1ms | -| ✔️ | is not lost if the config has its own cwd property | 6ms | - -### Defaults - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be accepted by normalize | 3ms | - -### displayName - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should throw an error when displayName is is an empty object | 1ms | -| ✔️ | should throw an error when displayName is missing color | 1ms | -| ✔️ | should throw an error when displayName is missing name | 1ms | -| ✔️ | should throw an error when displayName is using invalid values | 0ms | -| ✔️ | generates a default color for the runner undefined | 1ms | -| ✔️ | generates a default color for the runner jest-runner | 2ms | -| ✔️ | generates a default color for the runner jest-runner-eslint | 1ms | -| ✔️ | generates a default color for the runner jest-runner-tslint | 1ms | -| ✔️ | generates a default color for the runner jest-runner-tsc | 7ms | - -### testTimeout - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return timeout value if defined | 1ms | -| ✔️ | should throw an error if timeout is a negative number | 0ms | - -### extensionsToTreatAsEsm - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should pass valid config through | 2ms | -| ✔️ | should enforce leading dots | 1ms | -| ✔️ | throws on .js | 4ms | -| ✔️ | throws on .mjs | 0ms | -| ✔️ | throws on .cjs | 1ms | - -## packages/jest-repl/src/__tests__/jest_repl.test.js ✔️ - -### Repl cli - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs without errors | 1028ms | - -## packages/jest-snapshot/src/__tests__/printSnapshot.test.ts ✔️ - -### chalk - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | level 0 | 2ms | -| ✔️ | level 1 | 1ms | -| ✔️ | level 2 | 1ms | -| ✔️ | level 3 | 0ms | - -### matcher error toMatchInlineSnapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Expected properties must be an object (non-null) without snapshot | 1ms | -| ✔️ | Expected properties must be an object (null) with snapshot | 1ms | -| ✔️ | Inline snapshot must be a string | 0ms | -| ✔️ | Snapshot matchers cannot be used with not | 0ms | - -### matcher error toMatchSnapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Expected properties must be an object (non-null) | 1ms | -| ✔️ | Expected properties must be an object (null) with hint | 0ms | -| ✔️ | Expected properties must be an object (null) without hint | 1ms | -| ✔️ | Snapshot state must be initialized | 0ms | - -### matcher error toMatchSnapshot received value must be an object - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (non-null) | 0ms | -| ✔️ | (null) | 1ms | - -### matcher error toThrowErrorMatchingInlineSnapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Inline snapshot must be a string | 4ms | -| ✔️ | Snapshot state must be initialized | 1ms | - -### matcher error toThrowErrorMatchingSnapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Received value must be a function | 0ms | -| ✔️ | Snapshot matchers cannot be used with not | 1ms | - -### other error toThrowErrorMatchingSnapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Received function did not throw | 0ms | - -### pass false toMatchInlineSnapshot with properties equals false - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | with snapshot | 8ms | -| ✔️ | without snapshot | 0ms | - -### pass false toMatchInlineSnapshot with properties - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | equals true | 1ms | - -### pass false toMatchSnapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | New snapshot was not written (multi line) | 0ms | -| ✔️ | New snapshot was not written (single line) | 0ms | - -### pass false toMatchSnapshot with properties equals false - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isLineDiffable false | 0ms | -| ✔️ | isLineDiffable true | 1ms | - -### pass false toMatchSnapshot with properties - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | equals true | 0ms | - -### pass false toThrowErrorMatchingInlineSnapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | with snapshot | 1ms | - -### pass true toMatchSnapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | without properties | 0ms | - -### printPropertiesAndReceived - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | omit missing properties | 4ms | - -### printSnapshotAndReceived backtick - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | single line expected and received | 0ms | - -### printSnapshotAndReceived empty string - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | expected and received single line | 0ms | -| ✔️ | received and expected multi line | 0ms | - -### printSnapshotAndReceived escape - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | double quote marks in string | 0ms | -| ✔️ | backslash in multi line string | 0ms | -| ✔️ | backslash in single line string | 1ms | -| ✔️ | regexp | 0ms | - -### printSnapshotAndReceived expand - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | false | 1ms | -| ✔️ | true | 0ms | - -### printSnapshotAndReceived - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fallback to line diff | 21ms | -| ✔️ | multi line small change in one line and other is unchanged | 0ms | -| ✔️ | multi line small changes | 1ms | -| ✔️ | single line large changes | 0ms | - -### printSnapshotAndReceived has no common after clean up chaff - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | array | 0ms | -| ✔️ | string single line | 1ms | - -### printSnapshotAndReceived MAX_DIFF_STRING_LENGTH unquoted - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | both are less | 0ms | -| ✔️ | expected is more | 3ms | -| ✔️ | received is more | 4ms | - -### printSnapshotAndReceived MAX_DIFF_STRING_LENGTH quoted - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | both are less | 0ms | -| ✔️ | expected is more | 0ms | -| ✔️ | received is more | 1ms | - -### printSnapshotAndReceived isLineDiffable false - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | asymmetric matcher | 0ms | -| ✔️ | boolean | 0ms | -| ✔️ | date | 0ms | -| ✔️ | error | 1ms | -| ✔️ | function | 0ms | -| ✔️ | number | 0ms | - -### printSnapshotAndReceived isLineDiffable true - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | array | 1ms | -| ✔️ | object | 0ms | -| ✔️ | single line expected and received | 1ms | -| ✔️ | single line expected and multi line received | 0ms | - -### printSnapshotAndReceived ignore indentation - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | markup delete | 1ms | -| ✔️ | markup fall back | 2ms | -| ✔️ | markup insert | 0ms | - -### printSnapshotAndReceived ignore indentation object - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | delete | 0ms | -| ✔️ | insert | 0ms | - -### printSnapshotAndReceived without serialize - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | backtick single line expected and received | 1ms | -| ✔️ | backtick single line expected and multi line received | 1ms | -| ✔️ | has no common after clean up chaff multi line | 0ms | -| ✔️ | has no common after clean up chaff single line | 0ms | -| ✔️ | prettier/pull/5590 | 1ms | - -## packages/jest-config/src/__tests__/Defaults.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | get configuration defaults | 0ms | - -## packages/jest-resolve/src/__tests__/resolve.test.ts ✔️ - -### isCoreModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns false if `hasCoreModules` is false. | 0ms | -| ✔️ | returns true if `hasCoreModules` is true and `moduleName` is a core module. | 0ms | -| ✔️ | returns false if `hasCoreModules` is true and `moduleName` is not a core module. | 0ms | -| ✔️ | returns false if `hasCoreModules` is true and `moduleNameMapper` alias a module same name with core module | 1ms | - -### findNodeModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is possible to override the default resolver | 1ms | -| ✔️ | passes packageFilter to the resolve module when using the default resolver | 1ms | - -### resolveModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is possible to resolve node modules | 2ms | -| ✔️ | is possible to resolve node modules with custom extensions | 2ms | -| ✔️ | is possible to resolve node modules with custom extensions and platforms | 0ms | -| ✔️ | is possible to resolve node modules by resolving their realpath | 0ms | -| ✔️ | is possible to specify custom resolve paths | 1ms | -| ✔️ | does not confuse directories with files | 1ms | - -### getMockModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is possible to use custom resolver to resolve deps inside mock modules with moduleNameMapper | 1ms | - -### nodeModulesPaths - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | provides custom module paths after node_modules | 0ms | - -### Resolver.getModulePaths() -> nodeModulesPaths() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | can resolve node modules relative to absolute paths in "moduleDirectories" on Windows platforms | 21ms | -| ✔️ | can resolve node modules relative to absolute paths in "moduleDirectories" on Posix platforms | 8ms | - -## packages/expect/src/__tests__/matchers-toEqual.property.test.ts ✔️ - -### toEqual - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be reflexive | 58ms | -| ✔️ | should be symmetric | 204ms | - -## packages/jest-reporters/src/__tests__/SummaryReporter.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | snapshots needs update with npm test | 250ms | -| ✔️ | snapshots needs update with yarn test | 4ms | -| ✔️ | snapshots all have results (no update) | 4ms | -| ✔️ | snapshots all have results (after update) | 10ms | - -## packages/jest-config/src/__tests__/readConfigs.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | readConfigs() throws when called without project paths | 16ms | -| ✔️ | readConfigs() loads async config file | 10ms | -| ✔️ | readConfigs() reject if async was rejected | 0ms | - -## packages/jest-reporters/src/__tests__/generateEmptyCoverage.test.js ✔️ - -### generateEmptyCoverage - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | generates an empty coverage object for a file without running it | 370ms | -| ✔️ | generates a null coverage result when using /* istanbul ignore file */ | 15ms | -| ✔️ | generates a null coverage result when collectCoverage global config is false | 1ms | - -## packages/expect/src/__tests__/asymmetricMatchers.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Any.asymmetricMatch() | 1ms | -| ✔️ | Any.toAsymmetricMatcher() | 1ms | -| ✔️ | Any.toAsymmetricMatcher() with function name | 1ms | -| ✔️ | Any throws when called with empty constructor | 47ms | -| ✔️ | Anything matches any type | 1ms | -| ✔️ | Anything does not match null and undefined | 0ms | -| ✔️ | Anything.toAsymmetricMatcher() | 0ms | -| ✔️ | ArrayContaining matches | 4ms | -| ✔️ | ArrayContaining does not match | 0ms | -| ✔️ | ArrayContaining throws for non-arrays | 1ms | -| ✔️ | ArrayNotContaining matches | 0ms | -| ✔️ | ArrayNotContaining does not match | 1ms | -| ✔️ | ArrayNotContaining throws for non-arrays | 0ms | -| ✔️ | ObjectContaining matches | 1ms | -| ✔️ | ObjectContaining does not match | 0ms | -| ✔️ | ObjectContaining matches defined properties | 0ms | -| ✔️ | ObjectContaining matches prototype properties | 0ms | -| ✔️ | ObjectContaining throws for non-objects | 1ms | -| ✔️ | ObjectContaining does not mutate the sample | 0ms | -| ✔️ | ObjectNotContaining matches | 0ms | -| ✔️ | ObjectNotContaining does not match | 1ms | -| ✔️ | ObjectNotContaining inverts ObjectContaining | 0ms | -| ✔️ | ObjectNotContaining throws for non-objects | 0ms | -| ✔️ | StringContaining matches string against string | 0ms | -| ✔️ | StringContaining throws if expected value is not string | 0ms | -| ✔️ | StringContaining returns false if received value is not string | 0ms | -| ✔️ | StringNotContaining matches string against string | 0ms | -| ✔️ | StringNotContaining throws if expected value is not string | 0ms | -| ✔️ | StringNotContaining returns true if received value is not string | 0ms | -| ✔️ | StringMatching matches string against regexp | 1ms | -| ✔️ | StringMatching matches string against string | 0ms | -| ✔️ | StringMatching throws if expected value is neither string nor regexp | 0ms | -| ✔️ | StringMatching returns false if received value is not string | 1ms | -| ✔️ | StringMatching returns false even if coerced non-string received value matches pattern | 0ms | -| ✔️ | StringNotMatching matches string against regexp | 0ms | -| ✔️ | StringNotMatching matches string against string | 0ms | -| ✔️ | StringNotMatching throws if expected value is neither string nor regexp | 0ms | -| ✔️ | StringNotMatching returns true if received value is not string | 0ms | - -## packages/jest-reporters/src/__tests__/CoverageReporter.test.js ✔️ - -### onRunComplete - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | getLastError() returns an error when threshold is not met for global | 299ms | -| ✔️ | getLastError() returns an error when threshold is not met for file | 3ms | -| ✔️ | getLastError() returns `undefined` when threshold is met | 2ms | -| ✔️ | getLastError() returns an error when threshold is not met for non-covered file | 1ms | -| ✔️ | getLastError() returns an error when threshold is not met for directory | 1ms | -| ✔️ | getLastError() returns `undefined` when threshold is met for directory | 1ms | -| ✔️ | getLastError() returns an error when there is no coverage data for a threshold | 0ms | -| ✔️ | getLastError() returns 'undefined' when global threshold group - is empty because PATH and GLOB threshold groups have matched all the - files in the coverage data. | 1ms | -| ✔️ | getLastError() returns 'undefined' when file and directory path - threshold groups overlap | 2ms | -| ✔️ | that if globs or paths are specified alongside global, coverage - data for matching paths will be subtracted from overall coverage - and thresholds will be applied independently | 1ms | -| ✔️ | that files are matched by all matching threshold groups | 1ms | -| ✔️ | that it passes custom options when creating reporters | 2ms | - -## packages/jest-snapshot/src/__tests__/InlineSnapshots.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | saveInlineSnapshots() replaces empty function call with a template literal | 63ms | -| ✔️ | saveInlineSnapshots() without prettier leaves formatting outside of snapshots alone | 7ms | -| ✔️ | saveInlineSnapshots() can handle typescript without prettier | 8ms | -| ✔️ | saveInlineSnapshots() can handle tsx without prettier | 6ms | -| ✔️ | saveInlineSnapshots() can handle flow and jsx without prettier | 35ms | -| ✔️ | saveInlineSnapshots() can use prettier to fix formatting for whole file | 17ms | -| ✔️ | saveInlineSnapshots() replaces existing template literal - babel parser | 5ms | -| ✔️ | saveInlineSnapshots() replaces existing template literal - flow parser | 169ms | -| ✔️ | saveInlineSnapshots() replaces existing template literal - typescript parser | 155ms | -| ✔️ | saveInlineSnapshots() replaces existing template literal with property matchers | 17ms | -| ✔️ | saveInlineSnapshots() creates template literal with property matchers | 5ms | -| ✔️ | saveInlineSnapshots() creates template literal with property matchers | 2ms | -| ✔️ | saveInlineSnapshots() throws if frame does not match | 22ms | -| ✔️ | saveInlineSnapshots() throws if multiple calls to to the same location | 3ms | -| ✔️ | saveInlineSnapshots() uses escaped backticks | 6ms | -| ✔️ | saveInlineSnapshots() works with non-literals in expect call | 8ms | -| ✔️ | saveInlineSnapshots() indents multi-line snapshots with spaces | 13ms | -| ✔️ | saveInlineSnapshots() does not re-indent error snapshots | 22ms | -| ✔️ | saveInlineSnapshots() does not re-indent already indented snapshots | 11ms | -| ✔️ | saveInlineSnapshots() indents multi-line snapshots with tabs | 12ms | -| ✔️ | saveInlineSnapshots() indents snapshots after prettier reformats | 16ms | -| ✔️ | saveInlineSnapshots() does not indent empty lines | 7ms | - -## packages/jest-config/src/__tests__/readConfig.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | readConfig() throws when an object is passed without a file path | 16ms | - -## packages/jest-watcher/src/lib/__tests__/scroll.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | When offset is -1 | 0ms | -| ✔️ | When offset is in the first set of items | 0ms | -| ✔️ | When offset is in the middle of the list | 0ms | -| ✔️ | When offset is at the end of the list | 1ms | -| ✔️ | When offset is at the end and size is smaller than max | 0ms | - -## packages/expect/src/__tests__/toThrowMatchers.test.ts ✔️ - -### toThrowError - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | to throw or not to throw | 1ms | -| ✔️ | invalid arguments | 0ms | -| ✔️ | invalid actual | 1ms | - -### toThrowError substring - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes | 0ms | -| ✔️ | did not throw at all | 2ms | -| ✔️ | threw, but message did not match (error) | 4ms | -| ✔️ | threw, but message did not match (non-error falsey) | 1ms | -| ✔️ | properly escapes strings when matching against errors | 37ms | -| ✔️ | threw, but message should not match (error) | 1ms | -| ✔️ | threw, but message should not match (non-error truthy) | 0ms | - -### toThrowError regexp - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes | 1ms | -| ✔️ | did not throw at all | 0ms | -| ✔️ | threw, but message did not match (error) | 1ms | -| ✔️ | threw, but message did not match (non-error falsey) | 8ms | -| ✔️ | threw, but message should not match (error) | 1ms | -| ✔️ | threw, but message should not match (non-error truthy) | 0ms | - -### toThrowError error class - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes | 1ms | -| ✔️ | did not throw at all | 0ms | -| ✔️ | threw, but class did not match (error) | 0ms | -| ✔️ | threw, but class did not match (non-error falsey) | 1ms | -| ✔️ | threw, but class should not match (error) | 0ms | -| ✔️ | threw, but class should not match (error subclass) | 1ms | -| ✔️ | threw, but class should not match (error subsubclass) | 4ms | - -### toThrowError error-message pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 1ms | - -### toThrowError error-message fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 1ms | -| ✔️ | multiline diff highlight incorrect expected space | 1ms | - -### toThrowError asymmetric any-Class pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrowError asymmetric any-Class fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 1ms | - -### toThrowError asymmetric anything pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrowError asymmetric anything fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 1ms | -| ✔️ | isNot true | 0ms | - -### toThrowError asymmetric no-symbol pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrowError asymmetric no-symbol fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 1ms | -| ✔️ | isNot true | 1ms | - -### toThrowError asymmetric objectContaining pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrowError asymmetric objectContaining fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 4ms | - -### toThrowError promise/async throws if Error-like object is returned - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes | 3ms | -| ✔️ | did not throw at all | 0ms | -| ✔️ | threw, but class did not match | 1ms | -| ✔️ | threw, but should not have | 0ms | - -### toThrowError expected is undefined - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | threw, but should not have (non-error falsey) | 0ms | - -### toThrow - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | to throw or not to throw | 0ms | -| ✔️ | invalid arguments | 1ms | -| ✔️ | invalid actual | 0ms | - -### toThrow substring - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes | 0ms | -| ✔️ | did not throw at all | 1ms | -| ✔️ | threw, but message did not match (error) | 0ms | -| ✔️ | threw, but message did not match (non-error falsey) | 1ms | -| ✔️ | properly escapes strings when matching against errors | 0ms | -| ✔️ | threw, but message should not match (error) | 1ms | -| ✔️ | threw, but message should not match (non-error truthy) | 0ms | - -### toThrow regexp - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes | 0ms | -| ✔️ | did not throw at all | 1ms | -| ✔️ | threw, but message did not match (error) | 0ms | -| ✔️ | threw, but message did not match (non-error falsey) | 0ms | -| ✔️ | threw, but message should not match (error) | 0ms | -| ✔️ | threw, but message should not match (non-error truthy) | 0ms | - -### toThrow error class - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes | 0ms | -| ✔️ | did not throw at all | 0ms | -| ✔️ | threw, but class did not match (error) | 1ms | -| ✔️ | threw, but class did not match (non-error falsey) | 0ms | -| ✔️ | threw, but class should not match (error) | 0ms | -| ✔️ | threw, but class should not match (error subclass) | 0ms | -| ✔️ | threw, but class should not match (error subsubclass) | 0ms | - -### toThrow error-message pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrow error-message fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 1ms | -| ✔️ | multiline diff highlight incorrect expected space | 4ms | - -### toThrow asymmetric any-Class pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrow asymmetric any-Class fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 1ms | -| ✔️ | isNot true | 0ms | - -### toThrow asymmetric anything pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrow asymmetric anything fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrow asymmetric no-symbol pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrow asymmetric no-symbol fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 1ms | - -### toThrow asymmetric objectContaining pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrow asymmetric objectContaining fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 1ms | -| ✔️ | isNot true | 0ms | - -### toThrow promise/async throws if Error-like object is returned - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes | 1ms | -| ✔️ | did not throw at all | 1ms | -| ✔️ | threw, but class did not match | 0ms | -| ✔️ | threw, but should not have | 1ms | - -### toThrow expected is undefined - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | threw, but should not have (non-error falsey) | 0ms | - -## packages/jest-validate/src/__tests__/validate.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | recursively validates default Jest config | 0ms | -| ✔️ | recursively validates default jest-validate config | 1ms | -| ✔️ | pretty prints valid config for Boolean | 1ms | -| ✔️ | pretty prints valid config for Array | 0ms | -| ✔️ | pretty prints valid config for String | 1ms | -| ✔️ | pretty prints valid config for Object | 0ms | -| ✔️ | pretty prints valid config for Function | 0ms | -| ✔️ | omits null and undefined config values | 0ms | -| ✔️ | recursively omits null and undefined config values | 0ms | -| ✔️ | treat async and non-async functions as equivalent | 0ms | -| ✔️ | treat async and non-async functions as equivalent | 0ms | -| ✔️ | treat async and non-async functions as equivalent | 0ms | -| ✔️ | treat async and non-async functions as equivalent | 0ms | -| ✔️ | respects recursiveDenylist | 1ms | -| ✔️ | displays warning for unknown config options | 1ms | -| ✔️ | displays warning for deprecated config options | 0ms | -| ✔️ | works with custom warnings | 1ms | -| ✔️ | works with custom errors | 0ms | -| ✔️ | works with custom deprecations | 1ms | -| ✔️ | works with multiple valid types | 0ms | -| ✔️ | reports errors nicely when failing with multiple valid options | 0ms | -| ✔️ | Repeated types within multiple valid examples are coalesced in error report | 1ms | -| ✔️ | Comments in config JSON using "//" key are not warned | 0ms | - -## packages/jest-snapshot/src/__tests__/SnapshotResolver.test.ts ✔️ - -### defaults - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns cached object if called multiple times | 0ms | -| ✔️ | resolveSnapshotPath() | 1ms | -| ✔️ | resolveTestPath() | 0ms | - -### custom resolver in project config - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns cached object if called multiple times | 4ms | -| ✔️ | resolveSnapshotPath() | 0ms | -| ✔️ | resolveTestPath() | 0ms | - -### malformed custom resolver in project config - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | missing resolveSnapshotPath throws | 8ms | -| ✔️ | missing resolveTestPath throws | 10ms | -| ✔️ | missing testPathForConsistencyCheck throws | 4ms | -| ✔️ | inconsistent functions throws | 20ms | - -## packages/jest-reporters/src/__tests__/CoverageWorker.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resolves to the result of generateEmptyCoverage upon success | 127ms | -| ✔️ | throws errors on invalid JavaScript | 5ms | - -## packages/babel-jest/src/__tests__/index.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Returns source string with inline maps when no transformOptions is passed | 177ms | -| ✔️ | can pass null to createTransformer | 17ms | - -### caller option correctly merges from defaults and options - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {"supportsDynamicImport":true,"supportsStaticESM":true} -> {"supportsDynamicImport":true,"supportsStaticESM":true} | 6ms | -| ✔️ | {"supportsDynamicImport":false,"supportsStaticESM":false} -> {"supportsDynamicImport":false,"supportsStaticESM":false} | 11ms | -| ✔️ | {"supportsStaticESM":false} -> {"supportsDynamicImport":false,"supportsStaticESM":false} | 13ms | -| ✔️ | {"supportsDynamicImport":true} -> {"supportsDynamicImport":true,"supportsStaticESM":false} | 11ms | - -## packages/jest-config/src/__tests__/resolveConfigPath.test.ts ✔️ - -### Resolve config path .js - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | file path with ".js" | 9ms | -| ✔️ | directory path with ".js" | 11ms | - -### Resolve config path .ts - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | file path with ".ts" | 2ms | -| ✔️ | directory path with ".ts" | 3ms | - -### Resolve config path .mjs - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | file path with ".mjs" | 1ms | -| ✔️ | directory path with ".mjs" | 7ms | - -### Resolve config path .cjs - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | file path with ".cjs" | 2ms | -| ✔️ | directory path with ".cjs" | 2ms | - -### Resolve config path .json - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | file path with ".json" | 1ms | -| ✔️ | directory path with ".json" | 3ms | - -## packages/jest-reporters/src/__tests__/VerboseReporter.test.js ✔️ - -### groupTestsBySuites - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should handle empty results | 293ms | -| ✔️ | should group A1 in A | 1ms | -| ✔️ | should group A1 in A; B1 in B | 0ms | -| ✔️ | should group A1, A2 in A | 0ms | -| ✔️ | should group A1, A2 in A; B1, B2 in B | 1ms | -| ✔️ | should group AB1 in AB | 0ms | -| ✔️ | should group AB1, AB2 in AB | 0ms | -| ✔️ | should group A1 in A; AB1 in AB | 0ms | -| ✔️ | should group AB1 in AB; A1 in A | 0ms | -| ✔️ | should group AB1 in AB; CD1 in CD | 1ms | -| ✔️ | should group ABC1 in ABC; BC1 in BC; D1 in D; A1 in A | 0ms | - -## packages/jest-snapshot/src/__tests__/utils.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | keyToTestName() | 18ms | -| ✔️ | testNameToKey | 0ms | -| ✔️ | saveSnapshotFile() works with | 7ms | -| ✔️ | saveSnapshotFile() works with | 0ms | -| ✔️ | getSnapshotData() throws when no snapshot version | 1ms | -| ✔️ | getSnapshotData() throws for older snapshot version | 1ms | -| ✔️ | getSnapshotData() throws for newer snapshot version | 1ms | -| ✔️ | getSnapshotData() does not throw for when updating | 0ms | -| ✔️ | getSnapshotData() marks invalid snapshot dirty when updating | 0ms | -| ✔️ | getSnapshotData() marks valid snapshot not dirty when updating | 0ms | -| ✔️ | escaping | 0ms | -| ✔️ | serialize handles \r\n | 1ms | - -### ExtraLineBreaks - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | 0 empty string | 0ms | -| ✔️ | 1 line has double quote marks at edges | 0ms | -| ✔️ | 1 line has spaces at edges | 1ms | -| ✔️ | 2 lines both are blank | 0ms | -| ✔️ | 2 lines have double quote marks at edges | 0ms | -| ✔️ | 2 lines first is blank | 4ms | -| ✔️ | 2 lines last is blank | 1ms | - -### removeLinesBeforeExternalMatcherTrap - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | contains external matcher trap | 0ms | -| ✔️ | doesn't contain external matcher trap | 0ms | - -### DeepMerge with property matchers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Correctly merges a nested object | 1ms | -| ✔️ | Correctly merges an object with an array of objects | 1ms | -| ✔️ | Correctly merges an object with an array of strings | 0ms | -| ✔️ | Correctly merges an array of objects | 1ms | -| ✔️ | Correctly merges an array of arrays | 0ms | - -## packages/jest-reporters/src/__tests__/NotifyReporter.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | test always | 2ms | -| ✔️ | test success | 8ms | -| ✔️ | test change | 1ms | -| ✔️ | test success-change | 0ms | -| ✔️ | test failure-change | 0ms | -| ✔️ | test always with rootDir | 1ms | -| ✔️ | test success with rootDir | 0ms | -| ✔️ | test change with rootDir | 0ms | -| ✔️ | test success-change with rootDir | 1ms | -| ✔️ | test failure-change with rootDir | 1ms | -| ✔️ | test always with moduleName | 0ms | -| ✔️ | test success with moduleName | 0ms | -| ✔️ | test change with moduleName | 1ms | -| ✔️ | test success-change with moduleName | 4ms | -| ✔️ | test failure-change with moduleName | 1ms | - -### node-notifier is an optional dependency - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | without node-notifier uses mock function that throws an error | 23ms | -| ✔️ | throws the error when require throws an unexpected error | 0ms | -| ✔️ | uses node-notifier when it is available | 1ms | - -## packages/jest-repl/src/__tests__/runtime_cli.test.js ✔️ - -### Runtime CLI - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fails with no path | 80ms | -| ✔️ | displays script output | 1197ms | -| ✔️ | always disables automocking | 1424ms | -| ✔️ | throws script errors | 1209ms | - -## packages/expect/src/__tests__/extend.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is available globally when matcher is unary | 1ms | -| ✔️ | is available globally when matcher is variadic | 1ms | -| ✔️ | exposes matcherUtils in context | 0ms | -| ✔️ | is ok if there is no message specified | 2ms | -| ✔️ | exposes an equality function to custom matchers | 0ms | -| ✔️ | defines asymmetric unary matchers | 3ms | -| ✔️ | defines asymmetric unary matchers that can be prefixed by not | 2ms | -| ✔️ | defines asymmetric variadic matchers | 0ms | -| ✔️ | defines asymmetric variadic matchers that can be prefixed by not | 0ms | -| ✔️ | prints the Symbol into the error message | 1ms | - -## packages/jest-source-map/src/__tests__/getCallsite.test.ts ✔️ - -### getCallsite - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | without source map | 1ms | -| ✔️ | ignores errors when fs throws | 1ms | -| ✔️ | reads source map file to determine line and column | 0ms | - -## packages/jest-config/src/__tests__/setFromArgv.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | maps special values to valid options | 0ms | -| ✔️ | maps regular values to themselves | 0ms | -| ✔️ | works with string objects | 0ms | -| ✔️ | explicit flags override those from --config | 0ms | - -## packages/jest-watcher/src/lib/__tests__/prompt.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls handler on change value | 2ms | -| ✔️ | calls handler on success prompt | 0ms | -| ✔️ | calls handler on cancel prompt | 1ms | - -## packages/jest-docblock/src/__tests__/index.test.ts ✔️ - -### docblock - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | extracts valid docblock with line comment | 0ms | -| ✔️ | extracts valid docblock | 1ms | -| ✔️ | extracts valid docblock with more comments | 0ms | -| ✔️ | extracts from invalid docblock | 0ms | -| ✔️ | returns extract and parsedocblock | 1ms | -| ✔️ | parses directives out of a docblock | 0ms | -| ✔️ | parses multiple of the same directives out of a docblock | 1ms | -| ✔️ | parses >=3 of the same directives out of a docblock | 0ms | -| ✔️ | parses directives out of a docblock with comments | 0ms | -| ✔️ | parses directives out of a docblock with line comments | 0ms | -| ✔️ | parses multiline directives | 0ms | -| ✔️ | parses multiline directives even if there are linecomments within the docblock | 1ms | -| ✔️ | supports slashes in @team directive | 0ms | -| ✔️ | extracts comments from docblock | 0ms | -| ✔️ | extracts multiline comments from docblock | 10ms | -| ✔️ | preserves leading whitespace in multiline comments from docblock | 0ms | -| ✔️ | removes leading newlines in multiline comments from docblock | 0ms | -| ✔️ | extracts comments from beginning and end of docblock | 0ms | -| ✔️ | preserve urls within a pragma's values | 0ms | -| ✔️ | strip linecomments from pragmas but preserve for comments | 0ms | -| ✔️ | extracts docblock comments as CRLF when docblock contains CRLF | 0ms | -| ✔️ | extracts docblock comments as LF when docblock contains LF | 0ms | -| ✔️ | strips the docblock out of a file that contains a top docblock | 0ms | -| ✔️ | returns a file unchanged if there is no top docblock to strip | 0ms | -| ✔️ | prints docblocks with no pragmas as empty string | 0ms | -| ✔️ | prints docblocks with one pragma on one line | 0ms | -| ✔️ | prints docblocks with multiple pragmas on multiple lines | 1ms | -| ✔️ | prints docblocks with multiple of the same pragma | 0ms | -| ✔️ | prints docblocks with pragmas | 1ms | -| ✔️ | prints docblocks with comments | 0ms | -| ✔️ | prints docblocks with comments and no keys | 0ms | -| ✔️ | prints docblocks with multiline comments | 0ms | -| ✔️ | prints docblocks that are parseable | 0ms | -| ✔️ | can augment existing docblocks with comments | 0ms | -| ✔️ | prints docblocks using CRLF if comments contains CRLF | 0ms | -| ✔️ | prints docblocks using LF if comments contains LF | 1ms | - -## packages/jest-snapshot/src/__tests__/dedentLines.test.ts ✔️ - -### dedentLines non-null - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | no lines | 3ms | -| ✔️ | one line empty string | 1ms | -| ✔️ | one line empty object | 0ms | -| ✔️ | one line self-closing element | 0ms | -| ✔️ | object value empty string | 0ms | -| ✔️ | object value string includes double-quote marks | 0ms | -| ✔️ | markup with props and text | 0ms | -| ✔️ | markup with components as props | 1ms | - -### dedentLines null - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | object key multi-line | 0ms | -| ✔️ | object value multi-line | 1ms | -| ✔️ | object key and value multi-line | 0ms | -| ✔️ | markup prop multi-line | 0ms | -| ✔️ | markup prop component with multi-line text | 1ms | -| ✔️ | markup text multi-line | 0ms | -| ✔️ | markup text multiple lines | 0ms | -| ✔️ | markup unclosed self-closing start tag | 1ms | -| ✔️ | markup unclosed because no end tag | 0ms | - -## packages/jest-config/src/__tests__/getMaxWorkers.test.ts ✔️ - -### getMaxWorkers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Returns 1 when runInBand | 0ms | -| ✔️ | Returns 1 when the OS CPUs are not available | 0ms | -| ✔️ | Returns the `maxWorkers` when specified | 0ms | -| ✔️ | Returns based on the number of cpus | 1ms | - -### getMaxWorkers % based - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | 50% = 2 workers | 0ms | -| ✔️ | < 0 workers should become 1 | 1ms | -| ✔️ | 0% shouldn't break | 0ms | - -## packages/jest-reporters/src/__tests__/utils.test.ts ✔️ - -### wrapAnsiString() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | wraps a long string containing ansi chars | 3ms | -| ✔️ | returns the string unaltered if given a terminal width of zero | 0ms | - -### trimAndFormatPath() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | trims dirname | 1ms | -| ✔️ | trims dirname (longer line width) | 1ms | -| ✔️ | trims dirname and basename | 0ms | -| ✔️ | does not trim anything | 0ms | -| ✔️ | split at the path.sep index | 1ms | - -### printDisplayName - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should default displayName color to white when displayName is a string | 0ms | -| ✔️ | should default displayName color to white when color is not a valid value | 1ms | -| ✔️ | should correctly print the displayName when color and name are valid values | 0ms | - -## packages/jest-snapshot/src/__tests__/throwMatcher.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throw matcher can take func | 2ms | - -### throw matcher from promise - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | can take error | 0ms | -| ✔️ | can take custom error | 1ms | - -## packages/jest-snapshot/src/__tests__/matcher.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | matcher returns matcher name, expected and actual values | 7ms | - -## packages/jest-config/src/__tests__/validatePattern.test.ts ✔️ - -### validate pattern function - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | without passed args returns true | 1ms | -| ✔️ | returns true for empty pattern | 0ms | -| ✔️ | returns true for valid pattern | 0ms | -| ✔️ | returns false for invalid pattern | 1ms | - -## packages/jest-resolve/src/__tests__/isBuiltinModule.test.ts ✔️ - -### isBuiltinModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return true for the `path` module | 0ms | -| ✔️ | should return false for the `chalk` module | 0ms | -| ✔️ | should return true for the `_http_common` module | 0ms | -| ✔️ | should return false for any internal node builtins | 0ms | - -## packages/jest-globals/src/__tests__/index.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throw when directly imported | 505ms | - -## packages/jest-regex-util/src/__tests__/index.test.ts ✔️ - -### replacePathSepForRegex() posix - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return the path | 1ms | - -### replacePathSepForRegex() win32 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should replace POSIX path separators | 1ms | -| ✔️ | should escape Windows path separators | 0ms | -| ✔️ | should not escape an escaped dot | 1ms | -| ✔️ | should not escape an escaped regexp symbol | 0ms | -| ✔️ | should escape Windows path separators inside groups | 0ms | -| ✔️ | should escape Windows path separator at the beginning | 1ms | -| ✔️ | should not escape several already escaped path separators | 0ms | - -## packages/jest-snapshot/src/__tests__/mockSerializer.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | mock with 0 calls and default name | 1ms | -| ✔️ | mock with 2 calls, 1 return, 1 throw | 1ms | -| ✔️ | mock with 0 calls and default name in React element | 0ms | -| ✔️ | mock with 0 calls and non-default name | 0ms | -| ✔️ | mock with 1 calls and non-default name via new in object | 1ms | -| ✔️ | mock with 1 calls in React element | 0ms | -| ✔️ | mock with 2 calls | 1ms | -| ✔️ | indent option | 0ms | -| ✔️ | min option | 1ms | -| ✔️ | maxDepth option | 0ms | - -## packages/jest-reporters/src/__tests__/getWatermarks.test.ts ✔️ - -### getWatermarks - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | that watermarks use thresholds as upper target | 1ms | -| ✔️ | that watermarks are created always created | 1ms | - -## packages/jest-reporters/src/__tests__/DefaultReporter.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | normal output, everything goes to stdout | 3ms | -| ✔️ | when using stderr as output, no stdout call is made | 1ms | - -## packages/jest-reporters/src/__tests__/getResultHeader.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should call `terminal-link` correctly | 0ms | -| ✔️ | should render the terminal link | 0ms | -| ✔️ | should display test time for slow test | 0ms | -| ✔️ | should not display test time for fast test | 0ms | - -## packages/expect/src/__tests__/toEqual-dom.test.ts ✔️ - -### toEqual duck type Text - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toEqual duck type Element - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 1ms | -| ✔️ | isNot true | 0ms | - -### toEqual duck type Fragment - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 1ms | -| ✔️ | isNot true | 0ms | - -### toEqual document createTextNode - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 1ms | -| ✔️ | isNot true | 1ms | - -### toEqual document createElement - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 1ms | -| ✔️ | isNot true | 0ms | - -### toEqual document createDocumentFragment - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 2ms | -| ✔️ | isNot true | 1ms | - -## packages/jest-environment-node/src/__tests__/node_environment.test.ts ✔️ - -### NodeEnvironment - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses a copy of the process object | 11ms | -| ✔️ | exposes process.on | 1ms | -| ✔️ | exposes global.global | 1ms | -| ✔️ | should configure setTimeout/setInterval to use the node api | 3ms | -| ✔️ | has modern fake timers implementation | 1ms | -| ✔️ | TextEncoder references the same global Uint8Array constructor | 0ms | - -## packages/jest-reporters/src/__tests__/getSnapshotStatus.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Retrieves the snapshot status | 0ms | -| ✔️ | Shows no snapshot updates if all snapshots matched | 1ms | -| ✔️ | Retrieves the snapshot status after a snapshot update | 0ms | - -## packages/jest-validate/src/__tests__/validateCLIOptions.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | validates yargs special options | 1ms | -| ✔️ | validates testURL | 1ms | -| ✔️ | fails for unknown option | 4ms | -| ✔️ | fails for multiple unknown options | 0ms | -| ✔️ | does not show suggestion when unrecognized cli param length <= 1 | 1ms | -| ✔️ | shows suggestion when unrecognized cli param length > 1 | 0ms | - -## packages/jest-reporters/src/__tests__/getSnapshotSummary.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | creates a snapshot summary | 0ms | -| ✔️ | creates a snapshot summary after an update | 0ms | -| ✔️ | creates a snapshot summary with multiple snapshot being written/updated | 0ms | -| ✔️ | returns nothing if there are no updates | 1ms | - -## packages/jest-watcher/src/lib/__tests__/formatTestNameByPattern.test.ts ✔️ - -### for multiline test name returns - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | test name with highlighted pattern and replaced line breaks | 2ms | - -### for one line test name with pattern in the head returns - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | test name with highlighted pattern | 0ms | -| ✔️ | test name with cutted tail and highlighted pattern | 0ms | -| ✔️ | test name with cutted tail and cutted highlighted pattern | 0ms | - -### for one line test name pattern in the middle - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | test name with highlighted pattern returns | 1ms | -| ✔️ | test name with cutted tail and highlighted pattern | 0ms | -| ✔️ | test name with cutted tail and cutted highlighted pattern | 0ms | -| ✔️ | test name with highlighted cutted | 0ms | - -### for one line test name pattern in the tail returns - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | test name with highlighted pattern | 1ms | -| ✔️ | test name with cutted tail and cutted highlighted pattern | 0ms | -| ✔️ | test name with highlighted cutted | 1ms | - -## packages/jest-transform/src/__tests__/shouldInstrument.test.ts ✔️ - -### shouldInstrument should return true - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | when testRegex is provided and file is not a test file | 5ms | -| ✔️ | when more than one testRegex is provided and filename is not a test file | 0ms | -| ✔️ | when testMatch is provided and file is not a test file | 3ms | -| ✔️ | when testPathIgnorePatterns is provided and file is not a test file | 1ms | -| ✔️ | when more than one testPathIgnorePatterns is provided and filename is not a test file | 0ms | -| ✔️ | when testRegex and testPathIgnorePatterns are provided and file is not a test file | 1ms | -| ✔️ | when testMatch and testPathIgnorePatterns are provided and file is not a test file | 0ms | -| ✔️ | should return true when file is in collectCoverageOnlyFrom when provided | 32ms | -| ✔️ | should return true when filename matches collectCoverageFrom | 0ms | -| ✔️ | should return true if the file is not in coveragePathIgnorePatterns | 0ms | -| ✔️ | should return true if file is a testfile but forceCoverageMatch is set | 1ms | - -### shouldInstrument should return false - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | if collectCoverage is falsy | 11ms | -| ✔️ | when testRegex is provided and filename is a test file | 0ms | -| ✔️ | when more than one testRegex is provided and filename matches one of the patterns | 0ms | -| ✔️ | when testMatch is provided and file is a test file | 0ms | -| ✔️ | when testRegex and testPathIgnorePatterns are provided and filename is a test file | 1ms | -| ✔️ | when testMatch and testPathIgnorePatterns are provided and file is a test file | 0ms | -| ✔️ | when file is not in collectCoverageOnlyFrom when provided | 0ms | -| ✔️ | when filename does not match collectCoverageFrom | 0ms | -| ✔️ | if the file is in coveragePathIgnorePatterns | 0ms | -| ✔️ | if file is in mock patterns | 1ms | -| ✔️ | if file is a globalSetup file | 0ms | -| ✔️ | if file is globalTeardown file | 0ms | -| ✔️ | if file is in setupFiles | 11ms | -| ✔️ | if file is in setupFilesAfterEnv | 0ms | - -## packages/jest-transform/src/__tests__/ScriptTransformer.test.ts ✔️ - -### ScriptTransformer - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | transforms a file properly | 204ms | -| ✔️ | does not transform Node core modules | 51ms | -| ✔️ | throws an error if `process` doesn't return a string or an objectcontaining `code` key with processed string | 79ms | -| ✔️ | throws an error if `process` doesn't defined | 42ms | -| ✔️ | throws an error if createTransformer returns object without `process` method | 98ms | -| ✔️ | shouldn't throw error without process method. But with corrent createTransformer method | 66ms | -| ✔️ | uses the supplied preprocessor | 45ms | -| ✔️ | uses multiple preprocessors | 35ms | -| ✔️ | writes source map if preprocessor supplies it | 26ms | -| ✔️ | writes source map if preprocessor inlines it | 38ms | -| ✔️ | warns of unparseable inlined source maps from the preprocessor | 67ms | -| ✔️ | writes source maps if given by the transformer | 32ms | -| ✔️ | does not write source map if not given by the transformer | 75ms | -| ✔️ | should write a source map for the instrumented file when transformed | 66ms | -| ✔️ | should write a source map for the instrumented file when not transformed | 66ms | -| ✔️ | passes expected transform options to getCacheKey | 73ms | -| ✔️ | creates transformer with config | 35ms | -| ✔️ | reads values from the cache | 93ms | -| ✔️ | reads values from the cache when the file contains colons | 84ms | -| ✔️ | should reuse the value from in-memory cache which is set by custom transformer | 25ms | -| ✔️ | does not reuse the in-memory cache between different projects | 37ms | -| ✔️ | preload transformer when using `preloadTransformer` | 36ms | - -## packages/jest-circus/src/__tests__/baseTest.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | simple test | 2145ms | -| ✔️ | failures | 707ms | - -## packages/jest-mock/src/__tests__/index.test.ts ✔️ - -### moduleMocker getMetadata - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the function `name` property | 2ms | -| ✔️ | mocks constant values | 1ms | -| ✔️ | does not retrieve metadata for arrays | 1ms | -| ✔️ | does not retrieve metadata for undefined | 1ms | -| ✔️ | does not retrieve metadata for null | 1ms | -| ✔️ | retrieves metadata for ES6 classes | 1ms | -| ✔️ | retrieves synchronous function metadata | 1ms | -| ✔️ | retrieves asynchronous function metadata | 1ms | -| ✔️ | retrieves metadata for object literals and it's members | 1ms | -| ✔️ | retrieves Date object metadata | 5ms | - -### moduleMocker generateFromMetadata - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | forwards the function name property | 1ms | -| ✔️ | fixes illegal function name properties | 1ms | -| ✔️ | special cases the mockConstructor name | 0ms | -| ✔️ | wont interfere with previous mocks on a shared prototype | 2ms | -| ✔️ | does not mock non-enumerable getters | 1ms | -| ✔️ | mocks getters of ES modules | 0ms | -| ✔️ | mocks ES2015 non-enumerable methods | 1ms | -| ✔️ | mocks ES2015 non-enumerable static properties and methods | 1ms | -| ✔️ | mocks methods in all the prototype chain (null prototype) | 1ms | -| ✔️ | does not mock methods from Object.prototype | 1ms | -| ✔️ | does not mock methods from Object.prototype (in mock context) | 1ms | -| ✔️ | does not mock methods from Function.prototype | 1ms | -| ✔️ | does not mock methods from Function.prototype (in mock context) | 1ms | -| ✔️ | does not mock methods from RegExp.prototype | 1ms | -| ✔️ | does not mock methods from RegExp.prototype (in mock context) | 1ms | -| ✔️ | mocks methods that are bound multiple times | 0ms | -| ✔️ | mocks methods that are bound after mocking | 0ms | -| ✔️ | mocks regexp instances | 1ms | -| ✔️ | mocks functions with numeric names | 1ms | -| ✔️ | mocks the method in the passed object itself | 0ms | -| ✔️ | should delete previously inexistent methods when restoring | 0ms | -| ✔️ | supports mock value returning undefined | 1ms | -| ✔️ | supports mock value once returning undefined | 1ms | -| ✔️ | mockReturnValueOnce mocks value just once | 1ms | -| ✔️ | supports mocking resolvable async functions | 0ms | -| ✔️ | supports mocking resolvable async functions only once | 0ms | -| ✔️ | supports mocking rejectable async functions | 0ms | -| ✔️ | supports mocking rejectable async functions only once | 1ms | -| ✔️ | tracks thrown errors without interfering with other tracking | 33ms | -| ✔️ | a call that throws undefined is tracked properly | 0ms | -| ✔️ | results of recursive calls are tracked properly | 1ms | -| ✔️ | test results of recursive calls from within the recursive call | 1ms | -| ✔️ | call mockClear inside recursive mock | 1ms | - -### moduleMocker generateFromMetadata mocked functions - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | tracks calls to mocks | 1ms | -| ✔️ | tracks instances made by mocks | 1ms | -| ✔️ | supports clearing mock calls | 1ms | -| ✔️ | supports clearing mocks | 7ms | -| ✔️ | supports clearing all mocks | 1ms | -| ✔️ | supports resetting mock return values | 1ms | -| ✔️ | supports resetting single use mock return values | 1ms | -| ✔️ | supports resetting mock implementations | 0ms | -| ✔️ | supports resetting single use mock implementations | 0ms | -| ✔️ | supports resetting all mocks | 2ms | -| ✔️ | maintains function arity | 0ms | - -### moduleMocker generateFromMetadata return values - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | tracks return values | 1ms | -| ✔️ | tracks mocked return values | 1ms | -| ✔️ | supports resetting return values | 1ms | - -### moduleMocker generateFromMetadata invocationCallOrder - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | tracks invocationCallOrder made by mocks | 1ms | -| ✔️ | supports clearing mock invocationCallOrder | 1ms | -| ✔️ | supports clearing all mocks invocationCallOrder | 1ms | -| ✔️ | handles a property called `prototype` | 1ms | - -### moduleMocker getMockImplementation - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should mock calls to a mock function | 1ms | - -### moduleMocker mockImplementationOnce - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should mock constructor | 1ms | -| ✔️ | should mock single call to a mock function | 1ms | -| ✔️ | should fallback to default mock function when no specific mock is available | 1ms | - -### moduleMocker - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | mockReturnValue does not override mockImplementationOnce | 1ms | -| ✔️ | mockImplementation resets the mock | 1ms | -| ✔️ | should recognize a mocked function | 0ms | -| ✔️ | default mockName is jest.fn() | 0ms | -| ✔️ | mockName sets the mock name | 1ms | -| ✔️ | mockName gets reset by mockReset | 1ms | -| ✔️ | mockName gets reset by mockRestore | 1ms | -| ✔️ | mockName is not reset by mockClear | 1ms | - -### moduleMocker spyOn - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should work | 1ms | -| ✔️ | should throw on invalid input | 28ms | -| ✔️ | supports restoring all spies | 2ms | -| ✔️ | should work with getters | 1ms | - -### moduleMocker spyOnProperty - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should work - getter | 2ms | -| ✔️ | should work - setter | 1ms | -| ✔️ | should throw on invalid input | 1ms | -| ✔️ | supports restoring all spies | 1ms | -| ✔️ | should work with getters on the prototype chain | 1ms | -| ✔️ | should work with setters on the prototype chain | 1ms | -| ✔️ | supports restoring all spies on the prototype chain | 1ms | - -## packages/jest-circus/src/__tests__/hooks.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | beforeEach is executed before each test in current/child describe blocks | 2304ms | -| ✔️ | multiple before each hooks in one describe are executed in the right order | 678ms | -| ✔️ | beforeAll is exectued correctly | 625ms | - -## packages/jest-runtime/src/__tests__/runtime_require_module.test.js ✔️ - -### Runtime requireModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | finds haste modules | 1124ms | -| ✔️ | provides `module` to modules | 26ms | -| ✔️ | provides `module.parent` to modules | 80ms | -| ✔️ | `module.parent` should be undefined for entrypoints | 25ms | -| ✔️ | resolve module.parent.require correctly | 49ms | -| ✔️ | resolve module.parent.filename correctly | 23ms | -| ✔️ | provides `module.loaded` to modules | 27ms | -| ✔️ | provides `module.filename` to modules | 36ms | -| ✔️ | provides `module.paths` to modules | 49ms | -| ✔️ | provides `require.main` to modules | 52ms | -| ✔️ | throws on non-existent haste modules | 68ms | -| ✔️ | finds relative-path modules without file extension | 46ms | -| ✔️ | finds relative-path modules with file extension | 21ms | -| ✔️ | throws on non-existent relative-path modules | 22ms | -| ✔️ | finds node core built-in modules | 48ms | -| ✔️ | finds and loads JSON files without file extension | 27ms | -| ✔️ | finds and loads JSON files with file extension | 29ms | -| ✔️ | requires a JSON file twice successfully | 34ms | -| ✔️ | provides manual mock when real module doesnt exist | 27ms | -| ✔️ | doesn't override real modules with manual mocks when explicitly unmocked | 166ms | -| ✔️ | resolves haste packages properly | 30ms | -| ✔️ | resolves platform extensions based on the default platform | 204ms | -| ✔️ | finds modules encoded in UTF-8 *with BOM* | 25ms | -| ✔️ | finds and loads JSON files encoded in UTF-8 *with BOM* | 21ms | -| ✔️ | should export a constructable Module class | 21ms | -| ✔️ | caches Module correctly | 23ms | - -### Runtime requireModule on node >=12.12.0 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | overrides module.createRequire | 28ms | - -## packages/jest-runtime/src/__tests__/runtime_mock.test.js ✔️ - -### Runtime jest.mock - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses explicitly set mocks instead of automocking | 635ms | -| ✔️ | sets virtual mock for non-existing module required from same directory | 29ms | -| ✔️ | sets virtual mock for non-existing module required from different directory | 18ms | - -### Runtime jest.setMock - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses explicitly set mocks instead of automocking | 21ms | - -## packages/jest-circus/src/__tests__/circusItTestError.test.ts ✔️ - -### test/it error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | it doesn't throw an error with valid arguments | 1ms | -| ✔️ | it throws error with missing callback function | 28ms | -| ✔️ | it throws an error when first argument isn't a string | 1ms | -| ✔️ | it throws an error when callback function is not a function | 0ms | -| ✔️ | test doesn't throw an error with valid arguments | 0ms | -| ✔️ | test throws error with missing callback function | 1ms | -| ✔️ | test throws an error when first argument isn't a string | 0ms | -| ✔️ | test throws an error when callback function is not a function | 1ms | - -## packages/jest-worker/src/base/__tests__/BaseWorkerPool.test.js ✔️ - -### BaseWorkerPool - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when createWorker is not defined | 15ms | -| ✔️ | creates and exposes n workers | 9ms | -| ✔️ | creates and expoeses n workers | 1ms | -| ✔️ | creates workers with the right options | 2ms | -| ✔️ | makes a non-existing relative worker throw | 3ms | -| ✔️ | create multiple workers with unique worker ids | 1ms | -| ✔️ | aggregates all stdouts and stderrs from all workers | 1ms | -| ✔️ | works when stdout and stderr are not piped to the parent | 1ms | - -### BaseWorkerPool end - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | ends all workers | 1ms | -| ✔️ | resolves with forceExited=false if workers exited gracefully | 1ms | -| ✔️ | force exits workers that do not exit gracefully and resolves with forceExited=true | 501ms | - -## packages/pretty-format/src/__tests__/Immutable.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not incorrectly match identity-obj-proxy as Immutable object | 1ms | - -### Immutable.OrderedSet - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports an empty collection {min: true} | 1ms | -| ✔️ | supports an empty collection {min: false} | 0ms | -| ✔️ | supports a single string element | 1ms | -| ✔️ | supports a single integer element | 0ms | -| ✔️ | supports multiple string elements {min: true} | 1ms | -| ✔️ | supports multiple string elements {min: false} | 0ms | -| ✔️ | supports multiple integer elements {min: true} | 0ms | -| ✔️ | supports multiple integer elements {min: false} | 1ms | -| ✔️ | supports object elements {min: true} | 0ms | -| ✔️ | supports object elements {min: false} | 0ms | -| ✔️ | supports React elements {min: true} | 1ms | -| ✔️ | supports React elements {min: false} | 1ms | - -### Immutable.List - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports an empty collection {min: true} | 0ms | -| ✔️ | supports an empty collection {min: false} | 0ms | -| ✔️ | supports a single string element | 0ms | -| ✔️ | supports a single integer element | 1ms | -| ✔️ | supports multiple string elements {min: true} | 0ms | -| ✔️ | supports multiple string elements {min: false} | 0ms | -| ✔️ | supports multiple integer elements {min: true} | 0ms | -| ✔️ | supports multiple integer elements {min: false} | 1ms | -| ✔️ | supports object elements {min: true} | 0ms | -| ✔️ | supports object elements {min: false} | 0ms | -| ✔️ | supports React elements {min: true} | 0ms | -| ✔️ | supports React elements {min: false} | 1ms | - -### Immutable.Stack - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports an empty collection {min: true} | 0ms | -| ✔️ | supports an empty collection {min: false} | 0ms | -| ✔️ | supports a single string element | 1ms | -| ✔️ | supports a single integer element | 0ms | -| ✔️ | supports multiple string elements {min: true} | 0ms | -| ✔️ | supports multiple string elements {min: false} | 0ms | -| ✔️ | supports multiple integer elements {min: true} | 1ms | -| ✔️ | supports multiple integer elements {min: false} | 0ms | -| ✔️ | supports object elements {min: true} | 0ms | -| ✔️ | supports object elements {min: false} | 0ms | -| ✔️ | supports React elements {min: true} | 1ms | -| ✔️ | supports React elements {min: false} | 0ms | - -### Immutable.Set - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports an empty collection {min: true} | 0ms | -| ✔️ | supports an empty collection {min: false} | 1ms | -| ✔️ | supports a single string element | 0ms | -| ✔️ | supports a single integer element | 0ms | -| ✔️ | supports multiple string elements {min: true} | 0ms | -| ✔️ | supports multiple string elements {min: false} | 1ms | -| ✔️ | supports multiple integer elements {min: true} | 0ms | -| ✔️ | supports multiple integer elements {min: false} | 1ms | -| ✔️ | supports object elements {min: true} | 0ms | -| ✔️ | supports object elements {min: false} | 0ms | -| ✔️ | supports React elements {min: true} | 0ms | -| ✔️ | supports React elements {min: false} | 1ms | - -### Immutable.Map - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports an empty collection {min: true} | 0ms | -| ✔️ | supports an empty collection {min: false} | 0ms | -| ✔️ | supports an object with single key | 0ms | -| ✔️ | supports an object with multiple keys {min: true} | 1ms | -| ✔️ | supports an object with multiple keys {min: false} | 0ms | -| ✔️ | supports object elements {min: true} | 0ms | -| ✔️ | supports object elements {min: false} | 0ms | -| ✔️ | supports React elements {min: true} | 0ms | -| ✔️ | supports React elements {min: false} | 0ms | - -### Immutable.OrderedMap - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports an empty collection {min: true} | 0ms | -| ✔️ | supports an empty collection {min: false} | 0ms | -| ✔️ | supports an object with single key | 1ms | -| ✔️ | supports an object with multiple keys {min: true} | 0ms | -| ✔️ | supports an object with multiple keys {min: false} | 0ms | -| ✔️ | supports object elements {min: true} | 0ms | -| ✔️ | supports object elements {min: false} | 1ms | -| ✔️ | supports React elements {min: true} | 0ms | -| ✔️ | supports React elements {min: false} | 0ms | -| ✔️ | supports non-string keys | 2ms | - -### Immutable.Record - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports an empty record {min: true} | 0ms | -| ✔️ | supports an empty record {min: false} | 0ms | -| ✔️ | supports a record with descriptive name | 0ms | -| ✔️ | supports a record without descriptive name | 0ms | -| ✔️ | supports a record with values {min: true} | 0ms | -| ✔️ | supports a record with values {min: false} | 1ms | -| ✔️ | supports a record with Map value {min: true} | 0ms | -| ✔️ | supports a record with Map value {min: false} | 0ms | -| ✔️ | supports imbricated Record {min: true} | 0ms | -| ✔️ | supports imbricated Record {min: false} | 0ms | - -### indentation of heterogeneous collections - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | empty Immutable.List as child of Object | 0ms | -| ✔️ | empty Immutable.Map as child of Array | 0ms | -| ✔️ | non-empty Array as child of Immutable.Map | 0ms | -| ✔️ | non-empty Object as child of Immutable.List | 0ms | - -### indent option - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | default implicit: 2 spaces | 0ms | -| ✔️ | default explicit: 2 spaces | 0ms | -| ✔️ | non-default: 0 spaces | 0ms | -| ✔️ | non-default: 4 spaces | 0ms | - -### maxDepth option - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Immutable.List as child of Object | 0ms | -| ✔️ | Immutable.Map as child of Array | 0ms | -| ✔️ | Immutable.Seq as child of Immutable.Map | 1ms | -| ✔️ | Immutable.Map as descendants in immutable collection | 0ms | - -### Immutable.Seq - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports an empty sequence from array {min: true} | 0ms | -| ✔️ | supports an empty sequence from array {min: false} | 1ms | -| ✔️ | supports a non-empty sequence from array {min: true} | 0ms | -| ✔️ | supports a non-empty sequence from array {min: false} | 0ms | -| ✔️ | supports a non-empty sequence from arguments | 0ms | -| ✔️ | supports an empty sequence from object {min: true} | 0ms | -| ✔️ | supports an empty sequence from object {min: false} | 14ms | -| ✔️ | supports a non-empty sequence from object {min: true} | 0ms | -| ✔️ | supports a non-empty sequence from object {min: false} | 0ms | -| ✔️ | supports a sequence of entries from Immutable.Map | 1ms | -| ✔️ | supports a sequence of values from ECMAScript Set | 0ms | -| ✔️ | supports a sequence of values from Immutable.List | 0ms | -| ✔️ | supports a sequence of values from Immutable.Set | 1ms | -| ✔️ | supports a sequence of values from Immutable.Stack | 0ms | - -### Immutable.Seq lazy entries - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | from object properties | 0ms | -| ✔️ | from Immutable.Map entries | 1ms | - -### Immutable.Seq lazy values - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | from Immutable.Range | 0ms | -| ✔️ | from iterator | 2ms | -| ✔️ | from array items | 0ms | -| ✔️ | from Immutable.List values | 1ms | -| ✔️ | from ECMAScript Set values | 0ms | - -## packages/jest-runtime/src/__tests__/Runtime-sourceMaps.test.js ✔️ - -### Runtime requireModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | installs source maps if available | 560ms | - -## packages/jest-environment-jsdom/src/__tests__/jsdom_environment.test.ts ✔️ - -### JSDomEnvironment - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should configure setTimeout/setInterval to use the browser api | 47ms | -| ✔️ | has modern fake timers implementation | 19ms | - -## packages/babel-plugin-jest-hoist/src/__tests__/hoistPlugin.test.ts ✔️ - -### babel-plugin-jest-hoist - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | automatic react runtime | 102ms | -| ✔️ | top level mocking | 18ms | -| ✔️ | within a block | 10ms | -| ✔️ | within a block with no siblings | 7ms | - -## packages/jest-worker/src/workers/__tests__/ChildProcessWorker.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes fork options down to child_process.fork, adding the defaults | 26ms | -| ✔️ | passes workerId to the child process and assign it to 1-indexed env.JEST_WORKER_ID | 2ms | -| ✔️ | initializes the child process with the given workerPath | 2ms | -| ✔️ | stops initializing the worker after the amount of retries is exceeded | 25ms | -| ✔️ | provides stdout and stderr from the child processes | 5ms | -| ✔️ | sends the task to the child process | 10ms | -| ✔️ | resends the task to the child process after a retry | 2ms | -| ✔️ | calls the onProcessStart method synchronously if the queue is empty | 2ms | -| ✔️ | can send multiple messages to parent | 3ms | -| ✔️ | creates error instances for known errors | 3ms | -| ✔️ | throws when the child process returns a strange message | 2ms | -| ✔️ | does not restart the child if it cleanly exited | 2ms | -| ✔️ | resolves waitForExit() after the child process cleanly exited | 1ms | -| ✔️ | restarts the child when the child process dies | 13ms | -| ✔️ | sends SIGTERM when forceExit() is called | 1ms | -| ✔️ | sends SIGKILL some time after SIGTERM | 1ms | -| ✔️ | does not send SIGKILL if SIGTERM exited the process | 2ms | - -## packages/jest-each/src/__tests__/array.test.ts ✔️ - -### jest-each .test - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 1ms | -| ✔️ | throws an error when called with an empty array | 9ms | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 0ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 1ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 0ms | -| ✔️ | calls global with given timeout | 4ms | - -### jest-each .test.concurrent - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 1ms | -| ✔️ | throws an error when called with an empty array | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 0ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 1ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 0ms | -| ✔️ | calls global with given timeout | 0ms | - -### jest-each .test.concurrent.only - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 1ms | -| ✔️ | throws an error when called with an empty array | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 1ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 0ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 0ms | -| ✔️ | calls global with given timeout | 1ms | - -### jest-each .test.concurrent.skip - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 0ms | -| ✔️ | throws an error when called with an empty array | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 1ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 0ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 1ms | -| ✔️ | calls global with given timeout | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using sprintf format | 1ms | -| ✔️ | calls global with title with placeholder values correctly interpolated | 0ms | - -### jest-each .test.only - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 0ms | -| ✔️ | throws an error when called with an empty array | 1ms | -| ✔️ | calls global with given title | 6ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using printf format | 4ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 0ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 1ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 0ms | -| ✔️ | calls global with given timeout | 0ms | - -### jest-each .it - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 1ms | -| ✔️ | throws an error when called with an empty array | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 0ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 1ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 0ms | -| ✔️ | calls global with given timeout | 0ms | - -### jest-each .fit - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 1ms | -| ✔️ | throws an error when called with an empty array | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 0ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 1ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 1ms | -| ✔️ | calls global with given timeout | 0ms | - -### jest-each .it.only - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 0ms | -| ✔️ | throws an error when called with an empty array | 1ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 0ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 1ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 1ms | -| ✔️ | calls global with given timeout | 0ms | - -### jest-each .describe - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 0ms | -| ✔️ | throws an error when called with an empty array | 1ms | -| ✔️ | calls global with given title | 3ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 1ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 0ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 0ms | -| ✔️ | calls global with given timeout | 1ms | - -### jest-each .fdescribe - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 0ms | -| ✔️ | throws an error when called with an empty array | 0ms | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 1ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 0ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 0ms | -| ✔️ | calls global with given timeout | 0ms | - -### jest-each .describe.only - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 0ms | -| ✔️ | throws an error when called with an empty array | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 0ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 1ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 0ms | -| ✔️ | calls global with given timeout | 0ms | - -### jest-each done callback - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls [ 'test' ] with done when cb function has more args than params of given test row | 1ms | -| ✔️ | calls [ 'test', 'only' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'test', 'concurrent' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'test', 'concurrent', 'only' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'it' ] with done when cb function has more args than params of given test row | 1ms | -| ✔️ | calls [ 'fit' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'it', 'only' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | does not call [ 'describe' ] with done when test function has more args than params of given test row | 1ms | -| ✔️ | does not call [ 'fdescribe' ] with done when test function has more args than params of given test row | 2ms | -| ✔️ | does not call [ 'describe', 'only' ] with done when test function has more args than params of given test row | 1ms | - -### jest-each .xtest - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using sprintf format | 0ms | -| ✔️ | calls global with title with placeholder values correctly interpolated | 1ms | - -### jest-each .test.skip - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 6ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using sprintf format | 0ms | -| ✔️ | calls global with title with placeholder values correctly interpolated | 1ms | - -### jest-each .xit - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using sprintf format | 0ms | -| ✔️ | calls global with title with placeholder values correctly interpolated | 1ms | - -### jest-each .it.skip - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using sprintf format | 0ms | -| ✔️ | calls global with title with placeholder values correctly interpolated | 0ms | - -### jest-each .xdescribe - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using sprintf format | 0ms | -| ✔️ | calls global with title with placeholder values correctly interpolated | 1ms | - -### jest-each .describe.skip - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using sprintf format | 0ms | -| ✔️ | calls global with title with placeholder values correctly interpolated | 0ms | - -## packages/jest-each/src/__tests__/template.test.ts ✔️ - -### jest-each .test - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 2ms | -| ✔️ | throws error when there are additional words in second column heading | 0ms | -| ✔️ | throws error when there are additional words in last column heading | 0ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 1ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 1ms | -| ✔️ | throws error when there are no arguments for given headings | 1ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 0ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 2ms | -| ✔️ | throws an error when called with an empty string | 2ms | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 5ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | -| ✔️ | calls global with title containing $key in multiple positions | 1ms | -| ✔️ | calls global with title containing $key.path | 0ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 0ms | -| ✔️ | calls global with cb function with object built from table headings and values | 1ms | -| ✔️ | calls global with given timeout | 0ms | -| ✔️ | formats primitive values using .toString() | 1ms | - -### jest-each .test.concurrent - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 0ms | -| ✔️ | throws error when there are additional words in second column heading | 1ms | -| ✔️ | throws error when there are additional words in last column heading | 1ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 1ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 1ms | -| ✔️ | throws error when there are no arguments for given headings | 0ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 0ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 33ms | -| ✔️ | throws an error when called with an empty string | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | -| ✔️ | calls global with title containing $key in multiple positions | 1ms | -| ✔️ | calls global with title containing $key.path | 0ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 1ms | -| ✔️ | calls global with cb function with object built from table headings and values | 0ms | -| ✔️ | calls global with given timeout | 0ms | -| ✔️ | formats primitive values using .toString() | 1ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | - -### jest-each .test.concurrent.only - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 0ms | -| ✔️ | throws error when there are additional words in second column heading | 1ms | -| ✔️ | throws error when there are additional words in last column heading | 0ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 1ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 0ms | -| ✔️ | throws error when there are no arguments for given headings | 12ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 1ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 0ms | -| ✔️ | throws an error when called with an empty string | 0ms | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | -| ✔️ | calls global with title containing $key in multiple positions | 0ms | -| ✔️ | calls global with title containing $key.path | 0ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 1ms | -| ✔️ | calls global with cb function with object built from table headings and values | 0ms | -| ✔️ | calls global with given timeout | 1ms | -| ✔️ | formats primitive values using .toString() | 0ms | - -### jest-each .test.concurrent.skip - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 0ms | -| ✔️ | throws error when there are additional words in second column heading | 6ms | -| ✔️ | throws error when there are additional words in last column heading | 0ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 0ms | -| ✔️ | does not throw error when there is only one column | 1ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 0ms | -| ✔️ | throws error when there are no arguments for given headings | 0ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 0ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 0ms | -| ✔️ | throws an error when called with an empty string | 1ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | -| ✔️ | calls global with title containing $key in multiple positions | 0ms | -| ✔️ | calls global with title containing $key.path | 1ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 0ms | -| ✔️ | calls global with cb function with object built from table headings and values | 0ms | -| ✔️ | calls global with given timeout | 1ms | -| ✔️ | formats primitive values using .toString() | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | - -### jest-each .test.only - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 0ms | -| ✔️ | throws error when there are additional words in second column heading | 1ms | -| ✔️ | throws error when there are additional words in last column heading | 0ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 1ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 0ms | -| ✔️ | throws error when there are no arguments for given headings | 1ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 0ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 1ms | -| ✔️ | throws an error when called with an empty string | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | -| ✔️ | calls global with title containing $key in multiple positions | 1ms | -| ✔️ | calls global with title containing $key.path | 0ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 0ms | -| ✔️ | calls global with cb function with object built from table headings and values | 1ms | -| ✔️ | calls global with given timeout | 0ms | -| ✔️ | formats primitive values using .toString() | 0ms | - -### jest-each .it - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 0ms | -| ✔️ | throws error when there are additional words in second column heading | 0ms | -| ✔️ | throws error when there are additional words in last column heading | 1ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 0ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 1ms | -| ✔️ | throws error when there are no arguments for given headings | 0ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 0ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 0ms | -| ✔️ | throws an error when called with an empty string | 0ms | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | -| ✔️ | calls global with title containing $key in multiple positions | 5ms | -| ✔️ | calls global with title containing $key.path | 0ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 1ms | -| ✔️ | calls global with cb function with object built from table headings and values | 0ms | -| ✔️ | calls global with given timeout | 1ms | -| ✔️ | formats primitive values using .toString() | 0ms | - -### jest-each .fit - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 0ms | -| ✔️ | throws error when there are additional words in second column heading | 1ms | -| ✔️ | throws error when there are additional words in last column heading | 0ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 1ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 0ms | -| ✔️ | throws error when there are no arguments for given headings | 1ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 0ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 0ms | -| ✔️ | throws an error when called with an empty string | 3ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | -| ✔️ | calls global with title containing $key in multiple positions | 0ms | -| ✔️ | calls global with title containing $key.path | 0ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 1ms | -| ✔️ | calls global with cb function with object built from table headings and values | 0ms | -| ✔️ | calls global with given timeout | 1ms | -| ✔️ | formats primitive values using .toString() | 0ms | - -### jest-each .it.only - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 1ms | -| ✔️ | throws error when there are additional words in second column heading | 0ms | -| ✔️ | throws error when there are additional words in last column heading | 1ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 0ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 1ms | -| ✔️ | throws error when there are no arguments for given headings | 0ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 1ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 0ms | -| ✔️ | throws an error when called with an empty string | 0ms | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | -| ✔️ | calls global with title containing $key in multiple positions | 0ms | -| ✔️ | calls global with title containing $key.path | 0ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 1ms | -| ✔️ | calls global with cb function with object built from table headings and values | 0ms | -| ✔️ | calls global with given timeout | 1ms | -| ✔️ | formats primitive values using .toString() | 0ms | - -### jest-each .describe - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 1ms | -| ✔️ | throws error when there are additional words in second column heading | 0ms | -| ✔️ | throws error when there are additional words in last column heading | 0ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 0ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 0ms | -| ✔️ | throws error when there are no arguments for given headings | 1ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 28ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 1ms | -| ✔️ | throws an error when called with an empty string | 1ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 4ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | -| ✔️ | calls global with title containing $key in multiple positions | 0ms | -| ✔️ | calls global with title containing $key.path | 0ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 1ms | -| ✔️ | calls global with cb function with object built from table headings and values | 1ms | -| ✔️ | calls global with given timeout | 17ms | -| ✔️ | formats primitive values using .toString() | 1ms | - -### jest-each .fdescribe - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 1ms | -| ✔️ | throws error when there are additional words in second column heading | 1ms | -| ✔️ | throws error when there are additional words in last column heading | 0ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 1ms | -| ✔️ | does not throw error when there is only one column | 1ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 1ms | -| ✔️ | throws error when there are no arguments for given headings | 1ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 1ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 51ms | -| ✔️ | throws an error when called with an empty string | 1ms | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | -| ✔️ | calls global with title containing $key in multiple positions | 0ms | -| ✔️ | calls global with title containing $key.path | 1ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 0ms | -| ✔️ | calls global with cb function with object built from table headings and values | 1ms | -| ✔️ | calls global with given timeout | 0ms | -| ✔️ | formats primitive values using .toString() | 0ms | - -### jest-each .describe.only - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 1ms | -| ✔️ | throws error when there are additional words in second column heading | 0ms | -| ✔️ | throws error when there are additional words in last column heading | 0ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 1ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 0ms | -| ✔️ | throws error when there are no arguments for given headings | 1ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 0ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 0ms | -| ✔️ | throws an error when called with an empty string | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | -| ✔️ | calls global with title containing $key in multiple positions | 0ms | -| ✔️ | calls global with title containing $key.path | 1ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 0ms | -| ✔️ | calls global with cb function with object built from table headings and values | 0ms | -| ✔️ | calls global with given timeout | 1ms | -| ✔️ | formats primitive values using .toString() | 0ms | - -### jest-each done callback - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls [ 'test' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'test', 'only' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'test', 'concurrent', 'only' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'it' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'fit' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'it', 'only' ] with done when cb function has more args than params of given test row | 1ms | -| ✔️ | does not call [ 'describe' ] with done when test function has more args than params of given test row | 7ms | -| ✔️ | does not call [ 'fdescribe' ] with done when test function has more args than params of given test row | 2ms | -| ✔️ | does not call [ 'describe', 'only' ] with done when test function has more args than params of given test row | 0ms | - -### jest-each .xtest - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 2ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | - -### jest-each .test.skip - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | - -### jest-each .xit - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | - -### jest-each .it.skip - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | - -### jest-each .xdescribe - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | - -### jest-each .describe.skip - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | - -## packages/pretty-format/src/__tests__/react.test.tsx ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports a single element with no props or children | 5ms | -| ✔️ | supports a single element with non-empty string child | 0ms | -| ✔️ | supports a single element with empty string child | 1ms | -| ✔️ | supports a single element with non-zero number child | 0ms | -| ✔️ | supports a single element with zero number child | 0ms | -| ✔️ | supports a single element with mixed children | 1ms | -| ✔️ | supports props with strings | 1ms | -| ✔️ | supports props with multiline strings | 0ms | -| ✔️ | supports props with numbers | 1ms | -| ✔️ | supports a single element with a function prop | 0ms | -| ✔️ | supports a single element with a object prop | 1ms | -| ✔️ | supports an element with and object prop and children | 1ms | -| ✔️ | supports an element with complex props and mixed children | 0ms | -| ✔️ | escapes children properly | 1ms | -| ✔️ | supports everything all together | 1ms | -| ✔️ | sorts props in nested components | 1ms | -| ✔️ | supports a single element with React elements as props | 0ms | -| ✔️ | supports a single element with React elements with props | 1ms | -| ✔️ | supports a single element with custom React elements with props | 0ms | -| ✔️ | supports a single element with custom React elements with props (using displayName) | 1ms | -| ✔️ | supports a single element with custom React elements with props (using anonymous function) | 0ms | -| ✔️ | supports a single element with custom React elements with a child | 1ms | -| ✔️ | supports undefined element type | 0ms | -| ✔️ | supports a fragment with no children | 0ms | -| ✔️ | supports a fragment with string child | 0ms | -| ✔️ | supports a fragment with element child | 0ms | -| ✔️ | supports suspense | 1ms | -| ✔️ | supports a single element with React elements with a child | 0ms | -| ✔️ | supports a single element with React elements with children | 0ms | -| ✔️ | supports a single element with React elements with array children | 0ms | -| ✔️ | supports array of elements | 1ms | -| ✔️ | min option | 0ms | -| ✔️ | ReactElement plugin highlights syntax | 1ms | -| ✔️ | ReactTestComponent plugin highlights syntax | 0ms | -| ✔️ | throws if theme option is null | 50ms | -| ✔️ | throws if theme option is not of type "object" | 0ms | -| ✔️ | throws if theme option has value that is undefined in ansi-styles | 1ms | -| ✔️ | ReactElement plugin highlights syntax with color from theme option | 0ms | -| ✔️ | ReactTestComponent plugin highlights syntax with color from theme option | 0ms | -| ✔️ | supports forwardRef with a child | 0ms | -| ✔️ | supports context Provider with a child | 1ms | -| ✔️ | supports context Consumer with a child | 0ms | -| ✔️ | ReactElement removes undefined props | 0ms | -| ✔️ | ReactTestComponent removes undefined props | 1ms | - -### test object for subset match - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | undefined props | 0ms | -| ✔️ | undefined children | 0ms | - -### indent option - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | default implicit: 2 spaces | 1ms | -| ✔️ | default explicit: 2 spaces | 0ms | -| ✔️ | non-default: 0 spaces | 1ms | -| ✔️ | non-default: 4 spaces | 0ms | - -### maxDepth option - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | elements | 1ms | -| ✔️ | array of elements | 0ms | - -### React.memo without displayName - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | renders the component name | 0ms | - -### React.memo with displayName - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | renders the displayName of component before memoizing | 0ms | -| ✔️ | renders the displayName of memoized component | 0ms | - -## packages/jest-circus/src/__tests__/afterAll.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | tests are not marked done until their parent afterAll runs | 2231ms | -| ✔️ | describe block cannot have hooks and no tests | 697ms | -| ✔️ | describe block _can_ have hooks if a child describe block has tests | 650ms | -| ✔️ | describe block hooks must not run if describe block is skipped | 599ms | -| ✔️ | child tests marked with todo should not run if describe block is skipped | 677ms | -| ✔️ | child tests marked with only should not run if describe block is skipped | 724ms | - -## packages/pretty-format/src/__tests__/prettyFormat.test.ts ✔️ - -### prettyFormat() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints empty arguments | 1ms | -| ✔️ | prints arguments | 0ms | -| ✔️ | prints an empty array | 0ms | -| ✔️ | prints an array with items | 0ms | -| ✔️ | prints a empty typed array | 0ms | -| ✔️ | prints a typed array with items | 1ms | -| ✔️ | prints an array buffer | 0ms | -| ✔️ | prints a nested array | 0ms | -| ✔️ | prints true | 0ms | -| ✔️ | prints false | 1ms | -| ✔️ | prints an error | 0ms | -| ✔️ | prints a typed error with a message | 0ms | -| ✔️ | prints a function constructor | 0ms | -| ✔️ | prints an anonymous callback function | 0ms | -| ✔️ | prints an anonymous assigned function | 0ms | -| ✔️ | prints a named function | 0ms | -| ✔️ | prints a named generator function | 0ms | -| ✔️ | can customize function names | 1ms | -| ✔️ | prints Infinity | 0ms | -| ✔️ | prints -Infinity | 0ms | -| ✔️ | prints an empty map | 0ms | -| ✔️ | prints a map with values | 1ms | -| ✔️ | prints a map with non-string keys | 0ms | -| ✔️ | prints NaN | 0ms | -| ✔️ | prints null | 1ms | -| ✔️ | prints a positive number | 0ms | -| ✔️ | prints a negative number | 0ms | -| ✔️ | prints zero | 1ms | -| ✔️ | prints negative zero | 0ms | -| ✔️ | prints a positive bigint | 7ms | -| ✔️ | prints a negative bigint | 0ms | -| ✔️ | prints zero bigint | 0ms | -| ✔️ | prints negative zero bigint | 0ms | -| ✔️ | prints a date | 1ms | -| ✔️ | prints an invalid date | 0ms | -| ✔️ | prints an empty object | 1ms | -| ✔️ | prints an object with properties | 0ms | -| ✔️ | prints an object with properties and symbols | 0ms | -| ✔️ | prints an object without non-enumerable properties which have string key | 1ms | -| ✔️ | prints an object without non-enumerable properties which have symbol key | 0ms | -| ✔️ | prints an object with sorted properties | 0ms | -| ✔️ | prints regular expressions from constructors | 0ms | -| ✔️ | prints regular expressions from literals | 1ms | -| ✔️ | prints regular expressions {escapeRegex: false} | 0ms | -| ✔️ | prints regular expressions {escapeRegex: true} | 1ms | -| ✔️ | escapes regular expressions nested inside object | 4ms | -| ✔️ | prints an empty set | 0ms | -| ✔️ | prints a set with values | 1ms | -| ✔️ | prints a string | 0ms | -| ✔️ | prints and escape a string | 0ms | -| ✔️ | doesn't escape string with {excapeString: false} | 0ms | -| ✔️ | prints a string with escapes | 0ms | -| ✔️ | prints a multiline string | 0ms | -| ✔️ | prints a multiline string as value of object property | 1ms | -| ✔️ | prints a symbol | 0ms | -| ✔️ | prints undefined | 0ms | -| ✔️ | prints a WeakMap | 0ms | -| ✔️ | prints a WeakSet | 0ms | -| ✔️ | prints deeply nested objects | 1ms | -| ✔️ | prints circular references | 0ms | -| ✔️ | prints parallel references | 0ms | -| ✔️ | can customize the max depth | 0ms | -| ✔️ | throws on invalid options | 32ms | -| ✔️ | supports plugins | 1ms | -| ✔️ | supports plugins that return empty string | 0ms | -| ✔️ | throws if plugin does not return a string | 0ms | -| ✔️ | throws PrettyFormatPluginError if test throws an error | 1ms | -| ✔️ | throws PrettyFormatPluginError if print throws an error | 1ms | -| ✔️ | throws PrettyFormatPluginError if serialize throws an error | 0ms | -| ✔️ | supports plugins with deeply nested arrays (#24) | 0ms | -| ✔️ | should call plugins on nested basic values | 1ms | -| ✔️ | prints objects with no constructor | 0ms | -| ✔️ | prints identity-obj-proxy with string constructor | 0ms | -| ✔️ | calls toJSON and prints its return value | 0ms | -| ✔️ | calls toJSON and prints an internal representation. | 0ms | -| ✔️ | calls toJSON only on functions | 1ms | -| ✔️ | does not call toJSON recursively | 0ms | -| ✔️ | calls toJSON on Sets | 0ms | -| ✔️ | disables toJSON calls through options | 0ms | - -### prettyFormat() indent option - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | default implicit: 2 spaces | 0ms | -| ✔️ | default explicit: 2 spaces | 0ms | -| ✔️ | non-default: 0 spaces | 1ms | -| ✔️ | non-default: 4 spaces | 0ms | - -### prettyFormat() min - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints some basic values in min mode | 0ms | -| ✔️ | prints some complex values in min mode | 0ms | -| ✔️ | does not allow indent !== 0 in min mode | 1ms | - -## packages/jest-worker/src/__tests__/Farm.test.js ✔️ - -### Farm - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | sends a request to one worker | 1ms | -| ✔️ | sends four requests to four unique workers | 1ms | -| ✔️ | handles null computeWorkerKey, sending to first worker | 1ms | -| ✔️ | sends the same worker key to the same worker | 9ms | -| ✔️ | returns the result if the call worked | 1ms | -| ✔️ | throws if the call failed | 0ms | -| ✔️ | checks that once a sticked task finishes, next time is sent to that worker | 0ms | -| ✔️ | checks that even before a sticked task finishes, next time is sent to that worker | 8ms | -| ✔️ | checks that locking works, and jobs are never lost | 1ms | -| ✔️ | can receive custom messages from workers | 0ms | - -## packages/jest-worker/src/workers/__tests__/threadChild.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | lazily requires the file | 26ms | -| ✔️ | calls initialize with the correct arguments | 1ms | -| ✔️ | returns results immediately when function is synchronous | 15ms | -| ✔️ | returns results when it gets resolved if function is asynchronous | 22ms | -| ✔️ | calls the main module if the method call is "default" | 1ms | -| ✔️ | calls the main export if the method call is "default" and it is a Babel transpiled one | 1ms | -| ✔️ | removes the message listener on END message | 0ms | -| ✔️ | calls the teardown method | 1ms | -| ✔️ | throws if an invalid message is detected | 1ms | -| ✔️ | throws if child is not forked | 1ms | - -## packages/jest-jasmine2/src/__tests__/queueRunner.test.ts ✔️ - -### queueRunner - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs every function in the queue. | 1ms | -| ✔️ | exposes `fail` to `next`. | 1ms | -| ✔️ | passes errors to `onException`. | 0ms | -| ✔️ | passes an error to `onException` on timeout. | 4ms | -| ✔️ | calls `fail` with arguments | 1ms | -| ✔️ | calls `fail` when done(error) is invoked | 0ms | - -## packages/jest-worker/src/workers/__tests__/NodeThreadsWorker.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes fork options down to child_process.fork, adding the defaults | 67ms | -| ✔️ | passes workerId to the thread and assign it to env.JEST_WORKER_ID | 1ms | -| ✔️ | initializes the thread with the given workerPath | 1ms | -| ✔️ | stops initializing the worker after the amount of retries is exceeded | 26ms | -| ✔️ | provides stdout and stderr from the threads | 5ms | -| ✔️ | sends the task to the thread | 1ms | -| ✔️ | resends the task to the thread after a retry | 2ms | -| ✔️ | calls the onProcessStart method synchronously if the queue is empty | 4ms | -| ✔️ | can send multiple messages to parent | 2ms | -| ✔️ | creates error instances for known errors | 5ms | -| ✔️ | throws when the thread returns a strange message | 1ms | -| ✔️ | does not restart the thread if it cleanly exited | 0ms | -| ✔️ | resolves waitForExit() after the thread cleanly exited | 0ms | -| ✔️ | restarts the thread when the thread dies | 0ms | -| ✔️ | terminates the thread when forceExit() is called | 0ms | - -## packages/jest-worker/src/workers/__tests__/processChild.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | lazily requires the file | 28ms | -| ✔️ | calls initialize with the correct arguments | 1ms | -| ✔️ | returns results immediately when function is synchronous | 13ms | -| ✔️ | returns results when it gets resolved if function is asynchronous | 23ms | -| ✔️ | calls the main module if the method call is "default" | 0ms | -| ✔️ | calls the main export if the method call is "default" and it is a Babel transpiled one | 1ms | -| ✔️ | removes the message listener on END message | 1ms | -| ✔️ | calls the teardown method | 0ms | -| ✔️ | throws if an invalid message is detected | 1ms | -| ✔️ | throws if child is not forked | 1ms | - -## packages/jest-runner/src/__tests__/testRunner.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | injects the serializable module map into each worker in watch mode | 2ms | -| ✔️ | assign process.env.JEST_WORKER_ID = 1 when in runInBand mode | 1ms | - -## packages/jest-circus/src/__tests__/hooksError.test.ts ✔️ - -### beforeEach hooks error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | beforeEach throws an error when "String" is provided as a first argument to it | 19ms | -| ✔️ | beforeEach throws an error when 1 is provided as a first argument to it | 1ms | -| ✔️ | beforeEach throws an error when [] is provided as a first argument to it | 0ms | -| ✔️ | beforeEach throws an error when {} is provided as a first argument to it | 0ms | -| ✔️ | beforeEach throws an error when Symbol(hello) is provided as a first argument to it | 1ms | -| ✔️ | beforeEach throws an error when true is provided as a first argument to it | 1ms | -| ✔️ | beforeEach throws an error when null is provided as a first argument to it | 0ms | -| ✔️ | beforeEach throws an error when undefined is provided as a first argument to it | 1ms | - -### beforeAll hooks error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | beforeAll throws an error when "String" is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when 1 is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when [] is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when {} is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when Symbol(hello) is provided as a first argument to it | 1ms | -| ✔️ | beforeAll throws an error when true is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when null is provided as a first argument to it | 1ms | -| ✔️ | beforeAll throws an error when undefined is provided as a first argument to it | 0ms | - -### afterEach hooks error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | afterEach throws an error when "String" is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when 1 is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when [] is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when {} is provided as a first argument to it | 1ms | -| ✔️ | afterEach throws an error when Symbol(hello) is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when true is provided as a first argument to it | 1ms | -| ✔️ | afterEach throws an error when null is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when undefined is provided as a first argument to it | 0ms | - -### afterAll hooks error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | afterAll throws an error when "String" is provided as a first argument to it | 1ms | -| ✔️ | afterAll throws an error when 1 is provided as a first argument to it | 0ms | -| ✔️ | afterAll throws an error when [] is provided as a first argument to it | 1ms | -| ✔️ | afterAll throws an error when {} is provided as a first argument to it | 3ms | -| ✔️ | afterAll throws an error when Symbol(hello) is provided as a first argument to it | 5ms | -| ✔️ | afterAll throws an error when true is provided as a first argument to it | 1ms | -| ✔️ | afterAll throws an error when null is provided as a first argument to it | 0ms | -| ✔️ | afterAll throws an error when undefined is provided as a first argument to it | 0ms | - -## packages/jest-serializer/src/__tests__/index.test.ts ✔️ - -### Using V8 implementation - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws the error with an invalid serialization | 6ms | - -### Using V8 implementation Object 0 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes/deserializes in memory | 1ms | -| ✔️ | serializes/deserializes in disk | 0ms | - -### Using V8 implementation Object 1 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes/deserializes in memory | 0ms | -| ✔️ | serializes/deserializes in disk | 0ms | - -### Using V8 implementation Object 2 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes/deserializes in memory | 1ms | -| ✔️ | serializes/deserializes in disk | 1ms | - -### Using V8 implementation Object 3 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes/deserializes in memory | 0ms | -| ✔️ | serializes/deserializes in disk | 1ms | - -### Using V8 implementation Object 4 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes/deserializes in memory | 0ms | -| ✔️ | serializes/deserializes in disk | 0ms | - -### Using V8 implementation Object 5 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes/deserializes in memory | 1ms | -| ✔️ | serializes/deserializes in disk | 0ms | - -### Using V8 implementation Object 6 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes/deserializes in memory | 1ms | -| ✔️ | serializes/deserializes in disk | 0ms | - -### Using V8 implementation Object 7 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes/deserializes in memory | 1ms | -| ✔️ | serializes/deserializes in disk | 0ms | - -## packages/jest-console/src/__tests__/bufferedConsole.test.ts ✔️ - -### CustomConsole assert - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | do not log when the assertion is truthy | 1ms | -| ✔️ | do not log when the assertion is truthy and there is a message | 0ms | -| ✔️ | log the assertion error when the assertion is falsy | 33ms | -| ✔️ | log the assertion error when the assertion is falsy with another message argument | 0ms | - -### CustomConsole count - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | count using the default counter | 0ms | -| ✔️ | count using the a labeled counter | 0ms | -| ✔️ | countReset restarts default counter | 1ms | -| ✔️ | countReset restarts custom counter | 1ms | - -### CustomConsole group - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | group without label | 1ms | -| ✔️ | group with label | 1ms | -| ✔️ | groupEnd remove the indentation of the current group | 1ms | -| ✔️ | groupEnd can not remove the indentation below the starting point | 1ms | - -### CustomConsole time - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return the time between time() and timeEnd() on default timer | 0ms | -| ✔️ | should return the time between time() and timeEnd() on custom timer | 1ms | - -### CustomConsole dir - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should print the deepest value | 2ms | - -### CustomConsole timeLog - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return the time between time() and timeEnd() on default timer | 0ms | -| ✔️ | should return the time between time() and timeEnd() on custom timer | 1ms | -| ✔️ | default timer with data | 1ms | -| ✔️ | custom timer with data | 1ms | - -### CustomConsole console - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be able to initialize console instance | 0ms | - -## packages/jest-console/src/__tests__/CustomConsole.test.ts ✔️ - -### CustomConsole log - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should print to stdout | 1ms | - -### CustomConsole error - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should print to stderr | 1ms | - -### CustomConsole warn - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should print to stderr | 1ms | - -### CustomConsole assert - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | do not log when the assertion is truthy | 1ms | -| ✔️ | do not log when the assertion is truthy and there is a message | 0ms | -| ✔️ | log the assertion error when the assertion is falsy | 18ms | -| ✔️ | log the assertion error when the assertion is falsy with another message argument | 0ms | - -### CustomConsole count - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | count using the default counter | 1ms | -| ✔️ | count using the a labeled counter | 3ms | -| ✔️ | countReset restarts default counter | 1ms | -| ✔️ | countReset restarts custom counter | 0ms | - -### CustomConsole group - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | group without label | 0ms | -| ✔️ | group with label | 0ms | -| ✔️ | groupEnd remove the indentation of the current group | 0ms | -| ✔️ | groupEnd can not remove the indentation below the starting point | 0ms | - -### CustomConsole time - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return the time between time() and timeEnd() on default timer | 0ms | -| ✔️ | should return the time between time() and timeEnd() on custom timer | 0ms | - -### CustomConsole dir - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should print the deepest value | 0ms | - -### CustomConsole timeLog - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return the time between time() and timeEnd() on default timer | 1ms | -| ✔️ | should return the time between time() and timeEnd() on custom timer | 0ms | -| ✔️ | default timer with data | 1ms | -| ✔️ | custom timer with data | 0ms | - -### CustomConsole console - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be able to initialize console instance | 0ms | - -## packages/pretty-format/src/__tests__/DOMCollection.test.ts ✔️ - -### DOMCollection plugin for object properties - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports DOMStringMap | 1ms | -| ✔️ | supports NamedNodeMap | 0ms | -| ✔️ | supports config.min option | 1ms | - -### DOMCollection plugin for list items - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports HTMLCollection for getElementsByTagName | 2ms | -| ✔️ | supports HTMLCollection for children | 1ms | -| ✔️ | supports config.maxDepth option | 0ms | -| ✔️ | supports NodeList for querySelectorAll | 4ms | -| ✔️ | supports NodeList for childNodes | 1ms | -| ✔️ | supports HTMLOptionsCollection for select options | 0ms | -| ✔️ | supports HTMLCollection for form elements | 1ms | - -## packages/jest-circus/src/__tests__/circusItTodoTestError.test.ts ✔️ - -### test/it.todo error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | todo throws error when given no arguments | 35ms | -| ✔️ | todo throws error when given more than one argument | 1ms | -| ✔️ | todo throws error when given none string description | 0ms | - -## packages/jest-test-sequencer/src/__tests__/test_sequencer.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | sorts by file size if there is no timing information | 1ms | -| ✔️ | sorts based on timing information | 1ms | -| ✔️ | sorts based on failures and timing information | 0ms | -| ✔️ | sorts based on failures, timing information and file size | 1ms | -| ✔️ | writes the cache based on results without existing cache | 0ms | -| ✔️ | returns failed tests in sorted order | 1ms | -| ✔️ | writes the cache based on the results | 13ms | -| ✔️ | works with multiple contexts | 0ms | - -## packages/jest-jasmine2/src/__tests__/Suite.test.ts ✔️ - -### Suite - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | doesn't throw on addExpectationResult when there are no children | 0ms | - -## packages/pretty-format/src/__tests__/AsymmetricMatcher.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports any(String) | 1ms | -| ✔️ | supports nested any(String) | 0ms | -| ✔️ | supports any(Function) | 0ms | -| ✔️ | supports nested any(Function) | 0ms | -| ✔️ | supports any(Array) | 0ms | -| ✔️ | supports nested any(Array) | 1ms | -| ✔️ | supports any(Object) | 0ms | -| ✔️ | supports nested any(Object) | 0ms | -| ✔️ | supports any(RegExp) | 0ms | -| ✔️ | supports nested any(RegExp) | 0ms | -| ✔️ | supports any(Symbol) | 0ms | -| ✔️ | supports nested any(Symbol) | 0ms | -| ✔️ | supports any(Function) | 0ms | -| ✔️ | supports nested any(Function) | 0ms | -| ✔️ | supports any() | 1ms | -| ✔️ | supports nested any() | 0ms | -| ✔️ | supports any(namedFuntction) | 0ms | -| ✔️ | supports nested any(namedFuntction) | 0ms | -| ✔️ | anything() | 0ms | -| ✔️ | arrayContaining() | 0ms | -| ✔️ | arrayNotContaining() | 0ms | -| ✔️ | objectContaining() | 0ms | -| ✔️ | objectNotContaining() | 1ms | -| ✔️ | stringContaining(string) | 0ms | -| ✔️ | not.stringContaining(string) | 0ms | -| ✔️ | stringMatching(string) | 0ms | -| ✔️ | stringMatching(regexp) | 0ms | -| ✔️ | stringMatching(regexp) {escapeRegex: false} | 3ms | -| ✔️ | stringMatching(regexp) {escapeRegex: true} | 13ms | -| ✔️ | stringNotMatching(string) | 1ms | -| ✔️ | supports multiple nested asymmetric matchers | 0ms | -| ✔️ | min option | 0ms | - -### indent option - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | default implicit: 2 spaces | 0ms | -| ✔️ | default explicit: 2 spaces | 0ms | -| ✔️ | non-default: 0 spaces | 0ms | -| ✔️ | non-default: 4 spaces | 0ms | - -### maxDepth option - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | matchers as leaf nodes | 0ms | -| ✔️ | matchers as internal nodes | 1ms | - -## packages/pretty-format/src/__tests__/ConvertAnsi.test.ts ✔️ - -### ConvertAnsi plugin - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports style.red | 1ms | -| ✔️ | supports style.green | 0ms | -| ✔️ | supports style.reset | 1ms | -| ✔️ | supports style.bold | 0ms | -| ✔️ | supports style.dim | 1ms | -| ✔️ | does not support other colors | 0ms | - -## packages/jest-console/src/__tests__/getConsoleOutput.test.ts ✔️ - -### getConsoleOutput - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | takes noStackTrace and pass it on for assert | 2ms | -| ✔️ | takes noStackTrace and pass it on for count | 0ms | -| ✔️ | takes noStackTrace and pass it on for debug | 1ms | -| ✔️ | takes noStackTrace and pass it on for dir | 1ms | -| ✔️ | takes noStackTrace and pass it on for dirxml | 0ms | -| ✔️ | takes noStackTrace and pass it on for error | 0ms | -| ✔️ | takes noStackTrace and pass it on for group | 1ms | -| ✔️ | takes noStackTrace and pass it on for groupCollapsed | 0ms | -| ✔️ | takes noStackTrace and pass it on for info | 0ms | -| ✔️ | takes noStackTrace and pass it on for log | 1ms | -| ✔️ | takes noStackTrace and pass it on for time | 1ms | -| ✔️ | takes noStackTrace and pass it on for warn | 0ms | - -## packages/jest-jasmine2/src/__tests__/expectationResultFactory.test.ts ✔️ - -### expectationResultFactory - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the result if passed. | 1ms | -| ✔️ | returns the result if failed. | 5ms | -| ✔️ | returns the result if failed (with `message`). | 1ms | -| ✔️ | returns the result if failed (with `error`). | 1ms | -| ✔️ | returns the error name if the error message is empty | 0ms | -| ✔️ | returns the result if failed (with `error` as a string). | 0ms | -| ✔️ | returns the result if failed (with `error.stack` not as a string). | 1ms | - -## packages/jest-each/src/__tests__/index.test.ts ✔️ - -### array .add - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the result of adding 0 to 0 | 0ms | -| ✔️ | returns the result of adding 0 to 1 | 0ms | -| ✔️ | returns the result of adding 1 to 1 | 1ms | - -### concurrent .add - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the result of adding 0 to 0 | 0ms | -| ✔️ | returns the result of adding 0 to 1 | 0ms | -| ✔️ | returns the result of adding 1 to 1 | 0ms | - -### template .add - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns 0 when given 0 and 0 | 0ms | -| ✔️ | returns 1 when given 0 and 1 | 0ms | -| ✔️ | returns 2 when given 1 and 1 | 1ms | - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with the right number of arguments | 0ms | - -## packages/pretty-format/src/__tests__/DOMElement.test.ts ✔️ - -### pretty-format - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints global window as constructor name alone | 0ms | - -### DOMElement Plugin - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports a single HTML element | 2ms | -| ✔️ | supports an HTML element with a class property | 1ms | -| ✔️ | supports an HTML element with a title property | 1ms | -| ✔️ | escapes double quote in attribute value | 1ms | -| ✔️ | supports an HTML element with a single attribute | 1ms | -| ✔️ | supports an HTML element with multiple attributes | 0ms | -| ✔️ | supports an HTML element with attribute and text content | 3ms | -| ✔️ | supports an element with text content | 0ms | -| ✔️ | supports nested elements | 0ms | -| ✔️ | supports nested elements with attributes | 0ms | -| ✔️ | supports nested elements with attribute and text content | 0ms | -| ✔️ | supports nested elements with text content | 1ms | -| ✔️ | supports siblings | 4ms | -| ✔️ | supports multiline text node in pre | 1ms | -| ✔️ | supports multiline text node preceding span in pre | 8ms | -| ✔️ | supports multiline text node in textarea | 1ms | -| ✔️ | supports empty text node | 1ms | -| ✔️ | supports non-empty text node | 1ms | -| ✔️ | supports comment node | 3ms | -| ✔️ | supports fragment node | 1ms | -| ✔️ | supports custom elements | 2ms | -| ✔️ | supports SVG elements | 3ms | -| ✔️ | supports indentation for array of elements | 2ms | -| ✔️ | supports maxDepth option | 2ms | -| ✔️ | handles `tagName` not being a string | 1ms | - -### DOMElement Plugin matches constructor name of SVG elements - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | jsdom 9 and 10 | 1ms | -| ✔️ | jsdom 11 | 0ms | - -## packages/jest-test-result/src/__tests__/formatTestResults.test.ts ✔️ - -### formatTestResults - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | includes test full name | 1ms | - -## packages/jest-worker/src/__tests__/index.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | exposes the right API using default working | 85ms | -| ✔️ | exposes the right API using passed worker | 1ms | -| ✔️ | breaks if any of the forbidden methods is tried to be exposed | 27ms | -| ✔️ | works with minimal options | 3ms | -| ✔️ | does not let make calls after the farm is ended | 2ms | -| ✔️ | does not let end the farm after it is ended | 4ms | -| ✔️ | calls doWork | 9ms | -| ✔️ | calls getStderr and getStdout from worker | 1ms | - -## packages/jest-jasmine2/src/__tests__/hooksError.test.ts ✔️ - -### beforeEach hooks error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | beforeEach throws an error when "String" is provided as a first argument to it | 2ms | -| ✔️ | beforeEach throws an error when 1 is provided as a first argument to it | 1ms | -| ✔️ | beforeEach throws an error when [] is provided as a first argument to it | 0ms | -| ✔️ | beforeEach throws an error when {} is provided as a first argument to it | 1ms | -| ✔️ | beforeEach throws an error when Symbol(hello) is provided as a first argument to it | 0ms | -| ✔️ | beforeEach throws an error when true is provided as a first argument to it | 0ms | -| ✔️ | beforeEach throws an error when null is provided as a first argument to it | 0ms | -| ✔️ | beforeEach throws an error when undefined is provided as a first argument to it | 0ms | - -### beforeAll hooks error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | beforeAll throws an error when "String" is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when 1 is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when [] is provided as a first argument to it | 1ms | -| ✔️ | beforeAll throws an error when {} is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when Symbol(hello) is provided as a first argument to it | 1ms | -| ✔️ | beforeAll throws an error when true is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when null is provided as a first argument to it | 1ms | -| ✔️ | beforeAll throws an error when undefined is provided as a first argument to it | 1ms | - -### afterEach hooks error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | afterEach throws an error when "String" is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when 1 is provided as a first argument to it | 1ms | -| ✔️ | afterEach throws an error when [] is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when {} is provided as a first argument to it | 1ms | -| ✔️ | afterEach throws an error when Symbol(hello) is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when true is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when null is provided as a first argument to it | 1ms | -| ✔️ | afterEach throws an error when undefined is provided as a first argument to it | 0ms | - -### afterAll hooks error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | afterAll throws an error when "String" is provided as a first argument to it | 1ms | -| ✔️ | afterAll throws an error when 1 is provided as a first argument to it | 0ms | -| ✔️ | afterAll throws an error when [] is provided as a first argument to it | 1ms | -| ✔️ | afterAll throws an error when {} is provided as a first argument to it | 1ms | -| ✔️ | afterAll throws an error when Symbol(hello) is provided as a first argument to it | 7ms | -| ✔️ | afterAll throws an error when true is provided as a first argument to it | 0ms | -| ✔️ | afterAll throws an error when null is provided as a first argument to it | 1ms | -| ✔️ | afterAll throws an error when undefined is provided as a first argument to it | 0ms | - -## packages/jest-jasmine2/src/__tests__/reporter.test.ts ✔️ - -### Jasmine2Reporter - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | reports nested suites | 2ms | - -## packages/jest-jasmine2/src/__tests__/todoError.test.ts ✔️ - -### test/it.todo error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | it throws error when given no arguments | 2ms | -| ✔️ | it throws error when given more than one argument | 0ms | -| ✔️ | it throws error when given none string description | 1ms | - -## packages/jest-jasmine2/src/__tests__/itTestError.test.ts ✔️ - -### test/it error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | it throws error with missing callback function | 2ms | -| ✔️ | it throws an error when first argument isn't a string | 1ms | -| ✔️ | it throws an error when callback function is not a function | 0ms | -| ✔️ | test throws error with missing callback function | 0ms | -| ✔️ | test throws an error when first argument isn't a string | 1ms | -| ✔️ | test throws an error when callback function is not a function | 0ms | - -## packages/jest-jasmine2/src/__tests__/iterators.test.ts ✔️ - -### iterators - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works for arrays | 10ms | -| ✔️ | works for custom iterables | 1ms | -| ✔️ | works for Sets | 0ms | -| ✔️ | works for Maps | 1ms | - -## packages/jest-jasmine2/src/__tests__/pTimeout.test.ts ✔️ - -### pTimeout - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls `clearTimeout` and resolves when `promise` resolves. | 1ms | -| ✔️ | calls `clearTimeout` and rejects when `promise` rejects. | 1ms | -| ✔️ | calls `onTimeout` on timeout. | 0ms | - -## packages/jest-create-cache-key-function/src/__tests__/index.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | creation of a cache key | 33ms | - -## packages/jest-jasmine2/src/__tests__/concurrent.test.ts ✔️ - -### concurrent - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should add 1 to number | 1ms | -| ✔️ | should add 1 to number | 0ms | -| ✔️ | should add 1 to number | 0ms | - -## packages/jest-jasmine2/src/__tests__/itToTestAlias.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | global.test | 0ms | - -## packages/pretty-format/src/__tests__/ReactElement.test.ts ✔️ - -### ReactElement Plugin - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes forwardRef without displayName | 1ms | -| ✔️ | serializes forwardRef with displayName | 0ms | -| ✔️ | serializes forwardRef component with displayName | 0ms | - -## packages/jest-worker/src/__tests__/FifoQueue.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the shared tasks in FIFO ordering | 1ms | -| ✔️ | returns the worker specific tasks in FIFO ordering | 1ms | -| ✔️ | maintains global FIFO ordering between worker specific and shared tasks | 1ms | - -## packages/jest-worker/src/__tests__/PriorityQueue.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the tasks in order | 3ms | -| ✔️ | returns the task with the lowest priority value if inserted in reversed order | 0ms | -| ✔️ | returns the task with the lowest priority value if inserted in correct order | 1ms | -| ✔️ | uses different queues for each worker | 0ms | -| ✔️ | process task in the global and shared queue in order | 1ms | - -## packages/jest-core/src/__tests__/SearchSource.test.ts ✔️ - -### SearchSource isTestFilePath - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports ../ paths and unix separators via testRegex | 804ms | -| ✔️ | supports unix separators | 265ms | -| ✔️ | supports win32 separators | 277ms | - -### SearchSource testPathsMatching - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | finds tests matching a pattern via testRegex | 23ms | -| ✔️ | finds tests matching a pattern via testMatch | 14ms | -| ✔️ | finds tests matching a JS regex pattern | 12ms | -| ✔️ | finds tests matching a JS glob pattern | 13ms | -| ✔️ | finds tests matching a JS with overriding glob patterns | 18ms | -| ✔️ | finds tests with default file extensions using testRegex | 16ms | -| ✔️ | finds tests with default file extensions using testMatch | 13ms | -| ✔️ | finds tests with parentheses in their rootDir when using testMatch | 16ms | -| ✔️ | finds tests with similar but custom file extensions | 13ms | -| ✔️ | finds tests with totally custom foobar file extensions | 38ms | -| ✔️ | finds tests with many kinds of file extensions | 20ms | -| ✔️ | finds tests using a regex only | 41ms | -| ✔️ | finds tests using a glob only | 24ms | - -### SearchSource findRelatedTests - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | makes sure a file is related to itself | 60ms | -| ✔️ | finds tests that depend directly on the path | 15ms | -| ✔️ | excludes untested files from coverage | 17ms | - -### SearchSource findRelatedTestsFromPattern - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns empty search result for empty input | 18ms | -| ✔️ | returns empty search result for invalid input | 14ms | -| ✔️ | returns empty search result if no related tests were found | 15ms | -| ✔️ | finds tests for a single file | 24ms | -| ✔️ | finds tests for multiple files | 15ms | -| ✔️ | does not mistake roots folders with prefix names | 29ms | - -### SearchSource findRelatedSourcesFromTestsInChangedFiles - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | return empty set if no SCM | 22ms | -| ✔️ | return sources required by tests | 17ms | - -## packages/expect/src/__tests__/matchers.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should throw if passed two arguments | 46ms | - -### .rejects - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should reject | 2ms | -| ✔️ | should reject with toThrow | 1ms | -| ✔️ | should reject async function to toThrow | 1ms | -| ✔️ | fails non-promise value "a" synchronously | 0ms | -| ✔️ | fails non-promise value "a" | 2ms | -| ✔️ | fails non-promise value [1] synchronously | 1ms | -| ✔️ | fails non-promise value [1] | 0ms | -| ✔️ | fails non-promise value [Function anonymous] synchronously | 0ms | -| ✔️ | fails non-promise value [Function anonymous] | 7ms | -| ✔️ | fails non-promise value {"a": 1} synchronously | 0ms | -| ✔️ | fails non-promise value {"a": 1} | 0ms | -| ✔️ | fails non-promise value 4 synchronously | 1ms | -| ✔️ | fails non-promise value 4 | 3ms | -| ✔️ | fails non-promise value null synchronously | 0ms | -| ✔️ | fails non-promise value null | 0ms | -| ✔️ | fails non-promise value true synchronously | 0ms | -| ✔️ | fails non-promise value true | 1ms | -| ✔️ | fails non-promise value undefined synchronously | 0ms | -| ✔️ | fails non-promise value undefined | 0ms | -| ✔️ | fails for promise that resolves | 4ms | - -### .resolves - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should resolve | 1ms | -| ✔️ | fails non-promise value "a" synchronously | 0ms | -| ✔️ | fails non-promise value "a" | 0ms | -| ✔️ | fails non-promise value [1] synchronously | 1ms | -| ✔️ | fails non-promise value [1] | 0ms | -| ✔️ | fails non-promise value [Function anonymous] synchronously | 1ms | -| ✔️ | fails non-promise value [Function anonymous] | 0ms | -| ✔️ | fails non-promise value {"a": 1} synchronously | 1ms | -| ✔️ | fails non-promise value {"a": 1} | 0ms | -| ✔️ | fails non-promise value 4 synchronously | 1ms | -| ✔️ | fails non-promise value 4 | 0ms | -| ✔️ | fails non-promise value null synchronously | 0ms | -| ✔️ | fails non-promise value null | 1ms | -| ✔️ | fails non-promise value true synchronously | 0ms | -| ✔️ | fails non-promise value true | 0ms | -| ✔️ | fails non-promise value undefined synchronously | 1ms | -| ✔️ | fails non-promise value undefined | 0ms | -| ✔️ | fails for promise that rejects | 0ms | - -### .toBe() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not throw | 1ms | -| ✔️ | fails for: 1 and 2 | 1ms | -| ✔️ | fails for: true and false | 0ms | -| ✔️ | fails for: [Function anonymous] and [Function anonymous] | 1ms | -| ✔️ | fails for: {} and {} | 1ms | -| ✔️ | fails for: {"a": 1} and {"a": 1} | 0ms | -| ✔️ | fails for: {"a": 1} and {"a": 5} | 2ms | -| ✔️ | fails for: {"a": [Function a], "b": 2} and {"a": Any, "b": 2} | 1ms | -| ✔️ | fails for: {"a": undefined, "b": 2} and {"b": 2} | 8ms | -| ✔️ | fails for: 2020-02-20T00:00:00.000Z and 2020-02-20T00:00:00.000Z | 0ms | -| ✔️ | fails for: 2020-02-21T00:00:00.000Z and 2020-02-20T00:00:00.000Z | 1ms | -| ✔️ | fails for: /received/ and /expected/ | 0ms | -| ✔️ | fails for: Symbol(received) and Symbol(expected) | 0ms | -| ✔️ | fails for: [Error: received] and [Error: expected] | 1ms | -| ✔️ | fails for: "abc" and "cde" | 1ms | -| ✔️ | fails for: "painless JavaScript testing" and "delightful JavaScript testing" | 0ms | -| ✔️ | fails for: "" and "compare one-line string to empty string" | 1ms | -| ✔️ | fails for: "with -trailing space" and "without trailing space" | 8ms | -| ✔️ | fails for: "four -4 -line -string" and "3 -line -string" | 0ms | -| ✔️ | fails for: [] and [] | 1ms | -| ✔️ | fails for: null and undefined | 0ms | -| ✔️ | fails for: -0 and 0 | 0ms | -| ✔️ | fails for: 1n and 2n | 1ms | -| ✔️ | fails for: {"a": 1n} and {"a": 1n} | 0ms | -| ✔️ | fails for 'false' with '.not' | 0ms | -| ✔️ | fails for '1' with '.not' | 0ms | -| ✔️ | fails for '"a"' with '.not' | 0ms | -| ✔️ | fails for 'undefined' with '.not' | 0ms | -| ✔️ | fails for 'null' with '.not' | 0ms | -| ✔️ | fails for '{}' with '.not' | 0ms | -| ✔️ | fails for '[]' with '.not' | 1ms | -| ✔️ | fails for '1n' with '.not' | 0ms | -| ✔️ | fails for '1n' with '.not' | 0ms | -| ✔️ | does not crash on circular references | 0ms | -| ✔️ | assertion error matcherResult property contains matcher name, expected and actual values | 1ms | - -### .toStrictEqual() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not ignore keys with undefined values | 0ms | -| ✔️ | does not ignore keys with undefined values inside an array | 0ms | -| ✔️ | does not ignore keys with undefined values deep inside an object | 0ms | -| ✔️ | passes when comparing same type | 1ms | -| ✔️ | matches the expected snapshot when it fails | 1ms | -| ✔️ | displays substring diff | 3ms | -| ✔️ | displays substring diff for multiple lines | 1ms | -| ✔️ | does not pass for different types | 0ms | -| ✔️ | does not simply compare constructor names | 1ms | -| ✔️ | passes for matching sparse arrays | 0ms | -| ✔️ | does not pass when sparseness of arrays do not match | 0ms | -| ✔️ | does not pass when equally sparse arrays have different values | 0ms | - -### .toEqual() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: false} expect(true).toEqual(false) | 1ms | -| ✔️ | {pass: false} expect(1).toEqual(2) | 0ms | -| ✔️ | {pass: false} expect(0).toEqual(-0) | 1ms | -| ✔️ | {pass: false} expect(0).toEqual(5e-324) | 0ms | -| ✔️ | {pass: false} expect(5e-324).toEqual(0) | 0ms | -| ✔️ | {pass: false} expect(0).toEqual({}) | 1ms | -| ✔️ | {pass: false} expect({}).toEqual(0) | 0ms | -| ✔️ | {pass: false} expect({}).toEqual({}) | 1ms | -| ✔️ | {pass: false} expect("abc").toEqual({"0": "a", "1": "b", "2": "c"}) | 0ms | -| ✔️ | {pass: false} expect({"0": "a", "1": "b", "2": "c"}).toEqual("abc") | 1ms | -| ✔️ | {pass: false} expect(/abc/gsy).toEqual(/abc/g) | 0ms | -| ✔️ | {pass: false} expect({"a": 1}).toEqual({"a": 2}) | 1ms | -| ✔️ | {pass: false} expect({"a": 5}).toEqual({"b": 6}) | 0ms | -| ✔️ | {pass: false} expect({"foo": {"bar": 1}}).toEqual({"foo": {}}) | 1ms | -| ✔️ | {pass: false} expect({"getterAndSetter": {}}).toEqual({"getterAndSetter": {"foo": "bar"}}) | 1ms | -| ✔️ | {pass: false} expect({"frozenGetterAndSetter": {}}).toEqual({"frozenGetterAndSetter": {"foo": "bar"}}) | 0ms | -| ✔️ | {pass: false} expect({"getter": {}}).toEqual({"getter": {"foo": "bar"}}) | 1ms | -| ✔️ | {pass: false} expect({"frozenGetter": {}}).toEqual({"frozenGetter": {"foo": "bar"}}) | 0ms | -| ✔️ | {pass: false} expect({"setter": undefined}).toEqual({"setter": {"foo": "bar"}}) | 1ms | -| ✔️ | {pass: false} expect({"frozenSetter": undefined}).toEqual({"frozenSetter": {"foo": "bar"}}) | 1ms | -| ✔️ | {pass: false} expect("banana").toEqual("apple") | 0ms | -| ✔️ | {pass: false} expect("1 234,57 $").toEqual("1 234,57 $") | 0ms | -| ✔️ | {pass: false} expect("type TypeName = T extends Function ? \"function\" : \"object\";").toEqual("type TypeName = T extends Function -? \"function\" -: \"object\";") | 1ms | -| ✔️ | {pass: false} expect(null).toEqual(undefined) | 0ms | -| ✔️ | {pass: false} expect([1]).toEqual([2]) | 1ms | -| ✔️ | {pass: false} expect([1, 2]).toEqual([2, 1]) | 0ms | -| ✔️ | {pass: false} expect(Immutable.List [1]).toEqual(Immutable.List [2]) | 1ms | -| ✔️ | {pass: false} expect(Immutable.List [1, 2]).toEqual(Immutable.List [2, 1]) | 1ms | -| ✔️ | {pass: false} expect(Map {}).toEqual(Set {}) | 0ms | -| ✔️ | {pass: false} expect(Set {1, 2}).toEqual(Set {}) | 2ms | -| ✔️ | {pass: false} expect(Set {1, 2}).toEqual(Set {1, 2, 3}) | 1ms | -| ✔️ | {pass: false} expect(Set {[1], [2]}).toEqual(Set {[1], [2], [3]}) | 0ms | -| ✔️ | {pass: false} expect(Set {[1], [2]}).toEqual(Set {[1], [2], [2]}) | 1ms | -| ✔️ | {pass: false} expect(Set {Set {1}, Set {2}}).toEqual(Set {Set {1}, Set {3}}) | 0ms | -| ✔️ | {pass: false} expect(Immutable.Set [1, 2]).toEqual(Immutable.Set []) | 1ms | -| ✔️ | {pass: false} expect(Immutable.Set [1, 2]).toEqual(Immutable.Set [1, 2, 3]) | 1ms | -| ✔️ | {pass: false} expect(Immutable.OrderedSet [1, 2]).toEqual(Immutable.OrderedSet [2, 1]) | 1ms | -| ✔️ | {pass: false} expect(Map {1 => "one", 2 => "two"}).toEqual(Map {1 => "one"}) | 0ms | -| ✔️ | {pass: false} expect(Map {"a" => 0}).toEqual(Map {"b" => 0}) | 1ms | -| ✔️ | {pass: false} expect(Map {"v" => 1}).toEqual(Map {"v" => 2}) | 0ms | -| ✔️ | {pass: false} expect(Map {["v"] => 1}).toEqual(Map {["v"] => 2}) | 1ms | -| ✔️ | {pass: false} expect(Map {[1] => Map {[1] => "one"}}).toEqual(Map {[1] => Map {[1] => "two"}}) | 1ms | -| ✔️ | {pass: false} expect(Immutable.Map {"a": 0}).toEqual(Immutable.Map {"b": 0}) | 0ms | -| ✔️ | {pass: false} expect(Immutable.Map {"v": 1}).toEqual(Immutable.Map {"v": 2}) | 1ms | -| ✔️ | {pass: false} expect(Immutable.OrderedMap {1: "one", 2: "two"}).toEqual(Immutable.OrderedMap {2: "two", 1: "one"}) | 1ms | -| ✔️ | {pass: false} expect(Immutable.Map {"1": Immutable.Map {"2": {"a": 99}}}).toEqual(Immutable.Map {"1": Immutable.Map {"2": {"a": 11}}}) | 1ms | -| ✔️ | {pass: false} expect([97, 98, 99]).toEqual([97, 98, 100]) | 0ms | -| ✔️ | {pass: false} expect({"a": 1, "b": 2}).toEqual(ObjectContaining {"a": 2}) | 1ms | -| ✔️ | {pass: false} expect(false).toEqual(ObjectContaining {"a": 2}) | 0ms | -| ✔️ | {pass: false} expect([1, 3]).toEqual(ArrayContaining [1, 2]) | 1ms | -| ✔️ | {pass: false} expect(1).toEqual(ArrayContaining [1, 2]) | 0ms | -| ✔️ | {pass: false} expect("abd").toEqual(StringContaining "bc") | 1ms | -| ✔️ | {pass: false} expect("abd").toEqual(StringMatching /bc/i) | 0ms | -| ✔️ | {pass: false} expect(undefined).toEqual(Anything) | 1ms | -| ✔️ | {pass: false} expect(undefined).toEqual(Any) | 0ms | -| ✔️ | {pass: false} expect("Eve").toEqual({"asymmetricMatch": [Function asymmetricMatch]}) | 1ms | -| ✔️ | {pass: false} expect({"target": {"nodeType": 1, "value": "a"}}).toEqual({"target": {"nodeType": 1, "value": "b"}}) | 0ms | -| ✔️ | {pass: false} expect({"nodeName": "div", "nodeType": 1}).toEqual({"nodeName": "p", "nodeType": 1}) | 1ms | -| ✔️ | {pass: false} expect({Symbol(foo): 1, Symbol(bar): 2}).toEqual({Symbol(foo): Any, Symbol(bar): 1}) | 1ms | -| ✔️ | {pass: false} expect(1n).toEqual(2n) | 1ms | -| ✔️ | {pass: false} expect(1n).toEqual(1) | 0ms | -| ✔️ | {pass: true} expect(true).not.toEqual(true) | 1ms | -| ✔️ | {pass: true} expect(1).not.toEqual(1) | 0ms | -| ✔️ | {pass: true} expect(NaN).not.toEqual(NaN) | 0ms | -| ✔️ | {pass: true} expect(0).not.toEqual(0) | 0ms | -| ✔️ | {pass: true} expect(0).not.toEqual(0) | 0ms | -| ✔️ | {pass: true} expect({}).not.toEqual({}) | 1ms | -| ✔️ | {pass: true} expect("abc").not.toEqual("abc") | 0ms | -| ✔️ | {pass: true} expect("abc").not.toEqual("abc") | 0ms | -| ✔️ | {pass: true} expect("abc").not.toEqual("abc") | 1ms | -| ✔️ | {pass: true} expect([1]).not.toEqual([1]) | 0ms | -| ✔️ | {pass: true} expect([1, 2]).not.toEqual([1, 2]) | 0ms | -| ✔️ | {pass: true} expect(Immutable.List [1]).not.toEqual(Immutable.List [1]) | 1ms | -| ✔️ | {pass: true} expect(Immutable.List [1, 2]).not.toEqual(Immutable.List [1, 2]) | 0ms | -| ✔️ | {pass: true} expect({}).not.toEqual({}) | 1ms | -| ✔️ | {pass: true} expect({"a": 99}).not.toEqual({"a": 99}) | 1ms | -| ✔️ | {pass: true} expect(Set {}).not.toEqual(Set {}) | 0ms | -| ✔️ | {pass: true} expect(Set {1, 2}).not.toEqual(Set {1, 2}) | 0ms | -| ✔️ | {pass: true} expect(Set {1, 2}).not.toEqual(Set {2, 1}) | 1ms | -| ✔️ | {pass: true} expect(Set {[1], [2]}).not.toEqual(Set {[2], [1]}) | 0ms | -| ✔️ | {pass: true} expect(Set {Set {[1]}, Set {[2]}}).not.toEqual(Set {Set {[2]}, Set {[1]}}) | 1ms | -| ✔️ | {pass: true} expect(Set {[1], [2], [3], [3]}).not.toEqual(Set {[3], [3], [2], [1]}) | 1ms | -| ✔️ | {pass: true} expect(Set {{"a": 1}, {"b": 2}}).not.toEqual(Set {{"b": 2}, {"a": 1}}) | 0ms | -| ✔️ | {pass: true} expect(Immutable.Set []).not.toEqual(Immutable.Set []) | 7ms | -| ✔️ | {pass: true} expect(Immutable.Set [1, 2]).not.toEqual(Immutable.Set [1, 2]) | 0ms | -| ✔️ | {pass: true} expect(Immutable.Set [1, 2]).not.toEqual(Immutable.Set [2, 1]) | 0ms | -| ✔️ | {pass: true} expect(Immutable.OrderedSet []).not.toEqual(Immutable.OrderedSet []) | 0ms | -| ✔️ | {pass: true} expect(Immutable.OrderedSet [1, 2]).not.toEqual(Immutable.OrderedSet [1, 2]) | 0ms | -| ✔️ | {pass: true} expect(Map {}).not.toEqual(Map {}) | 1ms | -| ✔️ | {pass: true} expect(Map {1 => "one", 2 => "two"}).not.toEqual(Map {1 => "one", 2 => "two"}) | 0ms | -| ✔️ | {pass: true} expect(Map {1 => "one", 2 => "two"}).not.toEqual(Map {2 => "two", 1 => "one"}) | 1ms | -| ✔️ | {pass: true} expect(Map {[1] => "one", [2] => "two", [3] => "three", [3] => "four"}).not.toEqual(Map {[3] => "three", [3] => "four", [2] => "two", [1] => "one"}) | 0ms | -| ✔️ | {pass: true} expect(Map {[1] => Map {[1] => "one"}, [2] => Map {[2] => "two"}}).not.toEqual(Map {[2] => Map {[2] => "two"}, [1] => Map {[1] => "one"}}) | 1ms | -| ✔️ | {pass: true} expect(Map {[1] => "one", [2] => "two"}).not.toEqual(Map {[2] => "two", [1] => "one"}) | 1ms | -| ✔️ | {pass: true} expect(Map {{"a": 1} => "one", {"b": 2} => "two"}).not.toEqual(Map {{"b": 2} => "two", {"a": 1} => "one"}) | 0ms | -| ✔️ | {pass: true} expect(Map {1 => ["one"], 2 => ["two"]}).not.toEqual(Map {2 => ["two"], 1 => ["one"]}) | 1ms | -| ✔️ | {pass: true} expect(Immutable.Map {}).not.toEqual(Immutable.Map {}) | 0ms | -| ✔️ | {pass: true} expect(Immutable.Map {1: "one", 2: "two"}).not.toEqual(Immutable.Map {1: "one", 2: "two"}) | 0ms | -| ✔️ | {pass: true} expect(Immutable.Map {1: "one", 2: "two"}).not.toEqual(Immutable.Map {2: "two", 1: "one"}) | 0ms | -| ✔️ | {pass: true} expect(Immutable.OrderedMap {1: "one", 2: "two"}).not.toEqual(Immutable.OrderedMap {1: "one", 2: "two"}) | 1ms | -| ✔️ | {pass: true} expect(Immutable.Map {"1": Immutable.Map {"2": {"a": 99}}}).not.toEqual(Immutable.Map {"1": Immutable.Map {"2": {"a": 99}}}) | 1ms | -| ✔️ | {pass: true} expect([97, 98, 99]).not.toEqual([97, 98, 99]) | 0ms | -| ✔️ | {pass: true} expect({"a": 1, "b": 2}).not.toEqual(ObjectContaining {"a": 1}) | 0ms | -| ✔️ | {pass: true} expect([1, 2, 3]).not.toEqual(ArrayContaining [2, 3]) | 0ms | -| ✔️ | {pass: true} expect("abcd").not.toEqual(StringContaining "bc") | 0ms | -| ✔️ | {pass: true} expect("abcd").not.toEqual(StringMatching /bc/) | 1ms | -| ✔️ | {pass: true} expect(true).not.toEqual(Anything) | 0ms | -| ✔️ | {pass: true} expect([Function anonymous]).not.toEqual(Any) | 0ms | -| ✔️ | {pass: true} expect({"a": 1, "b": [Function b], "c": true}).not.toEqual({"a": 1, "b": Any, "c": Anything}) | 1ms | -| ✔️ | {pass: true} expect("Alice").not.toEqual({"asymmetricMatch": [Function asymmetricMatch]}) | 1ms | -| ✔️ | {pass: true} expect({"nodeName": "div", "nodeType": 1}).not.toEqual({"nodeName": "div", "nodeType": 1}) | 0ms | -| ✔️ | {pass: true} expect({Symbol(foo): 1, Symbol(bar): 2}).not.toEqual({Symbol(foo): Any, Symbol(bar): 2}) | 1ms | -| ✔️ | {pass: true} expect(1n).not.toEqual(1n) | 0ms | -| ✔️ | {pass: true} expect(0n).not.toEqual(0n) | 1ms | -| ✔️ | {pass: true} expect([1n]).not.toEqual([1n]) | 0ms | -| ✔️ | {pass: true} expect([1n, 2]).not.toEqual([1n, 2]) | 0ms | -| ✔️ | {pass: true} expect(Immutable.List [1n]).not.toEqual(Immutable.List [1n]) | 1ms | -| ✔️ | {pass: true} expect({"a": 99n}).not.toEqual({"a": 99n}) | 0ms | -| ✔️ | {pass: true} expect(Set {1n, 2n}).not.toEqual(Set {1n, 2n}) | 1ms | -| ✔️ | assertion error matcherResult property contains matcher name, expected and actual values | 0ms | -| ✔️ | symbol based keys in arrays are processed correctly | 1ms | -| ✔️ | non-enumerable members should be skipped during equal | 0ms | -| ✔️ | non-enumerable symbolic members should be skipped during equal | 0ms | - -### .toEqual() cyclic object equality - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | properties with the same circularity are equal | 0ms | -| ✔️ | properties with different circularity are not equal | 1ms | -| ✔️ | are not equal if circularity is not on the same property | 0ms | - -### .toBeInstanceOf() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passing Map {} and [Function Map] | 1ms | -| ✔️ | passing [] and [Function Array] | 1ms | -| ✔️ | passing {} and [Function A] | 0ms | -| ✔️ | passing {} and [Function B] | 0ms | -| ✔️ | passing {} and [Function B] | 1ms | -| ✔️ | passing {} and [Function anonymous] | 2ms | -| ✔️ | passing {} and [Function B] | 0ms | -| ✔️ | passing {} and [Function name() {}] | 1ms | -| ✔️ | failing "a" and [Function String] | 0ms | -| ✔️ | failing 1 and [Function Number] | 0ms | -| ✔️ | failing true and [Function Boolean] | 1ms | -| ✔️ | failing {} and [Function B] | 0ms | -| ✔️ | failing {} and [Function A] | 0ms | -| ✔️ | failing undefined and [Function String] | 2ms | -| ✔️ | failing null and [Function String] | 0ms | -| ✔️ | failing /\w+/ and [Function anonymous] | 1ms | -| ✔️ | failing {} and [Function RegExp] | 0ms | -| ✔️ | throws if constructor is not a function | 0ms | - -### .toBeTruthy(), .toBeFalsy() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not accept arguments | 1ms | -| ✔️ | '{}' is truthy | 1ms | -| ✔️ | '[]' is truthy | 3ms | -| ✔️ | 'true' is truthy | 4ms | -| ✔️ | '1' is truthy | 1ms | -| ✔️ | '"a"' is truthy | 1ms | -| ✔️ | '0.5' is truthy | 1ms | -| ✔️ | 'Map {}' is truthy | 0ms | -| ✔️ | '[Function anonymous]' is truthy | 1ms | -| ✔️ | 'Infinity' is truthy | 0ms | -| ✔️ | '1n' is truthy | 0ms | -| ✔️ | 'false' is falsy | 0ms | -| ✔️ | 'null' is falsy | 1ms | -| ✔️ | 'NaN' is falsy | 3ms | -| ✔️ | '0' is falsy | 0ms | -| ✔️ | '""' is falsy | 1ms | -| ✔️ | 'undefined' is falsy | 1ms | -| ✔️ | '0n' is falsy | 2ms | - -### .toBeNaN() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect(NaN).toBeNaN() | 1ms | -| ✔️ | throws | 2ms | - -### .toBeNull() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fails for '{}' | 1ms | -| ✔️ | fails for '[]' | 0ms | -| ✔️ | fails for 'true' | 0ms | -| ✔️ | fails for '1' | 1ms | -| ✔️ | fails for '"a"' | 0ms | -| ✔️ | fails for '0.5' | 2ms | -| ✔️ | fails for 'Map {}' | 0ms | -| ✔️ | fails for '[Function anonymous]' | 1ms | -| ✔️ | fails for 'Infinity' | 0ms | -| ✔️ | fails for null with .not | 0ms | -| ✔️ | pass for null | 0ms | - -### .toBeDefined(), .toBeUndefined() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | '{}' is defined | 0ms | -| ✔️ | '[]' is defined | 1ms | -| ✔️ | 'true' is defined | 0ms | -| ✔️ | '1' is defined | 1ms | -| ✔️ | '"a"' is defined | 0ms | -| ✔️ | '0.5' is defined | 0ms | -| ✔️ | 'Map {}' is defined | 1ms | -| ✔️ | '[Function anonymous]' is defined | 0ms | -| ✔️ | 'Infinity' is defined | 1ms | -| ✔️ | '1n' is defined | 1ms | -| ✔️ | undefined is undefined | 0ms | - -### .toBeGreaterThan(), .toBeLessThan(), .toBeGreaterThanOrEqual(), .toBeLessThanOrEqual() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect(1).toBeLessThan(2) | 0ms | -| ✔️ | {pass: false} expect(2).toBeLessThan(1) | 0ms | -| ✔️ | {pass: true} expect(2).toBeGreaterThan(1) | 0ms | -| ✔️ | {pass: false} expect(1).toBeGreaterThan(2) | 0ms | -| ✔️ | {pass: true} expect(1).toBeLessThanOrEqual(2) | 0ms | -| ✔️ | {pass: false} expect(2).toBeLessThanOrEqual(1) | 0ms | -| ✔️ | {pass: true} expect(2).toBeGreaterThanOrEqual(1) | 0ms | -| ✔️ | {pass: false} expect(1).toBeGreaterThanOrEqual(2) | 0ms | -| ✔️ | throws: [1, 2] | 2ms | -| ✔️ | {pass: true} expect(-Infinity).toBeLessThan(Infinity) | 0ms | -| ✔️ | {pass: false} expect(Infinity).toBeLessThan(-Infinity) | 0ms | -| ✔️ | {pass: true} expect(Infinity).toBeGreaterThan(-Infinity) | 0ms | -| ✔️ | {pass: false} expect(-Infinity).toBeGreaterThan(Infinity) | 0ms | -| ✔️ | {pass: true} expect(-Infinity).toBeLessThanOrEqual(Infinity) | 0ms | -| ✔️ | {pass: false} expect(Infinity).toBeLessThanOrEqual(-Infinity) | 0ms | -| ✔️ | {pass: true} expect(Infinity).toBeGreaterThanOrEqual(-Infinity) | 0ms | -| ✔️ | {pass: false} expect(-Infinity).toBeGreaterThanOrEqual(Infinity) | 0ms | -| ✔️ | throws: [-Infinity, Infinity] | 1ms | -| ✔️ | {pass: true} expect(5e-324).toBeLessThan(1.7976931348623157e+308) | 0ms | -| ✔️ | {pass: false} expect(1.7976931348623157e+308).toBeLessThan(5e-324) | 0ms | -| ✔️ | {pass: true} expect(1.7976931348623157e+308).toBeGreaterThan(5e-324) | 0ms | -| ✔️ | {pass: false} expect(5e-324).toBeGreaterThan(1.7976931348623157e+308) | 0ms | -| ✔️ | {pass: true} expect(5e-324).toBeLessThanOrEqual(1.7976931348623157e+308) | 0ms | -| ✔️ | {pass: false} expect(1.7976931348623157e+308).toBeLessThanOrEqual(5e-324) | 0ms | -| ✔️ | {pass: true} expect(1.7976931348623157e+308).toBeGreaterThanOrEqual(5e-324) | 0ms | -| ✔️ | {pass: false} expect(5e-324).toBeGreaterThanOrEqual(1.7976931348623157e+308) | 0ms | -| ✔️ | throws: [5e-324, 1.7976931348623157e+308] | 1ms | -| ✔️ | {pass: true} expect(17).toBeLessThan(34) | 0ms | -| ✔️ | {pass: false} expect(34).toBeLessThan(17) | 0ms | -| ✔️ | {pass: true} expect(34).toBeGreaterThan(17) | 0ms | -| ✔️ | {pass: false} expect(17).toBeGreaterThan(34) | 0ms | -| ✔️ | {pass: true} expect(17).toBeLessThanOrEqual(34) | 1ms | -| ✔️ | {pass: false} expect(34).toBeLessThanOrEqual(17) | 0ms | -| ✔️ | {pass: true} expect(34).toBeGreaterThanOrEqual(17) | 0ms | -| ✔️ | {pass: false} expect(17).toBeGreaterThanOrEqual(34) | 0ms | -| ✔️ | throws: [17, 34] | 3ms | -| ✔️ | {pass: true} expect(3).toBeLessThan(7) | 0ms | -| ✔️ | {pass: false} expect(7).toBeLessThan(3) | 0ms | -| ✔️ | {pass: true} expect(7).toBeGreaterThan(3) | 1ms | -| ✔️ | {pass: false} expect(3).toBeGreaterThan(7) | 0ms | -| ✔️ | {pass: true} expect(3).toBeLessThanOrEqual(7) | 0ms | -| ✔️ | {pass: false} expect(7).toBeLessThanOrEqual(3) | 0ms | -| ✔️ | {pass: true} expect(7).toBeGreaterThanOrEqual(3) | 0ms | -| ✔️ | {pass: false} expect(3).toBeGreaterThanOrEqual(7) | 0ms | -| ✔️ | throws: [3, 7] | 2ms | -| ✔️ | {pass: true} expect(9).toBeLessThan(18) | 0ms | -| ✔️ | {pass: false} expect(18).toBeLessThan(9) | 0ms | -| ✔️ | {pass: true} expect(18).toBeGreaterThan(9) | 0ms | -| ✔️ | {pass: false} expect(9).toBeGreaterThan(18) | 0ms | -| ✔️ | {pass: true} expect(9).toBeLessThanOrEqual(18) | 0ms | -| ✔️ | {pass: false} expect(18).toBeLessThanOrEqual(9) | 0ms | -| ✔️ | {pass: true} expect(18).toBeGreaterThanOrEqual(9) | 0ms | -| ✔️ | {pass: false} expect(9).toBeGreaterThanOrEqual(18) | 0ms | -| ✔️ | throws: [9, 18] | 1ms | -| ✔️ | {pass: true} expect(0.1).toBeLessThan(0.2) | 0ms | -| ✔️ | {pass: false} expect(0.2).toBeLessThan(0.1) | 0ms | -| ✔️ | {pass: true} expect(0.2).toBeGreaterThan(0.1) | 0ms | -| ✔️ | {pass: false} expect(0.1).toBeGreaterThan(0.2) | 0ms | -| ✔️ | {pass: true} expect(0.1).toBeLessThanOrEqual(0.2) | 0ms | -| ✔️ | {pass: false} expect(0.2).toBeLessThanOrEqual(0.1) | 0ms | -| ✔️ | {pass: true} expect(0.2).toBeGreaterThanOrEqual(0.1) | 0ms | -| ✔️ | {pass: false} expect(0.1).toBeGreaterThanOrEqual(0.2) | 0ms | -| ✔️ | throws: [0.1, 0.2] | 1ms | -| ✔️ | can compare BigInt to Numbers | 0ms | -| ✔️ | {pass: true} expect(1n).toBeLessThan(2n) | 1ms | -| ✔️ | {pass: false} expect(2n).toBeLessThan(1n) | 0ms | -| ✔️ | {pass: true} expect(2n).toBeGreaterThan(1n) | 0ms | -| ✔️ | {pass: false} expect(1n).toBeGreaterThan(2n) | 0ms | -| ✔️ | {pass: true} expect(1n).toBeLessThanOrEqual(2n) | 0ms | -| ✔️ | {pass: false} expect(2n).toBeLessThanOrEqual(1n) | 0ms | -| ✔️ | {pass: true} expect(2n).toBeGreaterThanOrEqual(1n) | 0ms | -| ✔️ | {pass: false} expect(1n).toBeGreaterThanOrEqual(2n) | 0ms | -| ✔️ | throws: [1n, 2n] | 2ms | -| ✔️ | {pass: true} expect(17n).toBeLessThan(34n) | 0ms | -| ✔️ | {pass: false} expect(34n).toBeLessThan(17n) | 0ms | -| ✔️ | {pass: true} expect(34n).toBeGreaterThan(17n) | 0ms | -| ✔️ | {pass: false} expect(17n).toBeGreaterThan(34n) | 0ms | -| ✔️ | {pass: true} expect(17n).toBeLessThanOrEqual(34n) | 0ms | -| ✔️ | {pass: false} expect(34n).toBeLessThanOrEqual(17n) | 0ms | -| ✔️ | {pass: true} expect(34n).toBeGreaterThanOrEqual(17n) | 0ms | -| ✔️ | {pass: false} expect(17n).toBeGreaterThanOrEqual(34n) | 0ms | -| ✔️ | throws: [17n, 34n] | 3ms | -| ✔️ | {pass: true} expect(-1).toBeLessThan(2n) | 0ms | -| ✔️ | {pass: false} expect(2n).toBeLessThan(-1) | 0ms | -| ✔️ | {pass: true} expect(2n).toBeGreaterThan(-1) | 0ms | -| ✔️ | {pass: false} expect(-1).toBeGreaterThan(2n) | 0ms | -| ✔️ | {pass: true} expect(-1).toBeLessThanOrEqual(2n) | 0ms | -| ✔️ | {pass: false} expect(2n).toBeLessThanOrEqual(-1) | 0ms | -| ✔️ | {pass: true} expect(2n).toBeGreaterThanOrEqual(-1) | 0ms | -| ✔️ | {pass: false} expect(-1).toBeGreaterThanOrEqual(2n) | 0ms | -| ✔️ | throws: [-1, 2n] | 2ms | -| ✔️ | equal numbers: [1, 1] | 1ms | -| ✔️ | equal numbers: [5e-324, 5e-324] | 8ms | -| ✔️ | equal numbers: [1.7976931348623157e+308, 1.7976931348623157e+308] | 1ms | -| ✔️ | equal numbers: [Infinity, Infinity] | 0ms | -| ✔️ | equal numbers: [-Infinity, -Infinity] | 1ms | -| ✔️ | equal numbers: [1, 1] | 1ms | -| ✔️ | equal numbers: [9007199254740991, 9007199254740991] | 0ms | - -### .toContain(), .toContainEqual() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | iterable | 1ms | -| ✔️ | '[1, 2, 3, 4]' contains '1' | 0ms | -| ✔️ | '["a", "b", "c", "d"]' contains '"a"' | 1ms | -| ✔️ | '[undefined, null]' contains 'null' | 0ms | -| ✔️ | '[undefined, null]' contains 'undefined' | 0ms | -| ✔️ | '[Symbol(a)]' contains 'Symbol(a)' | 1ms | -| ✔️ | '"abcdef"' contains '"abc"' | 0ms | -| ✔️ | '"11112111"' contains '"2"' | 1ms | -| ✔️ | 'Set {"abc", "def"}' contains '"abc"' | 0ms | -| ✔️ | '[0, 1]' contains '1' | 0ms | -| ✔️ | '[1n, 2n, 3n, 4n]' contains '1n' | 1ms | -| ✔️ | '[1, 2, 3, 3n, 4]' contains '3n' | 0ms | -| ✔️ | '[1, 2, 3]' does not contain '4' | 1ms | -| ✔️ | '[null, undefined]' does not contain '1' | 0ms | -| ✔️ | '[{}, []]' does not contain '[]' | 1ms | -| ✔️ | '[{}, []]' does not contain '{}' | 0ms | -| ✔️ | '[1n, 2n, 3n]' does not contain '3' | 1ms | -| ✔️ | error cases | 1ms | -| ✔️ | '[1, 2, 3, 4]' contains a value equal to '1' | 0ms | -| ✔️ | '["a", "b", "c", "d"]' contains a value equal to '"a"' | 0ms | -| ✔️ | '[undefined, null]' contains a value equal to 'null' | 1ms | -| ✔️ | '[undefined, null]' contains a value equal to 'undefined' | 0ms | -| ✔️ | '[Symbol(a)]' contains a value equal to 'Symbol(a)' | 0ms | -| ✔️ | '[{"a": "b"}, {"a": "c"}]' contains a value equal to '{"a": "b"}' | 1ms | -| ✔️ | 'Set {1, 2, 3, 4}' contains a value equal to '1' | 1ms | -| ✔️ | '[0, 1]' contains a value equal to '1' | 0ms | -| ✔️ | '[{"a": "b"}, {"a": "c"}]' does not contain a value equal to'{"a": "d"}' | 2ms | -| ✔️ | error cases for toContainEqual | 1ms | - -### .toBeCloseTo - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect(0).toBeCloseTo(0) | 0ms | -| ✔️ | {pass: true} expect(0).toBeCloseTo(0.001) | 0ms | -| ✔️ | {pass: true} expect(1.23).toBeCloseTo(1.229) | 0ms | -| ✔️ | {pass: true} expect(1.23).toBeCloseTo(1.226) | 1ms | -| ✔️ | {pass: true} expect(1.23).toBeCloseTo(1.225) | 0ms | -| ✔️ | {pass: true} expect(1.23).toBeCloseTo(1.234) | 0ms | -| ✔️ | {pass: true} expect(Infinity).toBeCloseTo(Infinity) | 1ms | -| ✔️ | {pass: true} expect(-Infinity).toBeCloseTo(-Infinity) | 3ms | -| ✔️ | {pass: false} expect(0).toBeCloseTo(0.01) | 1ms | -| ✔️ | {pass: false} expect(1).toBeCloseTo(1.23) | 0ms | -| ✔️ | {pass: false} expect(1.23).toBeCloseTo(1.2249999) | 1ms | -| ✔️ | {pass: false} expect(Infinity).toBeCloseTo(-Infinity) | 0ms | -| ✔️ | {pass: false} expect(Infinity).toBeCloseTo(1.23) | 0ms | -| ✔️ | {pass: false} expect(-Infinity).toBeCloseTo(-1.23) | 1ms | -| ✔️ | {pass: false} expect(3.141592e-7).toBeCloseTo(3e-7, 8) | 0ms | -| ✔️ | {pass: false} expect(56789).toBeCloseTo(51234, -4) | 0ms | -| ✔️ | {pass: true} expect(0).toBeCloseTo(0.1, 0) | 1ms | -| ✔️ | {pass: true} expect(0).toBeCloseTo(0.0001, 3) | 0ms | -| ✔️ | {pass: true} expect(0).toBeCloseTo(0.000004, 5) | 0ms | -| ✔️ | {pass: true} expect(2.0000002).toBeCloseTo(2, 5) | 1ms | - -### .toBeCloseTo throws: Matcher error - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | promise empty isNot false received | 0ms | -| ✔️ | promise empty isNot true expected | 0ms | -| ✔️ | promise rejects isNot false expected | 1ms | -| ✔️ | promise rejects isNot true received | 0ms | -| ✔️ | promise resolves isNot false received | 0ms | -| ✔️ | promise resolves isNot true expected | 0ms | - -### .toMatch() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect(foo).toMatch(foo) | 0ms | -| ✔️ | {pass: true} expect(Foo bar).toMatch(/^foo/i) | 0ms | -| ✔️ | throws: [bar, foo] | 0ms | -| ✔️ | throws: [bar, /foo/] | 1ms | -| ✔️ | throws if non String actual value passed: [1, "foo"] | 0ms | -| ✔️ | throws if non String actual value passed: [{}, "foo"] | 0ms | -| ✔️ | throws if non String actual value passed: [[], "foo"] | 0ms | -| ✔️ | throws if non String actual value passed: [true, "foo"] | 0ms | -| ✔️ | throws if non String actual value passed: [/foo/i, "foo"] | 0ms | -| ✔️ | throws if non String actual value passed: [[Function anonymous], "foo"] | 0ms | -| ✔️ | throws if non String actual value passed: [undefined, "foo"] | 1ms | -| ✔️ | throws if non String/RegExp expected value passed: ["foo", 1] | 0ms | -| ✔️ | throws if non String/RegExp expected value passed: ["foo", {}] | 0ms | -| ✔️ | throws if non String/RegExp expected value passed: ["foo", []] | 0ms | -| ✔️ | throws if non String/RegExp expected value passed: ["foo", true] | 1ms | -| ✔️ | throws if non String/RegExp expected value passed: ["foo", [Function anonymous]] | 0ms | -| ✔️ | throws if non String/RegExp expected value passed: ["foo", undefined] | 0ms | -| ✔️ | escapes strings properly | 1ms | -| ✔️ | does not maintain RegExp state between calls | 0ms | - -### .toHaveLength - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect([1, 2]).toHaveLength(2) | 1ms | -| ✔️ | {pass: true} expect([]).toHaveLength(0) | 0ms | -| ✔️ | {pass: true} expect(["a", "b"]).toHaveLength(2) | 0ms | -| ✔️ | {pass: true} expect("abc").toHaveLength(3) | 1ms | -| ✔️ | {pass: true} expect("").toHaveLength(0) | 0ms | -| ✔️ | {pass: true} expect([Function anonymous]).toHaveLength(0) | 0ms | -| ✔️ | {pass: false} expect([1, 2]).toHaveLength(3) | 1ms | -| ✔️ | {pass: false} expect([]).toHaveLength(1) | 0ms | -| ✔️ | {pass: false} expect(["a", "b"]).toHaveLength(99) | 1ms | -| ✔️ | {pass: false} expect("abc").toHaveLength(66) | 0ms | -| ✔️ | {pass: false} expect("").toHaveLength(1) | 1ms | -| ✔️ | error cases | 1ms | - -### .toHaveLength matcher error expected length - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | not number | 0ms | -| ✔️ | number Infinity | 1ms | -| ✔️ | number NaN | 0ms | -| ✔️ | number float | 0ms | -| ✔️ | number negative integer | 1ms | - -### .toHaveProperty() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect({"a": {"b": {"c": {"d": 1}}}}).toHaveProperty('a.b.c.d', 1) | 1ms | -| ✔️ | {pass: true} expect({"a": {"b": {"c": {"d": 1}}}}).toHaveProperty('a,b,c,d', 1) | 0ms | -| ✔️ | {pass: true} expect({"a.b.c.d": 1}).toHaveProperty('a.b.c.d', 1) | 0ms | -| ✔️ | {pass: true} expect({"a": {"b": [1, 2, 3]}}).toHaveProperty('a,b,1', 2) | 0ms | -| ✔️ | {pass: true} expect({"a": {"b": [1, 2, 3]}}).toHaveProperty('a,b,1', Any) | 0ms | -| ✔️ | {pass: true} expect({"a": 0}).toHaveProperty('a', 0) | 1ms | -| ✔️ | {pass: true} expect({"a": {"b": undefined}}).toHaveProperty('a.b', undefined) | 0ms | -| ✔️ | {pass: true} expect({"a": {}}).toHaveProperty('a.b', undefined) | 1ms | -| ✔️ | {pass: true} expect({"a": {"b": {"c": 5}}}).toHaveProperty('a.b', {"c": 5}) | 2ms | -| ✔️ | {pass: true} expect({"property": 1}).toHaveProperty('property', 1) | 0ms | -| ✔️ | {pass: true} expect({}).toHaveProperty('a', undefined) | 1ms | -| ✔️ | {pass: true} expect({}).toHaveProperty('b', "b") | 0ms | -| ✔️ | {pass: true} expect({}).toHaveProperty('setter', undefined) | 0ms | -| ✔️ | {pass: true} expect({"val": true}).toHaveProperty('a', undefined) | 0ms | -| ✔️ | {pass: true} expect({"val": true}).toHaveProperty('c', "c") | 0ms | -| ✔️ | {pass: true} expect({"val": true}).toHaveProperty('val', true) | 1ms | -| ✔️ | {pass: true} expect({"nodeName": "DIV"}).toHaveProperty('nodeType', 1) | 0ms | -| ✔️ | {pass: true} expect("").toHaveProperty('length', 0) | 0ms | -| ✔️ | {pass: true} expect([Function memoized]).toHaveProperty('memo', []) | 1ms | -| ✔️ | {pass: false} expect({"a": {"b": {"c": {"d": 1}}}}).toHaveProperty('a.b.ttt.d', 1) | 0ms | -| ✔️ | {pass: false} expect({"a": {"b": {"c": {"d": 1}}}}).toHaveProperty('a.b.c.d', 2) | 1ms | -| ✔️ | {pass: false} expect({"a.b.c.d": 1}).toHaveProperty('a.b.c.d', 2) | 2ms | -| ✔️ | {pass: false} expect({"a.b.c.d": 1}).toHaveProperty('a.b.c.d', 2) | 0ms | -| ✔️ | {pass: false} expect({"children": ["\"That cartoon\""], "props": null, "type": "p"}).toHaveProperty('children,0', "\"That cat cartoon\"") | 1ms | -| ✔️ | {pass: false} expect({"children": ["Roses are red. -Violets are blue. -Testing with Jest is good for you."], "props": null, "type": "pre"}).toHaveProperty('children,0', "Roses are red, violets are blue. -Testing with Jest -Is good for you.") | 1ms | -| ✔️ | {pass: false} expect({"a": {"b": {"c": {"d": 1}}}}).toHaveProperty('a,b,c,d', 2) | 0ms | -| ✔️ | {pass: false} expect({"a": {"b": {"c": {}}}}).toHaveProperty('a.b.c.d', 1) | 0ms | -| ✔️ | {pass: false} expect({"a": 1}).toHaveProperty('a.b.c.d', 5) | 0ms | -| ✔️ | {pass: false} expect({}).toHaveProperty('a', "test") | 0ms | -| ✔️ | {pass: false} expect({"a": {"b": 3}}).toHaveProperty('a.b', undefined) | 1ms | -| ✔️ | {pass: false} expect(1).toHaveProperty('a.b.c', "test") | 0ms | -| ✔️ | {pass: false} expect("abc").toHaveProperty('a.b.c', {"a": 5}) | 1ms | -| ✔️ | {pass: false} expect({"a": {"b": {"c": 5}}}).toHaveProperty('a.b', {"c": 4}) | 0ms | -| ✔️ | {pass: false} expect({}).toHaveProperty('a', "a") | 1ms | -| ✔️ | {pass: false} expect({}).toHaveProperty('b', undefined) | 0ms | -| ✔️ | {pass: true} expect({"a": {"b": {"c": {"d": 1}}}}).toHaveProperty('a.b.c.d') | 0ms | -| ✔️ | {pass: true} expect({"a": {"b": {"c": {"d": 1}}}}).toHaveProperty('a,b,c,d') | 1ms | -| ✔️ | {pass: true} expect({"a.b.c.d": 1}).toHaveProperty('a.b.c.d') | 0ms | -| ✔️ | {pass: true} expect({"a": {"b": [1, 2, 3]}}).toHaveProperty('a,b,1') | 0ms | -| ✔️ | {pass: true} expect({"a": 0}).toHaveProperty('a') | 0ms | -| ✔️ | {pass: true} expect({"a": {"b": undefined}}).toHaveProperty('a.b') | 0ms | -| ✔️ | {pass: false} expect({"a": {"b": {"c": {}}}}).toHaveProperty('a.b.c.d') | 1ms | -| ✔️ | {pass: false} expect({"a": 1}).toHaveProperty('a.b.c.d') | 0ms | -| ✔️ | {pass: false} expect({}).toHaveProperty('a') | 0ms | -| ✔️ | {pass: false} expect(1).toHaveProperty('a.b.c') | 1ms | -| ✔️ | {pass: false} expect("abc").toHaveProperty('a.b.c') | 0ms | -| ✔️ | {pass: false} expect(false).toHaveProperty('key') | 0ms | -| ✔️ | {pass: false} expect(0).toHaveProperty('key') | 0ms | -| ✔️ | {pass: false} expect("").toHaveProperty('key') | 0ms | -| ✔️ | {pass: false} expect(Symbol()).toHaveProperty('key') | 1ms | -| ✔️ | {pass: false} expect({"key": 1}).toHaveProperty('not') | 0ms | -| ✔️ | {error} expect(null).toHaveProperty('a.b') | 0ms | -| ✔️ | {error} expect(undefined).toHaveProperty('a') | 1ms | -| ✔️ | {error} expect({"a": {"b": {}}}).toHaveProperty('undefined') | 0ms | -| ✔️ | {error} expect({"a": {"b": {}}}).toHaveProperty('null') | 0ms | -| ✔️ | {error} expect({"a": {"b": {}}}).toHaveProperty('1') | 0ms | -| ✔️ | {error} expect({}).toHaveProperty('') | 1ms | - -### toMatchObject() circular references simple circular references - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect({"a": "hello", "ref": [Circular]}).toMatchObject({}) | 3ms | -| ✔️ | {pass: true} expect({"a": "hello", "ref": [Circular]}).toMatchObject({"a": "hello", "ref": [Circular]}) | 0ms | -| ✔️ | {pass: false} expect({}).toMatchObject({"a": "hello", "ref": [Circular]}) | 1ms | -| ✔️ | {pass: false} expect({"a": "hello", "ref": [Circular]}).toMatchObject({"a": "world", "ref": [Circular]}) | 0ms | -| ✔️ | {pass: false} expect({"ref": "not a ref"}).toMatchObject({"a": "hello", "ref": [Circular]}) | 1ms | - -### toMatchObject() circular references transitive circular references - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect({"a": "hello", "nestedObj": {"parentObj": [Circular]}}).toMatchObject({}) | 0ms | -| ✔️ | {pass: true} expect({"a": "hello", "nestedObj": {"parentObj": [Circular]}}).toMatchObject({"a": "hello", "nestedObj": {"parentObj": [Circular]}}) | 1ms | -| ✔️ | {pass: false} expect({}).toMatchObject({"a": "hello", "nestedObj": {"parentObj": [Circular]}}) | 0ms | -| ✔️ | {pass: false} expect({"a": "world", "nestedObj": {"parentObj": [Circular]}}).toMatchObject({"a": "hello", "nestedObj": {"parentObj": [Circular]}}) | 0ms | -| ✔️ | {pass: false} expect({"nestedObj": {"parentObj": "not the parent ref"}}).toMatchObject({"a": "hello", "nestedObj": {"parentObj": [Circular]}}) | 1ms | - -### toMatchObject() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect({"a": "b", "c": "d"}).toMatchObject({"a": "b"}) | 1ms | -| ✔️ | {pass: true} expect({"a": "b", "c": "d"}).toMatchObject({"a": "b", "c": "d"}) | 1ms | -| ✔️ | {pass: true} expect({"a": "b", "t": {"x": {"r": "r"}, "z": "z"}}).toMatchObject({"a": "b", "t": {"z": "z"}}) | 0ms | -| ✔️ | {pass: true} expect({"a": "b", "t": {"x": {"r": "r"}, "z": "z"}}).toMatchObject({"t": {"x": {"r": "r"}}}) | 0ms | -| ✔️ | {pass: true} expect({"a": [3, 4, 5], "b": "b"}).toMatchObject({"a": [3, 4, 5]}) | 1ms | -| ✔️ | {pass: true} expect({"a": [3, 4, 5, "v"], "b": "b"}).toMatchObject({"a": [3, 4, 5, "v"]}) | 0ms | -| ✔️ | {pass: true} expect({"a": 1, "c": 2}).toMatchObject({"a": Any}) | 1ms | -| ✔️ | {pass: true} expect({"a": {"x": "x", "y": "y"}}).toMatchObject({"a": {"x": Any}}) | 0ms | -| ✔️ | {pass: true} expect(Set {1, 2}).toMatchObject(Set {1, 2}) | 1ms | -| ✔️ | {pass: true} expect(Set {1, 2}).toMatchObject(Set {2, 1}) | 0ms | -| ✔️ | {pass: true} expect(2015-11-30T00:00:00.000Z).toMatchObject(2015-11-30T00:00:00.000Z) | 1ms | -| ✔️ | {pass: true} expect({"a": 2015-11-30T00:00:00.000Z, "b": "b"}).toMatchObject({"a": 2015-11-30T00:00:00.000Z}) | 0ms | -| ✔️ | {pass: true} expect({"a": null, "b": "b"}).toMatchObject({"a": null}) | 2ms | -| ✔️ | {pass: true} expect({"a": undefined, "b": "b"}).toMatchObject({"a": undefined}) | 0ms | -| ✔️ | {pass: true} expect({"a": [{"a": "a", "b": "b"}]}).toMatchObject({"a": [{"a": "a"}]}) | 1ms | -| ✔️ | {pass: true} expect([1, 2]).toMatchObject([1, 2]) | 0ms | -| ✔️ | {pass: true} expect({"a": undefined}).toMatchObject({"a": undefined}) | 1ms | -| ✔️ | {pass: true} expect([]).toMatchObject([]) | 0ms | -| ✔️ | {pass: true} expect([Error: foo]).toMatchObject([Error: foo]) | 0ms | -| ✔️ | {pass: true} expect([Error: bar]).toMatchObject({"message": "bar"}) | 1ms | -| ✔️ | {pass: true} expect({}).toMatchObject({"a": undefined, "b": "b"}) | 0ms | -| ✔️ | {pass: true} expect({"a": "b"}).toMatchObject({"a": "b"}) | 1ms | -| ✔️ | {pass: true} expect({"a": "b", "c": "d", Symbol(jest): "jest"}).toMatchObject({"a": "b", Symbol(jest): "jest"}) | 0ms | -| ✔️ | {pass: true} expect({"a": "b", "c": "d", Symbol(jest): "jest"}).toMatchObject({"a": "b", "c": "d", Symbol(jest): "jest"}) | 1ms | -| ✔️ | {pass: true} expect({}).toMatchObject({"a": undefined, "b": "b", "c": "c"}) | 0ms | -| ✔️ | {pass: true} expect({}).toMatchObject({"d": 4}) | 1ms | -| ✔️ | {pass: true} expect({"a": "b", "toString": [Function toString]}).toMatchObject({"toString": Any}) | 0ms | -| ✔️ | {pass: false} expect({"a": "b", "c": "d"}).toMatchObject({"e": "b"}) | 1ms | -| ✔️ | {pass: false} expect({"a": "b", "c": "d"}).toMatchObject({"a": "b!", "c": "d"}) | 0ms | -| ✔️ | {pass: false} expect({"a": "a", "c": "d"}).toMatchObject({"a": Any}) | 1ms | -| ✔️ | {pass: false} expect({"a": "b", "t": {"x": {"r": "r"}, "z": "z"}}).toMatchObject({"a": "b", "t": {"z": [3]}}) | 1ms | -| ✔️ | {pass: false} expect({"a": "b", "t": {"x": {"r": "r"}, "z": "z"}}).toMatchObject({"t": {"l": {"r": "r"}}}) | 2ms | -| ✔️ | {pass: false} expect({"a": [3, 4, 5], "b": "b"}).toMatchObject({"a": [3, 4, 5, 6]}) | 0ms | -| ✔️ | {pass: false} expect({"a": [3, 4, 5], "b": "b"}).toMatchObject({"a": [3, 4]}) | 1ms | -| ✔️ | {pass: false} expect({"a": [3, 4, "v"], "b": "b"}).toMatchObject({"a": ["v"]}) | 0ms | -| ✔️ | {pass: false} expect({"a": [3, 4, 5], "b": "b"}).toMatchObject({"a": {"b": 4}}) | 0ms | -| ✔️ | {pass: false} expect({"a": [3, 4, 5], "b": "b"}).toMatchObject({"a": {"b": Any}}) | 1ms | -| ✔️ | {pass: false} expect([1, 2]).toMatchObject([1, 3]) | 2ms | -| ✔️ | {pass: false} expect([0]).toMatchObject([-0]) | 1ms | -| ✔️ | {pass: false} expect(Set {1, 2}).toMatchObject(Set {2}) | 1ms | -| ✔️ | {pass: false} expect(2015-11-30T00:00:00.000Z).toMatchObject(2015-10-10T00:00:00.000Z) | 0ms | -| ✔️ | {pass: false} expect({"a": 2015-11-30T00:00:00.000Z, "b": "b"}).toMatchObject({"a": 2015-10-10T00:00:00.000Z}) | 1ms | -| ✔️ | {pass: false} expect({"a": null, "b": "b"}).toMatchObject({"a": "4"}) | 0ms | -| ✔️ | {pass: false} expect({"a": null, "b": "b"}).toMatchObject({"a": undefined}) | 1ms | -| ✔️ | {pass: false} expect({"a": undefined}).toMatchObject({"a": null}) | 0ms | -| ✔️ | {pass: false} expect({"a": [{"a": "a", "b": "b"}]}).toMatchObject({"a": [{"a": "c"}]}) | 0ms | -| ✔️ | {pass: false} expect({"a": 1, "b": 1, "c": 1, "d": {"e": {"f": 555}}}).toMatchObject({"d": {"e": {"f": 222}}}) | 1ms | -| ✔️ | {pass: false} expect({}).toMatchObject({"a": undefined}) | 0ms | -| ✔️ | {pass: false} expect([1, 2, 3]).toMatchObject([2, 3, 1]) | 0ms | -| ✔️ | {pass: false} expect([1, 2, 3]).toMatchObject([1, 2, 2]) | 0ms | -| ✔️ | {pass: false} expect([Error: foo]).toMatchObject([Error: bar]) | 0ms | -| ✔️ | {pass: false} expect({"a": "b"}).toMatchObject({"c": "d"}) | 4ms | -| ✔️ | {pass: false} expect({"a": "b", "c": "d", Symbol(jest): "jest"}).toMatchObject({"a": "c", Symbol(jest): Any}) | 1ms | -| ✔️ | {pass: false} expect({"a": "b"}).toMatchObject({"toString": Any}) | 0ms | -| ✔️ | throws expect(null).toMatchObject({}) | 0ms | -| ✔️ | throws expect(4).toMatchObject({}) | 0ms | -| ✔️ | throws expect("44").toMatchObject({}) | 0ms | -| ✔️ | throws expect(true).toMatchObject({}) | 3ms | -| ✔️ | throws expect(undefined).toMatchObject({}) | 0ms | -| ✔️ | throws expect({}).toMatchObject(null) | 0ms | -| ✔️ | throws expect({}).toMatchObject(4) | 0ms | -| ✔️ | throws expect({}).toMatchObject("some string") | 0ms | -| ✔️ | throws expect({}).toMatchObject(true) | 7ms | -| ✔️ | throws expect({}).toMatchObject(undefined) | 0ms | -| ✔️ | does not match properties up in the prototype chain | 1ms | - -## e2e/__tests__/jestRequireActual.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | understands dependencies using jest.requireActual | 1614ms | - -## packages/jest-core/src/__tests__/watch.test.js ✔️ - -### Watch mode flows - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Correctly passing test path pattern | 582ms | -| ✔️ | Correctly passing test name pattern | 73ms | -| ✔️ | Runs Jest once by default and shows usage | 60ms | -| ✔️ | Runs Jest in a non-interactive environment not showing usage | 125ms | -| ✔️ | resolves relative to the package root | 77ms | -| ✔️ | shows prompts for WatchPlugins in alphabetical order | 72ms | -| ✔️ | shows update snapshot prompt (without interactive) | 57ms | -| ✔️ | shows update snapshot prompt (with interactive) | 60ms | -| ✔️ | allows WatchPlugins to hook into JestHook | 69ms | -| ✔️ | allows WatchPlugins to override eligible internal plugins | 61ms | -| ✔️ | allows WatchPlugins to be configured | 70ms | -| ✔️ | allows WatchPlugins to hook into file system changes | 68ms | -| ✔️ | makes watch plugin initialization errors look nice | 104ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 114ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 72ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 174ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 63ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 66ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 65ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 68ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 64ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 65ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 65ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 65ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 62ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 60ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 70ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 61ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 64ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 63ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 71ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 76ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 66ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 78ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 57ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 68ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 52ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 65ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 58ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 62ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 73ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 69ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 61ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 65ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 65ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 70ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 66ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 65ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 110ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 84ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 69ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 78ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 87ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 93ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 82ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 131ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 248ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 77ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 64ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 86ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 72ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 74ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 60ms | -| ✔️ | triggers enter on a WatchPlugin when its key is pressed | 73ms | -| ✔️ | prevents Jest from handling keys when active and returns control when end is called | 68ms | -| ✔️ | Pressing "o" runs test in "only changed files" mode | 69ms | -| ✔️ | Pressing "a" runs test in "watch all" mode | 62ms | -| ✔️ | Pressing "ENTER" reruns the tests | 108ms | -| ✔️ | Pressing "t" reruns the tests in "test name pattern" mode | 93ms | -| ✔️ | Pressing "p" reruns the tests in "filename pattern" mode | 80ms | -| ✔️ | Can combine "p" and "t" filters | 68ms | -| ✔️ | Pressing "u" reruns the tests in "update snapshot" mode | 67ms | -| ✔️ | passWithNoTest should be set to true in watch mode | 65ms | -| ✔️ | shows the correct usage for the f key in "only failed tests" mode | 62ms | - -### Watch mode flows when dealing with potential watch plugin key conflicts - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | forbids WatchPlugins overriding reserved internal plugins | 70ms | -| ✔️ | forbids WatchPlugins overriding reserved internal plugins | 58ms | -| ✔️ | forbids WatchPlugins overriding reserved internal plugins | 62ms | -| ✔️ | allows WatchPlugins to override non-reserved internal plugins | 68ms | -| ✔️ | allows WatchPlugins to override non-reserved internal plugins | 62ms | -| ✔️ | forbids third-party WatchPlugins overriding each other | 78ms | - -## packages/jest-runtime/src/__tests__/runtime_require_module_or_mock_transitive_deps.test.js ✔️ - -### transitive dependencies - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | mocks a manually mocked and mapped module | 618ms | -| ✔️ | unmocks transitive dependencies in node_modules by default | 357ms | -| ✔️ | unmocks transitive dependencies in node_modules when using unmock | 360ms | -| ✔️ | unmocks transitive dependencies in node_modules by default when using both patterns and unmock | 415ms | -| ✔️ | mocks deep dependencies when using unmock | 299ms | -| ✔️ | does not mock deep dependencies when using deepUnmock | 258ms | - -## packages/jest-core/src/__tests__/watchFileChanges.test.ts ✔️ - -### Watch mode flows with changed files - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should correct require new files without legacy cache | 1430ms | - -## packages/jest-haste-map/src/__tests__/index.test.js ✔️ - -### HasteMap - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | exports constants | 272ms | -| ✔️ | creates valid cache file paths | 9ms | -| ✔️ | creates different cache file paths for different roots | 9ms | -| ✔️ | creates different cache file paths for different dependency extractor cache keys | 14ms | -| ✔️ | creates different cache file paths for different hasteImplModulePath cache keys | 10ms | -| ✔️ | creates different cache file paths for different projects | 22ms | -| ✔️ | matches files against a pattern | 10ms | -| ✔️ | ignores files given a pattern | 6ms | -| ✔️ | ignores vcs directories without ignore pattern | 6ms | -| ✔️ | ignores vcs directories with ignore pattern regex | 5ms | -| ✔️ | warn on ignore pattern except for regex | 6ms | -| ✔️ | builds a haste map on a fresh cache | 7ms | -| ✔️ | does not crawl native files even if requested to do so | 5ms | -| ✔️ | retains all files if `retainAllFiles` is specified | 9ms | -| ✔️ | warns on duplicate mock files | 5ms | -| ✔️ | warns on duplicate module ids | 6ms | -| ✔️ | warns on duplicate module ids only once | 5ms | -| ✔️ | throws on duplicate module ids if "throwOnModuleCollision" is set to true | 5ms | -| ✔️ | splits up modules by platform | 5ms | -| ✔️ | does not access the file system on a warm cache with no changes | 11ms | -| ✔️ | only does minimal file system access when files change | 6ms | -| ✔️ | correctly handles file deletions | 6ms | -| ✔️ | correctly handles platform-specific file additions | 8ms | -| ✔️ | correctly handles platform-specific file deletions | 5ms | -| ✔️ | correctly handles platform-specific file renames | 5ms | -| ✔️ | discards the cache when configuration changes | 6ms | -| ✔️ | ignores files that do not exist | 53ms | -| ✔️ | distributes work across workers | 5ms | -| ✔️ | tries to crawl using node as a fallback | 7ms | -| ✔️ | tries to crawl using node as a fallback when promise fails once | 10ms | -| ✔️ | stops crawling when both crawlers fail | 5ms | - -### HasteMap builds a haste map on a fresh cache with SHA-1s - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses watchman: false | 6ms | -| ✔️ | uses watchman: true | 15ms | - -### HasteMap duplicate modules - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | recovers when a duplicate file is deleted | 6ms | -| ✔️ | recovers with the correct type when a duplicate file is deleted | 6ms | -| ✔️ | recovers when a duplicate module is renamed | 12ms | - -### HasteMap file system changes processing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | provides a new set of hasteHS and moduleMap | 41ms | -| ✔️ | handles several change events at once | 35ms | -| ✔️ | does not emit duplicate change events | 43ms | -| ✔️ | emits a change even if a file in node_modules has changed | 36ms | -| ✔️ | correctly tracks changes to both platform-specific versions of a single module name | 35ms | - -### HasteMap file system changes processing recovery from duplicate module IDs - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | recovers when the oldest version of the duplicates is fixed | 66ms | -| ✔️ | recovers when the most recent duplicate is fixed | 90ms | -| ✔️ | ignore directories | 37ms | - -## e2e/__tests__/coverageHandlebars.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | code coverage for Handlebars | 1830ms | - -## e2e/__tests__/compareDomNodes.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not crash when expect involving a DOM node fails | 1355ms | - -## e2e/__tests__/jestEnvironmentJsdom.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | check is not leaking memory | 1702ms | - -## e2e/__tests__/resolve.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resolve platform modules | 1764ms | - -## e2e/__tests__/snapshot.test.ts ✔️ - -### Snapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | stores new snapshots on the first run | 959ms | -| ✔️ | works with escaped characters | 2154ms | -| ✔️ | works with escaped regex | 1375ms | -| ✔️ | works with template literal substitutions | 1520ms | - -### Snapshot Validation - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not save snapshots in CI mode by default | 890ms | -| ✔️ | works on subsequent runs without `-u` | 1752ms | -| ✔️ | deletes the snapshot if the test suite has been removed | 1549ms | -| ✔️ | deletes a snapshot when a test does removes all the snapshots | 1766ms | -| ✔️ | updates the snapshot when a test removes some snapshots | 1800ms | - -## packages/jest-runtime/src/__tests__/runtime_require_module_or_mock.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | mocks modules by default when using automocking | 338ms | -| ✔️ | doesn't mock modules when explicitly unmocked when using automocking | 100ms | -| ✔️ | doesn't mock modules when explicitly unmocked via a different name | 45ms | -| ✔️ | doesn't mock modules when disableAutomock() has been called | 90ms | -| ✔️ | uses manual mock when automocking on and mock is available | 29ms | -| ✔️ | does not use manual mock when automocking is off and a real module is available | 20ms | -| ✔️ | resolves mapped module names and unmocks them by default | 88ms | -| ✔️ | automocking is disabled by default | 21ms | -| ✔️ | unmocks modules in config.unmockedModulePathPatterns for tests with automock enabled when automock is false | 96ms | -| ✔️ | unmocks virtual mocks after they have been mocked previously | 116ms | - -### resetModules - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resets all the modules | 22ms | - -### isolateModules - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | keeps it's registry isolated from global one | 22ms | -| ✔️ | resets all modules after the block | 26ms | -| ✔️ | resets module after failing | 48ms | -| ✔️ | cannot nest isolateModules blocks | 50ms | -| ✔️ | can call resetModules within a isolateModules block | 25ms | - -### isolateModules can use isolateModules from a beforeEach block - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | can use the required module from beforeEach and re-require it | 9ms | - -## packages/jest-runtime/src/__tests__/runtime_require_mock.test.js ✔️ - -### Runtime requireMock - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses manual mocks before attempting to automock | 281ms | -| ✔️ | can resolve modules that are only referenced from mocks | 38ms | -| ✔️ | stores and re-uses manual mock exports | 36ms | -| ✔️ | automocks haste modules without a manual mock | 77ms | -| ✔️ | automocks relative-path modules without a file extension | 43ms | -| ✔️ | automocks relative-path modules with a file extension | 36ms | -| ✔️ | just falls back when loading a native module | 31ms | -| ✔️ | stores and re-uses automocked haste exports | 31ms | -| ✔️ | stores and re-uses automocked relative-path modules | 102ms | -| ✔️ | multiple node core modules returns correct module | 74ms | -| ✔️ | throws on non-existent haste modules | 69ms | -| ✔️ | uses manual mocks when using a custom resolver | 49ms | -| ✔️ | provides `require.main` in mock | 33ms | - -## packages/jest-runtime/src/__tests__/runtime_node_path.test.js ✔️ - -### Runtime - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses NODE_PATH to find modules | 303ms | -| ✔️ | uses modulePaths to find modules | 231ms | -| ✔️ | finds modules in NODE_PATH containing multiple paths | 248ms | -| ✔️ | does not find modules if NODE_PATH is relative | 260ms | - -## packages/jest-runtime/src/__tests__/runtime_require_resolve.test.ts ✔️ - -### Runtime require.resolve - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resolves a module path | 292ms | -| ✔️ | resolves a module path with moduleNameMapper | 74ms | - -### Runtime require.resolve with the jest-resolve-outside-vm-option - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | forwards to the real Node require in an internal context | 87ms | -| ✔️ | ignores the option in an external context | 127ms | -| ✔️ | does not understand a self-constructed outsideJestVmPath in an external context | 87ms | - -## packages/jest-leak-detector/src/__tests__/index.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | complains if the value is a primitive | 3ms | -| ✔️ | does not show the GC if hidden | 80ms | -| ✔️ | does not hide the GC if visible | 34ms | -| ✔️ | correctly checks simple leaks | 108ms | -| ✔️ | tests different objects | 445ms | -| ✔️ | correctly checks more complex leaks | 240ms | - -## e2e/__tests__/jasmineAsyncWithPendingDuringTest.ts ✔️ - -### async jasmine with pending during test - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not work on jest-circus | 18ms | -| ✖️ | should be reported as a pending test | 0ms | - -## packages/jest-core/src/__tests__/TestScheduler.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | config for reporters supports `default` | 14ms | -| ✔️ | .addReporter() .removeReporter() | 1ms | -| ✔️ | schedule tests run in parallel per default | 4ms | -| ✔️ | schedule tests run in serial if the runner flags them | 1ms | -| ✔️ | should bail after `n` failures | 2ms | -| ✔️ | should not bail if less than `n` failures | 0ms | -| ✔️ | should set runInBand to run in serial | 2ms | -| ✔️ | should set runInBand to not run in serial | 2ms | - -## e2e/__tests__/expectInVm.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | expect works correctly with RegExps created inside a VM | 1477ms | - -## packages/jest-runtime/src/__tests__/runtime_require_actual.test.js ✔️ - -### Runtime requireActual - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | requires node module when manual mock exists | 314ms | -| ✔️ | requireActual with moduleNameMapper | 51ms | - -## packages/jest-runtime/src/__tests__/runtime_require_cache.test.js ✔️ - -### Runtime require.cache - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | require.cache returns loaded module list as native Nodejs require does | 388ms | -| ✔️ | require.cache is tolerant readonly | 31ms | - -## packages/jest-runtime/src/__tests__/runtime_module_directories.test.js ✔️ - -### Runtime - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses configured moduleDirectories | 288ms | -| ✔️ | resolves packages | 47ms | -| ✔️ | finds closest module from moduleDirectories | 44ms | -| ✔️ | only checks the configured directories | 103ms | - -## packages/jest-runtime/src/__tests__/runtime_internal_module.test.js ✔️ - -### Runtime internalModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | loads modules and applies transforms | 170ms | -| ✔️ | loads internal modules without applying transforms | 162ms | -| ✔️ | loads JSON modules and applies transforms | 189ms | -| ✔️ | loads internal JSON modules without applying transforms | 123ms | - -## packages/jest-cli/src/__tests__/cli/args.test.ts ✔️ - -### check - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns true if the arguments are valid | 1ms | -| ✔️ | raises an exception if runInBand and maxWorkers are both specified | 23ms | -| ✔️ | raises an exception if onlyChanged and watchAll are both specified | 1ms | -| ✔️ | raises an exception if onlyFailures and watchAll are both specified | 1ms | -| ✔️ | raises an exception when lastCommit and watchAll are both specified | 0ms | -| ✔️ | raises an exception if findRelatedTests is specified with no file paths | 1ms | -| ✔️ | raises an exception if maxWorkers is specified with no number | 0ms | -| ✔️ | allows maxWorkers to be a % | 1ms | -| ✔️ | allows using "js" file for --config option | 10ms | -| ✔️ | allows using "ts" file for --config option | 0ms | -| ✔️ | allows using "mjs" file for --config option | 0ms | -| ✔️ | allows using "cjs" file for --config option | 1ms | -| ✔️ | allows using "json" file for --config option | 0ms | -| ✔️ | raises an exception if selectProjects is not provided any project names | 0ms | -| ✔️ | raises an exception if config is not a valid JSON string | 1ms | -| ✔️ | raises an exception if config is not a supported file type | 1ms | - -### buildArgv - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return only camelcased args | 14ms | - -## packages/jest-runtime/src/__tests__/runtime_jest_spy_on.test.js ✔️ - -### Runtime jest.spyOn - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls the original function | 395ms | - -### Runtime jest.spyOnProperty - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls the original function | 43ms | - -## packages/jest-resolve-dependencies/src/__tests__/dependency_resolver.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resolves no dependencies for non-existent path | 72ms | -| ✔️ | resolves dependencies for existing path | 30ms | -| ✔️ | includes the mocks of dependencies as dependencies | 67ms | -| ✔️ | resolves dependencies for scoped packages | 41ms | -| ✔️ | resolves no inverse dependencies for empty paths set | 51ms | -| ✔️ | resolves no inverse dependencies for set of non-existent paths | 41ms | -| ✔️ | resolves inverse dependencies for existing path | 27ms | -| ✔️ | resolves inverse dependencies of mock | 26ms | -| ✔️ | resolves inverse dependencies from available snapshot | 47ms | -| ✔️ | resolves dependencies correctly when dependency resolution fails | 41ms | -| ✔️ | resolves dependencies correctly when mock dependency resolution fails | 27ms | - -## packages/jest-message-util/src/__tests__/messages.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should exclude jasmine from stack trace for Unix paths. | 4ms | -| ✔️ | .formatExecError() | 0ms | -| ✔️ | formatStackTrace should strip node internals | 1ms | -| ✔️ | should not exclude vendor from stack trace | 1ms | -| ✔️ | retains message in babel code frame error | 1ms | -| ✔️ | codeframe | 3ms | -| ✔️ | no codeframe | 0ms | -| ✔️ | no stack | 1ms | - -### formatStackTrace - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints code frame and stacktrace | 1ms | -| ✔️ | does not print code frame when noCodeFrame = true | 1ms | -| ✔️ | does not print codeframe when noStackTrace = true | 0ms | - -## packages/jest-diff/src/__tests__/diff.test.ts ✔️ - -### different types - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | '1' and 'a' | 0ms | -| ✔️ | '[object Object]' and 'a' | 1ms | -| ✔️ | '' and '2' | 0ms | -| ✔️ | 'null' and 'undefined' | 0ms | -| ✔️ | '() => {}' and '3' | 0ms | - -### no visual difference - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | '"a"' and '"a"' | 2ms | -| ✔️ | '{}' and '{}' | 1ms | -| ✔️ | '[]' and '[]' | 0ms | -| ✔️ | '[1,2]' and '[1,2]' | 0ms | -| ✔️ | '11' and '11' | 1ms | -| ✔️ | 'null' and 'null' | 0ms | -| ✔️ | 'null' and 'null' | 0ms | -| ✔️ | 'undefined' and 'undefined' | 0ms | -| ✔️ | 'null' and 'null' | 0ms | -| ✔️ | 'undefined' and 'undefined' | 1ms | -| ✔️ | 'false' and 'false' | 0ms | -| ✔️ | '{"a":1}' and '{"a":1}' | 0ms | -| ✔️ | '{"a":{"b":5}}' and '{"a":{"b":5}}' | 0ms | -| ✔️ | Map key order should be irrelevant | 1ms | -| ✔️ | Set value order should be irrelevant | 1ms | - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | oneline strings | 1ms | -| ✔️ | numbers | 0ms | -| ✔️ | -0 and 0 | 0ms | -| ✔️ | booleans | 0ms | -| ✔️ | collapses big diffs to patch format | 1ms | - -### falls back to not call toJSON if serialization has no differences - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | but then objects have differences | 1ms | -| ✔️ | and then objects have no differences | 0ms | - -### falls back to not call toJSON if it throws - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | and then objects have differences | 0ms | -| ✔️ | and then objects have no differences | 0ms | - -### multiline strings - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 1ms | -| ✔️ | (expanded) | 0ms | - -### objects - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 0ms | - -### multiline string non-snapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 0ms | - -### multiline string snapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 1ms | -| ✔️ | (expanded) | 0ms | - -### React elements - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 1ms | -| ✔️ | (expanded) | 0ms | - -### multiline string as value of object property (non-snapshot) - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 1ms | - -### multiline string as value of object property (snapshot) - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 0ms | - -### indentation in JavaScript structures from less to more - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 7ms | -| ✔️ | (expanded) | 1ms | - -### indentation in JavaScript structures from more to less - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 1ms | - -### color of text - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (expanded) | 0ms | -| ✔️ | (unexpanded) | 1ms | - -### indentation in React elements (non-snapshot) from less to more - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 0ms | - -### indentation in React elements (non-snapshot) from more to less - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 1ms | - -### indentation in React elements (snapshot) from less to more - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 0ms | - -### indentation in React elements (snapshot) from more to less - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 1ms | - -### outer React element (non-snapshot) from less to more - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 0ms | - -### outer React element (non-snapshot) from more to less - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 1ms | - -### trailing newline in multiline string not enclosed in quotes from less to more - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 1ms | - -### trailing newline in multiline string not enclosed in quotes from more to less - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 0ms | - -### context - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | number of lines: -1 (5 default) | 0ms | -| ✔️ | number of lines: 0 | 1ms | -| ✔️ | number of lines: 1 | 0ms | -| ✔️ | number of lines: 2 | 1ms | -| ✔️ | number of lines: 3.1 (5 default) | 0ms | -| ✔️ | number of lines: undefined (5 default) | 1ms | - -### diffLinesUnified edge cases - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | a empty string b empty string | 0ms | -| ✔️ | a empty string b one line | 0ms | -| ✔️ | a multiple lines b empty string | 0ms | -| ✔️ | a one line b multiple lines | 0ms | - -### diffLinesUnified2 edge cases - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | a empty string b empty string | 0ms | -| ✔️ | a empty string b one line | 0ms | -| ✔️ | a multiple lines b empty string | 0ms | -| ✔️ | a one line b multiple lines | 1ms | - -### diffLinesUnified2 edge cases lengths not equal - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | a | 0ms | -| ✔️ | b | 0ms | - -### diffStringsUnified edge cases - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | empty both a and b | 0ms | -| ✔️ | empty only a | 1ms | -| ✔️ | empty only b | 0ms | -| ✔️ | equal both non-empty | 2ms | -| ✔️ | multiline has no common after clean up chaff | 1ms | -| ✔️ | one-line has no common after clean up chaff | 0ms | - -### options 7980 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diff | 1ms | -| ✔️ | diffStringsUnified | 0ms | - -### options change indicators - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diff | 0ms | - -### options change color - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diffStringsUnified | 0ms | -| ✔️ | no diff | 0ms | - -### options common - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diff | 5ms | -| ✔️ | no diff | 1ms | - -### options includeChangeCounts false - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diffLinesUnified | 2ms | -| ✔️ | diffStringsUnified | 0ms | - -### options includeChangeCounts true padding - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diffLinesUnified a has 2 digits | 0ms | -| ✔️ | diffLinesUnified b has 2 digits | 0ms | -| ✔️ | diffStringsUnified | 0ms | - -### options omitAnnotationLines true - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diff | 1ms | -| ✔️ | diffStringsUnified and includeChangeCounts true | 0ms | -| ✔️ | diffStringsUnified empty strings | 0ms | - -### options trailingSpaceFormatter - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diffDefault default no color | 1ms | -| ✔️ | diffDefault middle dot | 0ms | -| ✔️ | diffDefault yellowish common | 0ms | - -### options emptyFirstOrLastLinePlaceholder default empty string - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diffDefault | 0ms | -| ✔️ | diffStringsUnified | 0ms | - -## packages/jest-core/src/__tests__/watchTestNamePatternMode.test.js ✔️ - -### Watch mode flows - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Pressing "T" enters pattern mode | 8ms | - -## packages/expect/src/__tests__/spyMatchers.test.ts ✔️ - -### toBeCalled - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 1ms | -| ✔️ | passes when called | 1ms | -| ✔️ | .not passes when called | 1ms | -| ✔️ | fails with any argument passed | 0ms | -| ✔️ | .not fails with any argument passed | 1ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### toHaveBeenCalled - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 1ms | -| ✔️ | passes when called | 1ms | -| ✔️ | .not passes when called | 0ms | -| ✔️ | fails with any argument passed | 1ms | -| ✔️ | .not fails with any argument passed | 0ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### toBeCalledTimes - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | .not works only on spies or jest.fn | 0ms | -| ✔️ | only accepts a number argument | 5ms | -| ✔️ | .not only accepts a number argument | 2ms | -| ✔️ | passes if function called equal to expected times | 0ms | -| ✔️ | .not passes if function called more than expected times | 1ms | -| ✔️ | .not passes if function called less than expected times | 1ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### toHaveBeenCalledTimes - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | .not works only on spies or jest.fn | 0ms | -| ✔️ | only accepts a number argument | 1ms | -| ✔️ | .not only accepts a number argument | 4ms | -| ✔️ | passes if function called equal to expected times | 0ms | -| ✔️ | .not passes if function called more than expected times | 1ms | -| ✔️ | .not passes if function called less than expected times | 0ms | -| ✔️ | includes the custom mock name in the error message | 1ms | - -### lastCalledWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 1ms | -| ✔️ | works with no arguments | 0ms | -| ✔️ | works with arguments that don't match | 1ms | -| ✔️ | works with arguments that match | 1ms | -| ✔️ | works with trailing undefined arguments | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 2ms | -| ✔️ | works with Immutable.js objects | 1ms | -| ✔️ | works with many arguments | 0ms | -| ✔️ | works with many arguments that don't match | 1ms | -| ✔️ | includes the custom mock name in the error message | 1ms | - -### toHaveBeenLastCalledWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 1ms | -| ✔️ | works with arguments that don't match | 0ms | -| ✔️ | works with arguments that match | 1ms | -| ✔️ | works with trailing undefined arguments | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects | 1ms | -| ✔️ | works with many arguments | 0ms | -| ✔️ | works with many arguments that don't match | 1ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### nthCalledWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 1ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 1ms | -| ✔️ | works with arguments that don't match | 0ms | -| ✔️ | works with arguments that match | 1ms | -| ✔️ | works with trailing undefined arguments | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects | 1ms | -| ✔️ | works with three calls | 0ms | -| ✔️ | positive throw matcher error for n that is not positive integer | 0ms | -| ✔️ | positive throw matcher error for n that is not integer | 0ms | -| ✔️ | negative throw matcher error for n that is not integer | 1ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### toHaveBeenNthCalledWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 1ms | -| ✔️ | works with arguments that don't match | 0ms | -| ✔️ | works with arguments that match | 1ms | -| ✔️ | works with trailing undefined arguments | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects | 1ms | -| ✔️ | works with three calls | 2ms | -| ✔️ | positive throw matcher error for n that is not positive integer | 0ms | -| ✔️ | positive throw matcher error for n that is not integer | 0ms | -| ✔️ | negative throw matcher error for n that is not integer | 1ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### toBeCalledWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 1ms | -| ✔️ | works with arguments that don't match | 0ms | -| ✔️ | works with arguments that match | 1ms | -| ✔️ | works with trailing undefined arguments | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects | 1ms | -| ✔️ | works with many arguments | 0ms | -| ✔️ | works with many arguments that don't match | 0ms | -| ✔️ | includes the custom mock name in the error message | 1ms | - -### toHaveBeenCalledWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 0ms | -| ✔️ | works with arguments that don't match | 0ms | -| ✔️ | works with arguments that match | 0ms | -| ✔️ | works with trailing undefined arguments | 1ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects | 0ms | -| ✔️ | works with many arguments | 1ms | -| ✔️ | works with many arguments that don't match | 0ms | -| ✔️ | includes the custom mock name in the error message | 1ms | - -### toReturn - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | .not works only on jest.fn | 0ms | -| ✔️ | throw matcher error if received is spy | 0ms | -| ✔️ | passes when returned | 0ms | -| ✔️ | passes when undefined is returned | 0ms | -| ✔️ | passes when at least one call does not throw | 0ms | -| ✔️ | .not passes when not returned | 0ms | -| ✔️ | .not passes when all calls throw | 1ms | -| ✔️ | .not passes when a call throws undefined | 0ms | -| ✔️ | fails with any argument passed | 1ms | -| ✔️ | .not fails with any argument passed | 0ms | -| ✔️ | includes the custom mock name in the error message | 1ms | -| ✔️ | incomplete recursive calls are handled properly | 0ms | - -### toHaveReturned - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | .not works only on jest.fn | 0ms | -| ✔️ | throw matcher error if received is spy | 1ms | -| ✔️ | passes when returned | 0ms | -| ✔️ | passes when undefined is returned | 3ms | -| ✔️ | passes when at least one call does not throw | 0ms | -| ✔️ | .not passes when not returned | 1ms | -| ✔️ | .not passes when all calls throw | 0ms | -| ✔️ | .not passes when a call throws undefined | 1ms | -| ✔️ | fails with any argument passed | 0ms | -| ✔️ | .not fails with any argument passed | 0ms | -| ✔️ | includes the custom mock name in the error message | 1ms | -| ✔️ | incomplete recursive calls are handled properly | 0ms | - -### toReturnTimes - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throw matcher error if received is spy | 0ms | -| ✔️ | only accepts a number argument | 2ms | -| ✔️ | .not only accepts a number argument | 1ms | -| ✔️ | passes if function returned equal to expected times | 1ms | -| ✔️ | calls that return undefined are counted as returns | 0ms | -| ✔️ | .not passes if function returned more than expected times | 0ms | -| ✔️ | .not passes if function called less than expected times | 1ms | -| ✔️ | calls that throw are not counted | 0ms | -| ✔️ | calls that throw undefined are not counted | 2ms | -| ✔️ | includes the custom mock name in the error message | 1ms | -| ✔️ | incomplete recursive calls are handled properly | 0ms | - -### toHaveReturnedTimes - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throw matcher error if received is spy | 0ms | -| ✔️ | only accepts a number argument | 2ms | -| ✔️ | .not only accepts a number argument | 1ms | -| ✔️ | passes if function returned equal to expected times | 0ms | -| ✔️ | calls that return undefined are counted as returns | 0ms | -| ✔️ | .not passes if function returned more than expected times | 1ms | -| ✔️ | .not passes if function called less than expected times | 0ms | -| ✔️ | calls that throw are not counted | 0ms | -| ✔️ | calls that throw undefined are not counted | 0ms | -| ✔️ | includes the custom mock name in the error message | 0ms | -| ✔️ | incomplete recursive calls are handled properly | 1ms | - -### lastReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 1ms | -| ✔️ | works with no arguments | 0ms | -| ✔️ | works with argument that does not match | 1ms | -| ✔️ | works with argument that does match | 1ms | -| ✔️ | works with undefined | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects directly created | 1ms | -| ✔️ | works with Immutable.js objects indirectly created | 1ms | -| ✔️ | a call that throws is not considered to have returned | 0ms | -| ✔️ | a call that throws undefined is not considered to have returned | 1ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### lastReturnedWith lastReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with three calls | 1ms | -| ✔️ | incomplete recursive calls are handled properly | 5ms | - -### toHaveLastReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 0ms | -| ✔️ | works with argument that does not match | 0ms | -| ✔️ | works with argument that does match | 1ms | -| ✔️ | works with undefined | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects directly created | 1ms | -| ✔️ | works with Immutable.js objects indirectly created | 1ms | -| ✔️ | a call that throws is not considered to have returned | 0ms | -| ✔️ | a call that throws undefined is not considered to have returned | 1ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### toHaveLastReturnedWith lastReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with three calls | 0ms | -| ✔️ | incomplete recursive calls are handled properly | 1ms | - -### nthReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 1ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 0ms | -| ✔️ | works with argument that does not match | 1ms | -| ✔️ | works with argument that does match | 1ms | -| ✔️ | works with undefined | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects directly created | 1ms | -| ✔️ | works with Immutable.js objects indirectly created | 0ms | -| ✔️ | a call that throws is not considered to have returned | 0ms | -| ✔️ | a call that throws undefined is not considered to have returned | 1ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### nthReturnedWith nthReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with three calls | 0ms | -| ✔️ | should replace 1st, 2nd, 3rd with first, second, third | 1ms | -| ✔️ | positive throw matcher error for n that is not positive integer | 1ms | -| ✔️ | should reject nth value greater than number of calls | 0ms | -| ✔️ | positive throw matcher error for n that is not integer | 1ms | -| ✔️ | negative throw matcher error for n that is not number | 0ms | -| ✔️ | incomplete recursive calls are handled properly | 2ms | - -### toHaveNthReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 1ms | -| ✔️ | works with no arguments | 0ms | -| ✔️ | works with argument that does not match | 0ms | -| ✔️ | works with argument that does match | 1ms | -| ✔️ | works with undefined | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects directly created | 1ms | -| ✔️ | works with Immutable.js objects indirectly created | 0ms | -| ✔️ | a call that throws is not considered to have returned | 1ms | -| ✔️ | a call that throws undefined is not considered to have returned | 2ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### toHaveNthReturnedWith nthReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with three calls | 1ms | -| ✔️ | should replace 1st, 2nd, 3rd with first, second, third | 0ms | -| ✔️ | positive throw matcher error for n that is not positive integer | 1ms | -| ✔️ | should reject nth value greater than number of calls | 0ms | -| ✔️ | positive throw matcher error for n that is not integer | 0ms | -| ✔️ | negative throw matcher error for n that is not number | 1ms | -| ✔️ | incomplete recursive calls are handled properly | 1ms | - -### toReturnWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 1ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 0ms | -| ✔️ | works with argument that does not match | 1ms | -| ✔️ | works with argument that does match | 0ms | -| ✔️ | works with undefined | 1ms | -| ✔️ | works with Map | 0ms | -| ✔️ | works with Set | 2ms | -| ✔️ | works with Immutable.js objects directly created | 1ms | -| ✔️ | works with Immutable.js objects indirectly created | 0ms | -| ✔️ | a call that throws is not considered to have returned | 0ms | -| ✔️ | a call that throws undefined is not considered to have returned | 1ms | -| ✔️ | includes the custom mock name in the error message | 1ms | - -### toReturnWith returnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with more calls than the limit | 1ms | -| ✔️ | incomplete recursive calls are handled properly | 0ms | - -### toHaveReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 1ms | -| ✔️ | works with argument that does not match | 0ms | -| ✔️ | works with argument that does match | 0ms | -| ✔️ | works with undefined | 1ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 0ms | -| ✔️ | works with Immutable.js objects directly created | 1ms | -| ✔️ | works with Immutable.js objects indirectly created | 0ms | -| ✔️ | a call that throws is not considered to have returned | 1ms | -| ✔️ | a call that throws undefined is not considered to have returned | 0ms | -| ✔️ | includes the custom mock name in the error message | 1ms | - -### toHaveReturnedWith returnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with more calls than the limit | 1ms | -| ✔️ | incomplete recursive calls are handled properly | 0ms | - -## e2e/__tests__/jestChangedFiles.test.ts ❌ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | gets hg SCM roots and dedupes them | 559ms | -| ✔️ | gets git SCM roots and dedupes them | 416ms | -| ✔️ | gets mixed git and hg SCM roots and dedupes them | 467ms | -| ✔️ | gets changed files for git | 2298ms | -| ✔️ | monitors only root paths for git | 151ms | -| ✔️ | does not find changes in files with no diff, for git | 628ms | -| ✔️ | handles a bad revision for "changedSince", for git | 878ms | -| ❌ | gets changed files for hg | 2219ms | -| ✔️ | monitors only root paths for hg | 281ms | -| ✔️ | handles a bad revision for "changedSince", for hg | 949ms | - -## packages/jest-matcher-utils/src/__tests__/index.test.ts ✔️ - -### stringify() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | [] | 0ms | -| ✔️ | {} | 1ms | -| ✔️ | 1 | 0ms | -| ✔️ | 0 | 0ms | -| ✔️ | 1.5 | 1ms | -| ✔️ | null | 0ms | -| ✔️ | undefined | 0ms | -| ✔️ | "abc" | 0ms | -| ✔️ | Symbol(abc) | 0ms | -| ✔️ | NaN | 0ms | -| ✔️ | Infinity | 0ms | -| ✔️ | -Infinity | 1ms | -| ✔️ | /ab\.c/gi | 0ms | -| ✔️ | 1n | 0ms | -| ✔️ | 0n | 0ms | -| ✔️ | circular references | 0ms | -| ✔️ | toJSON error | 1ms | -| ✔️ | toJSON errors when comparing two objects | 3ms | -| ✔️ | reduces maxDepth if stringifying very large objects | 96ms | - -### ensureNumbers() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | dont throw error when variables are numbers | 0ms | -| ✔️ | throws error when expected is not a number (backward compatibility) | 1ms | -| ✔️ | throws error when received is not a number (backward compatibility) | 0ms | - -### ensureNumbers() with options - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | promise empty isNot false received | 1ms | -| ✔️ | promise empty isNot true expected | 1ms | -| ✔️ | promise rejects isNot false expected | 0ms | -| ✔️ | promise rejects isNot true received | 0ms | -| ✔️ | promise resolves isNot false received | 1ms | -| ✔️ | promise resolves isNot true expected | 0ms | - -### ensureNoExpected() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | dont throw error when undefined | 0ms | -| ✔️ | throws error when expected is not undefined with matcherName | 1ms | -| ✔️ | throws error when expected is not undefined with matcherName and options | 0ms | - -### diff - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | forwards to jest-diff | 1ms | -| ✔️ | two booleans | 0ms | -| ✔️ | two numbers | 0ms | -| ✔️ | two bigints | 0ms | - -### pluralize() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | one | 1ms | -| ✔️ | two | 0ms | -| ✔️ | 20 | 1ms | - -### getLabelPrinter - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | 0 args | 0ms | -| ✔️ | 1 empty string | 0ms | -| ✔️ | 1 non-empty string | 0ms | -| ✔️ | 2 equal lengths | 1ms | -| ✔️ | 2 unequal lengths | 0ms | -| ✔️ | returns incorrect padding if inconsistent arg is shorter | 0ms | -| ✔️ | throws if inconsistent arg is longer | 26ms | - -### matcherHint - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | expectedColor | 0ms | -| ✔️ | receivedColor | 1ms | -| ✔️ | secondArgumentColor | 0ms | - -## packages/jest-core/src/__tests__/watchFilenamePatternMode.test.js ✔️ - -### Watch mode flows - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Pressing "P" enters pattern mode | 7ms | -| ✔️ | Pressing "c" clears the filters | 1ms | - -## packages/jest-runtime/src/__tests__/runtime_create_mock_from_module.test.js ✔️ - -### Runtime createMockFromModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not cause side effects in the rest of the module system when generating a mock | 408ms | -| ✔️ | resolves mapped modules correctly | 94ms | - -### Runtime - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | creates mock objects in the right environment | 37ms | - -## packages/jest-runtime/src/__tests__/runtime_environment.test.js ✔️ - -### Runtime requireModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | emulates a node stack trace during module load | 398ms | -| ✔️ | emulates a node stack trace during function execution | 70ms | - -## packages/jest-haste-map/src/__tests__/includes_dotfiles.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | watchman crawler and node crawler both include dotfiles | 77ms | - -## packages/jest-haste-map/src/crawlers/__tests__/watchman.test.js ✔️ - -### watchman watch - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns a list of all files when there are no clocks | 7ms | -| ✔️ | updates file map and removedFiles when the clock is given | 1ms | -| ✔️ | resets the file map and tracks removedFiles when watchman is fresh | 2ms | -| ✔️ | properly resets the file map when only one watcher is reset | 6ms | -| ✔️ | does not add directory filters to query when watching a ROOT | 2ms | -| ✔️ | SHA-1 requested and available | 1ms | -| ✔️ | SHA-1 requested and NOT available | 1ms | -| ✔️ | source control query | 1ms | - -## packages/jest-fake-timers/src/__tests__/legacyFakeTimers.test.ts ✔️ - -### FakeTimers construction - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | installs setTimeout mock | 1ms | -| ✔️ | accepts to promisify setTimeout mock | 2ms | -| ✔️ | installs clearTimeout mock | 1ms | -| ✔️ | installs setInterval mock | 0ms | -| ✔️ | installs clearInterval mock | 1ms | -| ✔️ | mocks process.nextTick if it exists on global | 1ms | -| ✔️ | mocks setImmediate if it exists on global | 1ms | -| ✔️ | mocks clearImmediate if setImmediate is on global | 1ms | - -### FakeTimers runAllTicks - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs all ticks, in order | 1ms | -| ✔️ | does nothing when no ticks have been scheduled | 1ms | -| ✔️ | only runs a scheduled callback once | 1ms | -| ✔️ | cancels a callback even from native nextTick | 1ms | -| ✔️ | cancels a callback even from native setImmediate | 1ms | -| ✔️ | doesnt run a tick callback if native nextTick already did | 1ms | -| ✔️ | doesnt run immediate if native setImmediate already did | 1ms | -| ✔️ | native doesnt run immediate if fake already did | 2ms | -| ✔️ | throws before allowing infinite recursion | 43ms | - -### FakeTimers runAllTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs all timers in order | 1ms | -| ✔️ | warns when trying to advance timers while real timers are used | 3ms | -| ✔️ | does nothing when no timers have been scheduled | 1ms | -| ✔️ | only runs a setTimeout callback once (ever) | 1ms | -| ✔️ | runs callbacks with arguments after the interval | 1ms | -| ✔️ | doesnt pass the callback to native setTimeout | 0ms | -| ✔️ | throws before allowing infinite recursion | 1ms | -| ✔️ | also clears ticks | 1ms | - -### FakeTimers advanceTimersByTime - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs timers in order | 1ms | -| ✔️ | does nothing when no timers have been scheduled | 1ms | -| ✔️ | throws before allowing infinite recursion | 1ms | - -### FakeTimers advanceTimersToNextTimer - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs timers in order | 1ms | -| ✔️ | run correct amount of steps | 1ms | -| ✔️ | setTimeout inside setTimeout | 0ms | -| ✔️ | does nothing when no timers have been scheduled | 1ms | - -### FakeTimers reset - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resets all pending setTimeouts | 1ms | -| ✔️ | resets all pending setIntervals | 1ms | -| ✔️ | resets all pending ticks callbacks & immediates | 1ms | -| ✔️ | resets current advanceTimersByTime time cursor | 1ms | - -### FakeTimers runOnlyPendingTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs all timers in order | 1ms | -| ✔️ | does not run timers that were cleared in another timer | 1ms | - -### FakeTimers runWithRealTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | executes callback with native timers | 2ms | -| ✔️ | resets mock timers after executing callback | 1ms | -| ✔️ | resets mock timer functions even if callback throws | 2ms | - -### FakeTimers useRealTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resets native timer APIs | 1ms | -| ✔️ | resets native process.nextTick when present | 1ms | -| ✔️ | resets native setImmediate when present | 1ms | - -### FakeTimers useFakeTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resets mock timer APIs | 1ms | -| ✔️ | resets mock process.nextTick when present | 1ms | -| ✔️ | resets mock setImmediate when present | 1ms | - -### FakeTimers getTimerCount - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the correct count | 1ms | -| ✔️ | includes immediates and ticks | 10ms | -| ✔️ | not includes cancelled immediates | 1ms | - -## packages/jest-runtime/src/__tests__/runtime_jest_fn.js ✔️ - -### Runtime jest.fn - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | creates mock functions | 330ms | -| ✔️ | creates mock functions with mock implementations | 31ms | - -### Runtime jest.isMockFunction - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | recognizes a mocked function | 35ms | - -### Runtime jest.clearAllMocks - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | clears all mocks | 29ms | - -## packages/expect/src/__tests__/matchers-toStrictEqual.property.test.ts ✔️ - -### toStrictEqual - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be reflexive | 44ms | -| ✔️ | should be symmetric | 92ms | - -### toStrictEqual on node >=9 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be equivalent to Node deepStrictEqual | 113ms | - -## packages/diff-sequences/src/__tests__/index.property.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be reflexive | 45ms | -| ✔️ | should find the same number of common items when switching the inputs | 29ms | -| ✔️ | should have at most the length of its inputs | 20ms | -| ✔️ | should have at most the same number of each character as its inputs | 17ms | -| ✔️ | should be a subsequence of its inputs | 22ms | -| ✔️ | should be no-op when passing common items | 30ms | -| ✔️ | should find the exact common items when one array is subarray of the other | 22ms | - -## packages/jest-fake-timers/src/__tests__/modernFakeTimers.test.ts ✔️ - -### FakeTimers construction - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | installs setTimeout mock | 1ms | -| ✔️ | installs clearTimeout mock | 0ms | -| ✔️ | installs setInterval mock | 1ms | -| ✔️ | installs clearInterval mock | 1ms | -| ✔️ | mocks process.nextTick if it exists on global | 0ms | -| ✔️ | mocks setImmediate if it exists on global | 0ms | -| ✔️ | mocks clearImmediate if setImmediate is on global | 0ms | - -### FakeTimers runAllTicks - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs all ticks, in order | 1ms | -| ✔️ | does nothing when no ticks have been scheduled | 0ms | -| ✔️ | only runs a scheduled callback once | 1ms | -| ✔️ | throws before allowing infinite recursion | 25ms | - -### FakeTimers runAllTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs all timers in order | 1ms | -| ✔️ | warns when trying to advance timers while real timers are used | 4ms | -| ✔️ | does nothing when no timers have been scheduled | 1ms | -| ✔️ | only runs a setTimeout callback once (ever) | 0ms | -| ✔️ | runs callbacks with arguments after the interval | 1ms | -| ✔️ | doesn't pass the callback to native setTimeout | 0ms | -| ✔️ | throws before allowing infinite recursion | 7ms | -| ✔️ | also clears ticks | 1ms | - -### FakeTimers advanceTimersByTime - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs timers in order | 1ms | -| ✔️ | does nothing when no timers have been scheduled | 0ms | - -### FakeTimers advanceTimersToNextTimer - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs timers in order | 4ms | -| ✔️ | run correct amount of steps | 1ms | -| ✔️ | setTimeout inside setTimeout | 0ms | -| ✔️ | does nothing when no timers have been scheduled | 1ms | - -### FakeTimers reset - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resets all pending setTimeouts | 0ms | -| ✔️ | resets all pending setIntervals | 0ms | -| ✔️ | resets all pending ticks callbacks | 1ms | -| ✔️ | resets current advanceTimersByTime time cursor | 0ms | - -### FakeTimers runOnlyPendingTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs all timers in order | 1ms | -| ✔️ | does not run timers that were cleared in another timer | 0ms | - -### FakeTimers useRealTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resets native timer APIs | 2ms | -| ✔️ | resets native process.nextTick when present | 0ms | -| ✔️ | resets native setImmediate when present | 0ms | - -### FakeTimers useFakeTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resets mock timer APIs | 1ms | -| ✔️ | resets mock process.nextTick when present | 0ms | -| ✔️ | resets mock setImmediate when present | 0ms | - -### FakeTimers getTimerCount - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the correct count | 1ms | -| ✔️ | includes immediates and ticks | 0ms | -| ✔️ | not includes cancelled immediates | 1ms | - -## packages/expect/src/__tests__/matchers-toContain.property.test.ts ✔️ - -### toContain - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should always find the value when inside the array | 122ms | -| ✔️ | should not find the value if it has been cloned into the array | 56ms | - -## packages/jest-runtime/src/__tests__/runtime_wrap.js ✔️ - -### Runtime wrapCodeInModuleWrapper - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | generates the correct args for the module wrapper | 194ms | -| ✔️ | injects "extra globals" | 43ms | - -## packages/expect/src/__tests__/matchers-toContainEqual.property.test.ts ✔️ - -### toContainEqual - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should always find the value when inside the array | 91ms | -| ✔️ | should always find the value when cloned inside the array | 52ms | - -## packages/diff-sequences/src/__tests__/index.test.ts ✔️ - -### invalid arg length - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is not a number | 40ms | -| ✔️ | Infinity is not a safe integer | 1ms | -| ✔️ | Not a Number is not a safe integer | 0ms | -| ✔️ | MAX_SAFE_INTEGER + 1 is not a safe integer | 0ms | -| ✔️ | MIN_SAFE_INTEGER - 1 is not a safe integer | 1ms | -| ✔️ | is a negative integer | 0ms | - -### invalid arg callback - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | null is not a function | 1ms | -| ✔️ | undefined is not a function | 0ms | - -### input callback encapsulates comparison zero and negative zero - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | are not common according to Object.is method | 0ms | -| ✔️ | are common according to === operator | 0ms | - -### input callback encapsulates comparison Not a Number - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is common according to Object.is method | 0ms | -| ✔️ | is not common according to === operator | 0ms | - -### input callback encapsulates sequences - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | arrays of strings | 1ms | -| ✔️ | string and array of strings | 1ms | -| ✔️ | strings | 1ms | - -### no common items negative zero is equivalent to zero for length - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | of a | 0ms | -| ✔️ | of b | 0ms | -| ✔️ | of a and b | 1ms | - -### no common items - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | a empty and b empty | 3ms | -| ✔️ | a empty and b non-empty | 1ms | -| ✔️ | a non-empty and b empty | 0ms | - -### no common items a non-empty and b non-empty - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | baDeltaLength 0 even | 1ms | -| ✔️ | baDeltaLength 1 odd | 0ms | -| ✔️ | baDeltaLength 2 even | 0ms | -| ✔️ | baDeltaLength 7 odd | 1ms | - -### only common items - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | length 1 | 0ms | -| ✔️ | length 2 | 1ms | - -### all common items outside - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | preceding changes | 0ms | -| ✔️ | following change | 0ms | -| ✔️ | preceding and following changes in one sequence | 1ms | - -### some common items inside and outside - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | preceding changes adjacent to common in both sequences | 0ms | -| ✔️ | following changes adjacent to common in both sequences | 1ms | - -### all common items inside non-recursive - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | move from start to end relative to change | 0ms | -| ✔️ | move from start to end relative to common | 0ms | -| ✔️ | move from start to end relative to change and common | 0ms | -| ✔️ | reverse relative to change | 0ms | -| ✔️ | preceding middle | 0ms | -| ✔️ | following middle | 1ms | - -### all common items inside recursive - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prev reverse at depth 1 and preceding at depth 2 | 0ms | -| ✔️ | last forward at depth 1 and following at depth 2 | 1ms | -| ✔️ | preceding at depth 2 and both at depth 3 of following | 7ms | -| ✔️ | interleaved single change | 0ms | -| ✔️ | interleaved double changes | 1ms | -| ✔️ | optimization decreases iMaxF | 0ms | -| ✔️ | optimization decreases iMaxR | 0ms | - -### common substrings - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | progress | 1ms | -| ✔️ | regression | 12ms | -| ✔️ | wrapping | 1ms | - -## packages/jest-get-type/src/__tests__/getType.test.ts ✔️ - -### .getType() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | null | 1ms | -| ✔️ | undefined | 0ms | -| ✔️ | object | 0ms | -| ✔️ | array | 0ms | -| ✔️ | number | 1ms | -| ✔️ | string | 0ms | -| ✔️ | function | 0ms | -| ✔️ | boolean | 0ms | -| ✔️ | symbol | 1ms | -| ✔️ | regexp | 0ms | -| ✔️ | map | 0ms | -| ✔️ | set | 0ms | -| ✔️ | date | 0ms | -| ✔️ | bigint | 1ms | - -## packages/jest-cli/src/init/__tests__/init.test.js ✔️ - -### init project with package.json and no jest config all questions answered with answer: "No" - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return the default configuration (an empty config) | 1ms | -| ✔️ | should generate empty config with mjs extension | 1ms | - -### init project with package.json and no jest config some questions answered with answer: "Yes" - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should create configuration for {clearMocks: true} | 1ms | -| ✔️ | should create configuration for {coverage: true} | 1ms | -| ✔️ | should create configuration for {coverageProvider: "babel"} | 0ms | -| ✔️ | should create configuration for {coverageProvider: "v8"} | 0ms | -| ✔️ | should create configuration for {environment: "jsdom"} | 0ms | -| ✔️ | should create configuration for {environment: "node"} | 1ms | -| ✔️ | should create package.json with configured test command when {scripts: true} | 1ms | - -### init no package json - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should throw an error if there is no package.json file | 0ms | - -### init has-jest-config-file-js ask the user whether to override config or not - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | user answered with "Yes" | 1ms | -| ✔️ | user answered with "No" | 0ms | - -### init has-jest-config-file-ts ask the user whether to override config or not - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | user answered with "Yes" | 1ms | -| ✔️ | user answered with "No" | 0ms | - -### init has-jest-config-file-mjs ask the user whether to override config or not - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | user answered with "Yes" | 0ms | -| ✔️ | user answered with "No" | 1ms | - -### init has-jest-config-file-cjs ask the user whether to override config or not - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | user answered with "Yes" | 1ms | -| ✔️ | user answered with "No" | 1ms | - -### init has-jest-config-file-json ask the user whether to override config or not - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | user answered with "Yes" | 0ms | -| ✔️ | user answered with "No" | 0ms | - -### init project using jest.config.ts ask the user whether he wants to use Typescript or not - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | user answered with "Yes" | 1ms | -| ✔️ | user answered with "No" | 1ms | - -### init has jest config in package.json - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should ask the user whether to override config or not | 1ms | - -### init already has "jest" in packageJson.scripts.test - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should not ask "test script question" | 0ms | - -## packages/jest-runtime/src/__tests__/runtime_require_module_no_ext.test.js ✔️ - -### Runtime requireModule with no extension - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error pointing out file with extension | 204ms | - -## packages/jest-util/src/__tests__/deepCyclicCopy.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the same value for primitive or function values | 1ms | -| ✔️ | does not execute getters/setters, but copies them | 0ms | -| ✔️ | copies symbols | 10ms | -| ✔️ | copies arrays as array objects | 1ms | -| ✔️ | handles cyclic dependencies | 0ms | -| ✔️ | uses the blacklist to avoid copying properties on the first level | 1ms | -| ✔️ | does not keep the prototype by default when top level is object | 0ms | -| ✔️ | does not keep the prototype by default when top level is array | 1ms | -| ✔️ | does not keep the prototype of arrays when keepPrototype = false | 0ms | -| ✔️ | keeps the prototype of arrays when keepPrototype = true | 2ms | -| ✔️ | does not keep the prototype for objects when keepPrototype = false | 0ms | -| ✔️ | keeps the prototype for objects when keepPrototype = true | 1ms | - -## e2e/__tests__/version.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with jest.config.js | 94ms | - -## packages/jest-util/src/__tests__/createProcessObject.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | creates a process object that looks like the original one | 32ms | -| ✔️ | fakes require("process") so it is equal to "global.process" | 0ms | -| ✔️ | checks that process.env works as expected on Linux platforms | 5ms | -| ✔️ | checks that process.env works as expected in Windows platforms | 2ms | - -## packages/jest-runtime/src/__tests__/instrumentation.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | instruments files | 239ms | - -## packages/jest-core/src/__tests__/runJest.test.js ✔️ - -### runJest - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | when watch is set then exit process | 18ms | -| ✔️ | when watch is set then an error message is printed | 1ms | - -## packages/jest-matcher-utils/src/__tests__/Replaceable.test.ts ✔️ - -### Replaceable constructor - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | init with object | 0ms | -| ✔️ | init with array | 0ms | -| ✔️ | init with Map | 0ms | -| ✔️ | init with other type should throw error | 16ms | - -### Replaceable get - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | get object item | 0ms | -| ✔️ | get array item | 0ms | -| ✔️ | get Map item | 1ms | - -### Replaceable set - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | set object item | 0ms | -| ✔️ | set array item | 0ms | -| ✔️ | set Map item | 0ms | - -### Replaceable forEach - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | object forEach | 1ms | -| ✔️ | array forEach | 0ms | -| ✔️ | map forEach | 0ms | -| ✔️ | forEach should ignore nonenumerable property | 1ms | - -### Replaceable isReplaceable - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return true if two object types equal and support | 1ms | -| ✔️ | should return false if two object types not equal | 0ms | -| ✔️ | should return false if object types not support | 0ms | - -## packages/jest-util/src/__tests__/formatTime.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to milliseconds | 1ms | -| ✔️ | formats seconds properly | 0ms | -| ✔️ | formats milliseconds properly | 0ms | -| ✔️ | formats microseconds properly | 30ms | -| ✔️ | formats nanoseconds properly | 0ms | -| ✔️ | interprets lower than lowest powers as nanoseconds | 0ms | -| ✔️ | interprets higher than highest powers as seconds | 2ms | -| ✔️ | interprets non-multiple-of-3 powers as next higher prefix | 0ms | -| ✔️ | formats the quantity properly when pad length is lower | 0ms | -| ✔️ | formats the quantity properly when pad length is equal | 0ms | -| ✔️ | left pads the quantity properly when pad length is higher | 0ms | - -## packages/jest-worker/src/__tests__/thread-integration.test.js ✔️ - -### Jest Worker Process Integration - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls a single method from the worker | 25ms | -| ✔️ | distributes sequential calls across child processes | 6ms | -| ✔️ | schedules the task on the first available child processes if the scheduling policy is in-order | 3ms | -| ✔️ | schedules the task on the first available child processes | 4ms | -| ✔️ | distributes concurrent calls across child processes | 6ms | -| ✔️ | sticks parallel calls to children | 15ms | - -## packages/jest-haste-map/src/__tests__/worker.test.js ✔️ - -### worker - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | parses JavaScript files and extracts module information | 1ms | -| ✔️ | accepts a custom dependency extractor | 2ms | -| ✔️ | delegates to hasteImplModulePath for getting the id | 1ms | -| ✔️ | parses package.json files as haste packages | 1ms | -| ✔️ | returns an error when a file cannot be accessed | 0ms | -| ✔️ | simply computes SHA-1s when requested (works well with binary data) | 12ms | -| ✔️ | avoids computing dependencies if not requested and Haste does not need it | 0ms | - -## packages/jest-matcher-utils/src/__tests__/printDiffOrStringify.test.ts ✔️ - -### printDiffOrStringify - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | expected is empty and received is single line | 1ms | -| ✔️ | expected is multi line and received is empty | 0ms | -| ✔️ | expected and received are single line with multiple changes | 2ms | -| ✔️ | expected and received are multi line with trailing spaces | 1ms | -| ✔️ | has no common after clean up chaff multiline | 2ms | -| ✔️ | has no common after clean up chaff one-line | 0ms | -| ✔️ | object contain readonly symbol key object | 1ms | - -### printDiffOrStringify MAX_DIFF_STRING_LENGTH - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | both are less | 1ms | -| ✔️ | expected is more | 4ms | -| ✔️ | received is more | 8ms | - -### printDiffOrStringify asymmetricMatcher - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | minimal test | 1ms | -| ✔️ | jest asymmetricMatcher | 5ms | -| ✔️ | custom asymmetricMatcher | 0ms | -| ✔️ | nested object | 0ms | -| ✔️ | array | 1ms | -| ✔️ | object in array | 1ms | -| ✔️ | map | 1ms | -| ✔️ | circular object | 1ms | -| ✔️ | transitive circular | 1ms | -| ✔️ | circular array | 1ms | -| ✔️ | circular map | 5ms | - -## packages/expect/src/__tests__/utils.test.ts ✔️ - -### getPath() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | property exists | 0ms | -| ✔️ | property doesnt exist | 1ms | -| ✔️ | property exist but undefined | 0ms | -| ✔️ | property is a getter on class instance | 1ms | -| ✔️ | property is inherited | 1ms | -| ✔️ | path breaks | 0ms | -| ✔️ | empty object at the end | 1ms | - -### getObjectSubset - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | expect(getObjectSubset({"a": "b", "c": "d"}, {"a": "d"})).toEqual({"a": "b"}) | 1ms | -| ✔️ | expect(getObjectSubset({"a": [1, 2], "b": "b"}, {"a": [3, 4]})).toEqual({"a": [1, 2]}) | 0ms | -| ✔️ | expect(getObjectSubset([{"a": "b", "c": "d"}], [{"a": "z"}])).toEqual([{"a": "b"}]) | 1ms | -| ✔️ | expect(getObjectSubset([1, 2], [1, 2, 3])).toEqual([1, 2]) | 0ms | -| ✔️ | expect(getObjectSubset({"a": [1]}, {"a": [1, 2]})).toEqual({"a": [1]}) | 0ms | -| ✔️ | expect(getObjectSubset(2015-11-30T00:00:00.000Z, 2016-12-30T00:00:00.000Z)).toEqual(2015-11-30T00:00:00.000Z) | 0ms | - -### getObjectSubset returns the object instance if the subset has no extra properties - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Date | 0ms | - -### getObjectSubset returns the subset instance if its property values are equal - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Object | 0ms | - -### getObjectSubset returns the subset instance if its property values are equal Uint8Array - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | expected | 0ms | -| ✔️ | received | 1ms | - -### getObjectSubset calculating subsets of objects with circular references - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | simple circular references | 0ms | -| ✔️ | transitive circular references | 7ms | - -### emptyObject() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | matches an empty object | 0ms | -| ✔️ | does not match an object with keys | 0ms | -| ✔️ | does not match a non-object | 0ms | - -### subsetEquality() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | matching object returns true | 0ms | -| ✔️ | object without keys is undefined | 0ms | -| ✔️ | objects to not match | 1ms | -| ✔️ | null does not return errors | 0ms | -| ✔️ | undefined does not return errors | 0ms | - -### subsetEquality() matching subsets with circular references - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | simple circular references | 0ms | -| ✔️ | referenced object on same level should not regarded as circular reference | 0ms | -| ✔️ | transitive circular references | 9ms | - -### iterableEquality - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns true when given circular iterators | 0ms | -| ✔️ | returns true when given circular Set | 0ms | -| ✔️ | returns true when given nested Sets | 1ms | -| ✔️ | returns false when given inequal set within a set | 0ms | -| ✔️ | returns false when given inequal map within a set | 5ms | -| ✔️ | returns false when given inequal set within a map | 0ms | -| ✔️ | returns true when given circular Set shape | 0ms | -| ✔️ | returns true when given circular key in Map | 1ms | -| ✔️ | returns true when given nested Maps | 0ms | -| ✔️ | returns true when given circular key and value in Map | 0ms | -| ✔️ | returns true when given circular value in Map | 0ms | - -## packages/jest-matcher-utils/src/__tests__/deepCyclicCopyReplaceable.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the same value for primitive or function values | 1ms | -| ✔️ | convert accessor descriptor into value descriptor | 1ms | -| ✔️ | shuold not skips non-enumerables | 0ms | -| ✔️ | copies symbols | 1ms | -| ✔️ | copies arrays as array objects | 0ms | -| ✔️ | handles cyclic dependencies | 1ms | -| ✔️ | Copy Map | 0ms | -| ✔️ | Copy cyclic Map | 0ms | -| ✔️ | return same value for built-in object type except array, map and object | 0ms | -| ✔️ | should copy object symbol key property | 0ms | -| ✔️ | should set writable, configurable to true | 1ms | - -## packages/expect/src/__tests__/isError.test.ts ✔️ - -### isError - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should not assume objects are errors | 1ms | -| ✔️ | should detect simple error instances | 0ms | -| ✔️ | should detect errors from another context | 12ms | -| ✔️ | should detect DOMException errors from another context | 7ms | - -## packages/jest-get-type/src/__tests__/isPrimitive.test.ts ✔️ - -### .isPrimitive() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns true when given primitive value of: null | 0ms | -| ✔️ | returns true when given primitive value of: undefined | 1ms | -| ✔️ | returns true when given primitive value of: 100 | 0ms | -| ✔️ | returns true when given primitive value of: hello world | 0ms | -| ✔️ | returns true when given primitive value of: true | 0ms | -| ✔️ | returns true when given primitive value of: Symbol(a) | 0ms | -| ✔️ | returns true when given primitive value of: 0 | 0ms | -| ✔️ | returns true when given primitive value of: NaN | 0ms | -| ✔️ | returns true when given primitive value of: Infinity | 0ms | -| ✔️ | returns true when given primitive value of: 1n | 0ms | -| ✔️ | returns false when given non primitive value of: {} | 0ms | -| ✔️ | returns false when given non primitive value of: [] | 0ms | -| ✔️ | returns false when given non primitive value of: undefined | 1ms | -| ✔️ | returns false when given non primitive value of: {} | 0ms | -| ✔️ | returns false when given non primitive value of: {} | 0ms | -| ✔️ | returns false when given non primitive value of: {} | 0ms | -| ✔️ | returns false when given non primitive value of: "2021-01-24T19:22:19.272Z" | 0ms | -| ✔️ | returns false when given non primitive value of: {} | 0ms | - -## packages/jest-haste-map/src/crawlers/__tests__/node.test.js ✔️ - -### node crawler - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | crawls for files based on patterns | 12ms | -| ✔️ | updates only changed files | 7ms | -| ✔️ | returns removed files | 13ms | -| ✔️ | uses node fs APIs with incompatible find binary | 9ms | -| ✔️ | uses node fs APIs without find binary | 8ms | -| ✔️ | uses node fs APIs if "forceNodeFilesystemAPI" is set to true, regardless of platform | 6ms | -| ✔️ | completes with empty roots | 0ms | -| ✔️ | completes with fs.readdir throwing an error | 11ms | - -### node crawler readdir withFileTypes support - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls lstat for directories and symlinks if readdir withFileTypes is not supported | 7ms | -| ✔️ | avoids calling lstat for directories and symlinks if readdir withFileTypes is supported | 8ms | - -## e2e/__tests__/onlyChanged.test.ts ❌ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | run for "onlyChanged" and "changedSince" | 1464ms | -| ✔️ | run only changed files | 5196ms | -| ✔️ | report test coverage for only changed files | 1889ms | -| ✔️ | report test coverage of source on test file change under only changed files | 822ms | -| ✔️ | do not pickup non-tested files when reporting coverage on only changed files | 861ms | -| ✔️ | collect test coverage when using onlyChanged | 1058ms | -| ✔️ | onlyChanged in config is overwritten by --all or testPathPattern | 7023ms | -| ❌ | gets changed files for hg | 3765ms | -| ✔️ | path on Windows is case-insensitive | 0ms | - -## packages/jest-diff/src/__tests__/joinAlignedDiffs.test.ts ✔️ - -### joinAlignedDiffsExpand - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | first line is empty common | 1ms | - -### joinAlignedDiffsNoExpand - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | patch 0 with context 1 and change at start and end | 0ms | -| ✔️ | patch 0 with context 5 and first line is empty common | 7ms | -| ✔️ | patch 1 with context 4 and last line is empty common | 0ms | -| ✔️ | patch 2 with context 3 | 1ms | -| ✔️ | patch 3 with context 2 and omit excess common at start | 0ms | - -## packages/jest-core/src/__tests__/SnapshotInteractiveMode.test.js ✔️ - -### SnapshotInteractiveMode - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is inactive at construction | 1ms | -| ✔️ | call to run process the first file | 1ms | -| ✔️ | call to abort | 11ms | -| ✔️ | call to reset | 1ms | -| ✔️ | press Q or ESC triggers an abort | 0ms | -| ✔️ | press ENTER trigger a run | 0ms | -| ✔️ | skip 1 test, then restart | 2ms | -| ✔️ | skip 1 test, then quit | 2ms | -| ✔️ | update 1 test, then finish and return | 1ms | -| ✔️ | skip 2 tests, then finish and restart | 1ms | -| ✔️ | update 2 tests, then finish and return | 1ms | -| ✔️ | update 1 test, skip 1 test, then finish and restart | 2ms | -| ✔️ | skip 1 test, update 1 test, then finish and restart | 2ms | - -## packages/jest-runtime/src/__tests__/Runtime-statics.test.js ✔️ - -### Runtime statics - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Runtime.createHasteMap passes correct ignore files to HasteMap | 2ms | -| ✔️ | Runtime.createHasteMap passes correct ignore files to HasteMap in watch mode | 1ms | - -## packages/jest-diff/src/__tests__/getAlignedDiffs.test.ts ✔️ - -### getAlignedDiffs lines - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | change preceding and following common | 1ms | -| ✔️ | common preceding and following change | 1ms | -| ✔️ | common at end when both current change lines are empty | 0ms | -| ✔️ | common between delete and insert | 0ms | -| ✔️ | common between insert and delete | 0ms | - -### getAlignedDiffs newline - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | delete only | 1ms | -| ✔️ | insert only | 0ms | -| ✔️ | delete with adjacent change | 0ms | -| ✔️ | insert with adjacent changes | 1ms | -| ✔️ | change from space | 0ms | -| ✔️ | change to space | 0ms | - -### getAlignedDiffs substrings first - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | common when both current change lines are empty | 1ms | -| ✔️ | common when either current change line is non-empty | 13ms | -| ✔️ | delete completes the current line | 0ms | -| ✔️ | insert completes the current line | 0ms | - -### getAlignedDiffs substrings middle - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is empty in delete between common | 0ms | -| ✔️ | is empty in insert at start | 1ms | -| ✔️ | is non-empty in delete at end | 0ms | -| ✔️ | is non-empty in insert between common | 1ms | - -### getAlignedDiffs substrings last - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is empty in delete at end | 0ms | -| ✔️ | is empty in insert at end | 1ms | -| ✔️ | is non-empty in common not at end | 0ms | - -### getAlignedDiffs strings - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | change at start and delete or insert at end | 1ms | -| ✔️ | delete or insert at start and change at end | 1ms | - -## packages/expect/src/__tests__/assertionCounts.test.ts ✔️ - -### .assertions() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not throw | 1ms | -| ✔️ | redeclares different assertion count | 1ms | -| ✔️ | expects no assertions | 0ms | - -### .hasAssertions() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not throw if there is an assertion | 0ms | -| ✔️ | throws if expected is not undefined | 1ms | -| ✔️ | hasAssertions not leaking to global state | 0ms | - -## packages/jest-haste-map/src/lib/__tests__/getPlatformExtension.test.js ✔️ - -### getPlatformExtension - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should get platform ext | 1ms | - -## packages/jest-haste-map/src/lib/__tests__/isRegExpSupported.test.js ✔️ - -### isRegExpSupported - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return true when passing valid regular expression | 0ms | -| ✔️ | should return false when passing an invalid regular expression | 1ms | - -## packages/expect/src/__tests__/stacktrace.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | stack trace points to correct location when using matchers | 4ms | -| ✔️ | stack trace points to correct location when using nested matchers | 21ms | -| ✔️ | stack trace points to correct location when throwing from a custom matcher | 0ms | - -## packages/jest-worker/src/__tests__/process-integration.test.js ✔️ - -### Jest Worker Integration - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls a single method from the worker | 3ms | -| ✔️ | distributes sequential calls across child processes | 3ms | -| ✔️ | schedules the task on the first available child processes if the scheduling policy is in-order | 15ms | -| ✔️ | distributes concurrent calls across child processes | 2ms | -| ✔️ | sticks parallel calls to children | 7ms | - -## packages/jest-core/src/lib/__tests__/isValidPath.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is valid when it is a file inside roots | 1ms | -| ✔️ | is not valid when it is a snapshot file | 0ms | -| ✔️ | is not valid when it is a file in the coverage dir | 1ms | - -## packages/jest-util/src/__tests__/errorWithStack.test.ts ✔️ - -### ErrorWithStack - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls Error.captureStackTrace with given callsite when capture exists | 2ms | - -## packages/jest-util/src/__tests__/isInteractive.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Returns true when running on interactive environment | 7ms | -| ✔️ | Returns false when running on a non-interactive environment | 1ms | - -## packages/jest-diff/src/__tests__/diffStringsRaw.test.ts ✔️ - -### diffStringsRaw - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | one-line with cleanup | 1ms | -| ✔️ | one-line without cleanup | 1ms | - -## packages/jest-util/src/__tests__/globsToMatcher.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works like micromatch with only positive globs | 1ms | -| ✔️ | works like micromatch with a mix of overlapping positive and negative globs | 1ms | -| ✔️ | works like micromatch with only negative globs | 1ms | -| ✔️ | works like micromatch with empty globs | 0ms | - -## packages/jest-core/src/__tests__/testSchedulerHelper.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | shouldRunInBand() - should return true for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return true for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return false for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return false for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return false for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return true for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return false for runInBand mode | 1ms | -| ✔️ | shouldRunInBand() - should return true for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return true for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return false for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return false for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return true for runInBand mode | 1ms | - -## packages/jest-util/src/__tests__/installCommonGlobals.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the passed object | 28ms | -| ✔️ | turns a V8 global object into a Node global object | 1ms | - -## packages/jest-haste-map/src/__tests__/get_mock_name.test.js ✔️ - -### getMockName - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | extracts mock name from file path | 0ms | - -## packages/jest-worker/src/__tests__/WorkerPool.test.js ✔️ - -### WorkerPool - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should create a ChildProcessWorker and send to it | 1ms | -| ✔️ | should create a NodeThreadWorker and send to it | 1ms | -| ✔️ | should avoid NodeThreadWorker if not passed enableWorkerThreads | 1ms | - -## packages/jest-haste-map/src/lib/__tests__/dependencyExtractor.test.js ✔️ - -### dependencyExtractor - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should not extract dependencies inside comments | 1ms | -| ✔️ | should not extract dependencies inside comments (windows line endings) | 0ms | -| ✔️ | should not extract dependencies inside comments (unicode line endings) | 1ms | -| ✔️ | should extract dependencies from `import` statements | 0ms | -| ✔️ | should extract dependencies from side-effect only `import` statements | 0ms | -| ✔️ | should not extract dependencies from `import type/typeof` statements | 1ms | -| ✔️ | should extract dependencies from `export` statements | 0ms | -| ✔️ | should extract dependencies from `export-from` statements | 0ms | -| ✔️ | should not extract dependencies from `export type/typeof` statements | 0ms | -| ✔️ | should extract dependencies from dynamic `import` calls | 1ms | -| ✔️ | should extract dependencies from `require` calls | 0ms | -| ✔️ | should extract dependencies from `jest.requireActual` calls | 0ms | -| ✔️ | should extract dependencies from `jest.requireMock` calls | 0ms | -| ✔️ | should extract dependencies from `jest.genMockFromModule` calls | 1ms | -| ✔️ | should extract dependencies from `jest.createMockFromModule` calls | 0ms | - -## packages/jest-haste-map/src/lib/__tests__/normalizePathSep.test.js ✔️ - -### normalizePathSep - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does nothing on posix | 1ms | -| ✔️ | replace slashes on windows | 1ms | - -## packages/jest-haste-map/src/lib/__tests__/fast_path.test.js ✔️ - -### fastPath.relative - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should get relative paths inside the root | 0ms | -| ✔️ | should get relative paths outside the root | 0ms | -| ✔️ | should get relative paths outside the root when start with same word | 1ms | - -### fastPath.resolve - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should get the absolute path for paths inside the root | 0ms | -| ✔️ | should get the absolute path for paths outside the root | 0ms | - -## packages/jest-core/src/__tests__/FailedTestsCache.test.js ✔️ - -### FailedTestsCache - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should filter tests | 1ms | - -## packages/jest-core/src/__tests__/getNoTestsFoundMessage.test.js ✔️ - -### getNoTestsFoundMessage - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns correct message when monitoring only failures | 1ms | -| ✔️ | returns correct message when monitoring only changed | 0ms | -| ✔️ | returns correct message with verbose option | 1ms | -| ✔️ | returns correct message without options | 0ms | -| ✔️ | returns correct message with passWithNoTests | 1ms | - -## packages/jest-core/src/__tests__/globals.test.ts ✔️ - -### Common globals - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | check process | 1ms | - -## packages/jest-core/src/lib/__tests__/logDebugMessages.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints the jest version | 1ms | -| ✔️ | prints the test framework name | 0ms | -| ✔️ | prints the config object | 1ms | - -## packages/jest-util/src/__tests__/isPromise.test.ts ✔️ - -### not a Promise: - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | undefined | 0ms | -| ✔️ | null | 0ms | -| ✔️ | true | 1ms | -| ✔️ | 42 | 0ms | -| ✔️ | "1337" | 0ms | -| ✔️ | Symbol() | 0ms | -| ✔️ | [] | 0ms | -| ✔️ | {} | 1ms | - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | a resolved Promise | 0ms | -| ✔️ | a rejected Promise | 0ms | - -## packages/jest-cli/src/init/__tests__/modifyPackageJson.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should remove jest config if exists | 1ms | -| ✔️ | should add test script when there are no scripts | 0ms | -| ✔️ | should add test script when there are scripts | 0ms | -| ✔️ | should not add test script when { shouldModifyScripts: false } | 0ms | - -## packages/expect/src/__tests__/symbolInObjects.test.ts ✔️ - -### Symbol in objects - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should compare objects with Symbol keys | 0ms | -| ✔️ | should compare objects with mixed keys and Symbol | 1ms | -| ✔️ | should compare objects with different Symbol keys | 0ms | - -## e2e/test-in-root/test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | stub | 1ms | - -## e2e/test-in-root/spec.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | stub | 1ms | - -## e2e/v8-coverage/empty-sourcemap/test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | dummy-test | 0ms | - -## packages/jest-matcher-utils/src/__tests__/deepCyclicCopyReplaceableDom.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should copy dom element | 2ms | -| ✔️ | should copy complex element | 3ms | - -## e2e/__tests__/nativeEsmTypescript.test.ts ✔️ - -### on node ^12.16.0 || >=13.7.0 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs TS test with native ESM | 923ms | - -## e2e/__tests__/coverageRemapping.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | maps code coverage against original source | 12660ms | - -## e2e/__tests__/globalTeardown.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | globalTeardown is triggered once after all test suites | 2025.9999999999998ms | -| ✔️ | jest throws an error when globalTeardown does not export a function | 1144ms | -| ✔️ | globalTeardown function gets jest config object as a parameter | 959ms | -| ✔️ | should call globalTeardown function of multiple projects | 1711ms | -| ✔️ | should not call a globalTeardown of a project if there are no tests to run from this project | 882ms | -| ✔️ | globalTeardown works with default export | 1045ms | -| ✔️ | globalTeardown throws with named export | 1041ms | - -## e2e/__tests__/multiProjectRunner.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | --listTests doesn't duplicate the test files | 445ms | -| ✔️ | can pass projects or global config | 3379ms | -| ✔️ | "No tests found" message for projects | 977ms | -| ✔️ | allows a single non-root project | 1215ms | -| ✔️ | allows a single non-root project | 751ms | -| ✔️ | correctly runs a single non-root project | 805ms | -| ✔️ | correctly runs a single non-root project | 839ms | -| ✔️ | projects can be workspaces with non-JS/JSON files | 1371ms | -| ✔️ | objects in project configuration | 869ms | -| ✔️ | allows a single project | 822ms | -| ✔️ | resolves projects and their properly | 1938ms | -| ✔️ | Does transform files with the corresponding project transformer | 737ms | - -### doesn't bleed module file extensions resolution with multiple workers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | external config files | 1025ms | -| ✔️ | inline config files | 1101ms | - -## e2e/__tests__/toMatchSnapshot.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | basic support | 3007ms | -| ✔️ | error thrown before snapshot | 2377ms | -| ✔️ | first snapshot fails, second passes | 1373ms | -| ✔️ | does not mark snapshots as obsolete in skipped tests | 1244ms | -| ✔️ | accepts custom snapshot name | 821ms | -| ✔️ | handles property matchers | 1917ms | -| ✔️ | handles invalid property matchers | 1906ms | -| ✔️ | handles property matchers with hint | 1752ms | -| ✔️ | handles property matchers with deep properties | 2528ms | - -## e2e/__tests__/detectOpenHandles.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints message about flag on slow tests | 1993ms | -| ✔️ | prints message about flag on forceExit | 678ms | -| ✔️ | prints out info about open handlers | 868ms | -| ✔️ | does not report promises | 728ms | -| ✔️ | prints out info about open handlers from inside tests | 903ms | - -### on node >=11.10.0 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not report ELD histograms | 729ms | - -### notify - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not report --notify flag | 789ms | - -### on node >=11 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not report timeouts using unref | 763ms | - -## e2e/__tests__/failures.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | not throwing Error objects | 4615ms | -| ✔️ | works with node assert | 854ms | -| ✔️ | works with assertions in separate files | 765ms | -| ✔️ | works with async failures | 983ms | -| ✔️ | works with snapshot failures | 782ms | -| ✔️ | works with snapshot failures with hint | 784ms | -| ✔️ | errors after test has completed | 782ms | - -## e2e/__tests__/console.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | console printing | 755ms | -| ✔️ | console printing with --verbose | 943ms | -| ✔️ | does not print to console with --silent | 855ms | -| ✔️ | respects --noStackTrace | 974ms | -| ✔️ | respects noStackTrace in config | 1008ms | -| ✔️ | the jsdom console is the same as the test console | 1429ms | -| ✔️ | does not error out when using winston | 2049ms | - -## e2e/__tests__/globals.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | basic test constructs | 762ms | -| ✔️ | interleaved describe and test children order | 704ms | -| ✔️ | skips | 685ms | -| ✔️ | only | 827ms | -| ✔️ | cannot have describe with no implementation | 682ms | -| ✔️ | cannot test with no implementation | 701ms | -| ✔️ | skips with expand arg | 683ms | -| ✔️ | only with expand arg | 701ms | -| ✔️ | cannot test with no implementation with expand arg | 663ms | -| ✔️ | function as descriptor | 752ms | - -## e2e/__tests__/coverageThreshold.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | exits with 1 if coverage threshold is not met | 963ms | -| ✔️ | exits with 1 if path threshold group is not found in coverage data | 962ms | -| ✔️ | exits with 0 if global threshold group is not found in coverage data | 847ms | -| ✔️ | excludes tests matched by path threshold groups from global group | 1174ms | -| ✔️ | file is matched by all path and glob threshold groups | 836ms | - -## e2e/__tests__/testPathPatternReporterMessage.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints a message with path pattern at the end | 3030ms | - -## e2e/__tests__/filter.test.ts ✔️ - -### Dynamic test filtering - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses the default JSON option | 1044ms | -| ✔️ | uses the CLI option | 786ms | -| ✔️ | ignores the filter if requested to do so | 880ms | -| ✔️ | throws when you return clowny stuff | 361ms | -| ✔️ | will call setup on filter before filtering | 1544ms | -| ✔️ | will print error when filter throws | 369ms | -| ✔️ | will return no results when setup hook throws | 354ms | - -## e2e/__tests__/selectProjects.test.ts ✔️ - -### Given a config with two named projects, first-project and second-project when Jest is started with `--selectProjects first-project` - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs the tests in the first project only | 1ms | -| ✔️ | prints that only first-project will run | 0ms | - -### Given a config with two named projects, first-project and second-project when Jest is started with `--selectProjects second-project` - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs the tests in the second project only | 1ms | -| ✔️ | prints that only second-project will run | 0ms | - -### Given a config with two named projects, first-project and second-project when Jest is started with `--selectProjects first-project second-project` - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs the tests in the first and second projects | 0ms | -| ✔️ | prints that both first-project and second-project will run | 1ms | - -### Given a config with two named projects, first-project and second-project when Jest is started without providing `--selectProjects` - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs the tests in the first and second projects | 1ms | -| ✔️ | does not print which projects are run | 0ms | - -### Given a config with two named projects, first-project and second-project when Jest is started with `--selectProjects third-project` - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fails | 0ms | -| ✔️ | prints that no project was found | 1ms | - -### Given a config with two projects, first-project and an unnamed project when Jest is started with `--selectProjects first-project` - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs the tests in the first project only | 1ms | -| ✔️ | prints that a project does not have a name | 0ms | -| ✔️ | prints that only first-project will run | 0ms | - -### Given a config with two projects, first-project and an unnamed project when Jest is started without providing `--selectProjects` - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs the tests in the first and second projects | 4ms | -| ✔️ | does not print that a project has no name | 0ms | - -### Given a config with two projects, first-project and an unnamed project when Jest is started with `--selectProjects third-project` - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fails | 1ms | -| ✔️ | prints that a project does not have a name | 0ms | -| ✔️ | prints that no project was found | 0ms | - -## e2e/__tests__/mockNames.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | suite without mock name, mock called | 872ms | -| ✔️ | suite without mock name, mock not called | 864ms | -| ✔️ | suite with mock name, expect mock not called | 755ms | -| ✔️ | suite with mock name, mock called, expect fail | 721ms | -| ✔️ | suite with mock name, mock called 5 times | 766ms | -| ✔️ | suite with mock name, mock not called 5 times, expect fail | 948ms | -| ✔️ | suite with mock name, mock called | 848ms | -| ✔️ | suite with mock name, mock not called | 948ms | - -## e2e/__tests__/stackTrace.test.ts ✔️ - -### Stack Trace - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints a stack trace for runtime errors | 958ms | -| ✔️ | does not print a stack trace for runtime errors when --noStackTrace is given | 606ms | -| ✔️ | prints a stack trace for matching errors | 714ms | -| ✔️ | does not print a stack trace for matching errors when --noStackTrace is given | 599ms | -| ✔️ | prints a stack trace for errors | 643ms | -| ✔️ | prints a stack trace for errors without message in stack trace | 602ms | -| ✔️ | does not print a stack trace for errors when --noStackTrace is given | 520ms | - -## e2e/__tests__/each.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with passing tests | 882ms | -| ✔️ | shows error message when not enough arguments are supplied to tests | 597ms | -| ✔️ | shows the correct errors in stderr when failing tests | 769ms | -| ✔️ | shows only the tests with .only as being ran | 653ms | -| ✔️ | shows only the tests without .skip as being ran | 612ms | -| ✔️ | runs only the describe.only.each tests | 562ms | -| ✔️ | formats args with pretty format when given %p | 580ms | - -## e2e/__tests__/toThrowErrorMatchingInlineSnapshot.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works fine when function throws error | 1138ms | -| ✔️ | updates existing snapshot | 844ms | -| ✔️ | cannot be used with .not | 680ms | -| ✔️ | should support rejecting promises | 808ms | - -## e2e/__tests__/watchModeNoAccess.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not re-run tests when only access time is modified | 4313ms | - -## e2e/__tests__/pnp.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | successfully runs the tests inside `pnp/` | 2547ms | - -## e2e/__tests__/declarationErrors.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | errors if describe returns a Promise | 781ms | -| ✔️ | errors if describe returns something | 709ms | -| ✔️ | errors if describe throws | 778ms | - -## e2e/__tests__/wrongEnv.test.ts ✔️ - -### Wrong globals for environment - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | print useful error for window | 736ms | -| ✔️ | print useful error for document | 533ms | -| ✔️ | print useful error for navigator | 606ms | -| ✔️ | print useful error for unref | 1301ms | -| ✔️ | print useful error when it explodes during evaluation | 659ms | - -## e2e/__tests__/setupFilesAfterEnvConfig.test.ts ✔️ - -### setupFilesAfterEnv - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | requires multiple setup files before each file in the suite | 1063ms | -| ✔️ | requires setup files *after* the test runners are required | 800ms | - -## e2e/__tests__/noTestsFound.test.ts ✔️ - -### No tests are found - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fails the test suite in standard situation | 488ms | -| ✔️ | doesn't fail the test suite if --passWithNoTests passed | 518ms | -| ✔️ | doesn't fail the test suite if using --lastCommit | 608ms | -| ✔️ | doesn't fail the test suite if using --onlyChanged | 565ms | -| ✔️ | doesn't fail the test suite if using --findRelatedTests | 505ms | - -## e2e/__tests__/customMatcherStackTrace.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with custom matchers | 873ms | -| ✔️ | custom async matchers | 623ms | - -## e2e/__tests__/nestedTestDefinitions.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | print correct error message with nested test definitions outside describe | 1354ms | -| ✔️ | print correct error message with nested test definitions inside describe | 1088ms | -| ✔️ | print correct message when nesting describe inside it | 1047ms | -| ✔️ | print correct message when nesting a hook inside it | 1027ms | - -## e2e/__tests__/autoClearMocks.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | suite with auto-clear | 801ms | -| ✔️ | suite without auto-clear | 837ms | - -## e2e/__tests__/forceExit.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | exits the process after test are done but before timers complete | 2157ms | - -## e2e/__tests__/testFailureExitCode.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | exits with a specified code when test fail | 2073ms | -| ✔️ | exits with a specified code when bailing from a failed test | 2188ms | - -## e2e/__tests__/promiseReject.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | | 905ms | - -## e2e/__tests__/timerResetMocks.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | run timers after resetAllMocks test | 944ms | -| ✔️ | run timers with resetMocks in config test | 814ms | - -## e2e/__tests__/testEnvironmentAsync.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | triggers setup/teardown hooks | 1422ms | - -## e2e/__tests__/resolveNoFileExtensions.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | show error message with matching files | 1064ms | -| ✔️ | show error message when no js moduleFileExtensions | 117ms | - -## e2e/__tests__/nestedEventLoop.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with nested event loops | 1392ms | - -## e2e/__tests__/useStderr.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | no tests found message is redirected to stderr | 1257ms | - -## e2e/__tests__/domDiffing.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should work without error | 1310ms | - -## e2e/__tests__/consoleAfterTeardown.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | console printing | 1301ms | - -## e2e/__tests__/testInRoot.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs tests in only test.js and spec.js | 944ms | - -## e2e/__tests__/requireMainIsolateModules.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | `require.main` on using `jest.isolateModules` should not be undefined | 867ms | - -## e2e/__tests__/clearCache.test.ts ✔️ - -### jest --clearCache - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | normal run results in cache directory being written | 792ms | -| ✔️ | clearCache results in deleted directory and exitCode 0 | 127ms | - -## e2e/__tests__/runtimeInternalModuleRegistry.test.ts ✔️ - -### Runtime Internal Module Registry - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | correctly makes use of internal module registry when requiring modules | 1150ms | - -## e2e/__tests__/resolveNodeModule.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resolve node module | 890ms | - -## e2e/__tests__/setImmediate.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | setImmediate | 859ms | - -## e2e/__tests__/emptySuiteError.test.ts ✔️ - -### JSON Reporter - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fails the test suite if it contains no tests | 824ms | - -## e2e/__tests__/badSourceMap.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | suite with test cases that contain malformed sourcemaps | 823ms | - -## e2e/__tests__/timerUseRealTimers.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | useRealTimers cancels "timers": "fake" for whole test file | 986ms | - -## e2e/__tests__/global-mutation.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | can redefine global | 1ms | - -## e2e/__tests__/runProgrammatically.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | run Jest programmatically cjs | 75ms | -| ✔️ | run Jest programmatically esm | 462ms | - -## e2e/__tests__/symbol.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Symbol deletion | 0ms | - -## e2e/__tests__/hasteMapMockChanged.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should not warn when a mock file changes | 298ms | - -## e2e/__tests__/existentRoots.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | error when rootDir does not exist | 109ms | -| ✔️ | error when rootDir is a file | 109ms | -| ✔️ | error when roots directory does not exist | 137ms | -| ✔️ | error when roots is a file | 129ms | - -## e2e/__tests__/doneInHooks.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | `done()` works properly in hooks | 819ms | - -## e2e/__tests__/testEnvironmentCircusAsync.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls asynchronous handleTestEvent in testEnvironment | 1458ms | - -## e2e/__tests__/moduleNameMapper.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | moduleNameMapper wrong configuration | 1030ms | -| ✔️ | moduleNameMapper wrong array configuration | 909ms | -| ✔️ | moduleNameMapper correct configuration | 913ms | -| ✔️ | moduleNameMapper correct configuration mocking module of absolute path | 1479ms | -| ✔️ | moduleNameMapper with mocking | 967ms | - -## e2e/__tests__/customReporters.test.ts ✔️ - -### Custom Reporters Integration - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | valid string format for adding reporters | 966ms | -| ✔️ | valid array format for adding reporters | 623ms | -| ✔️ | invalid format for adding reporters | 115ms | -| ✔️ | default reporters enabled | 620ms | -| ✔️ | TestReporter with all tests passing | 978ms | -| ✔️ | TestReporter with all tests failing | 1093ms | -| ✔️ | IncompleteReporter for flexibility | 801ms | -| ✔️ | reporters can be default exports | 792ms | -| ✔️ | prints reporter errors | 495ms | - -## e2e/__tests__/findRelatedFiles.test.ts ✔️ - -### --findRelatedTests flag - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs tests related to filename | 1324ms | -| ✔️ | runs tests related to uppercased filename on case-insensitive os | 1ms | -| ✔️ | runs tests related to filename with a custom dependency extractor | 1307ms | -| ✔️ | generates coverage report for filename | 2001.9999999999998ms | -| ✔️ | coverage configuration is applied correctly | 1516ms | - -## e2e/__tests__/env.test.ts ✔️ - -### Environment override - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses jsdom when specified | 1501ms | -| ✔️ | uses node as default from package.json | 1002ms | -| ✔️ | uses node when specified | 664ms | -| ✔️ | fails when the env is not available | 121ms | - -### Environment equivalent - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses jsdom | 1092ms | -| ✔️ | uses node | 731ms | - -## e2e/__tests__/globalSetup.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | globalSetup is triggered once before all test suites | 2384ms | -| ✔️ | jest throws an error when globalSetup does not export a function | 851ms | -| ✔️ | globalSetup function gets jest config object as a parameter | 918ms | -| ✔️ | should call globalSetup function of multiple projects | 1307ms | -| ✔️ | should not call a globalSetup of a project if there are no tests to run from this project | 1189ms | -| ✔️ | should not call any globalSetup if there are no tests to run | 792ms | -| ✔️ | globalSetup works with default export | 926ms | -| ✔️ | globalSetup throws with named export | 783ms | -| ✔️ | should not transpile the transformer | 718ms | -| ✔️ | should transform node_modules if configured by transformIgnorePatterns | 1165ms | - -## e2e/__tests__/workerForceExit.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints a warning if a worker is force exited | 2355ms | -| ✔️ | force exits a worker that fails to exit gracefully | 2319ms | - -## e2e/__tests__/babelPluginJestHoist.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | successfully runs the tests inside `babel-plugin-jest-hoist/` | 6179ms | - -## e2e/__tests__/coverageTransformInstrumented.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | code coverage for transform instrumented code | 4910ms | - -## e2e/__tests__/timeoutsLegacy.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not work on jest-circus | 2ms | -| ✖️ | exceeds the timeout set using jasmine.DEFAULT_TIMEOUT_INTERVAL | 0ms | -| ✖️ | does not exceed the timeout using jasmine.DEFAULT_TIMEOUT_INTERVAL | 0ms | -| ✖️ | can read and write jasmine.DEFAULT_TIMEOUT_INTERVAL | 0ms | - -## e2e/__tests__/asyncRegenerator.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | successfully transpiles async | 4040ms | - -## e2e/__tests__/toThrowErrorMatchingSnapshot.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works fine when function throws error | 790ms | -| ✔️ | throws the error if tested function didn't throw error | 713ms | -| ✔️ | accepts custom snapshot name | 653ms | -| ✔️ | cannot be used with .not | 644ms | -| ✔️ | should support rejecting promises | 647ms | - -## e2e/__tests__/testTodo.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with all statuses | 891ms | -| ✔️ | shows error messages when called with no arguments | 602ms | -| ✔️ | shows error messages when called with multiple arguments | 669ms | -| ✔️ | shows error messages when called with invalid argument | 624ms | -| ✔️ | shows todo messages when in verbose mode | 710ms | - -## e2e/__tests__/onlyFailuresNonWatch.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | onlyFailures flag works in non-watch mode | 2841ms | - -## e2e/__tests__/presets.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports json preset | 860ms | -| ✔️ | supports js preset | 956ms | - -## e2e/__tests__/expectAsyncMatcher.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with passing tests | 1173ms | -| ✔️ | shows the correct errors in stderr when failing tests | 760ms | - -## e2e/__tests__/transform.test.ts ✔️ - -### babel-jest - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs transpiled code | 2241ms | -| ✔️ | instruments only specific files and collects coverage | 2589ms | - -### babel-jest ignored - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | tells user to match ignored files | 940ms | - -### babel-jest with manual transformer - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs transpiled code | 1608ms | - -### no babel-jest - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fails with syntax error on flow types | 1343ms | -| ✔️ | instrumentation with no babel-jest | 1378ms | - -### custom transformer - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | proprocesses files | 673ms | -| ✔️ | instruments files | 706ms | - -### multiple-transformers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | transforms dependencies using specific transformers | 7383ms | - -### ecmascript-modules-support - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs transpiled code | 923ms | - -### transformer-config - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs transpiled code | 1636ms | -| ✔️ | instruments only specific files and collects coverage | 1588ms | - -### transformer caching - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not rerun transform within worker | 1033ms | - -### transform-environment - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should transform the environment | 1044ms | - -### transform-runner - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should transform runner | 795ms | - -### transform-testrunner - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should transform testRunner | 783ms | - -## e2e/__tests__/chaiAssertionLibrary.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | chai assertion errors should display properly | 1817ms | - -## e2e/__tests__/stackTraceSourceMapsWithCoverage.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | processes stack traces and code frames with source maps with coverage | 2394ms | - -## e2e/__tests__/customTestSequencers.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | run prioritySequence first sync | 933ms | -| ✔️ | run prioritySequence first async | 901ms | -| ✔️ | run failed tests async | 849ms | - -## e2e/__tests__/beforeAllFiltered.ts ✔️ - -### Correct BeforeAll run - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | ensures the BeforeAll of ignored suite is not run | 905ms | - -## e2e/__tests__/fakePromises.test.ts ✔️ - -### Fake promises - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be possible to resolve with fake timers using immediates | 901ms | -| ✔️ | should be possible to resolve with fake timers using asap | 780ms | - -## e2e/__tests__/stackTraceSourceMaps.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | processes stack traces and code frames with source maps | 2153ms | - -## e2e/__tests__/dynamicRequireDependencies.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | successfully runs tests with dynamic dependencies | 811ms | - -## e2e/__tests__/overrideGlobals.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | overriding native promise does not freeze Jest | 1116ms | -| ✔️ | has a duration even if time is faked | 859ms | - -## e2e/__tests__/executeTestsOnceInMpr.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Tests are executed only once even in an MPR | 908ms | - -## e2e/__tests__/moduleParentNullInTest.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | module.parent should be null in test files | 830ms | - -## e2e/__tests__/requireAfterTeardown.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints useful error for requires after test is done | 842ms | - -## e2e/__tests__/lifecycles.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | suite with invalid assertions in afterAll | 827ms | - -## e2e/__tests__/hasteMapSha1.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | exits the process after test are done but before timers complete | 187ms | - -## e2e/__tests__/json.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | JSON is available in the global scope | 1ms | -| ✔️ | JSON.parse creates objects from within this context | 0ms | - -## e2e/__tests__/testResultsProcessor.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | testNamePattern | 859ms | - -## e2e/__tests__/debug.test.ts ✔️ - -### jest --debug - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | outputs debugging info before running the test | 857ms | - -## e2e/__tests__/importedGlobals.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | imported globals | 1012ms | - -## e2e/__tests__/customResolver.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | use the custom resolver | 749ms | - -## e2e/__tests__/circularInequality.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | handles circular inequality properly | 1407ms | - -## e2e/__tests__/injectGlobals.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | globals are undefined if passed `false` from CLI | 876ms | -| ✔️ | globals are undefined if passed `false` from config | 918ms | - -## e2e/__tests__/skipBeforeAfterAll.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | correctly skip `beforeAll`s in skipped tests | 998ms | - -## e2e/__tests__/customInlineSnapshotMatchers.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with custom inline snapshot matchers | 2145ms | - -## e2e/__tests__/regexCharInPath.test.ts ✔️ - -### Regex Char In Path - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | parses paths containing regex chars correctly | 873ms | - -## e2e/__tests__/noTestFound.test.ts ✔️ - -### Coverage Report - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | outputs coverage report | 551ms | - -### File path not found in mulit-project scenario - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | outputs coverage report | 463ms | - -## e2e/__tests__/nativeEsm.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | test config is without transform | 133ms | - -### on node ^12.16.0 || >=13.7.0 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs test with native ESM | 690ms | - -### on node >=14.3.0 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✖️ | supports top-level await | 0ms | - -## e2e/__tests__/supportsDashedArgs.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with passing tests | 777ms | -| ✔️ | throws error for unknown dashed & camelcase args | 119ms | - -## e2e/__tests__/transformLinkedModules.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should transform linked modules | 734ms | - -## e2e/__tests__/testNamePattern.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | testNamePattern | 788ms | - -## e2e/__tests__/nativeAsyncMock.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | mocks async functions | 0ms | - -## e2e/__tests__/hasteMapSize.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | reports the correct file size | 83ms | -| ✔️ | updates the file size when a file changes | 217ms | - -## e2e/__tests__/circusDeclarationErrors.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defining tests and hooks asynchronously throws | 832ms | - -## e2e/__tests__/testEnvironmentCircus.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls testEnvironment handleTestEvent | 1456ms | - -## e2e/__tests__/callDoneTwice.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | `done()` should not be called more than once | 820ms | - -## e2e/__tests__/emptyDescribeWithHooks.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | hook in empty describe | 829ms | -| ✔️ | hook in describe with skipped test | 614ms | -| ✔️ | hook in empty nested describe | 680ms | -| ✔️ | multiple hooks in empty describe | 726ms | - -## e2e/__tests__/errorOnDeprecated.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not work on jest-circus | 4ms | -| ✖️ | fail.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.addMatchers.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.any.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.anything.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.arrayContaining.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.createSpy.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.objectContaining.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.stringMatching.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | pending.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | spyOn.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | spyOnProperty.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | defaultTimeoutInterval.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | fail.test.js errors when not in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.addMatchers.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.any.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.anything.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.arrayContaining.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.createSpy.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.objectContaining.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.stringMatching.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | pending.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | spyOn.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | spyOnProperty.test.js errors when not in errorOnDeprecated mode | 0ms | -| ✖️ | defaultTimeoutInterval.test.js passes when not in errorOnDeprecated mode | 0ms | - -## e2e/__tests__/testRetries.test.ts ✔️ - -### Test Retries - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | retries failed tests | 859ms | -| ✔️ | reporter shows more than 1 invocation if test is retried | 829ms | -| ✔️ | reporter shows 1 invocation if tests are not retried | 811ms | -| ✔️ | tests are not retried if beforeAll hook failure occurs | 706ms | - -## e2e/__tests__/jest.config.ts.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with jest.config.ts | 3356ms | -| ✔️ | works with tsconfig.json | 3224ms | -| ✔️ | traverses directory tree up until it finds jest.config | 3116ms | -| ✔️ | it does type check the config | 2278ms | -| ✔️ | invalid JS in jest.config.ts | 2200ms | - -## e2e/__tests__/coverageReport.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | outputs coverage report | 2076ms | -| ✔️ | collects coverage only from specified file | 1646ms | -| ✔️ | collects coverage only from multiple specified files | 1587ms | -| ✔️ | collects coverage only from specified files avoiding dependencies | 1173ms | -| ✔️ | json reporter printing with --coverage | 898ms | -| ✔️ | outputs coverage report as json | 1824ms | -| ✔️ | outputs coverage report when text is requested | 1872ms | -| ✔️ | outputs coverage report when text-summary is requested | 1850ms | -| ✔️ | outputs coverage report when text and text-summary is requested | 1827ms | -| ✔️ | does not output coverage report when html is requested | 2021ms | -| ✔️ | collects coverage from duplicate files avoiding shared cache | 2245ms | -| ✔️ | generates coverage when using the testRegex config param | 2300ms | - -## e2e/__tests__/toMatchInlineSnapshot.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | basic support | 4442ms | -| ✔️ | do not indent empty lines | 1940ms | -| ✔️ | handles property matchers | 3820ms | -| ✔️ | removes obsolete external snapshots | 3007ms | -| ✔️ | supports async matchers | 895ms | -| ✔️ | supports async tests | 1117ms | -| ✔️ | writes snapshots with non-literals in expect(...) | 897ms | -| ✔️ | handles mocking native modules prettier relies on | 1142ms | -| ✔️ | supports custom matchers | 2263ms | -| ✔️ | supports custom matchers with property matcher | 1950ms | -| ✔️ | multiple custom matchers and native matchers | 1385ms | -| ✔️ | indentation is correct in the presences of existing snapshots | 932ms | - -## examples/react-native/__tests__/intro.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | renders correctly | 478ms | -| ✔️ | renders the ActivityIndicator component | 106ms | -| ✔️ | renders the TextInput component | 2887ms | -| ✔️ | renders the FlatList component | 791ms | - -## e2e/__tests__/toMatchInlineSnapshotWithRetries.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with a single snapshot | 2009ms | -| ✔️ | works when a different assertion is failing | 600ms | -| ✔️ | works when multiple tests have snapshots but only one of them failed multiple times | 1640ms | - -## e2e/__tests__/timeouts.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | exceeds the timeout | 782ms | -| ✔️ | does not exceed the timeout | 664ms | -| ✔️ | exceeds the command line testTimeout | 1529ms | -| ✔️ | does not exceed the command line testTimeout | 856ms | - -## e2e/__tests__/toMatchSnapshotWithStringSerializer.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | empty external | 1636ms | -| ✔️ | empty internal ci false | 1213ms | -| ✔️ | undefined internal ci true | 598ms | - -## e2e/__tests__/jasmineAsync.test.ts ✔️ - -### async jasmine - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with beforeAll | 1317ms | -| ✔️ | works with beforeEach | 673ms | -| ✔️ | works with afterAll | 1151ms | -| ✔️ | works with afterEach | 638ms | -| ✔️ | works with fit | 936ms | -| ✔️ | works with xit | 738ms | -| ✔️ | throws when not a promise is returned | 670ms | -| ✔️ | tests async promise code | 10831ms | -| ✔️ | works with concurrent | 757ms | -| ✔️ | works with concurrent within a describe block when invoked with testNamePattern | 686ms | -| ✔️ | works with concurrent.each | 717ms | -| ✔️ | works with concurrent.only.each | 1171ms | -| ✔️ | doesn't execute more than 5 tests simultaneously | 976ms | -| ✔️ | async test fails | 6223ms | -| ✔️ | generator test | 688ms | - -## e2e/__tests__/config.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | config as JSON | 381ms | -| ✔️ | works with sane config JSON | 621ms | -| ✔️ | watchman config option is respected over default argv | 640ms | -| ✔️ | config from argv is respected with sane config JSON | 530ms | -| ✔️ | works with jsdom testEnvironmentOptions config JSON | 1558ms | -| ✔️ | negated flags override previous flags | 156ms | - -## e2e/__tests__/fatalWorkerError.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fails a test that terminates the worker with a fatal error | 3117ms | - -## e2e/__tests__/toMatchSnapshotWithRetries.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with a single snapshot | 2153ms | -| ✔️ | works when multiple tests have snapshots but only one of them failed multiple times | 2208ms | - -## e2e/__tests__/watchModePatterns.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | can press "p" to filter by file name | 1471ms | -| ✔️ | can press "t" to filter by test name | 1775ms | - -## e2e/__tests__/unexpectedToken.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | triggers unexpected token error message for non-JS assets | 980ms | -| ✔️ | triggers unexpected token error message for untranspiled node_modules | 794ms | -| ✔️ | does not trigger unexpected token error message for regular syntax errors | 1539ms | - -## e2e/__tests__/jestRequireMock.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | understands dependencies using jest.requireMock | 1909ms | - -## e2e/__tests__/typescriptCoverage.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | instruments and collects coverage for typescript files | 2830ms | - -## e2e/__tests__/jest.config.js.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with jest.config.js | 1016ms | -| ✔️ | traverses directory tree up until it finds jest.config | 882ms | -| ✔️ | invalid JS in jest.config.js | 135ms | - -## e2e/__tests__/requireMainResetModules.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | `require.main` on using `--resetModules='true'` should not be undefined | 970ms | -| ✔️ | `require.main` on using `jest.resetModules()` should not be undefined | 915ms | - -## e2e/__tests__/modernFakeTimers.test.ts ✔️ - -### modern implementation of fake timers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be possible to use modern implementation from config | 792ms | -| ✔️ | should be possible to use modern implementation from jest-object | 831ms | - -## e2e/__tests__/runTestsByPath.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs tests by exact path | 1938ms | - -## e2e/__tests__/testEnvironment.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | respects testEnvironment docblock | 1513ms | - -## e2e/__tests__/circusConcurrentEach.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with concurrent.each | 817ms | -| ✔️ | works with concurrent.only.each | 695ms | - -## e2e/__tests__/autoRestoreMocks.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | suite with auto-restore | 822ms | -| ✔️ | suite without auto-restore | 845ms | - -## e2e/__tests__/jsonReporter.test.ts ✔️ - -### JSON Reporter - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | writes test result to sum.result.json | 721ms | -| ✔️ | outputs coverage report | 698ms | - -## e2e/__tests__/autoResetMocks.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | suite with auto-reset | 801ms | -| ✔️ | suite without auto-reset | 827ms | - -## e2e/__tests__/focusedTests.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs only "it.only" tests | 834ms | - -## e2e/__tests__/watchModeOnlyFailed.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | can press "f" to run only failed tests | 1341ms | - -## e2e/__tests__/beforeEachQueue.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not work on jest-circus | 1ms | - -### Correct beforeEach order - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✖️ | ensures the correct order for beforeEach | 0ms | - -## e2e/__tests__/extraGlobals.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with injected globals | 962ms | - -## e2e/__tests__/snapshotSerializers.test.ts ✔️ - -### Snapshot serializers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | renders snapshot | 607ms | -| ✔️ | compares snapshots correctly | 1365ms | - -## e2e/__tests__/locationInResults.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to null for location | 836ms | -| ✔️ | adds correct location info when provided with flag | 859ms | - -## e2e/__tests__/consoleLogOutputWhenRunInBand.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints console.logs when run with forceExit | 726ms | - -## e2e/__tests__/dependencyClash.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not require project modules from inside node_modules | 723ms | - -## e2e/__tests__/coverageWithoutTransform.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | produces code coverage for uncovered files without transformer | 1020.9999999999999ms | - -## e2e/__tests__/cliHandlesExactFilenames.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | CLI accepts exact file names if matchers matched | 741ms | -| ✔️ | CLI skips exact file names if no matchers matched | 389ms | - -## e2e/__tests__/requireMainAfterCreateRequire.test.ts ✔️ - -### on node >=12.2.0 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | `require.main` not undefined after createRequire | 891ms | - -## e2e/__tests__/resetModules.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | jest.resetModules should not error when _isMockFunction is defined but not boolean | 883ms | - -## e2e/__tests__/watchModeUpdateSnapshot.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | can press "u" to update snapshots | 993ms | - -## e2e/__tests__/generatorMock.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | mock works with generator | 974ms | - -## e2e/__tests__/resolveGetPaths.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | require.resolve.paths | 1119ms | - -## e2e/__tests__/v8Coverage.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints coverage with missing sourcemaps | 1002.9999999999999ms | -| ✔️ | prints coverage with empty sourcemaps | 1338ms | - -## e2e/__tests__/resolveWithPaths.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | require.resolve with paths | 1117ms | - -## e2e/__tests__/logHeapUsage.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | logs memory usage | 830ms | - -## e2e/__tests__/requireMain.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | provides `require.main` set to test suite module | 1008.9999999999999ms | - -## e2e/__tests__/snapshotMockFs.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | store snapshot even if fs is mocked | 800ms | - -## e2e/__tests__/snapshot-unknown.test.ts ✔️ - -### Snapshot serializers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | renders snapshot | 798ms | - -## examples/angular/app.component.spec.ts ✔️ - -### AppComponent - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should create the app | 69ms | -| ✔️ | should have as title 'angular' | 28ms | -| ✔️ | should render title in a h1 tag | 115ms | - -## e2e/__tests__/stackTraceNoCaptureStackTrace.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints a usable stack trace even if no Error.captureStackTrace | 848ms | - -## e2e/__tests__/testNamePatternSkipped.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | testNamePattern skipped | 924ms | - -## e2e/__tests__/failureDetailsProperty.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | that the failureDetails property is set | 856ms | - -## e2e/__tests__/snapshotResolver.test.ts ✔️ - -### Custom snapshot resolver - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Resolves snapshot files using custom resolver | 735ms | - -## e2e/__tests__/processExit.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints stack trace pointing to process.exit call | 1012.9999999999999ms | - -## e2e/__tests__/nodePath.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports NODE_PATH | 833ms | - -## e2e/__tests__/verbose.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Verbose Reporter | 631ms | - -## e2e/__tests__/listTests.test.ts ✔️ - -### --listTests flag - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | causes tests to be printed in different lines | 478ms | -| ✔️ | causes tests to be printed out as JSON when using the --json flag | 404ms | - -## e2e/__tests__/createProcessObject.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | allows retrieving the current domain | 867ms | - -## examples/react-testing-library/__tests__/CheckboxWithLabel-test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | CheckboxWithLabel changes the text after click | 33ms | - -## examples/angular/shared/data.service.spec.ts ✔️ - -### Service: DataService - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should create service | 20ms | -| ✔️ | should return the right title | 8ms | - -## e2e/__tests__/environmentAfterTeardown.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints useful error for environment methods after test is done | 846ms | - -## e2e/__tests__/esmConfigFile.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | reads config from cjs file | 157ms | - -### on node ^12.17.0 || >=13.2.0 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | reads config from mjs file | 202ms | -| ✔️ | reads config from js file when package.json#type=module | 115ms | - -## examples/enzyme/__tests__/CheckboxWithLabel-test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | CheckboxWithLabel changes the text after click | 6ms | - -## examples/module-mock/__tests__/mock_per_test.js ✔️ - -### define mock per test - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses mocked module | 2ms | -| ✔️ | uses actual module | 10ms | - -## examples/mongodb/__test__/db.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should aggregate docs from collection | 10ms | - -## examples/snapshot/__tests__/link.react.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | renders correctly | 6ms | -| ✔️ | renders as an anchor when no page is set | 1ms | -| ✔️ | properly escapes quotes | 1ms | -| ✔️ | changes the class when hovered | 2ms | - -## examples/typescript/__tests__/CheckboxWithLabel-test.tsx ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | CheckboxWithLabel changes the text after click | 16ms | - -## examples/react/__tests__/CheckboxWithLabel-test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | CheckboxWithLabel changes the text after click | 17ms | - -## e2e/__tests__/showConfig.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | --showConfig outputs config info and exits | 144ms | - -## examples/snapshot/__tests__/clock.react.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | renders correctly | 2ms | - -## examples/timer/__tests__/infinite_timer_game.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | schedules a 10-second timer after 1 second | 26ms | - -## examples/jquery/__tests__/fetch_current_user.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls into $.ajax with the correct params | 73ms | -| ✔️ | calls the callback when $.ajax requests are finished | 10ms | - -## examples/jquery/__tests__/display_user.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | displays a user after a click | 71ms | - -## examples/timer/__tests__/timer_game.test.js ✔️ - -### timerGame - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | waits 1 second before ending the game | 8ms | -| ✔️ | calls the callback after 1 second via runAllTimers | 2ms | -| ✔️ | calls the callback after 1 second via advanceTimersByTime | 1ms | - -## examples/async/__tests__/user.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with resolves | 1ms | -| ✔️ | works with promises | 0ms | -| ✔️ | works with async/await | 0ms | -| ✔️ | works with async/await and resolves | 1ms | -| ✔️ | tests error with rejects | 0ms | -| ✔️ | tests error with promises | 0ms | -| ✔️ | tests error with async/await | 1ms | -| ✔️ | tests error with async/await and rejects | 0ms | - -## examples/automatic-mocks/__tests__/createMockFromModule.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | implementation created by automock | 1ms | -| ✔️ | implementation created by jest.createMockFromModule | 0ms | - -## examples/manual-mocks/__tests__/file_summarizer.test.js ✔️ - -### listFilesInDirectorySync - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | includes all files in the directory in the summary | 21ms | - -## examples/typescript/__tests__/calc.test.ts ✔️ - -### calc - mocks - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns result from subtract | 1ms | -| ✔️ | returns result from sum | 1ms | -| ✔️ | adds last result to memory | 0ms | -| ✔️ | subtracts last result to memory | 1ms | -| ✔️ | clears the memory | 1ms | -| ✔️ | throws an error when invalid Op is passed | 8ms | - -## examples/getting-started/sum.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | adds 1 + 2 to equal 3 | 0ms | - -## examples/angular/shared/sub.service.spec.ts ✔️ - -### Service: SubService - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should create service | 12ms | - -## examples/manual-mocks/__tests__/user.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | if orginal user model | 1ms | - -## examples/typescript/__tests__/sum-test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | adds 1 + 2 to equal 3 in TScript | 8ms | -| ✔️ | adds 1 + 2 to equal 3 in JavaScript | 9ms | - -## examples/automatic-mocks/__tests__/automock.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | if utils are mocked | 0ms | -| ✔️ | mocked implementation | 1ms | - -## examples/manual-mocks/__tests__/lodashMocking.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | if lodash head is mocked | 1ms | - -## examples/manual-mocks/__tests__/userMocked.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | if user model is mocked | 1ms | - -## examples/typescript/__tests__/sum.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | adds 1 + 2 to equal 3 in Typescript | 2ms | -| ✔️ | adds 1 + 2 to equal 3 in JavaScript | 1ms | - -## e2e/custom-test-sequencer/b.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | b | 0ms | - -## examples/typescript/__tests__/sub-test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | subtracts 5 - 1 to equal 4 in TypeScript | 1ms | - -## examples/module-mock/__tests__/full_mock.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does a full mock | 0ms | - -## e2e/__tests__/global.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | globals are properly defined | 0ms | - -## examples/automatic-mocks/__tests__/disableAutomocking.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | original implementation | 0ms | - -## e2e/timer-reset-mocks/after-reset-all-mocks/timerAndMock.test.js ✔️ - -### timers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should work before calling resetAllMocks | 1ms | -| ✔️ | should not break after calling resetAllMocks | 1ms | - -## e2e/__tests__/requireV8Module.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | v8 module | 1ms | - -## e2e/timer-reset-mocks/with-reset-mocks/timerWithMock.test.js ✔️ - -### timers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should work before calling resetAllMocks | 0ms | - -## examples/module-mock/__tests__/partial_mock.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does a partial mock | 1ms | - -## e2e/custom-test-sequencer/d.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | d | 0ms | - -## e2e/custom-test-sequencer/a.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | a | 0ms | - -## e2e/custom-test-sequencer/e.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | e | 0ms | - -## e2e/custom-test-sequencer/c.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | c | 0ms | +| ✔️ | gets hg SCM roots and dedupes them | 559ms | +| ✔️ | gets git SCM roots and dedupes them | 416ms | +| ✔️ | gets mixed git and hg SCM roots and dedupes them | 467ms | +| ✔️ | gets changed files for git | 2298ms | +| ✔️ | monitors only root paths for git | 151ms | +| ✔️ | does not find changes in files with no diff, for git | 628ms | +| ✔️ | handles a bad revision for "changedSince", for git | 878ms | +| ❌ | gets changed files for hg | 2219ms | +| ✔️ | monitors only root paths for hg | 281ms | +| ✔️ | handles a bad revision for "changedSince", for hg | 949ms | -## e2e/__tests__/asyncAndCallback.test.ts ✔️ +## e2e/__tests__/onlyChanged.test.ts ❌ | Result | Test | Time | | :---: | :--- | ---: | -| ✔️ | errors when a test both returns a promise and takes a callback | 704ms | +| ✔️ | run for "onlyChanged" and "changedSince" | 1464ms | +| ✔️ | run only changed files | 5196ms | +| ✔️ | report test coverage for only changed files | 1889ms | +| ✔️ | report test coverage of source on test file change under only changed files | 822ms | +| ✔️ | do not pickup non-tested files when reporting coverage on only changed files | 861ms | +| ✔️ | collect test coverage when using onlyChanged | 1058ms | +| ✔️ | onlyChanged in config is overwritten by --all or testPathPattern | 7023ms | +| ❌ | gets changed files for hg | 3765ms | +| ✔️ | path on Windows is case-insensitive | 0ms | diff --git a/__tests__/__snapshots__/dart-json.test.ts.snap b/__tests__/__snapshots__/dart-json.test.ts.snap index 8f8a78c..365de10 100644 --- a/__tests__/__snapshots__/dart-json.test.ts.snap +++ b/__tests__/__snapshots__/dart-json.test.ts.snap @@ -52,47 +52,75 @@ dart:isolate _RawReceivePortImpl._handleMessage "title": "[test\\\\second_test.dart] Timeout test", }, ], - "summary": "![Tests failed](https://img.shields.io/badge/tests-1%20passed%2C%201%20skipped%2C%204%20failed-critical) - -### fixtures/dart-json.json - -**6** tests were completed in **3.760s** with **1** passed, **1** skipped and **4** failed. - -| Result | Suite | Tests | Time | Passed ✔️ | Skipped ✖️ | Failed ❌ | -| :---: | :--- | ---: | ---: | ---: | ---: | ---: | -| ❌ | [test\\\\main_test.dart](#ts-0-test-maintest-dart) | 4 | 74ms | 1 | 0 | 3 | -| ❌ | [test\\\\second_test.dart](#ts-1-test-secondtest-dart) | 2 | 51ms | 0 | 1 | 1 | - -# Test Suites - -## test\\\\main_test.dart ❌ - -### Test 1 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Test 1 Passing test | 36ms | - -### Test 1 Test 1.1 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ❌ | Test 1 Test 1.1 Failing test | 20ms | -| ❌ | Test 1 Test 1.1 Exception in target unit | 6ms | - -### Test 2 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ❌ | Test 2 Exception in test | 12ms | - -## test\\\\second_test.dart ❌ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ❌ | Timeout test | 37ms | -| ✖️ | Skipped test | 14ms | -", - "title": "Dart tests ❌", + "testRuns": Array [ + TestRunResult { + "path": "fixtures/dart-json.json", + "suites": Array [ + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Test 1", + "tests": Array [ + TestCaseResult { + "name": "Test 1 Passing test", + "result": "success", + "time": 36, + }, + ], + }, + TestGroupResult { + "name": "Test 1 Test 1.1", + "tests": Array [ + TestCaseResult { + "name": "Test 1 Test 1.1 Failing test", + "result": "failed", + "time": 20, + }, + TestCaseResult { + "name": "Test 1 Test 1.1 Exception in target unit", + "result": "failed", + "time": 6, + }, + ], + }, + TestGroupResult { + "name": "Test 2", + "tests": Array [ + TestCaseResult { + "name": "Test 2 Exception in test", + "result": "failed", + "time": 12, + }, + ], + }, + ], + "name": "test\\\\main_test.dart", + "totalTime": undefined, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": null, + "tests": Array [ + TestCaseResult { + "name": "Timeout test", + "result": "failed", + "time": 37, + }, + TestCaseResult { + "name": "Skipped test", + "result": "skipped", + "time": 14, + }, + ], + }, + ], + "name": "test\\\\second_test.dart", + "totalTime": undefined, + }, + ], + "totalTime": 3760, + }, + ], } `; diff --git a/__tests__/__snapshots__/dotnet-trx.test.ts.snap b/__tests__/__snapshots__/dotnet-trx.test.ts.snap index c2da75e..e5fdf80 100644 --- a/__tests__/__snapshots__/dotnet-trx.test.ts.snap +++ b/__tests__/__snapshots__/dotnet-trx.test.ts.snap @@ -30,30 +30,59 @@ Actual: 2", "title": "[DotnetTests.XUnitTests.CalculatorTests] Failing_Test", }, ], - "summary": "![Tests failed](https://img.shields.io/badge/tests-3%20passed%2C%201%20skipped%2C%203%20failed-critical) - -### fixtures/dotnet-trx.trx - -**7** tests were completed in **1.061s** with **3** passed, **1** skipped and **3** failed. - -| Result | Suite | Tests | Time | Passed ✔️ | Skipped ✖️ | Failed ❌ | -| :---: | :--- | ---: | ---: | ---: | ---: | ---: | -| ❌ | [DotnetTests.XUnitTests.CalculatorTests](#ts-0-DotnetTests-XUnitTests-CalculatorTests) | 7 | 109.5761ms | 3 | 1 | 3 | - -# Test Suites - -## DotnetTests.XUnitTests.CalculatorTests ❌ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ❌ | Exception_In_TargetTest | 0.4975ms | -| ❌ | Exception_In_Test | 2.2728ms | -| ❌ | Failing_Test | 3.2953ms | -| ✔️ | Passing_Test | 0.1254ms | -| ✔️ | Passing_Test_With_Name | 0.103ms | -| ✖️ | Skipped_Test | 1ms | -| ✔️ | Timeout_Test | 102.2821ms | -", - "title": "Dotnet TRX tests ❌", + "testRuns": Array [ + TestRunResult { + "path": "fixtures/dotnet-trx.trx", + "suites": Array [ + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": null, + "tests": Array [ + TestCaseResult { + "name": "Exception_In_TargetTest", + "result": "failed", + "time": 0.4975, + }, + TestCaseResult { + "name": "Exception_In_Test", + "result": "failed", + "time": 2.2728, + }, + TestCaseResult { + "name": "Failing_Test", + "result": "failed", + "time": 3.2953, + }, + TestCaseResult { + "name": "Passing_Test", + "result": "success", + "time": 0.1254, + }, + TestCaseResult { + "name": "Passing_Test_With_Name", + "result": "success", + "time": 0.103, + }, + TestCaseResult { + "name": "Skipped_Test", + "result": "skipped", + "time": 1, + }, + TestCaseResult { + "name": "Timeout_Test", + "result": "success", + "time": 102.2821, + }, + ], + }, + ], + "name": "DotnetTests.XUnitTests.CalculatorTests", + "totalTime": undefined, + }, + ], + "totalTime": 1061, + }, + ], } `; diff --git a/__tests__/__snapshots__/jest-junit.test.ts.snap b/__tests__/__snapshots__/jest-junit.test.ts.snap index f337b3e..675763e 100644 --- a/__tests__/__snapshots__/jest-junit.test.ts.snap +++ b/__tests__/__snapshots__/jest-junit.test.ts.snap @@ -73,48 +73,76 @@ Received: false "title": "[__tests__\\\\second.test.js] Timeout test", }, ], - "summary": "![Tests failed](https://img.shields.io/badge/tests-1%20passed%2C%201%20skipped%2C%204%20failed-critical) - -### fixtures/jest-junit.xml - -**6** tests were completed in **1.360s** with **1** passed, **1** skipped and **4** failed. - -| Result | Suite | Tests | Time | Passed ✔️ | Skipped ✖️ | Failed ❌ | -| :---: | :--- | ---: | ---: | ---: | ---: | ---: | -| ❌ | [__tests__\\\\main.test.js](#ts-0-tests-main-test-js) | 4 | 486ms | 1 | 0 | 3 | -| ❌ | [__tests__\\\\second.test.js](#ts-1-tests-second-test-js) | 2 | 82ms | 0 | 1 | 1 | - -# Test Suites - -## __tests__\\\\main.test.js ❌ - -### Test 1 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Passing test | 1ms | - -### Test 1 › Test 1.1 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ❌ | Failing test | 2ms | -| ❌ | Exception in target unit | 0ms | - -### Test 2 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ❌ | Exception in test | 0ms | - -## __tests__\\\\second.test.js ❌ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ❌ | Timeout test | 4ms | -| ✖️ | Skipped test | 0ms | -", - "title": "jest tests ❌", + "testRuns": Array [ + TestRunResult { + "path": "fixtures/jest-junit.xml", + "suites": Array [ + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Test 1", + "tests": Array [ + TestCaseResult { + "name": "Passing test", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "Test 1 › Test 1.1", + "tests": Array [ + TestCaseResult { + "name": "Failing test", + "result": "failed", + "time": 2, + }, + TestCaseResult { + "name": "Exception in target unit", + "result": "failed", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "Test 2", + "tests": Array [ + TestCaseResult { + "name": "Exception in test", + "result": "failed", + "time": 0, + }, + ], + }, + ], + "name": "__tests__\\\\main.test.js", + "totalTime": 486, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "Timeout test", + "result": "failed", + "time": 4, + }, + TestCaseResult { + "name": "Skipped test", + "result": "skipped", + "time": 0, + }, + ], + }, + ], + "name": "__tests__\\\\second.test.js", + "totalTime": 82, + }, + ], + "totalTime": 1360, + }, + ], } `; @@ -164,9182 +192,27820 @@ Received string: \\"· "title": "[e2e/__tests__/onlyChanged.test.ts] gets changed files for hg", }, ], - "summary": "![Tests failed](https://img.shields.io/badge/tests-4207%20passed%2C%2030%20skipped%2C%202%20failed-critical) - -### fixtures/external/jest/jest-test-results.xml - -**4239** tests were completed in **165.872s** with **4207** passed, **30** skipped and **2** failed. - -| Result | Suite | Tests | Time | Passed ✔️ | Skipped ✖️ | Failed ❌ | -| :---: | :--- | ---: | ---: | ---: | ---: | ---: | -| ✔️ | [packages/jest-config/src/__tests__/normalize.test.js](#ts-0-packages-jest-config-src-tests-normalize-test-js) | 118 | 798ms | 118 | 0 | 0 | -| ✔️ | [packages/jest-repl/src/__tests__/jest_repl.test.js](#ts-1-packages-jest-repl-src-tests-jestrepl-test-js) | 1 | 1172ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-snapshot/src/__tests__/printSnapshot.test.ts](#ts-2-packages-jest-snapshot-src-tests-printSnapshot-test-ts) | 71 | 1188ms | 71 | 0 | 0 | -| ✔️ | [packages/jest-config/src/__tests__/Defaults.test.ts](#ts-3-packages-jest-config-src-tests-Defaults-test-ts) | 1 | 672ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-resolve/src/__tests__/resolve.test.ts](#ts-4-packages-jest-resolve-src-tests-resolve-test-ts) | 16 | 1308ms | 16 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/matchers-toEqual.property.test.ts](#ts-5-packages-expect-src-tests-matchers-toEqual-property-test-ts) | 2 | 1062ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/SummaryReporter.test.js](#ts-6-packages-jest-reporters-src-tests-SummaryReporter-test-js) | 4 | 366ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-config/src/__tests__/readConfigs.test.ts](#ts-7-packages-jest-config-src-tests-readConfigs-test-ts) | 3 | 135ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/generateEmptyCoverage.test.js](#ts-8-packages-jest-reporters-src-tests-generateEmptyCoverage-test-js) | 3 | 1129ms | 3 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/asymmetricMatchers.test.ts](#ts-9-packages-expect-src-tests-asymmetricMatchers-test-ts) | 38 | 207ms | 38 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/CoverageReporter.test.js](#ts-10-packages-jest-reporters-src-tests-CoverageReporter-test-js) | 12 | 397ms | 12 | 0 | 0 | -| ✔️ | [packages/jest-snapshot/src/__tests__/InlineSnapshots.test.ts](#ts-11-packages-jest-snapshot-src-tests-InlineSnapshots-test-ts) | 22 | 1149ms | 22 | 0 | 0 | -| ✔️ | [packages/jest-config/src/__tests__/readConfig.test.ts](#ts-12-packages-jest-config-src-tests-readConfig-test-ts) | 1 | 76ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-watcher/src/lib/__tests__/scroll.test.ts](#ts-13-packages-jest-watcher-src-lib-tests-scroll-test-ts) | 5 | 57ms | 5 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/toThrowMatchers.test.ts](#ts-14-packages-expect-src-tests-toThrowMatchers-test-ts) | 98 | 257ms | 98 | 0 | 0 | -| ✔️ | [packages/jest-validate/src/__tests__/validate.test.ts](#ts-15-packages-jest-validate-src-tests-validate-test-ts) | 23 | 283ms | 23 | 0 | 0 | -| ✔️ | [packages/jest-snapshot/src/__tests__/SnapshotResolver.test.ts](#ts-16-packages-jest-snapshot-src-tests-SnapshotResolver-test-ts) | 10 | 98ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/CoverageWorker.test.js](#ts-17-packages-jest-reporters-src-tests-CoverageWorker-test-js) | 2 | 199ms | 2 | 0 | 0 | -| ✔️ | [packages/babel-jest/src/__tests__/index.ts](#ts-18-packages-babel-jest-src-tests-index-ts) | 6 | 371ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-config/src/__tests__/resolveConfigPath.test.ts](#ts-19-packages-jest-config-src-tests-resolveConfigPath-test-ts) | 10 | 183ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/VerboseReporter.test.js](#ts-20-packages-jest-reporters-src-tests-VerboseReporter-test-js) | 11 | 425ms | 11 | 0 | 0 | -| ✔️ | [packages/jest-snapshot/src/__tests__/utils.test.ts](#ts-21-packages-jest-snapshot-src-tests-utils-test-ts) | 26 | 214ms | 26 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/NotifyReporter.test.ts](#ts-22-packages-jest-reporters-src-tests-NotifyReporter-test-ts) | 18 | 166ms | 18 | 0 | 0 | -| ✔️ | [packages/jest-repl/src/__tests__/runtime_cli.test.js](#ts-23-packages-jest-repl-src-tests-runtimecli-test-js) | 4 | 4094.0000000000005ms | 4 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/extend.test.ts](#ts-24-packages-expect-src-tests-extend-test-ts) | 10 | 99ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-source-map/src/__tests__/getCallsite.test.ts](#ts-25-packages-jest-source-map-src-tests-getCallsite-test-ts) | 3 | 86ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-config/src/__tests__/setFromArgv.test.ts](#ts-26-packages-jest-config-src-tests-setFromArgv-test-ts) | 4 | 53ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-watcher/src/lib/__tests__/prompt.test.ts](#ts-27-packages-jest-watcher-src-lib-tests-prompt-test-ts) | 3 | 91ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-docblock/src/__tests__/index.test.ts](#ts-28-packages-jest-docblock-src-tests-index-test-ts) | 36 | 177ms | 36 | 0 | 0 | -| ✔️ | [packages/jest-snapshot/src/__tests__/dedentLines.test.ts](#ts-29-packages-jest-snapshot-src-tests-dedentLines-test-ts) | 17 | 94ms | 17 | 0 | 0 | -| ✔️ | [packages/jest-config/src/__tests__/getMaxWorkers.test.ts](#ts-30-packages-jest-config-src-tests-getMaxWorkers-test-ts) | 7 | 67ms | 7 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/utils.test.ts](#ts-31-packages-jest-reporters-src-tests-utils-test-ts) | 10 | 85ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-snapshot/src/__tests__/throwMatcher.test.ts](#ts-32-packages-jest-snapshot-src-tests-throwMatcher-test-ts) | 3 | 481ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-snapshot/src/__tests__/matcher.test.ts](#ts-33-packages-jest-snapshot-src-tests-matcher-test-ts) | 1 | 131ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-config/src/__tests__/validatePattern.test.ts](#ts-34-packages-jest-config-src-tests-validatePattern-test-ts) | 4 | 52ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-resolve/src/__tests__/isBuiltinModule.test.ts](#ts-35-packages-jest-resolve-src-tests-isBuiltinModule-test-ts) | 4 | 36ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-globals/src/__tests__/index.ts](#ts-36-packages-jest-globals-src-tests-index-ts) | 1 | 533ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-regex-util/src/__tests__/index.test.ts](#ts-37-packages-jest-regex-util-src-tests-index-test-ts) | 8 | 56ms | 8 | 0 | 0 | -| ✔️ | [packages/jest-snapshot/src/__tests__/mockSerializer.test.ts](#ts-38-packages-jest-snapshot-src-tests-mockSerializer-test-ts) | 10 | 45ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/getWatermarks.test.ts](#ts-39-packages-jest-reporters-src-tests-getWatermarks-test-ts) | 2 | 37ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/DefaultReporter.test.js](#ts-40-packages-jest-reporters-src-tests-DefaultReporter-test-js) | 2 | 148ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/getResultHeader.test.js](#ts-41-packages-jest-reporters-src-tests-getResultHeader-test-js) | 4 | 30ms | 4 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/toEqual-dom.test.ts](#ts-42-packages-expect-src-tests-toEqual-dom-test-ts) | 12 | 99ms | 12 | 0 | 0 | -| ✔️ | [packages/jest-environment-node/src/__tests__/node_environment.test.ts](#ts-43-packages-jest-environment-node-src-tests-nodeenvironment-test-ts) | 6 | 184ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/getSnapshotStatus.test.js](#ts-44-packages-jest-reporters-src-tests-getSnapshotStatus-test-js) | 3 | 28ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-validate/src/__tests__/validateCLIOptions.test.js](#ts-45-packages-jest-validate-src-tests-validateCLIOptions-test-js) | 6 | 83ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-reporters/src/__tests__/getSnapshotSummary.test.js](#ts-46-packages-jest-reporters-src-tests-getSnapshotSummary-test-js) | 4 | 49ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-watcher/src/lib/__tests__/formatTestNameByPattern.test.ts](#ts-47-packages-jest-watcher-src-lib-tests-formatTestNameByPattern-test-ts) | 11 | 129ms | 11 | 0 | 0 | -| ✔️ | [packages/jest-transform/src/__tests__/shouldInstrument.test.ts](#ts-48-packages-jest-transform-src-tests-shouldInstrument-test-ts) | 25 | 155ms | 25 | 0 | 0 | -| ✔️ | [packages/jest-transform/src/__tests__/ScriptTransformer.test.ts](#ts-49-packages-jest-transform-src-tests-ScriptTransformer-test-ts) | 22 | 1660ms | 22 | 0 | 0 | -| ✔️ | [packages/jest-circus/src/__tests__/baseTest.test.ts](#ts-50-packages-jest-circus-src-tests-baseTest-test-ts) | 2 | 2902ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-mock/src/__tests__/index.test.ts](#ts-51-packages-jest-mock-src-tests-index-test-ts) | 84 | 509ms | 84 | 0 | 0 | -| ✔️ | [packages/jest-circus/src/__tests__/hooks.test.ts](#ts-52-packages-jest-circus-src-tests-hooks-test-ts) | 3 | 3762ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_module.test.js](#ts-53-packages-jest-runtime-src-tests-runtimerequiremodule-test-js) | 27 | 2439ms | 27 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_mock.test.js](#ts-54-packages-jest-runtime-src-tests-runtimemock-test-js) | 4 | 743ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-circus/src/__tests__/circusItTestError.test.ts](#ts-55-packages-jest-circus-src-tests-circusItTestError-test-ts) | 8 | 300ms | 8 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/base/__tests__/BaseWorkerPool.test.js](#ts-56-packages-jest-worker-src-base-tests-BaseWorkerPool-test-js) | 11 | 653ms | 11 | 0 | 0 | -| ✔️ | [packages/pretty-format/src/__tests__/Immutable.test.ts](#ts-57-packages-pretty-format-src-tests-Immutable-test-ts) | 111 | 443ms | 111 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/Runtime-sourceMaps.test.js](#ts-58-packages-jest-runtime-src-tests-Runtime-sourceMaps-test-js) | 1 | 584ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-environment-jsdom/src/__tests__/jsdom_environment.test.ts](#ts-59-packages-jest-environment-jsdom-src-tests-jsdomenvironment-test-ts) | 2 | 783ms | 2 | 0 | 0 | -| ✔️ | [packages/babel-plugin-jest-hoist/src/__tests__/hoistPlugin.test.ts](#ts-60-packages-babel-plugin-jest-hoist-src-tests-hoistPlugin-test-ts) | 4 | 347ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/workers/__tests__/ChildProcessWorker.test.js](#ts-61-packages-jest-worker-src-workers-tests-ChildProcessWorker-test-js) | 17 | 184ms | 17 | 0 | 0 | -| ✔️ | [packages/jest-each/src/__tests__/array.test.ts](#ts-62-packages-jest-each-src-tests-array-test-ts) | 159 | 192ms | 159 | 0 | 0 | -| ✔️ | [packages/jest-each/src/__tests__/template.test.ts](#ts-63-packages-jest-each-src-tests-template-test-ts) | 242 | 483ms | 242 | 0 | 0 | -| ✔️ | [packages/pretty-format/src/__tests__/react.test.tsx](#ts-64-packages-pretty-format-src-tests-react-test-tsx) | 55 | 325ms | 55 | 0 | 0 | -| ✔️ | [packages/jest-circus/src/__tests__/afterAll.test.ts](#ts-65-packages-jest-circus-src-tests-afterAll-test-ts) | 6 | 5755ms | 6 | 0 | 0 | -| ✔️ | [packages/pretty-format/src/__tests__/prettyFormat.test.ts](#ts-66-packages-pretty-format-src-tests-prettyFormat-test-ts) | 86 | 219ms | 86 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/__tests__/Farm.test.js](#ts-67-packages-jest-worker-src-tests-Farm-test-js) | 10 | 158ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/workers/__tests__/threadChild.test.js](#ts-68-packages-jest-worker-src-workers-tests-threadChild-test-js) | 10 | 120ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/queueRunner.test.ts](#ts-69-packages-jest-jasmine2-src-tests-queueRunner-test-ts) | 6 | 93ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/workers/__tests__/NodeThreadsWorker.test.js](#ts-70-packages-jest-worker-src-workers-tests-NodeThreadsWorker-test-js) | 15 | 258ms | 15 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/workers/__tests__/processChild.test.js](#ts-71-packages-jest-worker-src-workers-tests-processChild-test-js) | 10 | 135ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-runner/src/__tests__/testRunner.test.ts](#ts-72-packages-jest-runner-src-tests-testRunner-test-ts) | 2 | 905ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-circus/src/__tests__/hooksError.test.ts](#ts-73-packages-jest-circus-src-tests-hooksError-test-ts) | 32 | 127ms | 32 | 0 | 0 | -| ✔️ | [packages/jest-serializer/src/__tests__/index.test.ts](#ts-74-packages-jest-serializer-src-tests-index-test-ts) | 17 | 158ms | 17 | 0 | 0 | -| ✔️ | [packages/jest-console/src/__tests__/bufferedConsole.test.ts](#ts-75-packages-jest-console-src-tests-bufferedConsole-test-ts) | 20 | 171ms | 20 | 0 | 0 | -| ✔️ | [packages/jest-console/src/__tests__/CustomConsole.test.ts](#ts-76-packages-jest-console-src-tests-CustomConsole-test-ts) | 23 | 115ms | 23 | 0 | 0 | -| ✔️ | [packages/pretty-format/src/__tests__/DOMCollection.test.ts](#ts-77-packages-pretty-format-src-tests-DOMCollection-test-ts) | 10 | 64ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-circus/src/__tests__/circusItTodoTestError.test.ts](#ts-78-packages-jest-circus-src-tests-circusItTodoTestError-test-ts) | 3 | 81ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-test-sequencer/src/__tests__/test_sequencer.test.js](#ts-79-packages-jest-test-sequencer-src-tests-testsequencer-test-js) | 8 | 251ms | 8 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/Suite.test.ts](#ts-80-packages-jest-jasmine2-src-tests-Suite-test-ts) | 1 | 84ms | 1 | 0 | 0 | -| ✔️ | [packages/pretty-format/src/__tests__/AsymmetricMatcher.test.ts](#ts-81-packages-pretty-format-src-tests-AsymmetricMatcher-test-ts) | 38 | 137ms | 38 | 0 | 0 | -| ✔️ | [packages/pretty-format/src/__tests__/ConvertAnsi.test.ts](#ts-82-packages-pretty-format-src-tests-ConvertAnsi-test-ts) | 6 | 43ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-console/src/__tests__/getConsoleOutput.test.ts](#ts-83-packages-jest-console-src-tests-getConsoleOutput-test-ts) | 12 | 56ms | 12 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/expectationResultFactory.test.ts](#ts-84-packages-jest-jasmine2-src-tests-expectationResultFactory-test-ts) | 7 | 70ms | 7 | 0 | 0 | -| ✔️ | [packages/jest-each/src/__tests__/index.test.ts](#ts-85-packages-jest-each-src-tests-index-test-ts) | 10 | 44ms | 10 | 0 | 0 | -| ✔️ | [packages/pretty-format/src/__tests__/DOMElement.test.ts](#ts-86-packages-pretty-format-src-tests-DOMElement-test-ts) | 28 | 148ms | 28 | 0 | 0 | -| ✔️ | [packages/jest-test-result/src/__tests__/formatTestResults.test.ts](#ts-87-packages-jest-test-result-src-tests-formatTestResults-test-ts) | 1 | 53ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/__tests__/index.test.js](#ts-88-packages-jest-worker-src-tests-index-test-js) | 8 | 230ms | 8 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/hooksError.test.ts](#ts-89-packages-jest-jasmine2-src-tests-hooksError-test-ts) | 32 | 51ms | 32 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/reporter.test.ts](#ts-90-packages-jest-jasmine2-src-tests-reporter-test-ts) | 1 | 107ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/todoError.test.ts](#ts-91-packages-jest-jasmine2-src-tests-todoError-test-ts) | 3 | 27ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/itTestError.test.ts](#ts-92-packages-jest-jasmine2-src-tests-itTestError-test-ts) | 6 | 32ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/iterators.test.ts](#ts-93-packages-jest-jasmine2-src-tests-iterators-test-ts) | 4 | 43ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/pTimeout.test.ts](#ts-94-packages-jest-jasmine2-src-tests-pTimeout-test-ts) | 3 | 44ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-create-cache-key-function/src/__tests__/index.test.ts](#ts-95-packages-jest-create-cache-key-function-src-tests-index-test-ts) | 1 | 75ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/concurrent.test.ts](#ts-96-packages-jest-jasmine2-src-tests-concurrent-test-ts) | 3 | 24ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-jasmine2/src/__tests__/itToTestAlias.test.ts](#ts-97-packages-jest-jasmine2-src-tests-itToTestAlias-test-ts) | 1 | 23ms | 1 | 0 | 0 | -| ✔️ | [packages/pretty-format/src/__tests__/ReactElement.test.ts](#ts-98-packages-pretty-format-src-tests-ReactElement-test-ts) | 3 | 64ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/__tests__/FifoQueue.test.js](#ts-99-packages-jest-worker-src-tests-FifoQueue-test-js) | 3 | 48ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/__tests__/PriorityQueue.test.js](#ts-100-packages-jest-worker-src-tests-PriorityQueue-test-js) | 5 | 63ms | 5 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/SearchSource.test.ts](#ts-101-packages-jest-core-src-tests-SearchSource-test-ts) | 27 | 2596ms | 27 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/matchers.test.js](#ts-102-packages-expect-src-tests-matchers-test-js) | 592 | 862ms | 592 | 0 | 0 | -| ✔️ | [e2e/__tests__/jestRequireActual.test.ts](#ts-103-e2e-tests-jestRequireActual-test-ts) | 1 | 1665ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/watch.test.js](#ts-104-packages-jest-core-src-tests-watch-test-js) | 80 | 6755ms | 80 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_module_or_mock_transitive_deps.test.js](#ts-105-packages-jest-runtime-src-tests-runtimerequiremoduleormocktransitivedeps-test-js) | 6 | 2366ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/watchFileChanges.test.ts](#ts-106-packages-jest-core-src-tests-watchFileChanges-test-ts) | 1 | 1514ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/__tests__/index.test.js](#ts-107-packages-jest-haste-map-src-tests-index-test-js) | 44 | 1145ms | 44 | 0 | 0 | -| ✔️ | [e2e/__tests__/coverageHandlebars.test.ts](#ts-108-e2e-tests-coverageHandlebars-test-ts) | 1 | 1873ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/compareDomNodes.test.ts](#ts-109-e2e-tests-compareDomNodes-test-ts) | 1 | 1407ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/jestEnvironmentJsdom.test.ts](#ts-110-e2e-tests-jestEnvironmentJsdom-test-ts) | 1 | 1744ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/resolve.test.ts](#ts-111-e2e-tests-resolve-test-ts) | 1 | 1863ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/snapshot.test.ts](#ts-112-e2e-tests-snapshot-test-ts) | 9 | 13899ms | 9 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_module_or_mock.test.js](#ts-113-packages-jest-runtime-src-tests-runtimerequiremoduleormock-test-js) | 17 | 1223ms | 17 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_mock.test.js](#ts-114-packages-jest-runtime-src-tests-runtimerequiremock-test-js) | 13 | 962ms | 13 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_node_path.test.js](#ts-115-packages-jest-runtime-src-tests-runtimenodepath-test-js) | 4 | 1088ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_resolve.test.ts](#ts-116-packages-jest-runtime-src-tests-runtimerequireresolve-test-ts) | 5 | 707ms | 5 | 0 | 0 | -| ✔️ | [packages/jest-leak-detector/src/__tests__/index.test.ts](#ts-117-packages-jest-leak-detector-src-tests-index-test-ts) | 6 | 986ms | 6 | 0 | 0 | -| ✔️ | [e2e/__tests__/jasmineAsyncWithPendingDuringTest.ts](#ts-118-e2e-tests-jasmineAsyncWithPendingDuringTest-ts) | 2 | 72ms | 1 | 1 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/TestScheduler.test.js](#ts-119-packages-jest-core-src-tests-TestScheduler-test-js) | 8 | 520ms | 8 | 0 | 0 | -| ✔️ | [e2e/__tests__/expectInVm.test.ts](#ts-120-e2e-tests-expectInVm-test-ts) | 1 | 1527ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_actual.test.js](#ts-121-packages-jest-runtime-src-tests-runtimerequireactual-test-js) | 2 | 478ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_cache.test.js](#ts-122-packages-jest-runtime-src-tests-runtimerequirecache-test-js) | 2 | 454ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_module_directories.test.js](#ts-123-packages-jest-runtime-src-tests-runtimemoduledirectories-test-js) | 4 | 525ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_internal_module.test.js](#ts-124-packages-jest-runtime-src-tests-runtimeinternalmodule-test-js) | 4 | 727ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-cli/src/__tests__/cli/args.test.ts](#ts-125-packages-jest-cli-src-tests-cli-args-test-ts) | 17 | 345ms | 17 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_jest_spy_on.test.js](#ts-126-packages-jest-runtime-src-tests-runtimejestspyon-test-js) | 2 | 521ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-resolve-dependencies/src/__tests__/dependency_resolver.test.ts](#ts-127-packages-jest-resolve-dependencies-src-tests-dependencyresolver-test-ts) | 11 | 666ms | 11 | 0 | 0 | -| ✔️ | [packages/jest-message-util/src/__tests__/messages.test.ts](#ts-128-packages-jest-message-util-src-tests-messages-test-ts) | 11 | 205ms | 11 | 0 | 0 | -| ✔️ | [packages/jest-diff/src/__tests__/diff.test.ts](#ts-129-packages-jest-diff-src-tests-diff-test-ts) | 107 | 625ms | 107 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/watchTestNamePatternMode.test.js](#ts-130-packages-jest-core-src-tests-watchTestNamePatternMode-test-js) | 1 | 246ms | 1 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/spyMatchers.test.ts](#ts-131-packages-expect-src-tests-spyMatchers-test-ts) | 248 | 395ms | 248 | 0 | 0 | -| ❌ | [e2e/__tests__/jestChangedFiles.test.ts](#ts-132-e2e-tests-jestChangedFiles-test-ts) | 10 | 9045ms | 9 | 0 | 1 | -| ✔️ | [packages/jest-matcher-utils/src/__tests__/index.test.ts](#ts-133-packages-jest-matcher-utils-src-tests-index-test-ts) | 48 | 391ms | 48 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/watchFilenamePatternMode.test.js](#ts-134-packages-jest-core-src-tests-watchFilenamePatternMode-test-js) | 2 | 165ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_create_mock_from_module.test.js](#ts-135-packages-jest-runtime-src-tests-runtimecreatemockfrommodule-test-js) | 3 | 606ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_environment.test.js](#ts-136-packages-jest-runtime-src-tests-runtimeenvironment-test-js) | 2 | 497ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/__tests__/includes_dotfiles.test.ts](#ts-137-packages-jest-haste-map-src-tests-includesdotfiles-test-ts) | 1 | 337ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/crawlers/__tests__/watchman.test.js](#ts-138-packages-jest-haste-map-src-crawlers-tests-watchman-test-js) | 8 | 153ms | 8 | 0 | 0 | -| ✔️ | [packages/jest-fake-timers/src/__tests__/legacyFakeTimers.test.ts](#ts-139-packages-jest-fake-timers-src-tests-legacyFakeTimers-test-ts) | 50 | 302ms | 50 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_jest_fn.js](#ts-140-packages-jest-runtime-src-tests-runtimejestfn-js) | 4 | 479ms | 4 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/matchers-toStrictEqual.property.test.ts](#ts-141-packages-expect-src-tests-matchers-toStrictEqual-property-test-ts) | 3 | 394ms | 3 | 0 | 0 | -| ✔️ | [packages/diff-sequences/src/__tests__/index.property.test.ts](#ts-142-packages-diff-sequences-src-tests-index-property-test-ts) | 7 | 357ms | 7 | 0 | 0 | -| ✔️ | [packages/jest-fake-timers/src/__tests__/modernFakeTimers.test.ts](#ts-143-packages-jest-fake-timers-src-tests-modernFakeTimers-test-ts) | 40 | 317ms | 40 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/matchers-toContain.property.test.ts](#ts-144-packages-expect-src-tests-matchers-toContain-property-test-ts) | 2 | 236ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_wrap.js](#ts-145-packages-jest-runtime-src-tests-runtimewrap-js) | 2 | 263ms | 2 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/matchers-toContainEqual.property.test.ts](#ts-146-packages-expect-src-tests-matchers-toContainEqual-property-test-ts) | 2 | 287ms | 2 | 0 | 0 | -| ✔️ | [packages/diff-sequences/src/__tests__/index.test.ts](#ts-147-packages-diff-sequences-src-tests-index-test-ts) | 48 | 195ms | 48 | 0 | 0 | -| ✔️ | [packages/jest-get-type/src/__tests__/getType.test.ts](#ts-148-packages-jest-get-type-src-tests-getType-test-ts) | 14 | 45ms | 14 | 0 | 0 | -| ✔️ | [packages/jest-cli/src/init/__tests__/init.test.js](#ts-149-packages-jest-cli-src-init-tests-init-test-js) | 24 | 119ms | 24 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/runtime_require_module_no_ext.test.js](#ts-150-packages-jest-runtime-src-tests-runtimerequiremodulenoext-test-js) | 1 | 261ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-util/src/__tests__/deepCyclicCopy.test.ts](#ts-151-packages-jest-util-src-tests-deepCyclicCopy-test-ts) | 12 | 86ms | 12 | 0 | 0 | -| ✔️ | [e2e/__tests__/version.test.ts](#ts-152-e2e-tests-version-test-ts) | 1 | 138ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-util/src/__tests__/createProcessObject.test.ts](#ts-153-packages-jest-util-src-tests-createProcessObject-test-ts) | 4 | 81ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/instrumentation.test.ts](#ts-154-packages-jest-runtime-src-tests-instrumentation-test-ts) | 1 | 275ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/runJest.test.js](#ts-155-packages-jest-core-src-tests-runJest-test-js) | 2 | 261ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-matcher-utils/src/__tests__/Replaceable.test.ts](#ts-156-packages-jest-matcher-utils-src-tests-Replaceable-test-ts) | 17 | 111ms | 17 | 0 | 0 | -| ✔️ | [packages/jest-util/src/__tests__/formatTime.test.ts](#ts-157-packages-jest-util-src-tests-formatTime-test-ts) | 11 | 82ms | 11 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/__tests__/thread-integration.test.js](#ts-158-packages-jest-worker-src-tests-thread-integration-test-js) | 6 | 114ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/__tests__/worker.test.js](#ts-159-packages-jest-haste-map-src-tests-worker-test-js) | 7 | 100ms | 7 | 0 | 0 | -| ✔️ | [packages/jest-matcher-utils/src/__tests__/printDiffOrStringify.test.ts](#ts-160-packages-jest-matcher-utils-src-tests-printDiffOrStringify-test-ts) | 21 | 114ms | 21 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/utils.test.ts](#ts-161-packages-expect-src-tests-utils-test-ts) | 41 | 147ms | 41 | 0 | 0 | -| ✔️ | [packages/jest-matcher-utils/src/__tests__/deepCyclicCopyReplaceable.test.ts](#ts-162-packages-jest-matcher-utils-src-tests-deepCyclicCopyReplaceable-test-ts) | 11 | 49ms | 11 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/isError.test.ts](#ts-163-packages-expect-src-tests-isError-test-ts) | 4 | 43ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-get-type/src/__tests__/isPrimitive.test.ts](#ts-164-packages-jest-get-type-src-tests-isPrimitive-test-ts) | 18 | 36ms | 18 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/crawlers/__tests__/node.test.js](#ts-165-packages-jest-haste-map-src-crawlers-tests-node-test-js) | 10 | 170ms | 10 | 0 | 0 | -| ❌ | [e2e/__tests__/onlyChanged.test.ts](#ts-166-e2e-tests-onlyChanged-test-ts) | 9 | 22281ms | 8 | 0 | 1 | -| ✔️ | [packages/jest-diff/src/__tests__/joinAlignedDiffs.test.ts](#ts-167-packages-jest-diff-src-tests-joinAlignedDiffs-test-ts) | 6 | 44ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/SnapshotInteractiveMode.test.js](#ts-168-packages-jest-core-src-tests-SnapshotInteractiveMode-test-js) | 13 | 89ms | 13 | 0 | 0 | -| ✔️ | [packages/jest-runtime/src/__tests__/Runtime-statics.test.js](#ts-169-packages-jest-runtime-src-tests-Runtime-statics-test-js) | 2 | 162ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-diff/src/__tests__/getAlignedDiffs.test.ts](#ts-170-packages-jest-diff-src-tests-getAlignedDiffs-test-ts) | 24 | 72ms | 24 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/assertionCounts.test.ts](#ts-171-packages-expect-src-tests-assertionCounts-test-ts) | 6 | 60ms | 6 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/lib/__tests__/getPlatformExtension.test.js](#ts-172-packages-jest-haste-map-src-lib-tests-getPlatformExtension-test-js) | 1 | 35ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/lib/__tests__/isRegExpSupported.test.js](#ts-173-packages-jest-haste-map-src-lib-tests-isRegExpSupported-test-js) | 2 | 31ms | 2 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/stacktrace.test.ts](#ts-174-packages-expect-src-tests-stacktrace-test-ts) | 3 | 69ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/__tests__/process-integration.test.js](#ts-175-packages-jest-worker-src-tests-process-integration-test-js) | 5 | 62ms | 5 | 0 | 0 | -| ✔️ | [packages/jest-core/src/lib/__tests__/isValidPath.test.ts](#ts-176-packages-jest-core-src-lib-tests-isValidPath-test-ts) | 3 | 166ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-util/src/__tests__/errorWithStack.test.ts](#ts-177-packages-jest-util-src-tests-errorWithStack-test-ts) | 1 | 41ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-util/src/__tests__/isInteractive.test.ts](#ts-178-packages-jest-util-src-tests-isInteractive-test-ts) | 2 | 35ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-diff/src/__tests__/diffStringsRaw.test.ts](#ts-179-packages-jest-diff-src-tests-diffStringsRaw-test-ts) | 2 | 55ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-util/src/__tests__/globsToMatcher.test.ts](#ts-180-packages-jest-util-src-tests-globsToMatcher-test-ts) | 4 | 56ms | 4 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/testSchedulerHelper.test.js](#ts-181-packages-jest-core-src-tests-testSchedulerHelper-test-js) | 12 | 48ms | 12 | 0 | 0 | -| ✔️ | [packages/jest-util/src/__tests__/installCommonGlobals.test.ts](#ts-182-packages-jest-util-src-tests-installCommonGlobals-test-ts) | 2 | 68ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/__tests__/get_mock_name.test.js](#ts-183-packages-jest-haste-map-src-tests-getmockname-test-js) | 1 | 22ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-worker/src/__tests__/WorkerPool.test.js](#ts-184-packages-jest-worker-src-tests-WorkerPool-test-js) | 3 | 51ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/lib/__tests__/dependencyExtractor.test.js](#ts-185-packages-jest-haste-map-src-lib-tests-dependencyExtractor-test-js) | 15 | 56ms | 15 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/lib/__tests__/normalizePathSep.test.js](#ts-186-packages-jest-haste-map-src-lib-tests-normalizePathSep-test-js) | 2 | 35ms | 2 | 0 | 0 | -| ✔️ | [packages/jest-haste-map/src/lib/__tests__/fast_path.test.js](#ts-187-packages-jest-haste-map-src-lib-tests-fastpath-test-js) | 5 | 29ms | 5 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/FailedTestsCache.test.js](#ts-188-packages-jest-core-src-tests-FailedTestsCache-test-js) | 1 | 25ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/getNoTestsFoundMessage.test.js](#ts-189-packages-jest-core-src-tests-getNoTestsFoundMessage-test-js) | 5 | 61ms | 5 | 0 | 0 | -| ✔️ | [packages/jest-core/src/__tests__/globals.test.ts](#ts-190-packages-jest-core-src-tests-globals-test-ts) | 1 | 22ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-core/src/lib/__tests__/logDebugMessages.test.ts](#ts-191-packages-jest-core-src-lib-tests-logDebugMessages-test-ts) | 3 | 48ms | 3 | 0 | 0 | -| ✔️ | [packages/jest-util/src/__tests__/isPromise.test.ts](#ts-192-packages-jest-util-src-tests-isPromise-test-ts) | 10 | 30ms | 10 | 0 | 0 | -| ✔️ | [packages/jest-cli/src/init/__tests__/modifyPackageJson.test.ts](#ts-193-packages-jest-cli-src-init-tests-modifyPackageJson-test-ts) | 4 | 30ms | 4 | 0 | 0 | -| ✔️ | [packages/expect/src/__tests__/symbolInObjects.test.ts](#ts-194-packages-expect-src-tests-symbolInObjects-test-ts) | 3 | 33ms | 3 | 0 | 0 | -| ✔️ | [e2e/test-in-root/test.js](#ts-195-e2e-test-in-root-test-js) | 1 | 37ms | 1 | 0 | 0 | -| ✔️ | [e2e/test-in-root/spec.js](#ts-196-e2e-test-in-root-spec-js) | 1 | 19ms | 1 | 0 | 0 | -| ✔️ | [e2e/v8-coverage/empty-sourcemap/test.ts](#ts-197-e2e-v8-coverage-empty-sourcemap-test-ts) | 1 | 31ms | 1 | 0 | 0 | -| ✔️ | [packages/jest-matcher-utils/src/__tests__/deepCyclicCopyReplaceableDom.test.ts](#ts-198-packages-jest-matcher-utils-src-tests-deepCyclicCopyReplaceableDom-test-ts) | 2 | 48ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/nativeEsmTypescript.test.ts](#ts-199-e2e-tests-nativeEsmTypescript-test-ts) | 1 | 956ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/coverageRemapping.test.ts](#ts-200-e2e-tests-coverageRemapping-test-ts) | 1 | 12701ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/globalTeardown.test.ts](#ts-201-e2e-tests-globalTeardown-test-ts) | 7 | 11886ms | 7 | 0 | 0 | -| ✔️ | [e2e/__tests__/multiProjectRunner.test.ts](#ts-202-e2e-tests-multiProjectRunner-test-ts) | 14 | 16360ms | 14 | 0 | 0 | -| ✔️ | [e2e/__tests__/toMatchSnapshot.test.ts](#ts-203-e2e-tests-toMatchSnapshot-test-ts) | 9 | 17025ms | 9 | 0 | 0 | -| ✔️ | [e2e/__tests__/detectOpenHandles.ts](#ts-204-e2e-tests-detectOpenHandles-ts) | 8 | 7528ms | 8 | 0 | 0 | -| ✔️ | [e2e/__tests__/failures.test.ts](#ts-205-e2e-tests-failures-test-ts) | 7 | 10353ms | 7 | 0 | 0 | -| ✔️ | [e2e/__tests__/console.test.ts](#ts-206-e2e-tests-console-test-ts) | 7 | 8071.999999999999ms | 7 | 0 | 0 | -| ✔️ | [e2e/__tests__/globals.test.ts](#ts-207-e2e-tests-globals-test-ts) | 10 | 7505ms | 10 | 0 | 0 | -| ✔️ | [e2e/__tests__/coverageThreshold.test.ts](#ts-208-e2e-tests-coverageThreshold-test-ts) | 5 | 4868ms | 5 | 0 | 0 | -| ✔️ | [e2e/__tests__/testPathPatternReporterMessage.test.ts](#ts-209-e2e-tests-testPathPatternReporterMessage-test-ts) | 1 | 3076ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/filter.test.ts](#ts-210-e2e-tests-filter-test-ts) | 7 | 5422ms | 7 | 0 | 0 | -| ✔️ | [e2e/__tests__/selectProjects.test.ts](#ts-211-e2e-tests-selectProjects-test-ts) | 18 | 5236ms | 18 | 0 | 0 | -| ✔️ | [e2e/__tests__/mockNames.test.ts](#ts-212-e2e-tests-mockNames-test-ts) | 8 | 6771ms | 8 | 0 | 0 | -| ✔️ | [e2e/__tests__/stackTrace.test.ts](#ts-213-e2e-tests-stackTrace-test-ts) | 7 | 4725ms | 7 | 0 | 0 | -| ✔️ | [e2e/__tests__/each.test.ts](#ts-214-e2e-tests-each-test-ts) | 7 | 4721ms | 7 | 0 | 0 | -| ✔️ | [e2e/__tests__/toThrowErrorMatchingInlineSnapshot.test.ts](#ts-215-e2e-tests-toThrowErrorMatchingInlineSnapshot-test-ts) | 4 | 3562ms | 4 | 0 | 0 | -| ✔️ | [e2e/__tests__/watchModeNoAccess.test.ts](#ts-216-e2e-tests-watchModeNoAccess-test-ts) | 1 | 4370ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/pnp.test.ts](#ts-217-e2e-tests-pnp-test-ts) | 1 | 2715ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/declarationErrors.test.ts](#ts-218-e2e-tests-declarationErrors-test-ts) | 3 | 2389ms | 3 | 0 | 0 | -| ✔️ | [e2e/__tests__/wrongEnv.test.ts](#ts-219-e2e-tests-wrongEnv-test-ts) | 5 | 3877ms | 5 | 0 | 0 | -| ✔️ | [e2e/__tests__/setupFilesAfterEnvConfig.test.ts](#ts-220-e2e-tests-setupFilesAfterEnvConfig-test-ts) | 2 | 1967ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/noTestsFound.test.ts](#ts-221-e2e-tests-noTestsFound-test-ts) | 5 | 2739ms | 5 | 0 | 0 | -| ✔️ | [e2e/__tests__/customMatcherStackTrace.test.ts](#ts-222-e2e-tests-customMatcherStackTrace-test-ts) | 2 | 1539ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/nestedTestDefinitions.test.ts](#ts-223-e2e-tests-nestedTestDefinitions-test-ts) | 4 | 4641ms | 4 | 0 | 0 | -| ✔️ | [e2e/__tests__/autoClearMocks.test.ts](#ts-224-e2e-tests-autoClearMocks-test-ts) | 2 | 1681ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/forceExit.test.ts](#ts-225-e2e-tests-forceExit-test-ts) | 1 | 2208ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/testFailureExitCode.test.ts](#ts-226-e2e-tests-testFailureExitCode-test-ts) | 2 | 4476ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/promiseReject.test.ts](#ts-227-e2e-tests-promiseReject-test-ts) | 1 | 967ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/timerResetMocks.test.ts](#ts-228-e2e-tests-timerResetMocks-test-ts) | 2 | 1878ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/testEnvironmentAsync.test.ts](#ts-229-e2e-tests-testEnvironmentAsync-test-ts) | 1 | 1493ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/resolveNoFileExtensions.test.ts](#ts-230-e2e-tests-resolveNoFileExtensions-test-ts) | 2 | 1263ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/nestedEventLoop.test.ts](#ts-231-e2e-tests-nestedEventLoop-test-ts) | 1 | 1422ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/useStderr.test.ts](#ts-232-e2e-tests-useStderr-test-ts) | 1 | 1352ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/domDiffing.test.ts](#ts-233-e2e-tests-domDiffing-test-ts) | 1 | 1361ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/consoleAfterTeardown.test.ts](#ts-234-e2e-tests-consoleAfterTeardown-test-ts) | 1 | 1341ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/testInRoot.test.ts](#ts-235-e2e-tests-testInRoot-test-ts) | 1 | 1008.9999999999999ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/requireMainIsolateModules.test.ts](#ts-236-e2e-tests-requireMainIsolateModules-test-ts) | 1 | 976ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/clearCache.test.ts](#ts-237-e2e-tests-clearCache-test-ts) | 2 | 1004ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/runtimeInternalModuleRegistry.test.ts](#ts-238-e2e-tests-runtimeInternalModuleRegistry-test-ts) | 1 | 1202ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/resolveNodeModule.test.ts](#ts-239-e2e-tests-resolveNodeModule-test-ts) | 1 | 943ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/setImmediate.test.ts](#ts-240-e2e-tests-setImmediate-test-ts) | 1 | 904ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/emptySuiteError.test.ts](#ts-241-e2e-tests-emptySuiteError-test-ts) | 1 | 885ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/badSourceMap.test.ts](#ts-242-e2e-tests-badSourceMap-test-ts) | 1 | 858ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/timerUseRealTimers.test.ts](#ts-243-e2e-tests-timerUseRealTimers-test-ts) | 1 | 1018ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/global-mutation.test.ts](#ts-244-e2e-tests-global-mutation-test-ts) | 1 | 40ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/runProgrammatically.test.ts](#ts-245-e2e-tests-runProgrammatically-test-ts) | 2 | 575ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/symbol.test.ts](#ts-246-e2e-tests-symbol-test-ts) | 1 | 49ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/hasteMapMockChanged.test.ts](#ts-247-e2e-tests-hasteMapMockChanged-test-ts) | 1 | 379ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/existentRoots.test.ts](#ts-248-e2e-tests-existentRoots-test-ts) | 4 | 627ms | 4 | 0 | 0 | -| ✔️ | [e2e/__tests__/doneInHooks.test.ts](#ts-249-e2e-tests-doneInHooks-test-ts) | 1 | 855ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/testEnvironmentCircusAsync.test.ts](#ts-250-e2e-tests-testEnvironmentCircusAsync-test-ts) | 1 | 1507ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/moduleNameMapper.test.ts](#ts-251-e2e-tests-moduleNameMapper-test-ts) | 5 | 5395ms | 5 | 0 | 0 | -| ✔️ | [e2e/__tests__/customReporters.test.ts](#ts-252-e2e-tests-customReporters-test-ts) | 9 | 6553ms | 9 | 0 | 0 | -| ✔️ | [e2e/__tests__/findRelatedFiles.test.ts](#ts-253-e2e-tests-findRelatedFiles-test-ts) | 5 | 6230ms | 5 | 0 | 0 | -| ✔️ | [e2e/__tests__/env.test.ts](#ts-254-e2e-tests-env-test-ts) | 6 | 5221ms | 6 | 0 | 0 | -| ✔️ | [e2e/__tests__/globalSetup.test.ts](#ts-255-e2e-tests-globalSetup-test-ts) | 10 | 13926ms | 10 | 0 | 0 | -| ✔️ | [e2e/__tests__/workerForceExit.test.ts](#ts-256-e2e-tests-workerForceExit-test-ts) | 2 | 4751ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/babelPluginJestHoist.test.ts](#ts-257-e2e-tests-babelPluginJestHoist-test-ts) | 1 | 6249ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/coverageTransformInstrumented.test.ts](#ts-258-e2e-tests-coverageTransformInstrumented-test-ts) | 1 | 5029ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/timeoutsLegacy.test.ts](#ts-259-e2e-tests-timeoutsLegacy-test-ts) | 4 | 71ms | 1 | 3 | 0 | -| ✔️ | [e2e/__tests__/asyncRegenerator.test.ts](#ts-260-e2e-tests-asyncRegenerator-test-ts) | 1 | 4127ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/toThrowErrorMatchingSnapshot.test.ts](#ts-261-e2e-tests-toThrowErrorMatchingSnapshot-test-ts) | 5 | 3524ms | 5 | 0 | 0 | -| ✔️ | [e2e/__tests__/testTodo.test.ts](#ts-262-e2e-tests-testTodo-test-ts) | 5 | 3573ms | 5 | 0 | 0 | -| ✔️ | [e2e/__tests__/onlyFailuresNonWatch.test.ts](#ts-263-e2e-tests-onlyFailuresNonWatch-test-ts) | 1 | 2893ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/presets.test.ts](#ts-264-e2e-tests-presets-test-ts) | 2 | 1966ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/expectAsyncMatcher.test.ts](#ts-265-e2e-tests-expectAsyncMatcher-test-ts) | 2 | 2732ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/transform.test.ts](#ts-266-e2e-tests-transform-test-ts) | 16 | 26740ms | 16 | 0 | 0 | -| ✔️ | [e2e/__tests__/chaiAssertionLibrary.ts](#ts-267-e2e-tests-chaiAssertionLibrary-ts) | 1 | 1902ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/stackTraceSourceMapsWithCoverage.test.ts](#ts-268-e2e-tests-stackTraceSourceMapsWithCoverage-test-ts) | 1 | 2444ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/customTestSequencers.test.ts](#ts-269-e2e-tests-customTestSequencers-test-ts) | 3 | 2757ms | 3 | 0 | 0 | -| ✔️ | [e2e/__tests__/beforeAllFiltered.ts](#ts-270-e2e-tests-beforeAllFiltered-ts) | 1 | 958ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/fakePromises.test.ts](#ts-271-e2e-tests-fakePromises-test-ts) | 2 | 1716ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/stackTraceSourceMaps.test.ts](#ts-272-e2e-tests-stackTraceSourceMaps-test-ts) | 1 | 2185ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/dynamicRequireDependencies.ts](#ts-273-e2e-tests-dynamicRequireDependencies-ts) | 1 | 847ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/overrideGlobals.test.ts](#ts-274-e2e-tests-overrideGlobals-test-ts) | 2 | 2045.9999999999998ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/executeTestsOnceInMpr.ts](#ts-275-e2e-tests-executeTestsOnceInMpr-ts) | 1 | 976ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/moduleParentNullInTest.ts](#ts-276-e2e-tests-moduleParentNullInTest-ts) | 1 | 886ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/requireAfterTeardown.test.ts](#ts-277-e2e-tests-requireAfterTeardown-test-ts) | 1 | 921ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/lifecycles.ts](#ts-278-e2e-tests-lifecycles-ts) | 1 | 861ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/hasteMapSha1.test.ts](#ts-279-e2e-tests-hasteMapSha1-test-ts) | 1 | 298ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/json.test.ts](#ts-280-e2e-tests-json-test-ts) | 2 | 29ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/testResultsProcessor.test.ts](#ts-281-e2e-tests-testResultsProcessor-test-ts) | 1 | 910ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/debug.test.ts](#ts-282-e2e-tests-debug-test-ts) | 1 | 899ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/importedGlobals.test.ts](#ts-283-e2e-tests-importedGlobals-test-ts) | 1 | 1043ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/customResolver.test.ts](#ts-284-e2e-tests-customResolver-test-ts) | 1 | 826ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/circularInequality.test.ts](#ts-285-e2e-tests-circularInequality-test-ts) | 1 | 1451ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/injectGlobals.test.ts](#ts-286-e2e-tests-injectGlobals-test-ts) | 2 | 1860ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/skipBeforeAfterAll.test.ts](#ts-287-e2e-tests-skipBeforeAfterAll-test-ts) | 1 | 1061ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/customInlineSnapshotMatchers.test.ts](#ts-288-e2e-tests-customInlineSnapshotMatchers-test-ts) | 1 | 2206ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/regexCharInPath.test.ts](#ts-289-e2e-tests-regexCharInPath-test-ts) | 1 | 962ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/noTestFound.test.ts](#ts-290-e2e-tests-noTestFound-test-ts) | 2 | 1063ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/nativeEsm.test.ts](#ts-291-e2e-tests-nativeEsm-test-ts) | 3 | 905ms | 2 | 1 | 0 | -| ✔️ | [e2e/__tests__/supportsDashedArgs.ts](#ts-292-e2e-tests-supportsDashedArgs-ts) | 2 | 968ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/transformLinkedModules.test.ts](#ts-293-e2e-tests-transformLinkedModules-test-ts) | 1 | 783ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/testNamePattern.test.ts](#ts-294-e2e-tests-testNamePattern-test-ts) | 1 | 859ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/nativeAsyncMock.test.ts](#ts-295-e2e-tests-nativeAsyncMock-test-ts) | 1 | 55ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/hasteMapSize.test.ts](#ts-296-e2e-tests-hasteMapSize-test-ts) | 2 | 397ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/circusDeclarationErrors.test.ts](#ts-297-e2e-tests-circusDeclarationErrors-test-ts) | 1 | 869ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/testEnvironmentCircus.test.ts](#ts-298-e2e-tests-testEnvironmentCircus-test-ts) | 1 | 1501ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/callDoneTwice.test.ts](#ts-299-e2e-tests-callDoneTwice-test-ts) | 1 | 882ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/emptyDescribeWithHooks.test.ts](#ts-300-e2e-tests-emptyDescribeWithHooks-test-ts) | 4 | 2886ms | 4 | 0 | 0 | -| ✔️ | [e2e/__tests__/errorOnDeprecated.test.ts](#ts-301-e2e-tests-errorOnDeprecated-test-ts) | 25 | 56ms | 1 | 24 | 0 | -| ✔️ | [e2e/__tests__/testRetries.test.ts](#ts-302-e2e-tests-testRetries-test-ts) | 4 | 3277ms | 4 | 0 | 0 | -| ✔️ | [e2e/__tests__/jest.config.ts.test.ts](#ts-303-e2e-tests-jest-config-ts-test-ts) | 5 | 14322ms | 5 | 0 | 0 | -| ✔️ | [e2e/__tests__/coverageReport.test.ts](#ts-304-e2e-tests-coverageReport-test-ts) | 12 | 22264ms | 12 | 0 | 0 | -| ✔️ | [e2e/__tests__/toMatchInlineSnapshot.test.ts](#ts-305-e2e-tests-toMatchInlineSnapshot-test-ts) | 12 | 23917ms | 12 | 0 | 0 | -| ✔️ | [examples/react-native/__tests__/intro.test.js](#ts-306-examples-react-native-tests-intro-test-js) | 4 | 8559ms | 4 | 0 | 0 | -| ✔️ | [e2e/__tests__/toMatchInlineSnapshotWithRetries.test.ts](#ts-307-e2e-tests-toMatchInlineSnapshotWithRetries-test-ts) | 3 | 4670ms | 3 | 0 | 0 | -| ✔️ | [e2e/__tests__/timeouts.test.ts](#ts-308-e2e-tests-timeouts-test-ts) | 4 | 4029ms | 4 | 0 | 0 | -| ✔️ | [e2e/__tests__/toMatchSnapshotWithStringSerializer.test.ts](#ts-309-e2e-tests-toMatchSnapshotWithStringSerializer-test-ts) | 3 | 3544ms | 3 | 0 | 0 | -| ✔️ | [e2e/__tests__/jasmineAsync.test.ts](#ts-310-e2e-tests-jasmineAsync-test-ts) | 15 | 28291ms | 15 | 0 | 0 | -| ✔️ | [e2e/__tests__/config.test.ts](#ts-311-e2e-tests-config-test-ts) | 6 | 3945ms | 6 | 0 | 0 | -| ✔️ | [e2e/__tests__/fatalWorkerError.test.ts](#ts-312-e2e-tests-fatalWorkerError-test-ts) | 1 | 3167ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/toMatchSnapshotWithRetries.test.ts](#ts-313-e2e-tests-toMatchSnapshotWithRetries-test-ts) | 2 | 4435ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/watchModePatterns.test.ts](#ts-314-e2e-tests-watchModePatterns-test-ts) | 2 | 3503ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/unexpectedToken.test.ts](#ts-315-e2e-tests-unexpectedToken-test-ts) | 3 | 3411ms | 3 | 0 | 0 | -| ✔️ | [e2e/__tests__/jestRequireMock.test.ts](#ts-316-e2e-tests-jestRequireMock-test-ts) | 1 | 2119ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/typescriptCoverage.test.ts](#ts-317-e2e-tests-typescriptCoverage-test-ts) | 1 | 2893ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/jest.config.js.test.ts](#ts-318-e2e-tests-jest-config-js-test-ts) | 3 | 2134ms | 3 | 0 | 0 | -| ✔️ | [e2e/__tests__/requireMainResetModules.test.ts](#ts-319-e2e-tests-requireMainResetModules-test-ts) | 2 | 1961ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/modernFakeTimers.test.ts](#ts-320-e2e-tests-modernFakeTimers-test-ts) | 2 | 1680ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/runTestsByPath.test.ts](#ts-321-e2e-tests-runTestsByPath-test-ts) | 1 | 1999ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/testEnvironment.test.ts](#ts-322-e2e-tests-testEnvironment-test-ts) | 1 | 1628ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/circusConcurrentEach.test.ts](#ts-323-e2e-tests-circusConcurrentEach-test-ts) | 2 | 1591ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/autoRestoreMocks.test.ts](#ts-324-e2e-tests-autoRestoreMocks-test-ts) | 2 | 1797ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/jsonReporter.test.ts](#ts-325-e2e-tests-jsonReporter-test-ts) | 2 | 1514ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/autoResetMocks.test.ts](#ts-326-e2e-tests-autoResetMocks-test-ts) | 2 | 1666ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/focusedTests.test.ts](#ts-327-e2e-tests-focusedTests-test-ts) | 1 | 888ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/watchModeOnlyFailed.test.ts](#ts-328-e2e-tests-watchModeOnlyFailed-test-ts) | 1 | 1394ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/beforeEachQueue.ts](#ts-329-e2e-tests-beforeEachQueue-ts) | 2 | 55ms | 1 | 1 | 0 | -| ✔️ | [e2e/__tests__/extraGlobals.test.ts](#ts-330-e2e-tests-extraGlobals-test-ts) | 1 | 1010.9999999999999ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/snapshotSerializers.test.ts](#ts-331-e2e-tests-snapshotSerializers-test-ts) | 2 | 2065ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/locationInResults.test.ts](#ts-332-e2e-tests-locationInResults-test-ts) | 2 | 1764ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/consoleLogOutputWhenRunInBand.test.ts](#ts-333-e2e-tests-consoleLogOutputWhenRunInBand-test-ts) | 1 | 793ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/dependencyClash.test.ts](#ts-334-e2e-tests-dependencyClash-test-ts) | 1 | 833ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/coverageWithoutTransform.test.ts](#ts-335-e2e-tests-coverageWithoutTransform-test-ts) | 1 | 1075ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/cliHandlesExactFilenames.test.ts](#ts-336-e2e-tests-cliHandlesExactFilenames-test-ts) | 2 | 1230ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/requireMainAfterCreateRequire.test.ts](#ts-337-e2e-tests-requireMainAfterCreateRequire-test-ts) | 1 | 966ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/resetModules.test.ts](#ts-338-e2e-tests-resetModules-test-ts) | 1 | 926ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/watchModeUpdateSnapshot.test.ts](#ts-339-e2e-tests-watchModeUpdateSnapshot-test-ts) | 1 | 1075ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/generatorMock.test.ts](#ts-340-e2e-tests-generatorMock-test-ts) | 1 | 1027ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/resolveGetPaths.test.ts](#ts-341-e2e-tests-resolveGetPaths-test-ts) | 1 | 1155ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/v8Coverage.test.ts](#ts-342-e2e-tests-v8Coverage-test-ts) | 2 | 2412ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/resolveWithPaths.test.ts](#ts-343-e2e-tests-resolveWithPaths-test-ts) | 1 | 1170ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/logHeapUsage.test.ts](#ts-344-e2e-tests-logHeapUsage-test-ts) | 1 | 884ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/requireMain.test.ts](#ts-345-e2e-tests-requireMain-test-ts) | 1 | 1137ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/snapshotMockFs.test.ts](#ts-346-e2e-tests-snapshotMockFs-test-ts) | 1 | 883ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/snapshot-unknown.test.ts](#ts-347-e2e-tests-snapshot-unknown-test-ts) | 1 | 838ms | 1 | 0 | 0 | -| ✔️ | [examples/angular/app.component.spec.ts](#ts-348-examples-angular-app-component-spec-ts) | 3 | 654ms | 3 | 0 | 0 | -| ✔️ | [e2e/__tests__/stackTraceNoCaptureStackTrace.test.ts](#ts-349-e2e-tests-stackTraceNoCaptureStackTrace-test-ts) | 1 | 899ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/testNamePatternSkipped.test.ts](#ts-350-e2e-tests-testNamePatternSkipped-test-ts) | 1 | 991ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/failureDetailsProperty.test.ts](#ts-351-e2e-tests-failureDetailsProperty-test-ts) | 1 | 907ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/snapshotResolver.test.ts](#ts-352-e2e-tests-snapshotResolver-test-ts) | 1 | 823ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/processExit.test.ts](#ts-353-e2e-tests-processExit-test-ts) | 1 | 1070ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/nodePath.test.ts](#ts-354-e2e-tests-nodePath-test-ts) | 1 | 866ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/verbose.test.ts](#ts-355-e2e-tests-verbose-test-ts) | 1 | 683ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/listTests.test.ts](#ts-356-e2e-tests-listTests-test-ts) | 2 | 945ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/createProcessObject.test.ts](#ts-357-e2e-tests-createProcessObject-test-ts) | 1 | 908ms | 1 | 0 | 0 | -| ✔️ | [examples/react-testing-library/__tests__/CheckboxWithLabel-test.js](#ts-358-examples-react-testing-library-tests-CheckboxWithLabel-test-js) | 1 | 469ms | 1 | 0 | 0 | -| ✔️ | [examples/angular/shared/data.service.spec.ts](#ts-359-examples-angular-shared-data-service-spec-ts) | 2 | 431ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/environmentAfterTeardown.test.ts](#ts-360-e2e-tests-environmentAfterTeardown-test-ts) | 1 | 892ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/esmConfigFile.test.ts](#ts-361-e2e-tests-esmConfigFile-test-ts) | 3 | 526ms | 3 | 0 | 0 | -| ✔️ | [examples/enzyme/__tests__/CheckboxWithLabel-test.js](#ts-362-examples-enzyme-tests-CheckboxWithLabel-test-js) | 1 | 434ms | 1 | 0 | 0 | -| ✔️ | [examples/module-mock/__tests__/mock_per_test.js](#ts-363-examples-module-mock-tests-mockpertest-js) | 2 | 116ms | 2 | 0 | 0 | -| ✔️ | [examples/mongodb/__test__/db.test.js](#ts-364-examples-mongodb-test-db-test-js) | 1 | 236ms | 1 | 0 | 0 | -| ✔️ | [examples/snapshot/__tests__/link.react.test.js](#ts-365-examples-snapshot-tests-link-react-test-js) | 4 | 181ms | 4 | 0 | 0 | -| ✔️ | [examples/typescript/__tests__/CheckboxWithLabel-test.tsx](#ts-366-examples-typescript-tests-CheckboxWithLabel-test-tsx) | 1 | 227ms | 1 | 0 | 0 | -| ✔️ | [examples/react/__tests__/CheckboxWithLabel-test.js](#ts-367-examples-react-tests-CheckboxWithLabel-test-js) | 1 | 256ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/showConfig.test.ts](#ts-368-e2e-tests-showConfig-test-ts) | 1 | 195ms | 1 | 0 | 0 | -| ✔️ | [examples/snapshot/__tests__/clock.react.test.js](#ts-369-examples-snapshot-tests-clock-react-test-js) | 1 | 62ms | 1 | 0 | 0 | -| ✔️ | [examples/timer/__tests__/infinite_timer_game.test.js](#ts-370-examples-timer-tests-infinitetimergame-test-js) | 1 | 94ms | 1 | 0 | 0 | -| ✔️ | [examples/jquery/__tests__/fetch_current_user.test.js](#ts-371-examples-jquery-tests-fetchcurrentuser-test-js) | 2 | 196ms | 2 | 0 | 0 | -| ✔️ | [examples/jquery/__tests__/display_user.test.js](#ts-372-examples-jquery-tests-displayuser-test-js) | 1 | 196ms | 1 | 0 | 0 | -| ✔️ | [examples/timer/__tests__/timer_game.test.js](#ts-373-examples-timer-tests-timergame-test-js) | 3 | 74ms | 3 | 0 | 0 | -| ✔️ | [examples/async/__tests__/user.test.js](#ts-374-examples-async-tests-user-test-js) | 8 | 96ms | 8 | 0 | 0 | -| ✔️ | [examples/automatic-mocks/__tests__/createMockFromModule.test.js](#ts-375-examples-automatic-mocks-tests-createMockFromModule-test-js) | 2 | 115ms | 2 | 0 | 0 | -| ✔️ | [examples/manual-mocks/__tests__/file_summarizer.test.js](#ts-376-examples-manual-mocks-tests-filesummarizer-test-js) | 1 | 87ms | 1 | 0 | 0 | -| ✔️ | [examples/typescript/__tests__/calc.test.ts](#ts-377-examples-typescript-tests-calc-test-ts) | 6 | 276ms | 6 | 0 | 0 | -| ✔️ | [examples/getting-started/sum.test.js](#ts-378-examples-getting-started-sum-test-js) | 1 | 78ms | 1 | 0 | 0 | -| ✔️ | [examples/angular/shared/sub.service.spec.ts](#ts-379-examples-angular-shared-sub-service-spec-ts) | 1 | 109ms | 1 | 0 | 0 | -| ✔️ | [examples/manual-mocks/__tests__/user.test.js](#ts-380-examples-manual-mocks-tests-user-test-js) | 1 | 41ms | 1 | 0 | 0 | -| ✔️ | [examples/typescript/__tests__/sum-test.ts](#ts-381-examples-typescript-tests-sum-test-ts) | 2 | 69ms | 2 | 0 | 0 | -| ✔️ | [examples/automatic-mocks/__tests__/automock.test.js](#ts-382-examples-automatic-mocks-tests-automock-test-js) | 2 | 74ms | 2 | 0 | 0 | -| ✔️ | [examples/manual-mocks/__tests__/lodashMocking.test.js](#ts-383-examples-manual-mocks-tests-lodashMocking-test-js) | 1 | 109ms | 1 | 0 | 0 | -| ✔️ | [examples/manual-mocks/__tests__/userMocked.test.js](#ts-384-examples-manual-mocks-tests-userMocked-test-js) | 1 | 105ms | 1 | 0 | 0 | -| ✔️ | [examples/typescript/__tests__/sum.test.js](#ts-385-examples-typescript-tests-sum-test-js) | 2 | 100ms | 2 | 0 | 0 | -| ✔️ | [e2e/custom-test-sequencer/b.test.js](#ts-386-e2e-custom-test-sequencer-b-test-js) | 1 | 21ms | 1 | 0 | 0 | -| ✔️ | [examples/typescript/__tests__/sub-test.ts](#ts-387-examples-typescript-tests-sub-test-ts) | 1 | 43ms | 1 | 0 | 0 | -| ✔️ | [examples/module-mock/__tests__/full_mock.js](#ts-388-examples-module-mock-tests-fullmock-js) | 1 | 60ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/global.test.ts](#ts-389-e2e-tests-global-test-ts) | 1 | 31ms | 1 | 0 | 0 | -| ✔️ | [examples/automatic-mocks/__tests__/disableAutomocking.test.js](#ts-390-examples-automatic-mocks-tests-disableAutomocking-test-js) | 1 | 24ms | 1 | 0 | 0 | -| ✔️ | [e2e/timer-reset-mocks/after-reset-all-mocks/timerAndMock.test.js](#ts-391-e2e-timer-reset-mocks-after-reset-all-mocks-timerAndMock-test-js) | 2 | 30ms | 2 | 0 | 0 | -| ✔️ | [e2e/__tests__/requireV8Module.test.ts](#ts-392-e2e-tests-requireV8Module-test-ts) | 1 | 30ms | 1 | 0 | 0 | -| ✔️ | [e2e/timer-reset-mocks/with-reset-mocks/timerWithMock.test.js](#ts-393-e2e-timer-reset-mocks-with-reset-mocks-timerWithMock-test-js) | 1 | 34ms | 1 | 0 | 0 | -| ✔️ | [examples/module-mock/__tests__/partial_mock.js](#ts-394-examples-module-mock-tests-partialmock-js) | 1 | 215ms | 1 | 0 | 0 | -| ✔️ | [e2e/custom-test-sequencer/d.test.js](#ts-395-e2e-custom-test-sequencer-d-test-js) | 1 | 21ms | 1 | 0 | 0 | -| ✔️ | [e2e/custom-test-sequencer/a.test.js](#ts-396-e2e-custom-test-sequencer-a-test-js) | 1 | 29ms | 1 | 0 | 0 | -| ✔️ | [e2e/custom-test-sequencer/e.test.js](#ts-397-e2e-custom-test-sequencer-e-test-js) | 1 | 27ms | 1 | 0 | 0 | -| ✔️ | [e2e/custom-test-sequencer/c.test.js](#ts-398-e2e-custom-test-sequencer-c-test-js) | 1 | 42ms | 1 | 0 | 0 | -| ✔️ | [e2e/__tests__/asyncAndCallback.test.ts](#ts-399-e2e-tests-asyncAndCallback-test-ts) | 1 | 746ms | 1 | 0 | 0 | - -# Test Suites - -## packages/jest-config/src/__tests__/normalize.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | picks a name based on the rootDir | 6ms | -| ✔️ | keeps custom project name based on the projects rootDir | 1ms | -| ✔️ | keeps custom names based on the rootDir | 1ms | -| ✔️ | minimal config is stable across runs | 3ms | -| ✔️ | sets coverageReporters correctly when argv.json is set | 1ms | - -### rootDir - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws if the options is missing a rootDir property | 2ms | - -### automock - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | falsy automock is not overwritten | 1ms | - -### collectCoverageOnlyFrom - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | normalizes all paths relative to rootDir | 1ms | -| ✔️ | does not change absolute paths | 1ms | -| ✔️ | substitutes tokens | 1ms | - -### collectCoverageFrom - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | substitutes tokens | 1ms | - -### findRelatedTests - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | it generates --coverageCoverageFrom patterns when needed | 1ms | - -### roots - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | normalizes all paths relative to rootDir | 1ms | -| ✔️ | does not change absolute paths | 1ms | -| ✔️ | substitutes tokens | 1ms | - -### transform - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | normalizes the path | 1ms | -| ✔️ | pulls in config if it's passed as an array, and defaults to empty object | 1ms | - -### haste - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | normalizes the path for hasteImplModulePath | 1ms | - -### setupFilesAfterEnv - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | normalizes the path according to rootDir | 1ms | -| ✔️ | does not change absolute paths | 1ms | -| ✔️ | substitutes tokens | 1ms | - -### setupTestFrameworkScriptFile - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | logs a deprecation warning when \`setupTestFrameworkScriptFile\` is used | 1ms | -| ✔️ | logs an error when \`setupTestFrameworkScriptFile\` and \`setupFilesAfterEnv\` are used | 1ms | - -### coveragePathIgnorePatterns - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not normalize paths relative to rootDir | 1ms | -| ✔️ | does not normalize trailing slashes | 1ms | -| ✔️ | substitutes tokens | 1ms | - -### watchPathIgnorePatterns - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not normalize paths relative to rootDir | 5ms | -| ✔️ | does not normalize trailing slashes | 1ms | -| ✔️ | substitutes tokens | 1ms | - -### testPathIgnorePatterns - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not normalize paths relative to rootDir | 1ms | -| ✔️ | does not normalize trailing slashes | 1ms | -| ✔️ | substitutes tokens | 1ms | - -### modulePathIgnorePatterns - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not normalize paths relative to rootDir | 1ms | -| ✔️ | does not normalize trailing slashes | 1ms | -| ✔️ | substitutes tokens | 1ms | - -### testRunner - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to Circus | 1ms | -| ✔️ | resolves jasmine | 1ms | -| ✔️ | is overwritten by argv | 0ms | - -### coverageDirectory - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to /coverage | 0ms | - -### testEnvironment - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resolves to an environment and prefers jest-environment-\`name\` | 0ms | -| ✔️ | throws on invalid environment names | 1ms | -| ✔️ | works with rootDir | 1ms | - -### babel-jest - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | correctly identifies and uses babel-jest | 1ms | -| ✔️ | uses babel-jest if babel-jest is explicitly specified in a custom transform options | 1ms | - -### Upgrade help - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | logs a warning when \`scriptPreprocessor\` and/or \`preprocessorIgnorePatterns\` are used | 2ms | - -### testRegex - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | testRegex empty string is mapped to empty array | 3ms | -| ✔️ | testRegex string is mapped to an array | 0ms | -| ✔️ | testRegex array is preserved | 0ms | - -### testMatch - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | testMatch default not applied if testRegex is set | 1ms | -| ✔️ | testRegex default not applied if testMatch is set | 1ms | -| ✔️ | throws if testRegex and testMatch are both specified | 1ms | -| ✔️ | normalizes testMatch | 0ms | - -### moduleDirectories - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to node_modules | 8ms | -| ✔️ | normalizes moduleDirectories | 1ms | - -### preset - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws when preset not found | 1ms | -| ✔️ | throws when module was found but no \\"jest-preset.js\\" or \\"jest-preset.json\\" files | 1ms | -| ✔️ | throws when a dependency is missing in the preset | 44ms | -| ✔️ | throws when preset is invalid | 59ms | -| ✔️ | throws when preset evaluation throws type error | 1ms | -| ✔️ | works with \\"react-native\\" | 3ms | -| ✔️ | searches for .json and .js preset files | 0ms | -| ✔️ | merges with options | 1ms | -| ✔️ | merges with options and moduleNameMapper preset is overridden by options | 1ms | -| ✔️ | merges with options and transform preset is overridden by options | 1ms | -| ✔️ | extracts setupFilesAfterEnv from preset | 1ms | - -### preset with globals - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should merge the globals preset correctly | 1ms | - -### preset without setupFiles - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should normalize setupFiles correctly | 1ms | - -### preset without setupFilesAfterEnv - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should normalize setupFilesAfterEnv correctly | 1ms | - -### runner - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to \`jest-runner\` | 1ms | -| ✔️ | resolves to runners that do not have the prefix | 1ms | -| ✔️ | resolves to runners and prefers jest-runner-\`name\` | 1ms | -| ✔️ | throw error when a runner is not found | 7ms | - -### watchPlugins - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to undefined | 0ms | -| ✔️ | resolves to watch plugins and prefers jest-watch-\`name\` | 0ms | -| ✔️ | resolves watch plugins that do not have the prefix | 1ms | -| ✔️ | normalizes multiple watchPlugins | 4ms | -| ✔️ | throw error when a watch plugin is not found | 1ms | - -### testPathPattern - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to empty | 0ms | -| ✔️ | joins multiple --testPathPatterns and | 3ms | -| ✔️ | gives precedence to --all | 1ms | - -### testPathPattern --testPathPattern - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses --testPathPattern if set | 0ms | -| ✔️ | ignores invalid regular expressions and logs a warning | 1ms | -| ✔️ | joins multiple --testPathPattern if set | 1ms | - -### testPathPattern --testPathPattern posix - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should not escape the pattern | 1ms | - -### testPathPattern --testPathPattern win32 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | preserves any use of \\"\\\\\\" | 1ms | -| ✔️ | replaces POSIX path separators | 9ms | -| ✔️ | replaces POSIX paths in multiple args | 8ms | -| ✔️ | coerces all patterns to strings | 2ms | - -### testPathPattern - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses if set | 3ms | -| ✔️ | ignores invalid regular expressions and logs a warning | 1ms | -| ✔️ | joins multiple if set | 1ms | - -### testPathPattern posix - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should not escape the pattern | 1ms | - -### testPathPattern win32 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | preserves any use of \\"\\\\\\" | 15ms | -| ✔️ | replaces POSIX path separators | 14ms | -| ✔️ | replaces POSIX paths in multiple args | 11ms | -| ✔️ | coerces all patterns to strings | 4ms | - -### moduleFileExtensions - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to something useful | 0ms | -| ✔️ | throws if missing \`js\` but using jest-runner | 1ms | -| ✔️ | does not throw if missing \`js\` with a custom runner | 2ms | - -### cwd - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is set to process.cwd | 1ms | -| ✔️ | is not lost if the config has its own cwd property | 6ms | - -### Defaults - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be accepted by normalize | 3ms | - -### displayName - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should throw an error when displayName is is an empty object | 1ms | -| ✔️ | should throw an error when displayName is missing color | 1ms | -| ✔️ | should throw an error when displayName is missing name | 1ms | -| ✔️ | should throw an error when displayName is using invalid values | 0ms | -| ✔️ | generates a default color for the runner undefined | 1ms | -| ✔️ | generates a default color for the runner jest-runner | 2ms | -| ✔️ | generates a default color for the runner jest-runner-eslint | 1ms | -| ✔️ | generates a default color for the runner jest-runner-tslint | 1ms | -| ✔️ | generates a default color for the runner jest-runner-tsc | 7ms | - -### testTimeout - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return timeout value if defined | 1ms | -| ✔️ | should throw an error if timeout is a negative number | 0ms | - -### extensionsToTreatAsEsm - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should pass valid config through | 2ms | -| ✔️ | should enforce leading dots | 1ms | -| ✔️ | throws on .js | 4ms | -| ✔️ | throws on .mjs | 0ms | -| ✔️ | throws on .cjs | 1ms | - -## packages/jest-repl/src/__tests__/jest_repl.test.js ✔️ - -### Repl cli - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs without errors | 1028ms | - -## packages/jest-snapshot/src/__tests__/printSnapshot.test.ts ✔️ - -### chalk - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | level 0 | 2ms | -| ✔️ | level 1 | 1ms | -| ✔️ | level 2 | 1ms | -| ✔️ | level 3 | 0ms | - -### matcher error toMatchInlineSnapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Expected properties must be an object (non-null) without snapshot | 1ms | -| ✔️ | Expected properties must be an object (null) with snapshot | 1ms | -| ✔️ | Inline snapshot must be a string | 0ms | -| ✔️ | Snapshot matchers cannot be used with not | 0ms | - -### matcher error toMatchSnapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Expected properties must be an object (non-null) | 1ms | -| ✔️ | Expected properties must be an object (null) with hint | 0ms | -| ✔️ | Expected properties must be an object (null) without hint | 1ms | -| ✔️ | Snapshot state must be initialized | 0ms | - -### matcher error toMatchSnapshot received value must be an object - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (non-null) | 0ms | -| ✔️ | (null) | 1ms | - -### matcher error toThrowErrorMatchingInlineSnapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Inline snapshot must be a string | 4ms | -| ✔️ | Snapshot state must be initialized | 1ms | - -### matcher error toThrowErrorMatchingSnapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Received value must be a function | 0ms | -| ✔️ | Snapshot matchers cannot be used with not | 1ms | - -### other error toThrowErrorMatchingSnapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Received function did not throw | 0ms | - -### pass false toMatchInlineSnapshot with properties equals false - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | with snapshot | 8ms | -| ✔️ | without snapshot | 0ms | - -### pass false toMatchInlineSnapshot with properties - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | equals true | 1ms | - -### pass false toMatchSnapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | New snapshot was not written (multi line) | 0ms | -| ✔️ | New snapshot was not written (single line) | 0ms | - -### pass false toMatchSnapshot with properties equals false - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isLineDiffable false | 0ms | -| ✔️ | isLineDiffable true | 1ms | - -### pass false toMatchSnapshot with properties - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | equals true | 0ms | - -### pass false toThrowErrorMatchingInlineSnapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | with snapshot | 1ms | - -### pass true toMatchSnapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | without properties | 0ms | - -### printPropertiesAndReceived - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | omit missing properties | 4ms | - -### printSnapshotAndReceived backtick - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | single line expected and received | 0ms | - -### printSnapshotAndReceived empty string - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | expected and received single line | 0ms | -| ✔️ | received and expected multi line | 0ms | - -### printSnapshotAndReceived escape - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | double quote marks in string | 0ms | -| ✔️ | backslash in multi line string | 0ms | -| ✔️ | backslash in single line string | 1ms | -| ✔️ | regexp | 0ms | - -### printSnapshotAndReceived expand - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | false | 1ms | -| ✔️ | true | 0ms | - -### printSnapshotAndReceived - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fallback to line diff | 21ms | -| ✔️ | multi line small change in one line and other is unchanged | 0ms | -| ✔️ | multi line small changes | 1ms | -| ✔️ | single line large changes | 0ms | - -### printSnapshotAndReceived has no common after clean up chaff - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | array | 0ms | -| ✔️ | string single line | 1ms | - -### printSnapshotAndReceived MAX_DIFF_STRING_LENGTH unquoted - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | both are less | 0ms | -| ✔️ | expected is more | 3ms | -| ✔️ | received is more | 4ms | - -### printSnapshotAndReceived MAX_DIFF_STRING_LENGTH quoted - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | both are less | 0ms | -| ✔️ | expected is more | 0ms | -| ✔️ | received is more | 1ms | - -### printSnapshotAndReceived isLineDiffable false - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | asymmetric matcher | 0ms | -| ✔️ | boolean | 0ms | -| ✔️ | date | 0ms | -| ✔️ | error | 1ms | -| ✔️ | function | 0ms | -| ✔️ | number | 0ms | - -### printSnapshotAndReceived isLineDiffable true - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | array | 1ms | -| ✔️ | object | 0ms | -| ✔️ | single line expected and received | 1ms | -| ✔️ | single line expected and multi line received | 0ms | - -### printSnapshotAndReceived ignore indentation - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | markup delete | 1ms | -| ✔️ | markup fall back | 2ms | -| ✔️ | markup insert | 0ms | - -### printSnapshotAndReceived ignore indentation object - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | delete | 0ms | -| ✔️ | insert | 0ms | - -### printSnapshotAndReceived without serialize - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | backtick single line expected and received | 1ms | -| ✔️ | backtick single line expected and multi line received | 1ms | -| ✔️ | has no common after clean up chaff multi line | 0ms | -| ✔️ | has no common after clean up chaff single line | 0ms | -| ✔️ | prettier/pull/5590 | 1ms | - -## packages/jest-config/src/__tests__/Defaults.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | get configuration defaults | 0ms | - -## packages/jest-resolve/src/__tests__/resolve.test.ts ✔️ - -### isCoreModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns false if \`hasCoreModules\` is false. | 0ms | -| ✔️ | returns true if \`hasCoreModules\` is true and \`moduleName\` is a core module. | 0ms | -| ✔️ | returns false if \`hasCoreModules\` is true and \`moduleName\` is not a core module. | 0ms | -| ✔️ | returns false if \`hasCoreModules\` is true and \`moduleNameMapper\` alias a module same name with core module | 1ms | - -### findNodeModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is possible to override the default resolver | 1ms | -| ✔️ | passes packageFilter to the resolve module when using the default resolver | 1ms | - -### resolveModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is possible to resolve node modules | 2ms | -| ✔️ | is possible to resolve node modules with custom extensions | 2ms | -| ✔️ | is possible to resolve node modules with custom extensions and platforms | 0ms | -| ✔️ | is possible to resolve node modules by resolving their realpath | 0ms | -| ✔️ | is possible to specify custom resolve paths | 1ms | -| ✔️ | does not confuse directories with files | 1ms | - -### getMockModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is possible to use custom resolver to resolve deps inside mock modules with moduleNameMapper | 1ms | - -### nodeModulesPaths - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | provides custom module paths after node_modules | 0ms | - -### Resolver.getModulePaths() -> nodeModulesPaths() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | can resolve node modules relative to absolute paths in \\"moduleDirectories\\" on Windows platforms | 21ms | -| ✔️ | can resolve node modules relative to absolute paths in \\"moduleDirectories\\" on Posix platforms | 8ms | - -## packages/expect/src/__tests__/matchers-toEqual.property.test.ts ✔️ - -### toEqual - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be reflexive | 58ms | -| ✔️ | should be symmetric | 204ms | - -## packages/jest-reporters/src/__tests__/SummaryReporter.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | snapshots needs update with npm test | 250ms | -| ✔️ | snapshots needs update with yarn test | 4ms | -| ✔️ | snapshots all have results (no update) | 4ms | -| ✔️ | snapshots all have results (after update) | 10ms | - -## packages/jest-config/src/__tests__/readConfigs.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | readConfigs() throws when called without project paths | 16ms | -| ✔️ | readConfigs() loads async config file | 10ms | -| ✔️ | readConfigs() reject if async was rejected | 0ms | - -## packages/jest-reporters/src/__tests__/generateEmptyCoverage.test.js ✔️ - -### generateEmptyCoverage - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | generates an empty coverage object for a file without running it | 370ms | -| ✔️ | generates a null coverage result when using /* istanbul ignore file */ | 15ms | -| ✔️ | generates a null coverage result when collectCoverage global config is false | 1ms | - -## packages/expect/src/__tests__/asymmetricMatchers.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Any.asymmetricMatch() | 1ms | -| ✔️ | Any.toAsymmetricMatcher() | 1ms | -| ✔️ | Any.toAsymmetricMatcher() with function name | 1ms | -| ✔️ | Any throws when called with empty constructor | 47ms | -| ✔️ | Anything matches any type | 1ms | -| ✔️ | Anything does not match null and undefined | 0ms | -| ✔️ | Anything.toAsymmetricMatcher() | 0ms | -| ✔️ | ArrayContaining matches | 4ms | -| ✔️ | ArrayContaining does not match | 0ms | -| ✔️ | ArrayContaining throws for non-arrays | 1ms | -| ✔️ | ArrayNotContaining matches | 0ms | -| ✔️ | ArrayNotContaining does not match | 1ms | -| ✔️ | ArrayNotContaining throws for non-arrays | 0ms | -| ✔️ | ObjectContaining matches | 1ms | -| ✔️ | ObjectContaining does not match | 0ms | -| ✔️ | ObjectContaining matches defined properties | 0ms | -| ✔️ | ObjectContaining matches prototype properties | 0ms | -| ✔️ | ObjectContaining throws for non-objects | 1ms | -| ✔️ | ObjectContaining does not mutate the sample | 0ms | -| ✔️ | ObjectNotContaining matches | 0ms | -| ✔️ | ObjectNotContaining does not match | 1ms | -| ✔️ | ObjectNotContaining inverts ObjectContaining | 0ms | -| ✔️ | ObjectNotContaining throws for non-objects | 0ms | -| ✔️ | StringContaining matches string against string | 0ms | -| ✔️ | StringContaining throws if expected value is not string | 0ms | -| ✔️ | StringContaining returns false if received value is not string | 0ms | -| ✔️ | StringNotContaining matches string against string | 0ms | -| ✔️ | StringNotContaining throws if expected value is not string | 0ms | -| ✔️ | StringNotContaining returns true if received value is not string | 0ms | -| ✔️ | StringMatching matches string against regexp | 1ms | -| ✔️ | StringMatching matches string against string | 0ms | -| ✔️ | StringMatching throws if expected value is neither string nor regexp | 0ms | -| ✔️ | StringMatching returns false if received value is not string | 1ms | -| ✔️ | StringMatching returns false even if coerced non-string received value matches pattern | 0ms | -| ✔️ | StringNotMatching matches string against regexp | 0ms | -| ✔️ | StringNotMatching matches string against string | 0ms | -| ✔️ | StringNotMatching throws if expected value is neither string nor regexp | 0ms | -| ✔️ | StringNotMatching returns true if received value is not string | 0ms | - -## packages/jest-reporters/src/__tests__/CoverageReporter.test.js ✔️ - -### onRunComplete - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | getLastError() returns an error when threshold is not met for global | 299ms | -| ✔️ | getLastError() returns an error when threshold is not met for file | 3ms | -| ✔️ | getLastError() returns \`undefined\` when threshold is met | 2ms | -| ✔️ | getLastError() returns an error when threshold is not met for non-covered file | 1ms | -| ✔️ | getLastError() returns an error when threshold is not met for directory | 1ms | -| ✔️ | getLastError() returns \`undefined\` when threshold is met for directory | 1ms | -| ✔️ | getLastError() returns an error when there is no coverage data for a threshold | 0ms | -| ✔️ | getLastError() returns 'undefined' when global threshold group + "testRuns": Array [ + TestRunResult { + "path": "fixtures/external/jest/jest-test-results.xml", + "suites": Array [ + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "picks a name based on the rootDir", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "keeps custom project name based on the projects rootDir", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "keeps custom names based on the rootDir", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "minimal config is stable across runs", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "sets coverageReporters correctly when argv.json is set", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "rootDir", + "tests": Array [ + TestCaseResult { + "name": "throws if the options is missing a rootDir property", + "result": "success", + "time": 2, + }, + ], + }, + TestGroupResult { + "name": "automock", + "tests": Array [ + TestCaseResult { + "name": "falsy automock is not overwritten", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "collectCoverageOnlyFrom", + "tests": Array [ + TestCaseResult { + "name": "normalizes all paths relative to rootDir", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not change absolute paths", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "substitutes tokens", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "collectCoverageFrom", + "tests": Array [ + TestCaseResult { + "name": "substitutes tokens", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "findRelatedTests", + "tests": Array [ + TestCaseResult { + "name": "it generates --coverageCoverageFrom patterns when needed", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "roots", + "tests": Array [ + TestCaseResult { + "name": "normalizes all paths relative to rootDir", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not change absolute paths", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "substitutes tokens", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "transform", + "tests": Array [ + TestCaseResult { + "name": "normalizes the path", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "pulls in config if it's passed as an array, and defaults to empty object", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "haste", + "tests": Array [ + TestCaseResult { + "name": "normalizes the path for hasteImplModulePath", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "setupFilesAfterEnv", + "tests": Array [ + TestCaseResult { + "name": "normalizes the path according to rootDir", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not change absolute paths", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "substitutes tokens", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "setupTestFrameworkScriptFile", + "tests": Array [ + TestCaseResult { + "name": "logs a deprecation warning when \`setupTestFrameworkScriptFile\` is used", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "logs an error when \`setupTestFrameworkScriptFile\` and \`setupFilesAfterEnv\` are used", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "coveragePathIgnorePatterns", + "tests": Array [ + TestCaseResult { + "name": "does not normalize paths relative to rootDir", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not normalize trailing slashes", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "substitutes tokens", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "watchPathIgnorePatterns", + "tests": Array [ + TestCaseResult { + "name": "does not normalize paths relative to rootDir", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "does not normalize trailing slashes", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "substitutes tokens", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "testPathIgnorePatterns", + "tests": Array [ + TestCaseResult { + "name": "does not normalize paths relative to rootDir", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not normalize trailing slashes", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "substitutes tokens", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "modulePathIgnorePatterns", + "tests": Array [ + TestCaseResult { + "name": "does not normalize paths relative to rootDir", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not normalize trailing slashes", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "substitutes tokens", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "testRunner", + "tests": Array [ + TestCaseResult { + "name": "defaults to Circus", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "resolves jasmine", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "is overwritten by argv", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "coverageDirectory", + "tests": Array [ + TestCaseResult { + "name": "defaults to /coverage", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "testEnvironment", + "tests": Array [ + TestCaseResult { + "name": "resolves to an environment and prefers jest-environment-\`name\`", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws on invalid environment names", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with rootDir", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "babel-jest", + "tests": Array [ + TestCaseResult { + "name": "correctly identifies and uses babel-jest", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "uses babel-jest if babel-jest is explicitly specified in a custom transform options", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "Upgrade help", + "tests": Array [ + TestCaseResult { + "name": "logs a warning when \`scriptPreprocessor\` and/or \`preprocessorIgnorePatterns\` are used", + "result": "success", + "time": 2, + }, + ], + }, + TestGroupResult { + "name": "testRegex", + "tests": Array [ + TestCaseResult { + "name": "testRegex empty string is mapped to empty array", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "testRegex string is mapped to an array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "testRegex array is preserved", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "testMatch", + "tests": Array [ + TestCaseResult { + "name": "testMatch default not applied if testRegex is set", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "testRegex default not applied if testMatch is set", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws if testRegex and testMatch are both specified", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "normalizes testMatch", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "moduleDirectories", + "tests": Array [ + TestCaseResult { + "name": "defaults to node_modules", + "result": "success", + "time": 8, + }, + TestCaseResult { + "name": "normalizes moduleDirectories", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "preset", + "tests": Array [ + TestCaseResult { + "name": "throws when preset not found", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws when module was found but no \\"jest-preset.js\\" or \\"jest-preset.json\\" files", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws when a dependency is missing in the preset", + "result": "success", + "time": 44, + }, + TestCaseResult { + "name": "throws when preset is invalid", + "result": "success", + "time": 59, + }, + TestCaseResult { + "name": "throws when preset evaluation throws type error", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with \\"react-native\\"", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "searches for .json and .js preset files", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "merges with options", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "merges with options and moduleNameMapper preset is overridden by options", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "merges with options and transform preset is overridden by options", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "extracts setupFilesAfterEnv from preset", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "preset with globals", + "tests": Array [ + TestCaseResult { + "name": "should merge the globals preset correctly", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "preset without setupFiles", + "tests": Array [ + TestCaseResult { + "name": "should normalize setupFiles correctly", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "preset without setupFilesAfterEnv", + "tests": Array [ + TestCaseResult { + "name": "should normalize setupFilesAfterEnv correctly", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "runner", + "tests": Array [ + TestCaseResult { + "name": "defaults to \`jest-runner\`", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "resolves to runners that do not have the prefix", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "resolves to runners and prefers jest-runner-\`name\`", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throw error when a runner is not found", + "result": "success", + "time": 7, + }, + ], + }, + TestGroupResult { + "name": "watchPlugins", + "tests": Array [ + TestCaseResult { + "name": "defaults to undefined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "resolves to watch plugins and prefers jest-watch-\`name\`", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "resolves watch plugins that do not have the prefix", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "normalizes multiple watchPlugins", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "throw error when a watch plugin is not found", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "testPathPattern", + "tests": Array [ + TestCaseResult { + "name": "defaults to empty", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "joins multiple --testPathPatterns and ", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "gives precedence to --all", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "testPathPattern --testPathPattern", + "tests": Array [ + TestCaseResult { + "name": "uses --testPathPattern if set", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "ignores invalid regular expressions and logs a warning", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "joins multiple --testPathPattern if set", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "testPathPattern --testPathPattern posix", + "tests": Array [ + TestCaseResult { + "name": "should not escape the pattern", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "testPathPattern --testPathPattern win32", + "tests": Array [ + TestCaseResult { + "name": "preserves any use of \\"\\\\\\"", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "replaces POSIX path separators", + "result": "success", + "time": 9, + }, + TestCaseResult { + "name": "replaces POSIX paths in multiple args", + "result": "success", + "time": 8, + }, + TestCaseResult { + "name": "coerces all patterns to strings", + "result": "success", + "time": 2, + }, + ], + }, + TestGroupResult { + "name": "testPathPattern ", + "tests": Array [ + TestCaseResult { + "name": "uses if set", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "ignores invalid regular expressions and logs a warning", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "joins multiple if set", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "testPathPattern posix", + "tests": Array [ + TestCaseResult { + "name": "should not escape the pattern", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "testPathPattern win32", + "tests": Array [ + TestCaseResult { + "name": "preserves any use of \\"\\\\\\"", + "result": "success", + "time": 15, + }, + TestCaseResult { + "name": "replaces POSIX path separators", + "result": "success", + "time": 14, + }, + TestCaseResult { + "name": "replaces POSIX paths in multiple args", + "result": "success", + "time": 11, + }, + TestCaseResult { + "name": "coerces all patterns to strings", + "result": "success", + "time": 4, + }, + ], + }, + TestGroupResult { + "name": "moduleFileExtensions", + "tests": Array [ + TestCaseResult { + "name": "defaults to something useful", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if missing \`js\` but using jest-runner", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not throw if missing \`js\` with a custom runner", + "result": "success", + "time": 2, + }, + ], + }, + TestGroupResult { + "name": "cwd", + "tests": Array [ + TestCaseResult { + "name": "is set to process.cwd", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "is not lost if the config has its own cwd property", + "result": "success", + "time": 6, + }, + ], + }, + TestGroupResult { + "name": "Defaults", + "tests": Array [ + TestCaseResult { + "name": "should be accepted by normalize", + "result": "success", + "time": 3, + }, + ], + }, + TestGroupResult { + "name": "displayName", + "tests": Array [ + TestCaseResult { + "name": "should throw an error when displayName is is an empty object", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should throw an error when displayName is missing color", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should throw an error when displayName is missing name", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should throw an error when displayName is using invalid values", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "generates a default color for the runner undefined", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "generates a default color for the runner jest-runner", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "generates a default color for the runner jest-runner-eslint", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "generates a default color for the runner jest-runner-tslint", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "generates a default color for the runner jest-runner-tsc", + "result": "success", + "time": 7, + }, + ], + }, + TestGroupResult { + "name": "testTimeout", + "tests": Array [ + TestCaseResult { + "name": "should return timeout value if defined", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should throw an error if timeout is a negative number", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "extensionsToTreatAsEsm", + "tests": Array [ + TestCaseResult { + "name": "should pass valid config through", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "should enforce leading dots", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws on .js", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "throws on .mjs", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws on .cjs", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-config/src/__tests__/normalize.test.js", + "totalTime": 798, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Repl cli", + "tests": Array [ + TestCaseResult { + "name": "runs without errors", + "result": "success", + "time": 1028, + }, + ], + }, + ], + "name": "packages/jest-repl/src/__tests__/jest_repl.test.js", + "totalTime": 1172, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "chalk", + "tests": Array [ + TestCaseResult { + "name": "level 0", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "level 1", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "level 2", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "level 3", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "matcher error toMatchInlineSnapshot", + "tests": Array [ + TestCaseResult { + "name": "Expected properties must be an object (non-null) without snapshot", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "Expected properties must be an object (null) with snapshot", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "Inline snapshot must be a string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "Snapshot matchers cannot be used with not", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "matcher error toMatchSnapshot", + "tests": Array [ + TestCaseResult { + "name": "Expected properties must be an object (non-null)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "Expected properties must be an object (null) with hint", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "Expected properties must be an object (null) without hint", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "Snapshot state must be initialized", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "matcher error toMatchSnapshot received value must be an object", + "tests": Array [ + TestCaseResult { + "name": "(non-null)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "(null)", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "matcher error toThrowErrorMatchingInlineSnapshot", + "tests": Array [ + TestCaseResult { + "name": "Inline snapshot must be a string", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "Snapshot state must be initialized", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "matcher error toThrowErrorMatchingSnapshot", + "tests": Array [ + TestCaseResult { + "name": "Received value must be a function", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "Snapshot matchers cannot be used with not", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "other error toThrowErrorMatchingSnapshot", + "tests": Array [ + TestCaseResult { + "name": "Received function did not throw", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "pass false toMatchInlineSnapshot with properties equals false", + "tests": Array [ + TestCaseResult { + "name": "with snapshot", + "result": "success", + "time": 8, + }, + TestCaseResult { + "name": "without snapshot", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "pass false toMatchInlineSnapshot with properties", + "tests": Array [ + TestCaseResult { + "name": "equals true", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "pass false toMatchSnapshot", + "tests": Array [ + TestCaseResult { + "name": "New snapshot was not written (multi line)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "New snapshot was not written (single line)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "pass false toMatchSnapshot with properties equals false", + "tests": Array [ + TestCaseResult { + "name": "isLineDiffable false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isLineDiffable true", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "pass false toMatchSnapshot with properties", + "tests": Array [ + TestCaseResult { + "name": "equals true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "pass false toThrowErrorMatchingInlineSnapshot", + "tests": Array [ + TestCaseResult { + "name": "with snapshot", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "pass true toMatchSnapshot", + "tests": Array [ + TestCaseResult { + "name": "without properties", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "printPropertiesAndReceived", + "tests": Array [ + TestCaseResult { + "name": "omit missing properties", + "result": "success", + "time": 4, + }, + ], + }, + TestGroupResult { + "name": "printSnapshotAndReceived backtick", + "tests": Array [ + TestCaseResult { + "name": "single line expected and received", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "printSnapshotAndReceived empty string", + "tests": Array [ + TestCaseResult { + "name": "expected and received single line", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "received and expected multi line", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "printSnapshotAndReceived escape", + "tests": Array [ + TestCaseResult { + "name": "double quote marks in string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "backslash in multi line string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "backslash in single line string", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "regexp", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "printSnapshotAndReceived expand", + "tests": Array [ + TestCaseResult { + "name": "false", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "printSnapshotAndReceived", + "tests": Array [ + TestCaseResult { + "name": "fallback to line diff", + "result": "success", + "time": 21, + }, + TestCaseResult { + "name": "multi line small change in one line and other is unchanged", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "multi line small changes", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "single line large changes", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "printSnapshotAndReceived has no common after clean up chaff", + "tests": Array [ + TestCaseResult { + "name": "array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "string single line", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "printSnapshotAndReceived MAX_DIFF_STRING_LENGTH unquoted", + "tests": Array [ + TestCaseResult { + "name": "both are less", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "expected is more", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "received is more", + "result": "success", + "time": 4, + }, + ], + }, + TestGroupResult { + "name": "printSnapshotAndReceived MAX_DIFF_STRING_LENGTH quoted", + "tests": Array [ + TestCaseResult { + "name": "both are less", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "expected is more", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "received is more", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "printSnapshotAndReceived isLineDiffable false", + "tests": Array [ + TestCaseResult { + "name": "asymmetric matcher", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "boolean", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "date", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "error", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "function", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "number", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "printSnapshotAndReceived isLineDiffable true", + "tests": Array [ + TestCaseResult { + "name": "array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "object", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "single line expected and received", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "single line expected and multi line received", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "printSnapshotAndReceived ignore indentation", + "tests": Array [ + TestCaseResult { + "name": "markup delete", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "markup fall back", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "markup insert", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "printSnapshotAndReceived ignore indentation object", + "tests": Array [ + TestCaseResult { + "name": "delete", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "insert", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "printSnapshotAndReceived without serialize", + "tests": Array [ + TestCaseResult { + "name": "backtick single line expected and received", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "backtick single line expected and multi line received", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "has no common after clean up chaff multi line", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "has no common after clean up chaff single line", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prettier/pull/5590", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-snapshot/src/__tests__/printSnapshot.test.ts", + "totalTime": 1188, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "get configuration defaults", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-config/src/__tests__/Defaults.test.ts", + "totalTime": 672, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "isCoreModule", + "tests": Array [ + TestCaseResult { + "name": "returns false if \`hasCoreModules\` is false.", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns true if \`hasCoreModules\` is true and \`moduleName\` is a core module.", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns false if \`hasCoreModules\` is true and \`moduleName\` is not a core module.", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns false if \`hasCoreModules\` is true and \`moduleNameMapper\` alias a module same name with core module", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "findNodeModule", + "tests": Array [ + TestCaseResult { + "name": "is possible to override the default resolver", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "passes packageFilter to the resolve module when using the default resolver", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "resolveModule", + "tests": Array [ + TestCaseResult { + "name": "is possible to resolve node modules", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "is possible to resolve node modules with custom extensions", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "is possible to resolve node modules with custom extensions and platforms", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "is possible to resolve node modules by resolving their realpath", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "is possible to specify custom resolve paths", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not confuse directories with files", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "getMockModule", + "tests": Array [ + TestCaseResult { + "name": "is possible to use custom resolver to resolve deps inside mock modules with moduleNameMapper", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "nodeModulesPaths", + "tests": Array [ + TestCaseResult { + "name": "provides custom module paths after node_modules", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "Resolver.getModulePaths() -> nodeModulesPaths()", + "tests": Array [ + TestCaseResult { + "name": "can resolve node modules relative to absolute paths in \\"moduleDirectories\\" on Windows platforms", + "result": "success", + "time": 21, + }, + TestCaseResult { + "name": "can resolve node modules relative to absolute paths in \\"moduleDirectories\\" on Posix platforms", + "result": "success", + "time": 8, + }, + ], + }, + ], + "name": "packages/jest-resolve/src/__tests__/resolve.test.ts", + "totalTime": 1308, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "toEqual", + "tests": Array [ + TestCaseResult { + "name": "should be reflexive", + "result": "success", + "time": 58, + }, + TestCaseResult { + "name": "should be symmetric", + "result": "success", + "time": 204, + }, + ], + }, + ], + "name": "packages/expect/src/__tests__/matchers-toEqual.property.test.ts", + "totalTime": 1062, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "snapshots needs update with npm test", + "result": "success", + "time": 250, + }, + TestCaseResult { + "name": "snapshots needs update with yarn test", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "snapshots all have results (no update)", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "snapshots all have results (after update)", + "result": "success", + "time": 10, + }, + ], + }, + ], + "name": "packages/jest-reporters/src/__tests__/SummaryReporter.test.js", + "totalTime": 366, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "readConfigs() throws when called without project paths", + "result": "success", + "time": 16, + }, + TestCaseResult { + "name": "readConfigs() loads async config file", + "result": "success", + "time": 10, + }, + TestCaseResult { + "name": "readConfigs() reject if async was rejected", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-config/src/__tests__/readConfigs.test.ts", + "totalTime": 135, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "generateEmptyCoverage", + "tests": Array [ + TestCaseResult { + "name": "generates an empty coverage object for a file without running it", + "result": "success", + "time": 370, + }, + TestCaseResult { + "name": "generates a null coverage result when using /* istanbul ignore file */", + "result": "success", + "time": 15, + }, + TestCaseResult { + "name": "generates a null coverage result when collectCoverage global config is false", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-reporters/src/__tests__/generateEmptyCoverage.test.js", + "totalTime": 1129, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "Any.asymmetricMatch()", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "Any.toAsymmetricMatcher()", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "Any.toAsymmetricMatcher() with function name", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "Any throws when called with empty constructor", + "result": "success", + "time": 47, + }, + TestCaseResult { + "name": "Anything matches any type", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "Anything does not match null and undefined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "Anything.toAsymmetricMatcher()", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "ArrayContaining matches", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "ArrayContaining does not match", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "ArrayContaining throws for non-arrays", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "ArrayNotContaining matches", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "ArrayNotContaining does not match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "ArrayNotContaining throws for non-arrays", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "ObjectContaining matches", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "ObjectContaining does not match", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "ObjectContaining matches defined properties", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "ObjectContaining matches prototype properties", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "ObjectContaining throws for non-objects", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "ObjectContaining does not mutate the sample", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "ObjectNotContaining matches", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "ObjectNotContaining does not match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "ObjectNotContaining inverts ObjectContaining", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "ObjectNotContaining throws for non-objects", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "StringContaining matches string against string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "StringContaining throws if expected value is not string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "StringContaining returns false if received value is not string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "StringNotContaining matches string against string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "StringNotContaining throws if expected value is not string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "StringNotContaining returns true if received value is not string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "StringMatching matches string against regexp", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "StringMatching matches string against string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "StringMatching throws if expected value is neither string nor regexp", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "StringMatching returns false if received value is not string", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "StringMatching returns false even if coerced non-string received value matches pattern", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "StringNotMatching matches string against regexp", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "StringNotMatching matches string against string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "StringNotMatching throws if expected value is neither string nor regexp", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "StringNotMatching returns true if received value is not string", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/expect/src/__tests__/asymmetricMatchers.test.ts", + "totalTime": 207, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "onRunComplete", + "tests": Array [ + TestCaseResult { + "name": "getLastError() returns an error when threshold is not met for global", + "result": "success", + "time": 299, + }, + TestCaseResult { + "name": "getLastError() returns an error when threshold is not met for file", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "getLastError() returns \`undefined\` when threshold is met", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "getLastError() returns an error when threshold is not met for non-covered file", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "getLastError() returns an error when threshold is not met for directory", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "getLastError() returns \`undefined\` when threshold is met for directory", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "getLastError() returns an error when there is no coverage data for a threshold", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "getLastError() returns 'undefined' when global threshold group is empty because PATH and GLOB threshold groups have matched all the - files in the coverage data. | 1ms | -| ✔️ | getLastError() returns 'undefined' when file and directory path - threshold groups overlap | 2ms | -| ✔️ | that if globs or paths are specified alongside global, coverage + files in the coverage data.", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "getLastError() returns 'undefined' when file and directory path + threshold groups overlap", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "that if globs or paths are specified alongside global, coverage data for matching paths will be subtracted from overall coverage - and thresholds will be applied independently | 1ms | -| ✔️ | that files are matched by all matching threshold groups | 1ms | -| ✔️ | that it passes custom options when creating reporters | 2ms | - -## packages/jest-snapshot/src/__tests__/InlineSnapshots.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | saveInlineSnapshots() replaces empty function call with a template literal | 63ms | -| ✔️ | saveInlineSnapshots() without prettier leaves formatting outside of snapshots alone | 7ms | -| ✔️ | saveInlineSnapshots() can handle typescript without prettier | 8ms | -| ✔️ | saveInlineSnapshots() can handle tsx without prettier | 6ms | -| ✔️ | saveInlineSnapshots() can handle flow and jsx without prettier | 35ms | -| ✔️ | saveInlineSnapshots() can use prettier to fix formatting for whole file | 17ms | -| ✔️ | saveInlineSnapshots() replaces existing template literal - babel parser | 5ms | -| ✔️ | saveInlineSnapshots() replaces existing template literal - flow parser | 169ms | -| ✔️ | saveInlineSnapshots() replaces existing template literal - typescript parser | 155ms | -| ✔️ | saveInlineSnapshots() replaces existing template literal with property matchers | 17ms | -| ✔️ | saveInlineSnapshots() creates template literal with property matchers | 5ms | -| ✔️ | saveInlineSnapshots() creates template literal with property matchers | 2ms | -| ✔️ | saveInlineSnapshots() throws if frame does not match | 22ms | -| ✔️ | saveInlineSnapshots() throws if multiple calls to to the same location | 3ms | -| ✔️ | saveInlineSnapshots() uses escaped backticks | 6ms | -| ✔️ | saveInlineSnapshots() works with non-literals in expect call | 8ms | -| ✔️ | saveInlineSnapshots() indents multi-line snapshots with spaces | 13ms | -| ✔️ | saveInlineSnapshots() does not re-indent error snapshots | 22ms | -| ✔️ | saveInlineSnapshots() does not re-indent already indented snapshots | 11ms | -| ✔️ | saveInlineSnapshots() indents multi-line snapshots with tabs | 12ms | -| ✔️ | saveInlineSnapshots() indents snapshots after prettier reformats | 16ms | -| ✔️ | saveInlineSnapshots() does not indent empty lines | 7ms | - -## packages/jest-config/src/__tests__/readConfig.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | readConfig() throws when an object is passed without a file path | 16ms | - -## packages/jest-watcher/src/lib/__tests__/scroll.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | When offset is -1 | 0ms | -| ✔️ | When offset is in the first set of items | 0ms | -| ✔️ | When offset is in the middle of the list | 0ms | -| ✔️ | When offset is at the end of the list | 1ms | -| ✔️ | When offset is at the end and size is smaller than max | 0ms | - -## packages/expect/src/__tests__/toThrowMatchers.test.ts ✔️ - -### toThrowError - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | to throw or not to throw | 1ms | -| ✔️ | invalid arguments | 0ms | -| ✔️ | invalid actual | 1ms | - -### toThrowError substring - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes | 0ms | -| ✔️ | did not throw at all | 2ms | -| ✔️ | threw, but message did not match (error) | 4ms | -| ✔️ | threw, but message did not match (non-error falsey) | 1ms | -| ✔️ | properly escapes strings when matching against errors | 37ms | -| ✔️ | threw, but message should not match (error) | 1ms | -| ✔️ | threw, but message should not match (non-error truthy) | 0ms | - -### toThrowError regexp - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes | 1ms | -| ✔️ | did not throw at all | 0ms | -| ✔️ | threw, but message did not match (error) | 1ms | -| ✔️ | threw, but message did not match (non-error falsey) | 8ms | -| ✔️ | threw, but message should not match (error) | 1ms | -| ✔️ | threw, but message should not match (non-error truthy) | 0ms | - -### toThrowError error class - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes | 1ms | -| ✔️ | did not throw at all | 0ms | -| ✔️ | threw, but class did not match (error) | 0ms | -| ✔️ | threw, but class did not match (non-error falsey) | 1ms | -| ✔️ | threw, but class should not match (error) | 0ms | -| ✔️ | threw, but class should not match (error subclass) | 1ms | -| ✔️ | threw, but class should not match (error subsubclass) | 4ms | - -### toThrowError error-message pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 1ms | - -### toThrowError error-message fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 1ms | -| ✔️ | multiline diff highlight incorrect expected space | 1ms | - -### toThrowError asymmetric any-Class pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrowError asymmetric any-Class fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 1ms | - -### toThrowError asymmetric anything pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrowError asymmetric anything fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 1ms | -| ✔️ | isNot true | 0ms | - -### toThrowError asymmetric no-symbol pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrowError asymmetric no-symbol fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 1ms | -| ✔️ | isNot true | 1ms | - -### toThrowError asymmetric objectContaining pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrowError asymmetric objectContaining fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 4ms | - -### toThrowError promise/async throws if Error-like object is returned - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes | 3ms | -| ✔️ | did not throw at all | 0ms | -| ✔️ | threw, but class did not match | 1ms | -| ✔️ | threw, but should not have | 0ms | - -### toThrowError expected is undefined - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | threw, but should not have (non-error falsey) | 0ms | - -### toThrow - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | to throw or not to throw | 0ms | -| ✔️ | invalid arguments | 1ms | -| ✔️ | invalid actual | 0ms | - -### toThrow substring - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes | 0ms | -| ✔️ | did not throw at all | 1ms | -| ✔️ | threw, but message did not match (error) | 0ms | -| ✔️ | threw, but message did not match (non-error falsey) | 1ms | -| ✔️ | properly escapes strings when matching against errors | 0ms | -| ✔️ | threw, but message should not match (error) | 1ms | -| ✔️ | threw, but message should not match (non-error truthy) | 0ms | - -### toThrow regexp - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes | 0ms | -| ✔️ | did not throw at all | 1ms | -| ✔️ | threw, but message did not match (error) | 0ms | -| ✔️ | threw, but message did not match (non-error falsey) | 0ms | -| ✔️ | threw, but message should not match (error) | 0ms | -| ✔️ | threw, but message should not match (non-error truthy) | 0ms | - -### toThrow error class - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes | 0ms | -| ✔️ | did not throw at all | 0ms | -| ✔️ | threw, but class did not match (error) | 1ms | -| ✔️ | threw, but class did not match (non-error falsey) | 0ms | -| ✔️ | threw, but class should not match (error) | 0ms | -| ✔️ | threw, but class should not match (error subclass) | 0ms | -| ✔️ | threw, but class should not match (error subsubclass) | 0ms | - -### toThrow error-message pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrow error-message fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 1ms | -| ✔️ | multiline diff highlight incorrect expected space | 4ms | - -### toThrow asymmetric any-Class pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrow asymmetric any-Class fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 1ms | -| ✔️ | isNot true | 0ms | - -### toThrow asymmetric anything pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrow asymmetric anything fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrow asymmetric no-symbol pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrow asymmetric no-symbol fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 1ms | - -### toThrow asymmetric objectContaining pass - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toThrow asymmetric objectContaining fail - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 1ms | -| ✔️ | isNot true | 0ms | - -### toThrow promise/async throws if Error-like object is returned - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes | 1ms | -| ✔️ | did not throw at all | 1ms | -| ✔️ | threw, but class did not match | 0ms | -| ✔️ | threw, but should not have | 1ms | - -### toThrow expected is undefined - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | threw, but should not have (non-error falsey) | 0ms | - -## packages/jest-validate/src/__tests__/validate.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | recursively validates default Jest config | 0ms | -| ✔️ | recursively validates default jest-validate config | 1ms | -| ✔️ | pretty prints valid config for Boolean | 1ms | -| ✔️ | pretty prints valid config for Array | 0ms | -| ✔️ | pretty prints valid config for String | 1ms | -| ✔️ | pretty prints valid config for Object | 0ms | -| ✔️ | pretty prints valid config for Function | 0ms | -| ✔️ | omits null and undefined config values | 0ms | -| ✔️ | recursively omits null and undefined config values | 0ms | -| ✔️ | treat async and non-async functions as equivalent | 0ms | -| ✔️ | treat async and non-async functions as equivalent | 0ms | -| ✔️ | treat async and non-async functions as equivalent | 0ms | -| ✔️ | treat async and non-async functions as equivalent | 0ms | -| ✔️ | respects recursiveDenylist | 1ms | -| ✔️ | displays warning for unknown config options | 1ms | -| ✔️ | displays warning for deprecated config options | 0ms | -| ✔️ | works with custom warnings | 1ms | -| ✔️ | works with custom errors | 0ms | -| ✔️ | works with custom deprecations | 1ms | -| ✔️ | works with multiple valid types | 0ms | -| ✔️ | reports errors nicely when failing with multiple valid options | 0ms | -| ✔️ | Repeated types within multiple valid examples are coalesced in error report | 1ms | -| ✔️ | Comments in config JSON using \\"//\\" key are not warned | 0ms | - -## packages/jest-snapshot/src/__tests__/SnapshotResolver.test.ts ✔️ - -### defaults - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns cached object if called multiple times | 0ms | -| ✔️ | resolveSnapshotPath() | 1ms | -| ✔️ | resolveTestPath() | 0ms | - -### custom resolver in project config - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns cached object if called multiple times | 4ms | -| ✔️ | resolveSnapshotPath() | 0ms | -| ✔️ | resolveTestPath() | 0ms | - -### malformed custom resolver in project config - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | missing resolveSnapshotPath throws | 8ms | -| ✔️ | missing resolveTestPath throws | 10ms | -| ✔️ | missing testPathForConsistencyCheck throws | 4ms | -| ✔️ | inconsistent functions throws | 20ms | - -## packages/jest-reporters/src/__tests__/CoverageWorker.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resolves to the result of generateEmptyCoverage upon success | 127ms | -| ✔️ | throws errors on invalid JavaScript | 5ms | - -## packages/babel-jest/src/__tests__/index.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Returns source string with inline maps when no transformOptions is passed | 177ms | -| ✔️ | can pass null to createTransformer | 17ms | - -### caller option correctly merges from defaults and options - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {\\"supportsDynamicImport\\":true,\\"supportsStaticESM\\":true} -> {\\"supportsDynamicImport\\":true,\\"supportsStaticESM\\":true} | 6ms | -| ✔️ | {\\"supportsDynamicImport\\":false,\\"supportsStaticESM\\":false} -> {\\"supportsDynamicImport\\":false,\\"supportsStaticESM\\":false} | 11ms | -| ✔️ | {\\"supportsStaticESM\\":false} -> {\\"supportsDynamicImport\\":false,\\"supportsStaticESM\\":false} | 13ms | -| ✔️ | {\\"supportsDynamicImport\\":true} -> {\\"supportsDynamicImport\\":true,\\"supportsStaticESM\\":false} | 11ms | - -## packages/jest-config/src/__tests__/resolveConfigPath.test.ts ✔️ - -### Resolve config path .js - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | file path with \\".js\\" | 9ms | -| ✔️ | directory path with \\".js\\" | 11ms | - -### Resolve config path .ts - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | file path with \\".ts\\" | 2ms | -| ✔️ | directory path with \\".ts\\" | 3ms | - -### Resolve config path .mjs - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | file path with \\".mjs\\" | 1ms | -| ✔️ | directory path with \\".mjs\\" | 7ms | - -### Resolve config path .cjs - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | file path with \\".cjs\\" | 2ms | -| ✔️ | directory path with \\".cjs\\" | 2ms | - -### Resolve config path .json - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | file path with \\".json\\" | 1ms | -| ✔️ | directory path with \\".json\\" | 3ms | - -## packages/jest-reporters/src/__tests__/VerboseReporter.test.js ✔️ - -### groupTestsBySuites - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should handle empty results | 293ms | -| ✔️ | should group A1 in A | 1ms | -| ✔️ | should group A1 in A; B1 in B | 0ms | -| ✔️ | should group A1, A2 in A | 0ms | -| ✔️ | should group A1, A2 in A; B1, B2 in B | 1ms | -| ✔️ | should group AB1 in AB | 0ms | -| ✔️ | should group AB1, AB2 in AB | 0ms | -| ✔️ | should group A1 in A; AB1 in AB | 0ms | -| ✔️ | should group AB1 in AB; A1 in A | 0ms | -| ✔️ | should group AB1 in AB; CD1 in CD | 1ms | -| ✔️ | should group ABC1 in ABC; BC1 in BC; D1 in D; A1 in A | 0ms | - -## packages/jest-snapshot/src/__tests__/utils.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | keyToTestName() | 18ms | -| ✔️ | testNameToKey | 0ms | -| ✔️ | saveSnapshotFile() works with | 7ms | -| ✔️ | saveSnapshotFile() works with | 0ms | -| ✔️ | getSnapshotData() throws when no snapshot version | 1ms | -| ✔️ | getSnapshotData() throws for older snapshot version | 1ms | -| ✔️ | getSnapshotData() throws for newer snapshot version | 1ms | -| ✔️ | getSnapshotData() does not throw for when updating | 0ms | -| ✔️ | getSnapshotData() marks invalid snapshot dirty when updating | 0ms | -| ✔️ | getSnapshotData() marks valid snapshot not dirty when updating | 0ms | -| ✔️ | escaping | 0ms | -| ✔️ | serialize handles \\\\r\\\\n | 1ms | - -### ExtraLineBreaks - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | 0 empty string | 0ms | -| ✔️ | 1 line has double quote marks at edges | 0ms | -| ✔️ | 1 line has spaces at edges | 1ms | -| ✔️ | 2 lines both are blank | 0ms | -| ✔️ | 2 lines have double quote marks at edges | 0ms | -| ✔️ | 2 lines first is blank | 4ms | -| ✔️ | 2 lines last is blank | 1ms | - -### removeLinesBeforeExternalMatcherTrap - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | contains external matcher trap | 0ms | -| ✔️ | doesn't contain external matcher trap | 0ms | - -### DeepMerge with property matchers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Correctly merges a nested object | 1ms | -| ✔️ | Correctly merges an object with an array of objects | 1ms | -| ✔️ | Correctly merges an object with an array of strings | 0ms | -| ✔️ | Correctly merges an array of objects | 1ms | -| ✔️ | Correctly merges an array of arrays | 0ms | - -## packages/jest-reporters/src/__tests__/NotifyReporter.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | test always | 2ms | -| ✔️ | test success | 8ms | -| ✔️ | test change | 1ms | -| ✔️ | test success-change | 0ms | -| ✔️ | test failure-change | 0ms | -| ✔️ | test always with rootDir | 1ms | -| ✔️ | test success with rootDir | 0ms | -| ✔️ | test change with rootDir | 0ms | -| ✔️ | test success-change with rootDir | 1ms | -| ✔️ | test failure-change with rootDir | 1ms | -| ✔️ | test always with moduleName | 0ms | -| ✔️ | test success with moduleName | 0ms | -| ✔️ | test change with moduleName | 1ms | -| ✔️ | test success-change with moduleName | 4ms | -| ✔️ | test failure-change with moduleName | 1ms | - -### node-notifier is an optional dependency - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | without node-notifier uses mock function that throws an error | 23ms | -| ✔️ | throws the error when require throws an unexpected error | 0ms | -| ✔️ | uses node-notifier when it is available | 1ms | - -## packages/jest-repl/src/__tests__/runtime_cli.test.js ✔️ - -### Runtime CLI - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fails with no path | 80ms | -| ✔️ | displays script output | 1197ms | -| ✔️ | always disables automocking | 1424ms | -| ✔️ | throws script errors | 1209ms | - -## packages/expect/src/__tests__/extend.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is available globally when matcher is unary | 1ms | -| ✔️ | is available globally when matcher is variadic | 1ms | -| ✔️ | exposes matcherUtils in context | 0ms | -| ✔️ | is ok if there is no message specified | 2ms | -| ✔️ | exposes an equality function to custom matchers | 0ms | -| ✔️ | defines asymmetric unary matchers | 3ms | -| ✔️ | defines asymmetric unary matchers that can be prefixed by not | 2ms | -| ✔️ | defines asymmetric variadic matchers | 0ms | -| ✔️ | defines asymmetric variadic matchers that can be prefixed by not | 0ms | -| ✔️ | prints the Symbol into the error message | 1ms | - -## packages/jest-source-map/src/__tests__/getCallsite.test.ts ✔️ - -### getCallsite - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | without source map | 1ms | -| ✔️ | ignores errors when fs throws | 1ms | -| ✔️ | reads source map file to determine line and column | 0ms | - -## packages/jest-config/src/__tests__/setFromArgv.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | maps special values to valid options | 0ms | -| ✔️ | maps regular values to themselves | 0ms | -| ✔️ | works with string objects | 0ms | -| ✔️ | explicit flags override those from --config | 0ms | - -## packages/jest-watcher/src/lib/__tests__/prompt.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls handler on change value | 2ms | -| ✔️ | calls handler on success prompt | 0ms | -| ✔️ | calls handler on cancel prompt | 1ms | - -## packages/jest-docblock/src/__tests__/index.test.ts ✔️ - -### docblock - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | extracts valid docblock with line comment | 0ms | -| ✔️ | extracts valid docblock | 1ms | -| ✔️ | extracts valid docblock with more comments | 0ms | -| ✔️ | extracts from invalid docblock | 0ms | -| ✔️ | returns extract and parsedocblock | 1ms | -| ✔️ | parses directives out of a docblock | 0ms | -| ✔️ | parses multiple of the same directives out of a docblock | 1ms | -| ✔️ | parses >=3 of the same directives out of a docblock | 0ms | -| ✔️ | parses directives out of a docblock with comments | 0ms | -| ✔️ | parses directives out of a docblock with line comments | 0ms | -| ✔️ | parses multiline directives | 0ms | -| ✔️ | parses multiline directives even if there are linecomments within the docblock | 1ms | -| ✔️ | supports slashes in @team directive | 0ms | -| ✔️ | extracts comments from docblock | 0ms | -| ✔️ | extracts multiline comments from docblock | 10ms | -| ✔️ | preserves leading whitespace in multiline comments from docblock | 0ms | -| ✔️ | removes leading newlines in multiline comments from docblock | 0ms | -| ✔️ | extracts comments from beginning and end of docblock | 0ms | -| ✔️ | preserve urls within a pragma's values | 0ms | -| ✔️ | strip linecomments from pragmas but preserve for comments | 0ms | -| ✔️ | extracts docblock comments as CRLF when docblock contains CRLF | 0ms | -| ✔️ | extracts docblock comments as LF when docblock contains LF | 0ms | -| ✔️ | strips the docblock out of a file that contains a top docblock | 0ms | -| ✔️ | returns a file unchanged if there is no top docblock to strip | 0ms | -| ✔️ | prints docblocks with no pragmas as empty string | 0ms | -| ✔️ | prints docblocks with one pragma on one line | 0ms | -| ✔️ | prints docblocks with multiple pragmas on multiple lines | 1ms | -| ✔️ | prints docblocks with multiple of the same pragma | 0ms | -| ✔️ | prints docblocks with pragmas | 1ms | -| ✔️ | prints docblocks with comments | 0ms | -| ✔️ | prints docblocks with comments and no keys | 0ms | -| ✔️ | prints docblocks with multiline comments | 0ms | -| ✔️ | prints docblocks that are parseable | 0ms | -| ✔️ | can augment existing docblocks with comments | 0ms | -| ✔️ | prints docblocks using CRLF if comments contains CRLF | 0ms | -| ✔️ | prints docblocks using LF if comments contains LF | 1ms | - -## packages/jest-snapshot/src/__tests__/dedentLines.test.ts ✔️ - -### dedentLines non-null - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | no lines | 3ms | -| ✔️ | one line empty string | 1ms | -| ✔️ | one line empty object | 0ms | -| ✔️ | one line self-closing element | 0ms | -| ✔️ | object value empty string | 0ms | -| ✔️ | object value string includes double-quote marks | 0ms | -| ✔️ | markup with props and text | 0ms | -| ✔️ | markup with components as props | 1ms | - -### dedentLines null - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | object key multi-line | 0ms | -| ✔️ | object value multi-line | 1ms | -| ✔️ | object key and value multi-line | 0ms | -| ✔️ | markup prop multi-line | 0ms | -| ✔️ | markup prop component with multi-line text | 1ms | -| ✔️ | markup text multi-line | 0ms | -| ✔️ | markup text multiple lines | 0ms | -| ✔️ | markup unclosed self-closing start tag | 1ms | -| ✔️ | markup unclosed because no end tag | 0ms | - -## packages/jest-config/src/__tests__/getMaxWorkers.test.ts ✔️ - -### getMaxWorkers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Returns 1 when runInBand | 0ms | -| ✔️ | Returns 1 when the OS CPUs are not available | 0ms | -| ✔️ | Returns the \`maxWorkers\` when specified | 0ms | -| ✔️ | Returns based on the number of cpus | 1ms | - -### getMaxWorkers % based - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | 50% = 2 workers | 0ms | -| ✔️ | < 0 workers should become 1 | 1ms | -| ✔️ | 0% shouldn't break | 0ms | - -## packages/jest-reporters/src/__tests__/utils.test.ts ✔️ - -### wrapAnsiString() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | wraps a long string containing ansi chars | 3ms | -| ✔️ | returns the string unaltered if given a terminal width of zero | 0ms | - -### trimAndFormatPath() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | trims dirname | 1ms | -| ✔️ | trims dirname (longer line width) | 1ms | -| ✔️ | trims dirname and basename | 0ms | -| ✔️ | does not trim anything | 0ms | -| ✔️ | split at the path.sep index | 1ms | - -### printDisplayName - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should default displayName color to white when displayName is a string | 0ms | -| ✔️ | should default displayName color to white when color is not a valid value | 1ms | -| ✔️ | should correctly print the displayName when color and name are valid values | 0ms | - -## packages/jest-snapshot/src/__tests__/throwMatcher.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throw matcher can take func | 2ms | - -### throw matcher from promise - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | can take error | 0ms | -| ✔️ | can take custom error | 1ms | - -## packages/jest-snapshot/src/__tests__/matcher.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | matcher returns matcher name, expected and actual values | 7ms | - -## packages/jest-config/src/__tests__/validatePattern.test.ts ✔️ - -### validate pattern function - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | without passed args returns true | 1ms | -| ✔️ | returns true for empty pattern | 0ms | -| ✔️ | returns true for valid pattern | 0ms | -| ✔️ | returns false for invalid pattern | 1ms | - -## packages/jest-resolve/src/__tests__/isBuiltinModule.test.ts ✔️ - -### isBuiltinModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return true for the \`path\` module | 0ms | -| ✔️ | should return false for the \`chalk\` module | 0ms | -| ✔️ | should return true for the \`_http_common\` module | 0ms | -| ✔️ | should return false for any internal node builtins | 0ms | - -## packages/jest-globals/src/__tests__/index.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throw when directly imported | 505ms | - -## packages/jest-regex-util/src/__tests__/index.test.ts ✔️ - -### replacePathSepForRegex() posix - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return the path | 1ms | - -### replacePathSepForRegex() win32 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should replace POSIX path separators | 1ms | -| ✔️ | should escape Windows path separators | 0ms | -| ✔️ | should not escape an escaped dot | 1ms | -| ✔️ | should not escape an escaped regexp symbol | 0ms | -| ✔️ | should escape Windows path separators inside groups | 0ms | -| ✔️ | should escape Windows path separator at the beginning | 1ms | -| ✔️ | should not escape several already escaped path separators | 0ms | - -## packages/jest-snapshot/src/__tests__/mockSerializer.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | mock with 0 calls and default name | 1ms | -| ✔️ | mock with 2 calls, 1 return, 1 throw | 1ms | -| ✔️ | mock with 0 calls and default name in React element | 0ms | -| ✔️ | mock with 0 calls and non-default name | 0ms | -| ✔️ | mock with 1 calls and non-default name via new in object | 1ms | -| ✔️ | mock with 1 calls in React element | 0ms | -| ✔️ | mock with 2 calls | 1ms | -| ✔️ | indent option | 0ms | -| ✔️ | min option | 1ms | -| ✔️ | maxDepth option | 0ms | - -## packages/jest-reporters/src/__tests__/getWatermarks.test.ts ✔️ - -### getWatermarks - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | that watermarks use thresholds as upper target | 1ms | -| ✔️ | that watermarks are created always created | 1ms | - -## packages/jest-reporters/src/__tests__/DefaultReporter.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | normal output, everything goes to stdout | 3ms | -| ✔️ | when using stderr as output, no stdout call is made | 1ms | - -## packages/jest-reporters/src/__tests__/getResultHeader.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should call \`terminal-link\` correctly | 0ms | -| ✔️ | should render the terminal link | 0ms | -| ✔️ | should display test time for slow test | 0ms | -| ✔️ | should not display test time for fast test | 0ms | - -## packages/expect/src/__tests__/toEqual-dom.test.ts ✔️ - -### toEqual duck type Text - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 0ms | -| ✔️ | isNot true | 0ms | - -### toEqual duck type Element - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 1ms | -| ✔️ | isNot true | 0ms | - -### toEqual duck type Fragment - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 1ms | -| ✔️ | isNot true | 0ms | - -### toEqual document createTextNode - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 1ms | -| ✔️ | isNot true | 1ms | - -### toEqual document createElement - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 1ms | -| ✔️ | isNot true | 0ms | - -### toEqual document createDocumentFragment - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | isNot false | 2ms | -| ✔️ | isNot true | 1ms | - -## packages/jest-environment-node/src/__tests__/node_environment.test.ts ✔️ - -### NodeEnvironment - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses a copy of the process object | 11ms | -| ✔️ | exposes process.on | 1ms | -| ✔️ | exposes global.global | 1ms | -| ✔️ | should configure setTimeout/setInterval to use the node api | 3ms | -| ✔️ | has modern fake timers implementation | 1ms | -| ✔️ | TextEncoder references the same global Uint8Array constructor | 0ms | - -## packages/jest-reporters/src/__tests__/getSnapshotStatus.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Retrieves the snapshot status | 0ms | -| ✔️ | Shows no snapshot updates if all snapshots matched | 1ms | -| ✔️ | Retrieves the snapshot status after a snapshot update | 0ms | - -## packages/jest-validate/src/__tests__/validateCLIOptions.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | validates yargs special options | 1ms | -| ✔️ | validates testURL | 1ms | -| ✔️ | fails for unknown option | 4ms | -| ✔️ | fails for multiple unknown options | 0ms | -| ✔️ | does not show suggestion when unrecognized cli param length <= 1 | 1ms | -| ✔️ | shows suggestion when unrecognized cli param length > 1 | 0ms | - -## packages/jest-reporters/src/__tests__/getSnapshotSummary.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | creates a snapshot summary | 0ms | -| ✔️ | creates a snapshot summary after an update | 0ms | -| ✔️ | creates a snapshot summary with multiple snapshot being written/updated | 0ms | -| ✔️ | returns nothing if there are no updates | 1ms | - -## packages/jest-watcher/src/lib/__tests__/formatTestNameByPattern.test.ts ✔️ - -### for multiline test name returns - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | test name with highlighted pattern and replaced line breaks | 2ms | - -### for one line test name with pattern in the head returns - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | test name with highlighted pattern | 0ms | -| ✔️ | test name with cutted tail and highlighted pattern | 0ms | -| ✔️ | test name with cutted tail and cutted highlighted pattern | 0ms | - -### for one line test name pattern in the middle - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | test name with highlighted pattern returns | 1ms | -| ✔️ | test name with cutted tail and highlighted pattern | 0ms | -| ✔️ | test name with cutted tail and cutted highlighted pattern | 0ms | -| ✔️ | test name with highlighted cutted | 0ms | - -### for one line test name pattern in the tail returns - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | test name with highlighted pattern | 1ms | -| ✔️ | test name with cutted tail and cutted highlighted pattern | 0ms | -| ✔️ | test name with highlighted cutted | 1ms | - -## packages/jest-transform/src/__tests__/shouldInstrument.test.ts ✔️ - -### shouldInstrument should return true - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | when testRegex is provided and file is not a test file | 5ms | -| ✔️ | when more than one testRegex is provided and filename is not a test file | 0ms | -| ✔️ | when testMatch is provided and file is not a test file | 3ms | -| ✔️ | when testPathIgnorePatterns is provided and file is not a test file | 1ms | -| ✔️ | when more than one testPathIgnorePatterns is provided and filename is not a test file | 0ms | -| ✔️ | when testRegex and testPathIgnorePatterns are provided and file is not a test file | 1ms | -| ✔️ | when testMatch and testPathIgnorePatterns are provided and file is not a test file | 0ms | -| ✔️ | should return true when file is in collectCoverageOnlyFrom when provided | 32ms | -| ✔️ | should return true when filename matches collectCoverageFrom | 0ms | -| ✔️ | should return true if the file is not in coveragePathIgnorePatterns | 0ms | -| ✔️ | should return true if file is a testfile but forceCoverageMatch is set | 1ms | - -### shouldInstrument should return false - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | if collectCoverage is falsy | 11ms | -| ✔️ | when testRegex is provided and filename is a test file | 0ms | -| ✔️ | when more than one testRegex is provided and filename matches one of the patterns | 0ms | -| ✔️ | when testMatch is provided and file is a test file | 0ms | -| ✔️ | when testRegex and testPathIgnorePatterns are provided and filename is a test file | 1ms | -| ✔️ | when testMatch and testPathIgnorePatterns are provided and file is a test file | 0ms | -| ✔️ | when file is not in collectCoverageOnlyFrom when provided | 0ms | -| ✔️ | when filename does not match collectCoverageFrom | 0ms | -| ✔️ | if the file is in coveragePathIgnorePatterns | 0ms | -| ✔️ | if file is in mock patterns | 1ms | -| ✔️ | if file is a globalSetup file | 0ms | -| ✔️ | if file is globalTeardown file | 0ms | -| ✔️ | if file is in setupFiles | 11ms | -| ✔️ | if file is in setupFilesAfterEnv | 0ms | - -## packages/jest-transform/src/__tests__/ScriptTransformer.test.ts ✔️ - -### ScriptTransformer - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | transforms a file properly | 204ms | -| ✔️ | does not transform Node core modules | 51ms | -| ✔️ | throws an error if \`process\` doesn't return a string or an objectcontaining \`code\` key with processed string | 79ms | -| ✔️ | throws an error if \`process\` doesn't defined | 42ms | -| ✔️ | throws an error if createTransformer returns object without \`process\` method | 98ms | -| ✔️ | shouldn't throw error without process method. But with corrent createTransformer method | 66ms | -| ✔️ | uses the supplied preprocessor | 45ms | -| ✔️ | uses multiple preprocessors | 35ms | -| ✔️ | writes source map if preprocessor supplies it | 26ms | -| ✔️ | writes source map if preprocessor inlines it | 38ms | -| ✔️ | warns of unparseable inlined source maps from the preprocessor | 67ms | -| ✔️ | writes source maps if given by the transformer | 32ms | -| ✔️ | does not write source map if not given by the transformer | 75ms | -| ✔️ | should write a source map for the instrumented file when transformed | 66ms | -| ✔️ | should write a source map for the instrumented file when not transformed | 66ms | -| ✔️ | passes expected transform options to getCacheKey | 73ms | -| ✔️ | creates transformer with config | 35ms | -| ✔️ | reads values from the cache | 93ms | -| ✔️ | reads values from the cache when the file contains colons | 84ms | -| ✔️ | should reuse the value from in-memory cache which is set by custom transformer | 25ms | -| ✔️ | does not reuse the in-memory cache between different projects | 37ms | -| ✔️ | preload transformer when using \`preloadTransformer\` | 36ms | - -## packages/jest-circus/src/__tests__/baseTest.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | simple test | 2145ms | -| ✔️ | failures | 707ms | - -## packages/jest-mock/src/__tests__/index.test.ts ✔️ - -### moduleMocker getMetadata - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the function \`name\` property | 2ms | -| ✔️ | mocks constant values | 1ms | -| ✔️ | does not retrieve metadata for arrays | 1ms | -| ✔️ | does not retrieve metadata for undefined | 1ms | -| ✔️ | does not retrieve metadata for null | 1ms | -| ✔️ | retrieves metadata for ES6 classes | 1ms | -| ✔️ | retrieves synchronous function metadata | 1ms | -| ✔️ | retrieves asynchronous function metadata | 1ms | -| ✔️ | retrieves metadata for object literals and it's members | 1ms | -| ✔️ | retrieves Date object metadata | 5ms | - -### moduleMocker generateFromMetadata - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | forwards the function name property | 1ms | -| ✔️ | fixes illegal function name properties | 1ms | -| ✔️ | special cases the mockConstructor name | 0ms | -| ✔️ | wont interfere with previous mocks on a shared prototype | 2ms | -| ✔️ | does not mock non-enumerable getters | 1ms | -| ✔️ | mocks getters of ES modules | 0ms | -| ✔️ | mocks ES2015 non-enumerable methods | 1ms | -| ✔️ | mocks ES2015 non-enumerable static properties and methods | 1ms | -| ✔️ | mocks methods in all the prototype chain (null prototype) | 1ms | -| ✔️ | does not mock methods from Object.prototype | 1ms | -| ✔️ | does not mock methods from Object.prototype (in mock context) | 1ms | -| ✔️ | does not mock methods from Function.prototype | 1ms | -| ✔️ | does not mock methods from Function.prototype (in mock context) | 1ms | -| ✔️ | does not mock methods from RegExp.prototype | 1ms | -| ✔️ | does not mock methods from RegExp.prototype (in mock context) | 1ms | -| ✔️ | mocks methods that are bound multiple times | 0ms | -| ✔️ | mocks methods that are bound after mocking | 0ms | -| ✔️ | mocks regexp instances | 1ms | -| ✔️ | mocks functions with numeric names | 1ms | -| ✔️ | mocks the method in the passed object itself | 0ms | -| ✔️ | should delete previously inexistent methods when restoring | 0ms | -| ✔️ | supports mock value returning undefined | 1ms | -| ✔️ | supports mock value once returning undefined | 1ms | -| ✔️ | mockReturnValueOnce mocks value just once | 1ms | -| ✔️ | supports mocking resolvable async functions | 0ms | -| ✔️ | supports mocking resolvable async functions only once | 0ms | -| ✔️ | supports mocking rejectable async functions | 0ms | -| ✔️ | supports mocking rejectable async functions only once | 1ms | -| ✔️ | tracks thrown errors without interfering with other tracking | 33ms | -| ✔️ | a call that throws undefined is tracked properly | 0ms | -| ✔️ | results of recursive calls are tracked properly | 1ms | -| ✔️ | test results of recursive calls from within the recursive call | 1ms | -| ✔️ | call mockClear inside recursive mock | 1ms | - -### moduleMocker generateFromMetadata mocked functions - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | tracks calls to mocks | 1ms | -| ✔️ | tracks instances made by mocks | 1ms | -| ✔️ | supports clearing mock calls | 1ms | -| ✔️ | supports clearing mocks | 7ms | -| ✔️ | supports clearing all mocks | 1ms | -| ✔️ | supports resetting mock return values | 1ms | -| ✔️ | supports resetting single use mock return values | 1ms | -| ✔️ | supports resetting mock implementations | 0ms | -| ✔️ | supports resetting single use mock implementations | 0ms | -| ✔️ | supports resetting all mocks | 2ms | -| ✔️ | maintains function arity | 0ms | - -### moduleMocker generateFromMetadata return values - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | tracks return values | 1ms | -| ✔️ | tracks mocked return values | 1ms | -| ✔️ | supports resetting return values | 1ms | - -### moduleMocker generateFromMetadata invocationCallOrder - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | tracks invocationCallOrder made by mocks | 1ms | -| ✔️ | supports clearing mock invocationCallOrder | 1ms | -| ✔️ | supports clearing all mocks invocationCallOrder | 1ms | -| ✔️ | handles a property called \`prototype\` | 1ms | - -### moduleMocker getMockImplementation - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should mock calls to a mock function | 1ms | - -### moduleMocker mockImplementationOnce - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should mock constructor | 1ms | -| ✔️ | should mock single call to a mock function | 1ms | -| ✔️ | should fallback to default mock function when no specific mock is available | 1ms | - -### moduleMocker - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | mockReturnValue does not override mockImplementationOnce | 1ms | -| ✔️ | mockImplementation resets the mock | 1ms | -| ✔️ | should recognize a mocked function | 0ms | -| ✔️ | default mockName is jest.fn() | 0ms | -| ✔️ | mockName sets the mock name | 1ms | -| ✔️ | mockName gets reset by mockReset | 1ms | -| ✔️ | mockName gets reset by mockRestore | 1ms | -| ✔️ | mockName is not reset by mockClear | 1ms | - -### moduleMocker spyOn - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should work | 1ms | -| ✔️ | should throw on invalid input | 28ms | -| ✔️ | supports restoring all spies | 2ms | -| ✔️ | should work with getters | 1ms | - -### moduleMocker spyOnProperty - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should work - getter | 2ms | -| ✔️ | should work - setter | 1ms | -| ✔️ | should throw on invalid input | 1ms | -| ✔️ | supports restoring all spies | 1ms | -| ✔️ | should work with getters on the prototype chain | 1ms | -| ✔️ | should work with setters on the prototype chain | 1ms | -| ✔️ | supports restoring all spies on the prototype chain | 1ms | - -## packages/jest-circus/src/__tests__/hooks.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | beforeEach is executed before each test in current/child describe blocks | 2304ms | -| ✔️ | multiple before each hooks in one describe are executed in the right order | 678ms | -| ✔️ | beforeAll is exectued correctly | 625ms | - -## packages/jest-runtime/src/__tests__/runtime_require_module.test.js ✔️ - -### Runtime requireModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | finds haste modules | 1124ms | -| ✔️ | provides \`module\` to modules | 26ms | -| ✔️ | provides \`module.parent\` to modules | 80ms | -| ✔️ | \`module.parent\` should be undefined for entrypoints | 25ms | -| ✔️ | resolve module.parent.require correctly | 49ms | -| ✔️ | resolve module.parent.filename correctly | 23ms | -| ✔️ | provides \`module.loaded\` to modules | 27ms | -| ✔️ | provides \`module.filename\` to modules | 36ms | -| ✔️ | provides \`module.paths\` to modules | 49ms | -| ✔️ | provides \`require.main\` to modules | 52ms | -| ✔️ | throws on non-existent haste modules | 68ms | -| ✔️ | finds relative-path modules without file extension | 46ms | -| ✔️ | finds relative-path modules with file extension | 21ms | -| ✔️ | throws on non-existent relative-path modules | 22ms | -| ✔️ | finds node core built-in modules | 48ms | -| ✔️ | finds and loads JSON files without file extension | 27ms | -| ✔️ | finds and loads JSON files with file extension | 29ms | -| ✔️ | requires a JSON file twice successfully | 34ms | -| ✔️ | provides manual mock when real module doesnt exist | 27ms | -| ✔️ | doesn't override real modules with manual mocks when explicitly unmocked | 166ms | -| ✔️ | resolves haste packages properly | 30ms | -| ✔️ | resolves platform extensions based on the default platform | 204ms | -| ✔️ | finds modules encoded in UTF-8 *with BOM* | 25ms | -| ✔️ | finds and loads JSON files encoded in UTF-8 *with BOM* | 21ms | -| ✔️ | should export a constructable Module class | 21ms | -| ✔️ | caches Module correctly | 23ms | - -### Runtime requireModule on node >=12.12.0 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | overrides module.createRequire | 28ms | - -## packages/jest-runtime/src/__tests__/runtime_mock.test.js ✔️ - -### Runtime jest.mock - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses explicitly set mocks instead of automocking | 635ms | -| ✔️ | sets virtual mock for non-existing module required from same directory | 29ms | -| ✔️ | sets virtual mock for non-existing module required from different directory | 18ms | - -### Runtime jest.setMock - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses explicitly set mocks instead of automocking | 21ms | - -## packages/jest-circus/src/__tests__/circusItTestError.test.ts ✔️ - -### test/it error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | it doesn't throw an error with valid arguments | 1ms | -| ✔️ | it throws error with missing callback function | 28ms | -| ✔️ | it throws an error when first argument isn't a string | 1ms | -| ✔️ | it throws an error when callback function is not a function | 0ms | -| ✔️ | test doesn't throw an error with valid arguments | 0ms | -| ✔️ | test throws error with missing callback function | 1ms | -| ✔️ | test throws an error when first argument isn't a string | 0ms | -| ✔️ | test throws an error when callback function is not a function | 1ms | - -## packages/jest-worker/src/base/__tests__/BaseWorkerPool.test.js ✔️ - -### BaseWorkerPool - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when createWorker is not defined | 15ms | -| ✔️ | creates and exposes n workers | 9ms | -| ✔️ | creates and expoeses n workers | 1ms | -| ✔️ | creates workers with the right options | 2ms | -| ✔️ | makes a non-existing relative worker throw | 3ms | -| ✔️ | create multiple workers with unique worker ids | 1ms | -| ✔️ | aggregates all stdouts and stderrs from all workers | 1ms | -| ✔️ | works when stdout and stderr are not piped to the parent | 1ms | - -### BaseWorkerPool end - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | ends all workers | 1ms | -| ✔️ | resolves with forceExited=false if workers exited gracefully | 1ms | -| ✔️ | force exits workers that do not exit gracefully and resolves with forceExited=true | 501ms | - -## packages/pretty-format/src/__tests__/Immutable.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not incorrectly match identity-obj-proxy as Immutable object | 1ms | - -### Immutable.OrderedSet - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports an empty collection {min: true} | 1ms | -| ✔️ | supports an empty collection {min: false} | 0ms | -| ✔️ | supports a single string element | 1ms | -| ✔️ | supports a single integer element | 0ms | -| ✔️ | supports multiple string elements {min: true} | 1ms | -| ✔️ | supports multiple string elements {min: false} | 0ms | -| ✔️ | supports multiple integer elements {min: true} | 0ms | -| ✔️ | supports multiple integer elements {min: false} | 1ms | -| ✔️ | supports object elements {min: true} | 0ms | -| ✔️ | supports object elements {min: false} | 0ms | -| ✔️ | supports React elements {min: true} | 1ms | -| ✔️ | supports React elements {min: false} | 1ms | - -### Immutable.List - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports an empty collection {min: true} | 0ms | -| ✔️ | supports an empty collection {min: false} | 0ms | -| ✔️ | supports a single string element | 0ms | -| ✔️ | supports a single integer element | 1ms | -| ✔️ | supports multiple string elements {min: true} | 0ms | -| ✔️ | supports multiple string elements {min: false} | 0ms | -| ✔️ | supports multiple integer elements {min: true} | 0ms | -| ✔️ | supports multiple integer elements {min: false} | 1ms | -| ✔️ | supports object elements {min: true} | 0ms | -| ✔️ | supports object elements {min: false} | 0ms | -| ✔️ | supports React elements {min: true} | 0ms | -| ✔️ | supports React elements {min: false} | 1ms | - -### Immutable.Stack - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports an empty collection {min: true} | 0ms | -| ✔️ | supports an empty collection {min: false} | 0ms | -| ✔️ | supports a single string element | 1ms | -| ✔️ | supports a single integer element | 0ms | -| ✔️ | supports multiple string elements {min: true} | 0ms | -| ✔️ | supports multiple string elements {min: false} | 0ms | -| ✔️ | supports multiple integer elements {min: true} | 1ms | -| ✔️ | supports multiple integer elements {min: false} | 0ms | -| ✔️ | supports object elements {min: true} | 0ms | -| ✔️ | supports object elements {min: false} | 0ms | -| ✔️ | supports React elements {min: true} | 1ms | -| ✔️ | supports React elements {min: false} | 0ms | - -### Immutable.Set - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports an empty collection {min: true} | 0ms | -| ✔️ | supports an empty collection {min: false} | 1ms | -| ✔️ | supports a single string element | 0ms | -| ✔️ | supports a single integer element | 0ms | -| ✔️ | supports multiple string elements {min: true} | 0ms | -| ✔️ | supports multiple string elements {min: false} | 1ms | -| ✔️ | supports multiple integer elements {min: true} | 0ms | -| ✔️ | supports multiple integer elements {min: false} | 1ms | -| ✔️ | supports object elements {min: true} | 0ms | -| ✔️ | supports object elements {min: false} | 0ms | -| ✔️ | supports React elements {min: true} | 0ms | -| ✔️ | supports React elements {min: false} | 1ms | - -### Immutable.Map - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports an empty collection {min: true} | 0ms | -| ✔️ | supports an empty collection {min: false} | 0ms | -| ✔️ | supports an object with single key | 0ms | -| ✔️ | supports an object with multiple keys {min: true} | 1ms | -| ✔️ | supports an object with multiple keys {min: false} | 0ms | -| ✔️ | supports object elements {min: true} | 0ms | -| ✔️ | supports object elements {min: false} | 0ms | -| ✔️ | supports React elements {min: true} | 0ms | -| ✔️ | supports React elements {min: false} | 0ms | - -### Immutable.OrderedMap - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports an empty collection {min: true} | 0ms | -| ✔️ | supports an empty collection {min: false} | 0ms | -| ✔️ | supports an object with single key | 1ms | -| ✔️ | supports an object with multiple keys {min: true} | 0ms | -| ✔️ | supports an object with multiple keys {min: false} | 0ms | -| ✔️ | supports object elements {min: true} | 0ms | -| ✔️ | supports object elements {min: false} | 1ms | -| ✔️ | supports React elements {min: true} | 0ms | -| ✔️ | supports React elements {min: false} | 0ms | -| ✔️ | supports non-string keys | 2ms | - -### Immutable.Record - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports an empty record {min: true} | 0ms | -| ✔️ | supports an empty record {min: false} | 0ms | -| ✔️ | supports a record with descriptive name | 0ms | -| ✔️ | supports a record without descriptive name | 0ms | -| ✔️ | supports a record with values {min: true} | 0ms | -| ✔️ | supports a record with values {min: false} | 1ms | -| ✔️ | supports a record with Map value {min: true} | 0ms | -| ✔️ | supports a record with Map value {min: false} | 0ms | -| ✔️ | supports imbricated Record {min: true} | 0ms | -| ✔️ | supports imbricated Record {min: false} | 0ms | - -### indentation of heterogeneous collections - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | empty Immutable.List as child of Object | 0ms | -| ✔️ | empty Immutable.Map as child of Array | 0ms | -| ✔️ | non-empty Array as child of Immutable.Map | 0ms | -| ✔️ | non-empty Object as child of Immutable.List | 0ms | - -### indent option - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | default implicit: 2 spaces | 0ms | -| ✔️ | default explicit: 2 spaces | 0ms | -| ✔️ | non-default: 0 spaces | 0ms | -| ✔️ | non-default: 4 spaces | 0ms | - -### maxDepth option - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Immutable.List as child of Object | 0ms | -| ✔️ | Immutable.Map as child of Array | 0ms | -| ✔️ | Immutable.Seq as child of Immutable.Map | 1ms | -| ✔️ | Immutable.Map as descendants in immutable collection | 0ms | - -### Immutable.Seq - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports an empty sequence from array {min: true} | 0ms | -| ✔️ | supports an empty sequence from array {min: false} | 1ms | -| ✔️ | supports a non-empty sequence from array {min: true} | 0ms | -| ✔️ | supports a non-empty sequence from array {min: false} | 0ms | -| ✔️ | supports a non-empty sequence from arguments | 0ms | -| ✔️ | supports an empty sequence from object {min: true} | 0ms | -| ✔️ | supports an empty sequence from object {min: false} | 14ms | -| ✔️ | supports a non-empty sequence from object {min: true} | 0ms | -| ✔️ | supports a non-empty sequence from object {min: false} | 0ms | -| ✔️ | supports a sequence of entries from Immutable.Map | 1ms | -| ✔️ | supports a sequence of values from ECMAScript Set | 0ms | -| ✔️ | supports a sequence of values from Immutable.List | 0ms | -| ✔️ | supports a sequence of values from Immutable.Set | 1ms | -| ✔️ | supports a sequence of values from Immutable.Stack | 0ms | - -### Immutable.Seq lazy entries - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | from object properties | 0ms | -| ✔️ | from Immutable.Map entries | 1ms | - -### Immutable.Seq lazy values - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | from Immutable.Range | 0ms | -| ✔️ | from iterator | 2ms | -| ✔️ | from array items | 0ms | -| ✔️ | from Immutable.List values | 1ms | -| ✔️ | from ECMAScript Set values | 0ms | - -## packages/jest-runtime/src/__tests__/Runtime-sourceMaps.test.js ✔️ - -### Runtime requireModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | installs source maps if available | 560ms | - -## packages/jest-environment-jsdom/src/__tests__/jsdom_environment.test.ts ✔️ - -### JSDomEnvironment - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should configure setTimeout/setInterval to use the browser api | 47ms | -| ✔️ | has modern fake timers implementation | 19ms | - -## packages/babel-plugin-jest-hoist/src/__tests__/hoistPlugin.test.ts ✔️ - -### babel-plugin-jest-hoist - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | automatic react runtime | 102ms | -| ✔️ | top level mocking | 18ms | -| ✔️ | within a block | 10ms | -| ✔️ | within a block with no siblings | 7ms | - -## packages/jest-worker/src/workers/__tests__/ChildProcessWorker.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes fork options down to child_process.fork, adding the defaults | 26ms | -| ✔️ | passes workerId to the child process and assign it to 1-indexed env.JEST_WORKER_ID | 2ms | -| ✔️ | initializes the child process with the given workerPath | 2ms | -| ✔️ | stops initializing the worker after the amount of retries is exceeded | 25ms | -| ✔️ | provides stdout and stderr from the child processes | 5ms | -| ✔️ | sends the task to the child process | 10ms | -| ✔️ | resends the task to the child process after a retry | 2ms | -| ✔️ | calls the onProcessStart method synchronously if the queue is empty | 2ms | -| ✔️ | can send multiple messages to parent | 3ms | -| ✔️ | creates error instances for known errors | 3ms | -| ✔️ | throws when the child process returns a strange message | 2ms | -| ✔️ | does not restart the child if it cleanly exited | 2ms | -| ✔️ | resolves waitForExit() after the child process cleanly exited | 1ms | -| ✔️ | restarts the child when the child process dies | 13ms | -| ✔️ | sends SIGTERM when forceExit() is called | 1ms | -| ✔️ | sends SIGKILL some time after SIGTERM | 1ms | -| ✔️ | does not send SIGKILL if SIGTERM exited the process | 2ms | - -## packages/jest-each/src/__tests__/array.test.ts ✔️ - -### jest-each .test - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 1ms | -| ✔️ | throws an error when called with an empty array | 9ms | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 0ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 1ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 0ms | -| ✔️ | calls global with given timeout | 4ms | - -### jest-each .test.concurrent - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 1ms | -| ✔️ | throws an error when called with an empty array | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 0ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 1ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 0ms | -| ✔️ | calls global with given timeout | 0ms | - -### jest-each .test.concurrent.only - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 1ms | -| ✔️ | throws an error when called with an empty array | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 1ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 0ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 0ms | -| ✔️ | calls global with given timeout | 1ms | - -### jest-each .test.concurrent.skip - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 0ms | -| ✔️ | throws an error when called with an empty array | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 1ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 0ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 1ms | -| ✔️ | calls global with given timeout | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using sprintf format | 1ms | -| ✔️ | calls global with title with placeholder values correctly interpolated | 0ms | - -### jest-each .test.only - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 0ms | -| ✔️ | throws an error when called with an empty array | 1ms | -| ✔️ | calls global with given title | 6ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using printf format | 4ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 0ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 1ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 0ms | -| ✔️ | calls global with given timeout | 0ms | - -### jest-each .it - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 1ms | -| ✔️ | throws an error when called with an empty array | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 0ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 1ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 0ms | -| ✔️ | calls global with given timeout | 0ms | - -### jest-each .fit - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 1ms | -| ✔️ | throws an error when called with an empty array | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 0ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 1ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 1ms | -| ✔️ | calls global with given timeout | 0ms | - -### jest-each .it.only - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 0ms | -| ✔️ | throws an error when called with an empty array | 1ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 0ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 1ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 1ms | -| ✔️ | calls global with given timeout | 0ms | - -### jest-each .describe - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 0ms | -| ✔️ | throws an error when called with an empty array | 1ms | -| ✔️ | calls global with given title | 3ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 1ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 0ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 0ms | -| ✔️ | calls global with given timeout | 1ms | - -### jest-each .fdescribe - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 0ms | -| ✔️ | throws an error when called with an empty array | 0ms | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 1ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 0ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 0ms | -| ✔️ | calls global with given timeout | 0ms | - -### jest-each .describe.only - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with an array | 0ms | -| ✔️ | throws an error when called with an empty array | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using printf format | 0ms | -| ✔️ | does not call global test with title containing more param values than sprintf placeholders | 0ms | -| ✔️ | calls global test title with %p placeholder injected at the correct positions | 1ms | -| ✔️ | does not calls global test title with %p placeholder when no data is supplied at given position | 0ms | -| ✔️ | calls global with cb function containing all parameters of each test case when given 1d array | 1ms | -| ✔️ | calls global with cb function containing all parameters of each test case 2d array | 0ms | -| ✔️ | calls global with given timeout | 0ms | - -### jest-each done callback - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls [ 'test' ] with done when cb function has more args than params of given test row | 1ms | -| ✔️ | calls [ 'test', 'only' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'test', 'concurrent' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'test', 'concurrent', 'only' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'it' ] with done when cb function has more args than params of given test row | 1ms | -| ✔️ | calls [ 'fit' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'it', 'only' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | does not call [ 'describe' ] with done when test function has more args than params of given test row | 1ms | -| ✔️ | does not call [ 'fdescribe' ] with done when test function has more args than params of given test row | 2ms | -| ✔️ | does not call [ 'describe', 'only' ] with done when test function has more args than params of given test row | 1ms | - -### jest-each .xtest - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using sprintf format | 0ms | -| ✔️ | calls global with title with placeholder values correctly interpolated | 1ms | - -### jest-each .test.skip - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 6ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using sprintf format | 0ms | -| ✔️ | calls global with title with placeholder values correctly interpolated | 1ms | - -### jest-each .xit - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using sprintf format | 0ms | -| ✔️ | calls global with title with placeholder values correctly interpolated | 1ms | - -### jest-each .it.skip - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using sprintf format | 0ms | -| ✔️ | calls global with title with placeholder values correctly interpolated | 0ms | - -### jest-each .xdescribe - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using sprintf format | 0ms | -| ✔️ | calls global with title with placeholder values correctly interpolated | 1ms | - -### jest-each .describe.skip - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using sprintf format | 0ms | -| ✔️ | calls global with title with placeholder values correctly interpolated | 0ms | - -## packages/jest-each/src/__tests__/template.test.ts ✔️ - -### jest-each .test - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 2ms | -| ✔️ | throws error when there are additional words in second column heading | 0ms | -| ✔️ | throws error when there are additional words in last column heading | 0ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 1ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 1ms | -| ✔️ | throws error when there are no arguments for given headings | 1ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 0ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 2ms | -| ✔️ | throws an error when called with an empty string | 2ms | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 5ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | -| ✔️ | calls global with title containing $key in multiple positions | 1ms | -| ✔️ | calls global with title containing $key.path | 0ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 0ms | -| ✔️ | calls global with cb function with object built from table headings and values | 1ms | -| ✔️ | calls global with given timeout | 0ms | -| ✔️ | formats primitive values using .toString() | 1ms | - -### jest-each .test.concurrent - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 0ms | -| ✔️ | throws error when there are additional words in second column heading | 1ms | -| ✔️ | throws error when there are additional words in last column heading | 1ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 1ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 1ms | -| ✔️ | throws error when there are no arguments for given headings | 0ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 0ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 33ms | -| ✔️ | throws an error when called with an empty string | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | -| ✔️ | calls global with title containing $key in multiple positions | 1ms | -| ✔️ | calls global with title containing $key.path | 0ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 1ms | -| ✔️ | calls global with cb function with object built from table headings and values | 0ms | -| ✔️ | calls global with given timeout | 0ms | -| ✔️ | formats primitive values using .toString() | 1ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | - -### jest-each .test.concurrent.only - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 0ms | -| ✔️ | throws error when there are additional words in second column heading | 1ms | -| ✔️ | throws error when there are additional words in last column heading | 0ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 1ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 0ms | -| ✔️ | throws error when there are no arguments for given headings | 12ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 1ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 0ms | -| ✔️ | throws an error when called with an empty string | 0ms | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | -| ✔️ | calls global with title containing $key in multiple positions | 0ms | -| ✔️ | calls global with title containing $key.path | 0ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 1ms | -| ✔️ | calls global with cb function with object built from table headings and values | 0ms | -| ✔️ | calls global with given timeout | 1ms | -| ✔️ | formats primitive values using .toString() | 0ms | - -### jest-each .test.concurrent.skip - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 0ms | -| ✔️ | throws error when there are additional words in second column heading | 6ms | -| ✔️ | throws error when there are additional words in last column heading | 0ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 0ms | -| ✔️ | does not throw error when there is only one column | 1ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 0ms | -| ✔️ | throws error when there are no arguments for given headings | 0ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 0ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 0ms | -| ✔️ | throws an error when called with an empty string | 1ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | -| ✔️ | calls global with title containing $key in multiple positions | 0ms | -| ✔️ | calls global with title containing $key.path | 1ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 0ms | -| ✔️ | calls global with cb function with object built from table headings and values | 0ms | -| ✔️ | calls global with given timeout | 1ms | -| ✔️ | formats primitive values using .toString() | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | - -### jest-each .test.only - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 0ms | -| ✔️ | throws error when there are additional words in second column heading | 1ms | -| ✔️ | throws error when there are additional words in last column heading | 0ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 1ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 0ms | -| ✔️ | throws error when there are no arguments for given headings | 1ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 0ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 1ms | -| ✔️ | throws an error when called with an empty string | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | -| ✔️ | calls global with title containing $key in multiple positions | 1ms | -| ✔️ | calls global with title containing $key.path | 0ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 0ms | -| ✔️ | calls global with cb function with object built from table headings and values | 1ms | -| ✔️ | calls global with given timeout | 0ms | -| ✔️ | formats primitive values using .toString() | 0ms | - -### jest-each .it - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 0ms | -| ✔️ | throws error when there are additional words in second column heading | 0ms | -| ✔️ | throws error when there are additional words in last column heading | 1ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 0ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 1ms | -| ✔️ | throws error when there are no arguments for given headings | 0ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 0ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 0ms | -| ✔️ | throws an error when called with an empty string | 0ms | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | -| ✔️ | calls global with title containing $key in multiple positions | 5ms | -| ✔️ | calls global with title containing $key.path | 0ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 1ms | -| ✔️ | calls global with cb function with object built from table headings and values | 0ms | -| ✔️ | calls global with given timeout | 1ms | -| ✔️ | formats primitive values using .toString() | 0ms | - -### jest-each .fit - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 0ms | -| ✔️ | throws error when there are additional words in second column heading | 1ms | -| ✔️ | throws error when there are additional words in last column heading | 0ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 1ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 0ms | -| ✔️ | throws error when there are no arguments for given headings | 1ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 0ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 0ms | -| ✔️ | throws an error when called with an empty string | 3ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | -| ✔️ | calls global with title containing $key in multiple positions | 0ms | -| ✔️ | calls global with title containing $key.path | 0ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 1ms | -| ✔️ | calls global with cb function with object built from table headings and values | 0ms | -| ✔️ | calls global with given timeout | 1ms | -| ✔️ | formats primitive values using .toString() | 0ms | - -### jest-each .it.only - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 1ms | -| ✔️ | throws error when there are additional words in second column heading | 0ms | -| ✔️ | throws error when there are additional words in last column heading | 1ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 0ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 1ms | -| ✔️ | throws error when there are no arguments for given headings | 0ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 1ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 0ms | -| ✔️ | throws an error when called with an empty string | 0ms | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | -| ✔️ | calls global with title containing $key in multiple positions | 0ms | -| ✔️ | calls global with title containing $key.path | 0ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 1ms | -| ✔️ | calls global with cb function with object built from table headings and values | 0ms | -| ✔️ | calls global with given timeout | 1ms | -| ✔️ | formats primitive values using .toString() | 0ms | - -### jest-each .describe - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 1ms | -| ✔️ | throws error when there are additional words in second column heading | 0ms | -| ✔️ | throws error when there are additional words in last column heading | 0ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 0ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 0ms | -| ✔️ | throws error when there are no arguments for given headings | 1ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 28ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 1ms | -| ✔️ | throws an error when called with an empty string | 1ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 4ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | -| ✔️ | calls global with title containing $key in multiple positions | 0ms | -| ✔️ | calls global with title containing $key.path | 0ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 1ms | -| ✔️ | calls global with cb function with object built from table headings and values | 1ms | -| ✔️ | calls global with given timeout | 17ms | -| ✔️ | formats primitive values using .toString() | 1ms | - -### jest-each .fdescribe - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 1ms | -| ✔️ | throws error when there are additional words in second column heading | 1ms | -| ✔️ | throws error when there are additional words in last column heading | 0ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 1ms | -| ✔️ | does not throw error when there is only one column | 1ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 1ms | -| ✔️ | throws error when there are no arguments for given headings | 1ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 1ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 51ms | -| ✔️ | throws an error when called with an empty string | 1ms | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | -| ✔️ | calls global with title containing $key in multiple positions | 0ms | -| ✔️ | calls global with title containing $key.path | 1ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 0ms | -| ✔️ | calls global with cb function with object built from table headings and values | 1ms | -| ✔️ | calls global with given timeout | 0ms | -| ✔️ | formats primitive values using .toString() | 0ms | - -### jest-each .describe.only - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error when there are additional words in first column heading | 1ms | -| ✔️ | throws error when there are additional words in second column heading | 0ms | -| ✔️ | throws error when there are additional words in last column heading | 0ms | -| ✔️ | does not throw error when there is additional words in template after heading row | 1ms | -| ✔️ | does not throw error when there is only one column | 0ms | -| ✔️ | does not throw error when there is only one column with additional words in template after heading | 0ms | -| ✔️ | throws error when there are no arguments for given headings | 1ms | -| ✔️ | throws error when there are fewer arguments than headings when given one row | 0ms | -| ✔️ | throws error when there are fewer arguments than headings over multiple rows | 0ms | -| ✔️ | throws an error when called with an empty string | 0ms | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | -| ✔️ | calls global with title containing $key in multiple positions | 0ms | -| ✔️ | calls global with title containing $key.path | 1ms | -| ✔️ | calls global with title containing last seen object when $key.path is invalid | 0ms | -| ✔️ | calls global with cb function with object built from table headings and values | 0ms | -| ✔️ | calls global with given timeout | 1ms | -| ✔️ | formats primitive values using .toString() | 0ms | - -### jest-each done callback - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls [ 'test' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'test', 'only' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'test', 'concurrent', 'only' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'it' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'fit' ] with done when cb function has more args than params of given test row | 0ms | -| ✔️ | calls [ 'it', 'only' ] with done when cb function has more args than params of given test row | 1ms | -| ✔️ | does not call [ 'describe' ] with done when test function has more args than params of given test row | 7ms | -| ✔️ | does not call [ 'fdescribe' ] with done when test function has more args than params of given test row | 2ms | -| ✔️ | does not call [ 'describe', 'only' ] with done when test function has more args than params of given test row | 0ms | - -### jest-each .xtest - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 2ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | - -### jest-each .test.skip - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | - -### jest-each .xit - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | - -### jest-each .it.skip - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 1ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | - -### jest-each .xdescribe - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 1ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 0ms | - -### jest-each .describe.skip - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls global with given title | 0ms | -| ✔️ | calls global with given title when multiple tests cases exist | 0ms | -| ✔️ | calls global with title containing param values when using $variable format | 1ms | - -## packages/pretty-format/src/__tests__/react.test.tsx ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports a single element with no props or children | 5ms | -| ✔️ | supports a single element with non-empty string child | 0ms | -| ✔️ | supports a single element with empty string child | 1ms | -| ✔️ | supports a single element with non-zero number child | 0ms | -| ✔️ | supports a single element with zero number child | 0ms | -| ✔️ | supports a single element with mixed children | 1ms | -| ✔️ | supports props with strings | 1ms | -| ✔️ | supports props with multiline strings | 0ms | -| ✔️ | supports props with numbers | 1ms | -| ✔️ | supports a single element with a function prop | 0ms | -| ✔️ | supports a single element with a object prop | 1ms | -| ✔️ | supports an element with and object prop and children | 1ms | -| ✔️ | supports an element with complex props and mixed children | 0ms | -| ✔️ | escapes children properly | 1ms | -| ✔️ | supports everything all together | 1ms | -| ✔️ | sorts props in nested components | 1ms | -| ✔️ | supports a single element with React elements as props | 0ms | -| ✔️ | supports a single element with React elements with props | 1ms | -| ✔️ | supports a single element with custom React elements with props | 0ms | -| ✔️ | supports a single element with custom React elements with props (using displayName) | 1ms | -| ✔️ | supports a single element with custom React elements with props (using anonymous function) | 0ms | -| ✔️ | supports a single element with custom React elements with a child | 1ms | -| ✔️ | supports undefined element type | 0ms | -| ✔️ | supports a fragment with no children | 0ms | -| ✔️ | supports a fragment with string child | 0ms | -| ✔️ | supports a fragment with element child | 0ms | -| ✔️ | supports suspense | 1ms | -| ✔️ | supports a single element with React elements with a child | 0ms | -| ✔️ | supports a single element with React elements with children | 0ms | -| ✔️ | supports a single element with React elements with array children | 0ms | -| ✔️ | supports array of elements | 1ms | -| ✔️ | min option | 0ms | -| ✔️ | ReactElement plugin highlights syntax | 1ms | -| ✔️ | ReactTestComponent plugin highlights syntax | 0ms | -| ✔️ | throws if theme option is null | 50ms | -| ✔️ | throws if theme option is not of type \\"object\\" | 0ms | -| ✔️ | throws if theme option has value that is undefined in ansi-styles | 1ms | -| ✔️ | ReactElement plugin highlights syntax with color from theme option | 0ms | -| ✔️ | ReactTestComponent plugin highlights syntax with color from theme option | 0ms | -| ✔️ | supports forwardRef with a child | 0ms | -| ✔️ | supports context Provider with a child | 1ms | -| ✔️ | supports context Consumer with a child | 0ms | -| ✔️ | ReactElement removes undefined props | 0ms | -| ✔️ | ReactTestComponent removes undefined props | 1ms | - -### test object for subset match - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | undefined props | 0ms | -| ✔️ | undefined children | 0ms | - -### indent option - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | default implicit: 2 spaces | 1ms | -| ✔️ | default explicit: 2 spaces | 0ms | -| ✔️ | non-default: 0 spaces | 1ms | -| ✔️ | non-default: 4 spaces | 0ms | - -### maxDepth option - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | elements | 1ms | -| ✔️ | array of elements | 0ms | - -### React.memo without displayName - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | renders the component name | 0ms | - -### React.memo with displayName - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | renders the displayName of component before memoizing | 0ms | -| ✔️ | renders the displayName of memoized component | 0ms | - -## packages/jest-circus/src/__tests__/afterAll.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | tests are not marked done until their parent afterAll runs | 2231ms | -| ✔️ | describe block cannot have hooks and no tests | 697ms | -| ✔️ | describe block _can_ have hooks if a child describe block has tests | 650ms | -| ✔️ | describe block hooks must not run if describe block is skipped | 599ms | -| ✔️ | child tests marked with todo should not run if describe block is skipped | 677ms | -| ✔️ | child tests marked with only should not run if describe block is skipped | 724ms | - -## packages/pretty-format/src/__tests__/prettyFormat.test.ts ✔️ - -### prettyFormat() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints empty arguments | 1ms | -| ✔️ | prints arguments | 0ms | -| ✔️ | prints an empty array | 0ms | -| ✔️ | prints an array with items | 0ms | -| ✔️ | prints a empty typed array | 0ms | -| ✔️ | prints a typed array with items | 1ms | -| ✔️ | prints an array buffer | 0ms | -| ✔️ | prints a nested array | 0ms | -| ✔️ | prints true | 0ms | -| ✔️ | prints false | 1ms | -| ✔️ | prints an error | 0ms | -| ✔️ | prints a typed error with a message | 0ms | -| ✔️ | prints a function constructor | 0ms | -| ✔️ | prints an anonymous callback function | 0ms | -| ✔️ | prints an anonymous assigned function | 0ms | -| ✔️ | prints a named function | 0ms | -| ✔️ | prints a named generator function | 0ms | -| ✔️ | can customize function names | 1ms | -| ✔️ | prints Infinity | 0ms | -| ✔️ | prints -Infinity | 0ms | -| ✔️ | prints an empty map | 0ms | -| ✔️ | prints a map with values | 1ms | -| ✔️ | prints a map with non-string keys | 0ms | -| ✔️ | prints NaN | 0ms | -| ✔️ | prints null | 1ms | -| ✔️ | prints a positive number | 0ms | -| ✔️ | prints a negative number | 0ms | -| ✔️ | prints zero | 1ms | -| ✔️ | prints negative zero | 0ms | -| ✔️ | prints a positive bigint | 7ms | -| ✔️ | prints a negative bigint | 0ms | -| ✔️ | prints zero bigint | 0ms | -| ✔️ | prints negative zero bigint | 0ms | -| ✔️ | prints a date | 1ms | -| ✔️ | prints an invalid date | 0ms | -| ✔️ | prints an empty object | 1ms | -| ✔️ | prints an object with properties | 0ms | -| ✔️ | prints an object with properties and symbols | 0ms | -| ✔️ | prints an object without non-enumerable properties which have string key | 1ms | -| ✔️ | prints an object without non-enumerable properties which have symbol key | 0ms | -| ✔️ | prints an object with sorted properties | 0ms | -| ✔️ | prints regular expressions from constructors | 0ms | -| ✔️ | prints regular expressions from literals | 1ms | -| ✔️ | prints regular expressions {escapeRegex: false} | 0ms | -| ✔️ | prints regular expressions {escapeRegex: true} | 1ms | -| ✔️ | escapes regular expressions nested inside object | 4ms | -| ✔️ | prints an empty set | 0ms | -| ✔️ | prints a set with values | 1ms | -| ✔️ | prints a string | 0ms | -| ✔️ | prints and escape a string | 0ms | -| ✔️ | doesn't escape string with {excapeString: false} | 0ms | -| ✔️ | prints a string with escapes | 0ms | -| ✔️ | prints a multiline string | 0ms | -| ✔️ | prints a multiline string as value of object property | 1ms | -| ✔️ | prints a symbol | 0ms | -| ✔️ | prints undefined | 0ms | -| ✔️ | prints a WeakMap | 0ms | -| ✔️ | prints a WeakSet | 0ms | -| ✔️ | prints deeply nested objects | 1ms | -| ✔️ | prints circular references | 0ms | -| ✔️ | prints parallel references | 0ms | -| ✔️ | can customize the max depth | 0ms | -| ✔️ | throws on invalid options | 32ms | -| ✔️ | supports plugins | 1ms | -| ✔️ | supports plugins that return empty string | 0ms | -| ✔️ | throws if plugin does not return a string | 0ms | -| ✔️ | throws PrettyFormatPluginError if test throws an error | 1ms | -| ✔️ | throws PrettyFormatPluginError if print throws an error | 1ms | -| ✔️ | throws PrettyFormatPluginError if serialize throws an error | 0ms | -| ✔️ | supports plugins with deeply nested arrays (#24) | 0ms | -| ✔️ | should call plugins on nested basic values | 1ms | -| ✔️ | prints objects with no constructor | 0ms | -| ✔️ | prints identity-obj-proxy with string constructor | 0ms | -| ✔️ | calls toJSON and prints its return value | 0ms | -| ✔️ | calls toJSON and prints an internal representation. | 0ms | -| ✔️ | calls toJSON only on functions | 1ms | -| ✔️ | does not call toJSON recursively | 0ms | -| ✔️ | calls toJSON on Sets | 0ms | -| ✔️ | disables toJSON calls through options | 0ms | - -### prettyFormat() indent option - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | default implicit: 2 spaces | 0ms | -| ✔️ | default explicit: 2 spaces | 0ms | -| ✔️ | non-default: 0 spaces | 1ms | -| ✔️ | non-default: 4 spaces | 0ms | - -### prettyFormat() min - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints some basic values in min mode | 0ms | -| ✔️ | prints some complex values in min mode | 0ms | -| ✔️ | does not allow indent !== 0 in min mode | 1ms | - -## packages/jest-worker/src/__tests__/Farm.test.js ✔️ - -### Farm - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | sends a request to one worker | 1ms | -| ✔️ | sends four requests to four unique workers | 1ms | -| ✔️ | handles null computeWorkerKey, sending to first worker | 1ms | -| ✔️ | sends the same worker key to the same worker | 9ms | -| ✔️ | returns the result if the call worked | 1ms | -| ✔️ | throws if the call failed | 0ms | -| ✔️ | checks that once a sticked task finishes, next time is sent to that worker | 0ms | -| ✔️ | checks that even before a sticked task finishes, next time is sent to that worker | 8ms | -| ✔️ | checks that locking works, and jobs are never lost | 1ms | -| ✔️ | can receive custom messages from workers | 0ms | - -## packages/jest-worker/src/workers/__tests__/threadChild.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | lazily requires the file | 26ms | -| ✔️ | calls initialize with the correct arguments | 1ms | -| ✔️ | returns results immediately when function is synchronous | 15ms | -| ✔️ | returns results when it gets resolved if function is asynchronous | 22ms | -| ✔️ | calls the main module if the method call is \\"default\\" | 1ms | -| ✔️ | calls the main export if the method call is \\"default\\" and it is a Babel transpiled one | 1ms | -| ✔️ | removes the message listener on END message | 0ms | -| ✔️ | calls the teardown method | 1ms | -| ✔️ | throws if an invalid message is detected | 1ms | -| ✔️ | throws if child is not forked | 1ms | - -## packages/jest-jasmine2/src/__tests__/queueRunner.test.ts ✔️ - -### queueRunner - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs every function in the queue. | 1ms | -| ✔️ | exposes \`fail\` to \`next\`. | 1ms | -| ✔️ | passes errors to \`onException\`. | 0ms | -| ✔️ | passes an error to \`onException\` on timeout. | 4ms | -| ✔️ | calls \`fail\` with arguments | 1ms | -| ✔️ | calls \`fail\` when done(error) is invoked | 0ms | - -## packages/jest-worker/src/workers/__tests__/NodeThreadsWorker.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passes fork options down to child_process.fork, adding the defaults | 67ms | -| ✔️ | passes workerId to the thread and assign it to env.JEST_WORKER_ID | 1ms | -| ✔️ | initializes the thread with the given workerPath | 1ms | -| ✔️ | stops initializing the worker after the amount of retries is exceeded | 26ms | -| ✔️ | provides stdout and stderr from the threads | 5ms | -| ✔️ | sends the task to the thread | 1ms | -| ✔️ | resends the task to the thread after a retry | 2ms | -| ✔️ | calls the onProcessStart method synchronously if the queue is empty | 4ms | -| ✔️ | can send multiple messages to parent | 2ms | -| ✔️ | creates error instances for known errors | 5ms | -| ✔️ | throws when the thread returns a strange message | 1ms | -| ✔️ | does not restart the thread if it cleanly exited | 0ms | -| ✔️ | resolves waitForExit() after the thread cleanly exited | 0ms | -| ✔️ | restarts the thread when the thread dies | 0ms | -| ✔️ | terminates the thread when forceExit() is called | 0ms | - -## packages/jest-worker/src/workers/__tests__/processChild.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | lazily requires the file | 28ms | -| ✔️ | calls initialize with the correct arguments | 1ms | -| ✔️ | returns results immediately when function is synchronous | 13ms | -| ✔️ | returns results when it gets resolved if function is asynchronous | 23ms | -| ✔️ | calls the main module if the method call is \\"default\\" | 0ms | -| ✔️ | calls the main export if the method call is \\"default\\" and it is a Babel transpiled one | 1ms | -| ✔️ | removes the message listener on END message | 1ms | -| ✔️ | calls the teardown method | 0ms | -| ✔️ | throws if an invalid message is detected | 1ms | -| ✔️ | throws if child is not forked | 1ms | - -## packages/jest-runner/src/__tests__/testRunner.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | injects the serializable module map into each worker in watch mode | 2ms | -| ✔️ | assign process.env.JEST_WORKER_ID = 1 when in runInBand mode | 1ms | - -## packages/jest-circus/src/__tests__/hooksError.test.ts ✔️ - -### beforeEach hooks error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | beforeEach throws an error when \\"String\\" is provided as a first argument to it | 19ms | -| ✔️ | beforeEach throws an error when 1 is provided as a first argument to it | 1ms | -| ✔️ | beforeEach throws an error when [] is provided as a first argument to it | 0ms | -| ✔️ | beforeEach throws an error when {} is provided as a first argument to it | 0ms | -| ✔️ | beforeEach throws an error when Symbol(hello) is provided as a first argument to it | 1ms | -| ✔️ | beforeEach throws an error when true is provided as a first argument to it | 1ms | -| ✔️ | beforeEach throws an error when null is provided as a first argument to it | 0ms | -| ✔️ | beforeEach throws an error when undefined is provided as a first argument to it | 1ms | - -### beforeAll hooks error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | beforeAll throws an error when \\"String\\" is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when 1 is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when [] is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when {} is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when Symbol(hello) is provided as a first argument to it | 1ms | -| ✔️ | beforeAll throws an error when true is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when null is provided as a first argument to it | 1ms | -| ✔️ | beforeAll throws an error when undefined is provided as a first argument to it | 0ms | - -### afterEach hooks error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | afterEach throws an error when \\"String\\" is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when 1 is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when [] is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when {} is provided as a first argument to it | 1ms | -| ✔️ | afterEach throws an error when Symbol(hello) is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when true is provided as a first argument to it | 1ms | -| ✔️ | afterEach throws an error when null is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when undefined is provided as a first argument to it | 0ms | - -### afterAll hooks error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | afterAll throws an error when \\"String\\" is provided as a first argument to it | 1ms | -| ✔️ | afterAll throws an error when 1 is provided as a first argument to it | 0ms | -| ✔️ | afterAll throws an error when [] is provided as a first argument to it | 1ms | -| ✔️ | afterAll throws an error when {} is provided as a first argument to it | 3ms | -| ✔️ | afterAll throws an error when Symbol(hello) is provided as a first argument to it | 5ms | -| ✔️ | afterAll throws an error when true is provided as a first argument to it | 1ms | -| ✔️ | afterAll throws an error when null is provided as a first argument to it | 0ms | -| ✔️ | afterAll throws an error when undefined is provided as a first argument to it | 0ms | - -## packages/jest-serializer/src/__tests__/index.test.ts ✔️ - -### Using V8 implementation - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws the error with an invalid serialization | 6ms | - -### Using V8 implementation Object 0 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes/deserializes in memory | 1ms | -| ✔️ | serializes/deserializes in disk | 0ms | - -### Using V8 implementation Object 1 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes/deserializes in memory | 0ms | -| ✔️ | serializes/deserializes in disk | 0ms | - -### Using V8 implementation Object 2 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes/deserializes in memory | 1ms | -| ✔️ | serializes/deserializes in disk | 1ms | - -### Using V8 implementation Object 3 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes/deserializes in memory | 0ms | -| ✔️ | serializes/deserializes in disk | 1ms | - -### Using V8 implementation Object 4 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes/deserializes in memory | 0ms | -| ✔️ | serializes/deserializes in disk | 0ms | - -### Using V8 implementation Object 5 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes/deserializes in memory | 1ms | -| ✔️ | serializes/deserializes in disk | 0ms | - -### Using V8 implementation Object 6 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes/deserializes in memory | 1ms | -| ✔️ | serializes/deserializes in disk | 0ms | - -### Using V8 implementation Object 7 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes/deserializes in memory | 1ms | -| ✔️ | serializes/deserializes in disk | 0ms | - -## packages/jest-console/src/__tests__/bufferedConsole.test.ts ✔️ - -### CustomConsole assert - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | do not log when the assertion is truthy | 1ms | -| ✔️ | do not log when the assertion is truthy and there is a message | 0ms | -| ✔️ | log the assertion error when the assertion is falsy | 33ms | -| ✔️ | log the assertion error when the assertion is falsy with another message argument | 0ms | - -### CustomConsole count - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | count using the default counter | 0ms | -| ✔️ | count using the a labeled counter | 0ms | -| ✔️ | countReset restarts default counter | 1ms | -| ✔️ | countReset restarts custom counter | 1ms | - -### CustomConsole group - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | group without label | 1ms | -| ✔️ | group with label | 1ms | -| ✔️ | groupEnd remove the indentation of the current group | 1ms | -| ✔️ | groupEnd can not remove the indentation below the starting point | 1ms | - -### CustomConsole time - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return the time between time() and timeEnd() on default timer | 0ms | -| ✔️ | should return the time between time() and timeEnd() on custom timer | 1ms | - -### CustomConsole dir - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should print the deepest value | 2ms | - -### CustomConsole timeLog - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return the time between time() and timeEnd() on default timer | 0ms | -| ✔️ | should return the time between time() and timeEnd() on custom timer | 1ms | -| ✔️ | default timer with data | 1ms | -| ✔️ | custom timer with data | 1ms | - -### CustomConsole console - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be able to initialize console instance | 0ms | - -## packages/jest-console/src/__tests__/CustomConsole.test.ts ✔️ - -### CustomConsole log - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should print to stdout | 1ms | - -### CustomConsole error - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should print to stderr | 1ms | - -### CustomConsole warn - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should print to stderr | 1ms | - -### CustomConsole assert - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | do not log when the assertion is truthy | 1ms | -| ✔️ | do not log when the assertion is truthy and there is a message | 0ms | -| ✔️ | log the assertion error when the assertion is falsy | 18ms | -| ✔️ | log the assertion error when the assertion is falsy with another message argument | 0ms | - -### CustomConsole count - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | count using the default counter | 1ms | -| ✔️ | count using the a labeled counter | 3ms | -| ✔️ | countReset restarts default counter | 1ms | -| ✔️ | countReset restarts custom counter | 0ms | - -### CustomConsole group - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | group without label | 0ms | -| ✔️ | group with label | 0ms | -| ✔️ | groupEnd remove the indentation of the current group | 0ms | -| ✔️ | groupEnd can not remove the indentation below the starting point | 0ms | - -### CustomConsole time - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return the time between time() and timeEnd() on default timer | 0ms | -| ✔️ | should return the time between time() and timeEnd() on custom timer | 0ms | - -### CustomConsole dir - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should print the deepest value | 0ms | - -### CustomConsole timeLog - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return the time between time() and timeEnd() on default timer | 1ms | -| ✔️ | should return the time between time() and timeEnd() on custom timer | 0ms | -| ✔️ | default timer with data | 1ms | -| ✔️ | custom timer with data | 0ms | - -### CustomConsole console - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be able to initialize console instance | 0ms | - -## packages/pretty-format/src/__tests__/DOMCollection.test.ts ✔️ - -### DOMCollection plugin for object properties - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports DOMStringMap | 1ms | -| ✔️ | supports NamedNodeMap | 0ms | -| ✔️ | supports config.min option | 1ms | - -### DOMCollection plugin for list items - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports HTMLCollection for getElementsByTagName | 2ms | -| ✔️ | supports HTMLCollection for children | 1ms | -| ✔️ | supports config.maxDepth option | 0ms | -| ✔️ | supports NodeList for querySelectorAll | 4ms | -| ✔️ | supports NodeList for childNodes | 1ms | -| ✔️ | supports HTMLOptionsCollection for select options | 0ms | -| ✔️ | supports HTMLCollection for form elements | 1ms | - -## packages/jest-circus/src/__tests__/circusItTodoTestError.test.ts ✔️ - -### test/it.todo error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | todo throws error when given no arguments | 35ms | -| ✔️ | todo throws error when given more than one argument | 1ms | -| ✔️ | todo throws error when given none string description | 0ms | - -## packages/jest-test-sequencer/src/__tests__/test_sequencer.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | sorts by file size if there is no timing information | 1ms | -| ✔️ | sorts based on timing information | 1ms | -| ✔️ | sorts based on failures and timing information | 0ms | -| ✔️ | sorts based on failures, timing information and file size | 1ms | -| ✔️ | writes the cache based on results without existing cache | 0ms | -| ✔️ | returns failed tests in sorted order | 1ms | -| ✔️ | writes the cache based on the results | 13ms | -| ✔️ | works with multiple contexts | 0ms | - -## packages/jest-jasmine2/src/__tests__/Suite.test.ts ✔️ - -### Suite - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | doesn't throw on addExpectationResult when there are no children | 0ms | - -## packages/pretty-format/src/__tests__/AsymmetricMatcher.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports any(String) | 1ms | -| ✔️ | supports nested any(String) | 0ms | -| ✔️ | supports any(Function) | 0ms | -| ✔️ | supports nested any(Function) | 0ms | -| ✔️ | supports any(Array) | 0ms | -| ✔️ | supports nested any(Array) | 1ms | -| ✔️ | supports any(Object) | 0ms | -| ✔️ | supports nested any(Object) | 0ms | -| ✔️ | supports any(RegExp) | 0ms | -| ✔️ | supports nested any(RegExp) | 0ms | -| ✔️ | supports any(Symbol) | 0ms | -| ✔️ | supports nested any(Symbol) | 0ms | -| ✔️ | supports any(Function) | 0ms | -| ✔️ | supports nested any(Function) | 0ms | -| ✔️ | supports any() | 1ms | -| ✔️ | supports nested any() | 0ms | -| ✔️ | supports any(namedFuntction) | 0ms | -| ✔️ | supports nested any(namedFuntction) | 0ms | -| ✔️ | anything() | 0ms | -| ✔️ | arrayContaining() | 0ms | -| ✔️ | arrayNotContaining() | 0ms | -| ✔️ | objectContaining() | 0ms | -| ✔️ | objectNotContaining() | 1ms | -| ✔️ | stringContaining(string) | 0ms | -| ✔️ | not.stringContaining(string) | 0ms | -| ✔️ | stringMatching(string) | 0ms | -| ✔️ | stringMatching(regexp) | 0ms | -| ✔️ | stringMatching(regexp) {escapeRegex: false} | 3ms | -| ✔️ | stringMatching(regexp) {escapeRegex: true} | 13ms | -| ✔️ | stringNotMatching(string) | 1ms | -| ✔️ | supports multiple nested asymmetric matchers | 0ms | -| ✔️ | min option | 0ms | - -### indent option - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | default implicit: 2 spaces | 0ms | -| ✔️ | default explicit: 2 spaces | 0ms | -| ✔️ | non-default: 0 spaces | 0ms | -| ✔️ | non-default: 4 spaces | 0ms | - -### maxDepth option - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | matchers as leaf nodes | 0ms | -| ✔️ | matchers as internal nodes | 1ms | - -## packages/pretty-format/src/__tests__/ConvertAnsi.test.ts ✔️ - -### ConvertAnsi plugin - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports style.red | 1ms | -| ✔️ | supports style.green | 0ms | -| ✔️ | supports style.reset | 1ms | -| ✔️ | supports style.bold | 0ms | -| ✔️ | supports style.dim | 1ms | -| ✔️ | does not support other colors | 0ms | - -## packages/jest-console/src/__tests__/getConsoleOutput.test.ts ✔️ - -### getConsoleOutput - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | takes noStackTrace and pass it on for assert | 2ms | -| ✔️ | takes noStackTrace and pass it on for count | 0ms | -| ✔️ | takes noStackTrace and pass it on for debug | 1ms | -| ✔️ | takes noStackTrace and pass it on for dir | 1ms | -| ✔️ | takes noStackTrace and pass it on for dirxml | 0ms | -| ✔️ | takes noStackTrace and pass it on for error | 0ms | -| ✔️ | takes noStackTrace and pass it on for group | 1ms | -| ✔️ | takes noStackTrace and pass it on for groupCollapsed | 0ms | -| ✔️ | takes noStackTrace and pass it on for info | 0ms | -| ✔️ | takes noStackTrace and pass it on for log | 1ms | -| ✔️ | takes noStackTrace and pass it on for time | 1ms | -| ✔️ | takes noStackTrace and pass it on for warn | 0ms | - -## packages/jest-jasmine2/src/__tests__/expectationResultFactory.test.ts ✔️ - -### expectationResultFactory - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the result if passed. | 1ms | -| ✔️ | returns the result if failed. | 5ms | -| ✔️ | returns the result if failed (with \`message\`). | 1ms | -| ✔️ | returns the result if failed (with \`error\`). | 1ms | -| ✔️ | returns the error name if the error message is empty | 0ms | -| ✔️ | returns the result if failed (with \`error\` as a string). | 0ms | -| ✔️ | returns the result if failed (with \`error.stack\` not as a string). | 1ms | - -## packages/jest-each/src/__tests__/index.test.ts ✔️ - -### array .add - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the result of adding 0 to 0 | 0ms | -| ✔️ | returns the result of adding 0 to 1 | 0ms | -| ✔️ | returns the result of adding 1 to 1 | 1ms | - -### concurrent .add - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the result of adding 0 to 0 | 0ms | -| ✔️ | returns the result of adding 0 to 1 | 0ms | -| ✔️ | returns the result of adding 1 to 1 | 0ms | - -### template .add - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns 0 when given 0 and 0 | 0ms | -| ✔️ | returns 1 when given 0 and 1 | 0ms | -| ✔️ | returns 2 when given 1 and 1 | 1ms | - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws an error when not called with the right number of arguments | 0ms | - -## packages/pretty-format/src/__tests__/DOMElement.test.ts ✔️ - -### pretty-format - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints global window as constructor name alone | 0ms | - -### DOMElement Plugin - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports a single HTML element | 2ms | -| ✔️ | supports an HTML element with a class property | 1ms | -| ✔️ | supports an HTML element with a title property | 1ms | -| ✔️ | escapes double quote in attribute value | 1ms | -| ✔️ | supports an HTML element with a single attribute | 1ms | -| ✔️ | supports an HTML element with multiple attributes | 0ms | -| ✔️ | supports an HTML element with attribute and text content | 3ms | -| ✔️ | supports an element with text content | 0ms | -| ✔️ | supports nested elements | 0ms | -| ✔️ | supports nested elements with attributes | 0ms | -| ✔️ | supports nested elements with attribute and text content | 0ms | -| ✔️ | supports nested elements with text content | 1ms | -| ✔️ | supports siblings | 4ms | -| ✔️ | supports multiline text node in pre | 1ms | -| ✔️ | supports multiline text node preceding span in pre | 8ms | -| ✔️ | supports multiline text node in textarea | 1ms | -| ✔️ | supports empty text node | 1ms | -| ✔️ | supports non-empty text node | 1ms | -| ✔️ | supports comment node | 3ms | -| ✔️ | supports fragment node | 1ms | -| ✔️ | supports custom elements | 2ms | -| ✔️ | supports SVG elements | 3ms | -| ✔️ | supports indentation for array of elements | 2ms | -| ✔️ | supports maxDepth option | 2ms | -| ✔️ | handles \`tagName\` not being a string | 1ms | - -### DOMElement Plugin matches constructor name of SVG elements - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | jsdom 9 and 10 | 1ms | -| ✔️ | jsdom 11 | 0ms | - -## packages/jest-test-result/src/__tests__/formatTestResults.test.ts ✔️ - -### formatTestResults - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | includes test full name | 1ms | - -## packages/jest-worker/src/__tests__/index.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | exposes the right API using default working | 85ms | -| ✔️ | exposes the right API using passed worker | 1ms | -| ✔️ | breaks if any of the forbidden methods is tried to be exposed | 27ms | -| ✔️ | works with minimal options | 3ms | -| ✔️ | does not let make calls after the farm is ended | 2ms | -| ✔️ | does not let end the farm after it is ended | 4ms | -| ✔️ | calls doWork | 9ms | -| ✔️ | calls getStderr and getStdout from worker | 1ms | - -## packages/jest-jasmine2/src/__tests__/hooksError.test.ts ✔️ - -### beforeEach hooks error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | beforeEach throws an error when \\"String\\" is provided as a first argument to it | 2ms | -| ✔️ | beforeEach throws an error when 1 is provided as a first argument to it | 1ms | -| ✔️ | beforeEach throws an error when [] is provided as a first argument to it | 0ms | -| ✔️ | beforeEach throws an error when {} is provided as a first argument to it | 1ms | -| ✔️ | beforeEach throws an error when Symbol(hello) is provided as a first argument to it | 0ms | -| ✔️ | beforeEach throws an error when true is provided as a first argument to it | 0ms | -| ✔️ | beforeEach throws an error when null is provided as a first argument to it | 0ms | -| ✔️ | beforeEach throws an error when undefined is provided as a first argument to it | 0ms | - -### beforeAll hooks error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | beforeAll throws an error when \\"String\\" is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when 1 is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when [] is provided as a first argument to it | 1ms | -| ✔️ | beforeAll throws an error when {} is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when Symbol(hello) is provided as a first argument to it | 1ms | -| ✔️ | beforeAll throws an error when true is provided as a first argument to it | 0ms | -| ✔️ | beforeAll throws an error when null is provided as a first argument to it | 1ms | -| ✔️ | beforeAll throws an error when undefined is provided as a first argument to it | 1ms | - -### afterEach hooks error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | afterEach throws an error when \\"String\\" is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when 1 is provided as a first argument to it | 1ms | -| ✔️ | afterEach throws an error when [] is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when {} is provided as a first argument to it | 1ms | -| ✔️ | afterEach throws an error when Symbol(hello) is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when true is provided as a first argument to it | 0ms | -| ✔️ | afterEach throws an error when null is provided as a first argument to it | 1ms | -| ✔️ | afterEach throws an error when undefined is provided as a first argument to it | 0ms | - -### afterAll hooks error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | afterAll throws an error when \\"String\\" is provided as a first argument to it | 1ms | -| ✔️ | afterAll throws an error when 1 is provided as a first argument to it | 0ms | -| ✔️ | afterAll throws an error when [] is provided as a first argument to it | 1ms | -| ✔️ | afterAll throws an error when {} is provided as a first argument to it | 1ms | -| ✔️ | afterAll throws an error when Symbol(hello) is provided as a first argument to it | 7ms | -| ✔️ | afterAll throws an error when true is provided as a first argument to it | 0ms | -| ✔️ | afterAll throws an error when null is provided as a first argument to it | 1ms | -| ✔️ | afterAll throws an error when undefined is provided as a first argument to it | 0ms | - -## packages/jest-jasmine2/src/__tests__/reporter.test.ts ✔️ - -### Jasmine2Reporter - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | reports nested suites | 2ms | - -## packages/jest-jasmine2/src/__tests__/todoError.test.ts ✔️ - -### test/it.todo error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | it throws error when given no arguments | 2ms | -| ✔️ | it throws error when given more than one argument | 0ms | -| ✔️ | it throws error when given none string description | 1ms | - -## packages/jest-jasmine2/src/__tests__/itTestError.test.ts ✔️ - -### test/it error throwing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | it throws error with missing callback function | 2ms | -| ✔️ | it throws an error when first argument isn't a string | 1ms | -| ✔️ | it throws an error when callback function is not a function | 0ms | -| ✔️ | test throws error with missing callback function | 0ms | -| ✔️ | test throws an error when first argument isn't a string | 1ms | -| ✔️ | test throws an error when callback function is not a function | 0ms | - -## packages/jest-jasmine2/src/__tests__/iterators.test.ts ✔️ - -### iterators - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works for arrays | 10ms | -| ✔️ | works for custom iterables | 1ms | -| ✔️ | works for Sets | 0ms | -| ✔️ | works for Maps | 1ms | - -## packages/jest-jasmine2/src/__tests__/pTimeout.test.ts ✔️ - -### pTimeout - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls \`clearTimeout\` and resolves when \`promise\` resolves. | 1ms | -| ✔️ | calls \`clearTimeout\` and rejects when \`promise\` rejects. | 1ms | -| ✔️ | calls \`onTimeout\` on timeout. | 0ms | - -## packages/jest-create-cache-key-function/src/__tests__/index.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | creation of a cache key | 33ms | - -## packages/jest-jasmine2/src/__tests__/concurrent.test.ts ✔️ - -### concurrent - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should add 1 to number | 1ms | -| ✔️ | should add 1 to number | 0ms | -| ✔️ | should add 1 to number | 0ms | - -## packages/jest-jasmine2/src/__tests__/itToTestAlias.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | global.test | 0ms | - -## packages/pretty-format/src/__tests__/ReactElement.test.ts ✔️ - -### ReactElement Plugin - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | serializes forwardRef without displayName | 1ms | -| ✔️ | serializes forwardRef with displayName | 0ms | -| ✔️ | serializes forwardRef component with displayName | 0ms | - -## packages/jest-worker/src/__tests__/FifoQueue.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the shared tasks in FIFO ordering | 1ms | -| ✔️ | returns the worker specific tasks in FIFO ordering | 1ms | -| ✔️ | maintains global FIFO ordering between worker specific and shared tasks | 1ms | - -## packages/jest-worker/src/__tests__/PriorityQueue.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the tasks in order | 3ms | -| ✔️ | returns the task with the lowest priority value if inserted in reversed order | 0ms | -| ✔️ | returns the task with the lowest priority value if inserted in correct order | 1ms | -| ✔️ | uses different queues for each worker | 0ms | -| ✔️ | process task in the global and shared queue in order | 1ms | - -## packages/jest-core/src/__tests__/SearchSource.test.ts ✔️ - -### SearchSource isTestFilePath - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports ../ paths and unix separators via testRegex | 804ms | -| ✔️ | supports unix separators | 265ms | -| ✔️ | supports win32 separators | 277ms | - -### SearchSource testPathsMatching - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | finds tests matching a pattern via testRegex | 23ms | -| ✔️ | finds tests matching a pattern via testMatch | 14ms | -| ✔️ | finds tests matching a JS regex pattern | 12ms | -| ✔️ | finds tests matching a JS glob pattern | 13ms | -| ✔️ | finds tests matching a JS with overriding glob patterns | 18ms | -| ✔️ | finds tests with default file extensions using testRegex | 16ms | -| ✔️ | finds tests with default file extensions using testMatch | 13ms | -| ✔️ | finds tests with parentheses in their rootDir when using testMatch | 16ms | -| ✔️ | finds tests with similar but custom file extensions | 13ms | -| ✔️ | finds tests with totally custom foobar file extensions | 38ms | -| ✔️ | finds tests with many kinds of file extensions | 20ms | -| ✔️ | finds tests using a regex only | 41ms | -| ✔️ | finds tests using a glob only | 24ms | - -### SearchSource findRelatedTests - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | makes sure a file is related to itself | 60ms | -| ✔️ | finds tests that depend directly on the path | 15ms | -| ✔️ | excludes untested files from coverage | 17ms | - -### SearchSource findRelatedTestsFromPattern - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns empty search result for empty input | 18ms | -| ✔️ | returns empty search result for invalid input | 14ms | -| ✔️ | returns empty search result if no related tests were found | 15ms | -| ✔️ | finds tests for a single file | 24ms | -| ✔️ | finds tests for multiple files | 15ms | -| ✔️ | does not mistake roots folders with prefix names | 29ms | - -### SearchSource findRelatedSourcesFromTestsInChangedFiles - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | return empty set if no SCM | 22ms | -| ✔️ | return sources required by tests | 17ms | - -## packages/expect/src/__tests__/matchers.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should throw if passed two arguments | 46ms | - -### .rejects - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should reject | 2ms | -| ✔️ | should reject with toThrow | 1ms | -| ✔️ | should reject async function to toThrow | 1ms | -| ✔️ | fails non-promise value \\"a\\" synchronously | 0ms | -| ✔️ | fails non-promise value \\"a\\" | 2ms | -| ✔️ | fails non-promise value [1] synchronously | 1ms | -| ✔️ | fails non-promise value [1] | 0ms | -| ✔️ | fails non-promise value [Function anonymous] synchronously | 0ms | -| ✔️ | fails non-promise value [Function anonymous] | 7ms | -| ✔️ | fails non-promise value {\\"a\\": 1} synchronously | 0ms | -| ✔️ | fails non-promise value {\\"a\\": 1} | 0ms | -| ✔️ | fails non-promise value 4 synchronously | 1ms | -| ✔️ | fails non-promise value 4 | 3ms | -| ✔️ | fails non-promise value null synchronously | 0ms | -| ✔️ | fails non-promise value null | 0ms | -| ✔️ | fails non-promise value true synchronously | 0ms | -| ✔️ | fails non-promise value true | 1ms | -| ✔️ | fails non-promise value undefined synchronously | 0ms | -| ✔️ | fails non-promise value undefined | 0ms | -| ✔️ | fails for promise that resolves | 4ms | - -### .resolves - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should resolve | 1ms | -| ✔️ | fails non-promise value \\"a\\" synchronously | 0ms | -| ✔️ | fails non-promise value \\"a\\" | 0ms | -| ✔️ | fails non-promise value [1] synchronously | 1ms | -| ✔️ | fails non-promise value [1] | 0ms | -| ✔️ | fails non-promise value [Function anonymous] synchronously | 1ms | -| ✔️ | fails non-promise value [Function anonymous] | 0ms | -| ✔️ | fails non-promise value {\\"a\\": 1} synchronously | 1ms | -| ✔️ | fails non-promise value {\\"a\\": 1} | 0ms | -| ✔️ | fails non-promise value 4 synchronously | 1ms | -| ✔️ | fails non-promise value 4 | 0ms | -| ✔️ | fails non-promise value null synchronously | 0ms | -| ✔️ | fails non-promise value null | 1ms | -| ✔️ | fails non-promise value true synchronously | 0ms | -| ✔️ | fails non-promise value true | 0ms | -| ✔️ | fails non-promise value undefined synchronously | 1ms | -| ✔️ | fails non-promise value undefined | 0ms | -| ✔️ | fails for promise that rejects | 0ms | - -### .toBe() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not throw | 1ms | -| ✔️ | fails for: 1 and 2 | 1ms | -| ✔️ | fails for: true and false | 0ms | -| ✔️ | fails for: [Function anonymous] and [Function anonymous] | 1ms | -| ✔️ | fails for: {} and {} | 1ms | -| ✔️ | fails for: {\\"a\\": 1} and {\\"a\\": 1} | 0ms | -| ✔️ | fails for: {\\"a\\": 1} and {\\"a\\": 5} | 2ms | -| ✔️ | fails for: {\\"a\\": [Function a], \\"b\\": 2} and {\\"a\\": Any, \\"b\\": 2} | 1ms | -| ✔️ | fails for: {\\"a\\": undefined, \\"b\\": 2} and {\\"b\\": 2} | 8ms | -| ✔️ | fails for: 2020-02-20T00:00:00.000Z and 2020-02-20T00:00:00.000Z | 0ms | -| ✔️ | fails for: 2020-02-21T00:00:00.000Z and 2020-02-20T00:00:00.000Z | 1ms | -| ✔️ | fails for: /received/ and /expected/ | 0ms | -| ✔️ | fails for: Symbol(received) and Symbol(expected) | 0ms | -| ✔️ | fails for: [Error: received] and [Error: expected] | 1ms | -| ✔️ | fails for: \\"abc\\" and \\"cde\\" | 1ms | -| ✔️ | fails for: \\"painless JavaScript testing\\" and \\"delightful JavaScript testing\\" | 0ms | -| ✔️ | fails for: \\"\\" and \\"compare one-line string to empty string\\" | 1ms | -| ✔️ | fails for: \\"with -trailing space\\" and \\"without trailing space\\" | 8ms | -| ✔️ | fails for: \\"four -4 -line -string\\" and \\"3 -line -string\\" | 0ms | -| ✔️ | fails for: [] and [] | 1ms | -| ✔️ | fails for: null and undefined | 0ms | -| ✔️ | fails for: -0 and 0 | 0ms | -| ✔️ | fails for: 1n and 2n | 1ms | -| ✔️ | fails for: {\\"a\\": 1n} and {\\"a\\": 1n} | 0ms | -| ✔️ | fails for 'false' with '.not' | 0ms | -| ✔️ | fails for '1' with '.not' | 0ms | -| ✔️ | fails for '\\"a\\"' with '.not' | 0ms | -| ✔️ | fails for 'undefined' with '.not' | 0ms | -| ✔️ | fails for 'null' with '.not' | 0ms | -| ✔️ | fails for '{}' with '.not' | 0ms | -| ✔️ | fails for '[]' with '.not' | 1ms | -| ✔️ | fails for '1n' with '.not' | 0ms | -| ✔️ | fails for '1n' with '.not' | 0ms | -| ✔️ | does not crash on circular references | 0ms | -| ✔️ | assertion error matcherResult property contains matcher name, expected and actual values | 1ms | - -### .toStrictEqual() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not ignore keys with undefined values | 0ms | -| ✔️ | does not ignore keys with undefined values inside an array | 0ms | -| ✔️ | does not ignore keys with undefined values deep inside an object | 0ms | -| ✔️ | passes when comparing same type | 1ms | -| ✔️ | matches the expected snapshot when it fails | 1ms | -| ✔️ | displays substring diff | 3ms | -| ✔️ | displays substring diff for multiple lines | 1ms | -| ✔️ | does not pass for different types | 0ms | -| ✔️ | does not simply compare constructor names | 1ms | -| ✔️ | passes for matching sparse arrays | 0ms | -| ✔️ | does not pass when sparseness of arrays do not match | 0ms | -| ✔️ | does not pass when equally sparse arrays have different values | 0ms | - -### .toEqual() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: false} expect(true).toEqual(false) | 1ms | -| ✔️ | {pass: false} expect(1).toEqual(2) | 0ms | -| ✔️ | {pass: false} expect(0).toEqual(-0) | 1ms | -| ✔️ | {pass: false} expect(0).toEqual(5e-324) | 0ms | -| ✔️ | {pass: false} expect(5e-324).toEqual(0) | 0ms | -| ✔️ | {pass: false} expect(0).toEqual({}) | 1ms | -| ✔️ | {pass: false} expect({}).toEqual(0) | 0ms | -| ✔️ | {pass: false} expect({}).toEqual({}) | 1ms | -| ✔️ | {pass: false} expect(\\"abc\\").toEqual({\\"0\\": \\"a\\", \\"1\\": \\"b\\", \\"2\\": \\"c\\"}) | 0ms | -| ✔️ | {pass: false} expect({\\"0\\": \\"a\\", \\"1\\": \\"b\\", \\"2\\": \\"c\\"}).toEqual(\\"abc\\") | 1ms | -| ✔️ | {pass: false} expect(/abc/gsy).toEqual(/abc/g) | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": 1}).toEqual({\\"a\\": 2}) | 1ms | -| ✔️ | {pass: false} expect({\\"a\\": 5}).toEqual({\\"b\\": 6}) | 0ms | -| ✔️ | {pass: false} expect({\\"foo\\": {\\"bar\\": 1}}).toEqual({\\"foo\\": {}}) | 1ms | -| ✔️ | {pass: false} expect({\\"getterAndSetter\\": {}}).toEqual({\\"getterAndSetter\\": {\\"foo\\": \\"bar\\"}}) | 1ms | -| ✔️ | {pass: false} expect({\\"frozenGetterAndSetter\\": {}}).toEqual({\\"frozenGetterAndSetter\\": {\\"foo\\": \\"bar\\"}}) | 0ms | -| ✔️ | {pass: false} expect({\\"getter\\": {}}).toEqual({\\"getter\\": {\\"foo\\": \\"bar\\"}}) | 1ms | -| ✔️ | {pass: false} expect({\\"frozenGetter\\": {}}).toEqual({\\"frozenGetter\\": {\\"foo\\": \\"bar\\"}}) | 0ms | -| ✔️ | {pass: false} expect({\\"setter\\": undefined}).toEqual({\\"setter\\": {\\"foo\\": \\"bar\\"}}) | 1ms | -| ✔️ | {pass: false} expect({\\"frozenSetter\\": undefined}).toEqual({\\"frozenSetter\\": {\\"foo\\": \\"bar\\"}}) | 1ms | -| ✔️ | {pass: false} expect(\\"banana\\").toEqual(\\"apple\\") | 0ms | -| ✔️ | {pass: false} expect(\\"1 234,57 $\\").toEqual(\\"1 234,57 $\\") | 0ms | -| ✔️ | {pass: false} expect(\\"type TypeName = T extends Function ? \\\\\\"function\\\\\\" : \\\\\\"object\\\\\\";\\").toEqual(\\"type TypeName = T extends Function -? \\\\\\"function\\\\\\" -: \\\\\\"object\\\\\\";\\") | 1ms | -| ✔️ | {pass: false} expect(null).toEqual(undefined) | 0ms | -| ✔️ | {pass: false} expect([1]).toEqual([2]) | 1ms | -| ✔️ | {pass: false} expect([1, 2]).toEqual([2, 1]) | 0ms | -| ✔️ | {pass: false} expect(Immutable.List [1]).toEqual(Immutable.List [2]) | 1ms | -| ✔️ | {pass: false} expect(Immutable.List [1, 2]).toEqual(Immutable.List [2, 1]) | 1ms | -| ✔️ | {pass: false} expect(Map {}).toEqual(Set {}) | 0ms | -| ✔️ | {pass: false} expect(Set {1, 2}).toEqual(Set {}) | 2ms | -| ✔️ | {pass: false} expect(Set {1, 2}).toEqual(Set {1, 2, 3}) | 1ms | -| ✔️ | {pass: false} expect(Set {[1], [2]}).toEqual(Set {[1], [2], [3]}) | 0ms | -| ✔️ | {pass: false} expect(Set {[1], [2]}).toEqual(Set {[1], [2], [2]}) | 1ms | -| ✔️ | {pass: false} expect(Set {Set {1}, Set {2}}).toEqual(Set {Set {1}, Set {3}}) | 0ms | -| ✔️ | {pass: false} expect(Immutable.Set [1, 2]).toEqual(Immutable.Set []) | 1ms | -| ✔️ | {pass: false} expect(Immutable.Set [1, 2]).toEqual(Immutable.Set [1, 2, 3]) | 1ms | -| ✔️ | {pass: false} expect(Immutable.OrderedSet [1, 2]).toEqual(Immutable.OrderedSet [2, 1]) | 1ms | -| ✔️ | {pass: false} expect(Map {1 => \\"one\\", 2 => \\"two\\"}).toEqual(Map {1 => \\"one\\"}) | 0ms | -| ✔️ | {pass: false} expect(Map {\\"a\\" => 0}).toEqual(Map {\\"b\\" => 0}) | 1ms | -| ✔️ | {pass: false} expect(Map {\\"v\\" => 1}).toEqual(Map {\\"v\\" => 2}) | 0ms | -| ✔️ | {pass: false} expect(Map {[\\"v\\"] => 1}).toEqual(Map {[\\"v\\"] => 2}) | 1ms | -| ✔️ | {pass: false} expect(Map {[1] => Map {[1] => \\"one\\"}}).toEqual(Map {[1] => Map {[1] => \\"two\\"}}) | 1ms | -| ✔️ | {pass: false} expect(Immutable.Map {\\"a\\": 0}).toEqual(Immutable.Map {\\"b\\": 0}) | 0ms | -| ✔️ | {pass: false} expect(Immutable.Map {\\"v\\": 1}).toEqual(Immutable.Map {\\"v\\": 2}) | 1ms | -| ✔️ | {pass: false} expect(Immutable.OrderedMap {1: \\"one\\", 2: \\"two\\"}).toEqual(Immutable.OrderedMap {2: \\"two\\", 1: \\"one\\"}) | 1ms | -| ✔️ | {pass: false} expect(Immutable.Map {\\"1\\": Immutable.Map {\\"2\\": {\\"a\\": 99}}}).toEqual(Immutable.Map {\\"1\\": Immutable.Map {\\"2\\": {\\"a\\": 11}}}) | 1ms | -| ✔️ | {pass: false} expect([97, 98, 99]).toEqual([97, 98, 100]) | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": 1, \\"b\\": 2}).toEqual(ObjectContaining {\\"a\\": 2}) | 1ms | -| ✔️ | {pass: false} expect(false).toEqual(ObjectContaining {\\"a\\": 2}) | 0ms | -| ✔️ | {pass: false} expect([1, 3]).toEqual(ArrayContaining [1, 2]) | 1ms | -| ✔️ | {pass: false} expect(1).toEqual(ArrayContaining [1, 2]) | 0ms | -| ✔️ | {pass: false} expect(\\"abd\\").toEqual(StringContaining \\"bc\\") | 1ms | -| ✔️ | {pass: false} expect(\\"abd\\").toEqual(StringMatching /bc/i) | 0ms | -| ✔️ | {pass: false} expect(undefined).toEqual(Anything) | 1ms | -| ✔️ | {pass: false} expect(undefined).toEqual(Any) | 0ms | -| ✔️ | {pass: false} expect(\\"Eve\\").toEqual({\\"asymmetricMatch\\": [Function asymmetricMatch]}) | 1ms | -| ✔️ | {pass: false} expect({\\"target\\": {\\"nodeType\\": 1, \\"value\\": \\"a\\"}}).toEqual({\\"target\\": {\\"nodeType\\": 1, \\"value\\": \\"b\\"}}) | 0ms | -| ✔️ | {pass: false} expect({\\"nodeName\\": \\"div\\", \\"nodeType\\": 1}).toEqual({\\"nodeName\\": \\"p\\", \\"nodeType\\": 1}) | 1ms | -| ✔️ | {pass: false} expect({Symbol(foo): 1, Symbol(bar): 2}).toEqual({Symbol(foo): Any, Symbol(bar): 1}) | 1ms | -| ✔️ | {pass: false} expect(1n).toEqual(2n) | 1ms | -| ✔️ | {pass: false} expect(1n).toEqual(1) | 0ms | -| ✔️ | {pass: true} expect(true).not.toEqual(true) | 1ms | -| ✔️ | {pass: true} expect(1).not.toEqual(1) | 0ms | -| ✔️ | {pass: true} expect(NaN).not.toEqual(NaN) | 0ms | -| ✔️ | {pass: true} expect(0).not.toEqual(0) | 0ms | -| ✔️ | {pass: true} expect(0).not.toEqual(0) | 0ms | -| ✔️ | {pass: true} expect({}).not.toEqual({}) | 1ms | -| ✔️ | {pass: true} expect(\\"abc\\").not.toEqual(\\"abc\\") | 0ms | -| ✔️ | {pass: true} expect(\\"abc\\").not.toEqual(\\"abc\\") | 0ms | -| ✔️ | {pass: true} expect(\\"abc\\").not.toEqual(\\"abc\\") | 1ms | -| ✔️ | {pass: true} expect([1]).not.toEqual([1]) | 0ms | -| ✔️ | {pass: true} expect([1, 2]).not.toEqual([1, 2]) | 0ms | -| ✔️ | {pass: true} expect(Immutable.List [1]).not.toEqual(Immutable.List [1]) | 1ms | -| ✔️ | {pass: true} expect(Immutable.List [1, 2]).not.toEqual(Immutable.List [1, 2]) | 0ms | -| ✔️ | {pass: true} expect({}).not.toEqual({}) | 1ms | -| ✔️ | {pass: true} expect({\\"a\\": 99}).not.toEqual({\\"a\\": 99}) | 1ms | -| ✔️ | {pass: true} expect(Set {}).not.toEqual(Set {}) | 0ms | -| ✔️ | {pass: true} expect(Set {1, 2}).not.toEqual(Set {1, 2}) | 0ms | -| ✔️ | {pass: true} expect(Set {1, 2}).not.toEqual(Set {2, 1}) | 1ms | -| ✔️ | {pass: true} expect(Set {[1], [2]}).not.toEqual(Set {[2], [1]}) | 0ms | -| ✔️ | {pass: true} expect(Set {Set {[1]}, Set {[2]}}).not.toEqual(Set {Set {[2]}, Set {[1]}}) | 1ms | -| ✔️ | {pass: true} expect(Set {[1], [2], [3], [3]}).not.toEqual(Set {[3], [3], [2], [1]}) | 1ms | -| ✔️ | {pass: true} expect(Set {{\\"a\\": 1}, {\\"b\\": 2}}).not.toEqual(Set {{\\"b\\": 2}, {\\"a\\": 1}}) | 0ms | -| ✔️ | {pass: true} expect(Immutable.Set []).not.toEqual(Immutable.Set []) | 7ms | -| ✔️ | {pass: true} expect(Immutable.Set [1, 2]).not.toEqual(Immutable.Set [1, 2]) | 0ms | -| ✔️ | {pass: true} expect(Immutable.Set [1, 2]).not.toEqual(Immutable.Set [2, 1]) | 0ms | -| ✔️ | {pass: true} expect(Immutable.OrderedSet []).not.toEqual(Immutable.OrderedSet []) | 0ms | -| ✔️ | {pass: true} expect(Immutable.OrderedSet [1, 2]).not.toEqual(Immutable.OrderedSet [1, 2]) | 0ms | -| ✔️ | {pass: true} expect(Map {}).not.toEqual(Map {}) | 1ms | -| ✔️ | {pass: true} expect(Map {1 => \\"one\\", 2 => \\"two\\"}).not.toEqual(Map {1 => \\"one\\", 2 => \\"two\\"}) | 0ms | -| ✔️ | {pass: true} expect(Map {1 => \\"one\\", 2 => \\"two\\"}).not.toEqual(Map {2 => \\"two\\", 1 => \\"one\\"}) | 1ms | -| ✔️ | {pass: true} expect(Map {[1] => \\"one\\", [2] => \\"two\\", [3] => \\"three\\", [3] => \\"four\\"}).not.toEqual(Map {[3] => \\"three\\", [3] => \\"four\\", [2] => \\"two\\", [1] => \\"one\\"}) | 0ms | -| ✔️ | {pass: true} expect(Map {[1] => Map {[1] => \\"one\\"}, [2] => Map {[2] => \\"two\\"}}).not.toEqual(Map {[2] => Map {[2] => \\"two\\"}, [1] => Map {[1] => \\"one\\"}}) | 1ms | -| ✔️ | {pass: true} expect(Map {[1] => \\"one\\", [2] => \\"two\\"}).not.toEqual(Map {[2] => \\"two\\", [1] => \\"one\\"}) | 1ms | -| ✔️ | {pass: true} expect(Map {{\\"a\\": 1} => \\"one\\", {\\"b\\": 2} => \\"two\\"}).not.toEqual(Map {{\\"b\\": 2} => \\"two\\", {\\"a\\": 1} => \\"one\\"}) | 0ms | -| ✔️ | {pass: true} expect(Map {1 => [\\"one\\"], 2 => [\\"two\\"]}).not.toEqual(Map {2 => [\\"two\\"], 1 => [\\"one\\"]}) | 1ms | -| ✔️ | {pass: true} expect(Immutable.Map {}).not.toEqual(Immutable.Map {}) | 0ms | -| ✔️ | {pass: true} expect(Immutable.Map {1: \\"one\\", 2: \\"two\\"}).not.toEqual(Immutable.Map {1: \\"one\\", 2: \\"two\\"}) | 0ms | -| ✔️ | {pass: true} expect(Immutable.Map {1: \\"one\\", 2: \\"two\\"}).not.toEqual(Immutable.Map {2: \\"two\\", 1: \\"one\\"}) | 0ms | -| ✔️ | {pass: true} expect(Immutable.OrderedMap {1: \\"one\\", 2: \\"two\\"}).not.toEqual(Immutable.OrderedMap {1: \\"one\\", 2: \\"two\\"}) | 1ms | -| ✔️ | {pass: true} expect(Immutable.Map {\\"1\\": Immutable.Map {\\"2\\": {\\"a\\": 99}}}).not.toEqual(Immutable.Map {\\"1\\": Immutable.Map {\\"2\\": {\\"a\\": 99}}}) | 1ms | -| ✔️ | {pass: true} expect([97, 98, 99]).not.toEqual([97, 98, 99]) | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": 1, \\"b\\": 2}).not.toEqual(ObjectContaining {\\"a\\": 1}) | 0ms | -| ✔️ | {pass: true} expect([1, 2, 3]).not.toEqual(ArrayContaining [2, 3]) | 0ms | -| ✔️ | {pass: true} expect(\\"abcd\\").not.toEqual(StringContaining \\"bc\\") | 0ms | -| ✔️ | {pass: true} expect(\\"abcd\\").not.toEqual(StringMatching /bc/) | 1ms | -| ✔️ | {pass: true} expect(true).not.toEqual(Anything) | 0ms | -| ✔️ | {pass: true} expect([Function anonymous]).not.toEqual(Any) | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": 1, \\"b\\": [Function b], \\"c\\": true}).not.toEqual({\\"a\\": 1, \\"b\\": Any, \\"c\\": Anything}) | 1ms | -| ✔️ | {pass: true} expect(\\"Alice\\").not.toEqual({\\"asymmetricMatch\\": [Function asymmetricMatch]}) | 1ms | -| ✔️ | {pass: true} expect({\\"nodeName\\": \\"div\\", \\"nodeType\\": 1}).not.toEqual({\\"nodeName\\": \\"div\\", \\"nodeType\\": 1}) | 0ms | -| ✔️ | {pass: true} expect({Symbol(foo): 1, Symbol(bar): 2}).not.toEqual({Symbol(foo): Any, Symbol(bar): 2}) | 1ms | -| ✔️ | {pass: true} expect(1n).not.toEqual(1n) | 0ms | -| ✔️ | {pass: true} expect(0n).not.toEqual(0n) | 1ms | -| ✔️ | {pass: true} expect([1n]).not.toEqual([1n]) | 0ms | -| ✔️ | {pass: true} expect([1n, 2]).not.toEqual([1n, 2]) | 0ms | -| ✔️ | {pass: true} expect(Immutable.List [1n]).not.toEqual(Immutable.List [1n]) | 1ms | -| ✔️ | {pass: true} expect({\\"a\\": 99n}).not.toEqual({\\"a\\": 99n}) | 0ms | -| ✔️ | {pass: true} expect(Set {1n, 2n}).not.toEqual(Set {1n, 2n}) | 1ms | -| ✔️ | assertion error matcherResult property contains matcher name, expected and actual values | 0ms | -| ✔️ | symbol based keys in arrays are processed correctly | 1ms | -| ✔️ | non-enumerable members should be skipped during equal | 0ms | -| ✔️ | non-enumerable symbolic members should be skipped during equal | 0ms | - -### .toEqual() cyclic object equality - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | properties with the same circularity are equal | 0ms | -| ✔️ | properties with different circularity are not equal | 1ms | -| ✔️ | are not equal if circularity is not on the same property | 0ms | - -### .toBeInstanceOf() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | passing Map {} and [Function Map] | 1ms | -| ✔️ | passing [] and [Function Array] | 1ms | -| ✔️ | passing {} and [Function A] | 0ms | -| ✔️ | passing {} and [Function B] | 0ms | -| ✔️ | passing {} and [Function B] | 1ms | -| ✔️ | passing {} and [Function anonymous] | 2ms | -| ✔️ | passing {} and [Function B] | 0ms | -| ✔️ | passing {} and [Function name() {}] | 1ms | -| ✔️ | failing \\"a\\" and [Function String] | 0ms | -| ✔️ | failing 1 and [Function Number] | 0ms | -| ✔️ | failing true and [Function Boolean] | 1ms | -| ✔️ | failing {} and [Function B] | 0ms | -| ✔️ | failing {} and [Function A] | 0ms | -| ✔️ | failing undefined and [Function String] | 2ms | -| ✔️ | failing null and [Function String] | 0ms | -| ✔️ | failing /\\\\w+/ and [Function anonymous] | 1ms | -| ✔️ | failing {} and [Function RegExp] | 0ms | -| ✔️ | throws if constructor is not a function | 0ms | - -### .toBeTruthy(), .toBeFalsy() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not accept arguments | 1ms | -| ✔️ | '{}' is truthy | 1ms | -| ✔️ | '[]' is truthy | 3ms | -| ✔️ | 'true' is truthy | 4ms | -| ✔️ | '1' is truthy | 1ms | -| ✔️ | '\\"a\\"' is truthy | 1ms | -| ✔️ | '0.5' is truthy | 1ms | -| ✔️ | 'Map {}' is truthy | 0ms | -| ✔️ | '[Function anonymous]' is truthy | 1ms | -| ✔️ | 'Infinity' is truthy | 0ms | -| ✔️ | '1n' is truthy | 0ms | -| ✔️ | 'false' is falsy | 0ms | -| ✔️ | 'null' is falsy | 1ms | -| ✔️ | 'NaN' is falsy | 3ms | -| ✔️ | '0' is falsy | 0ms | -| ✔️ | '\\"\\"' is falsy | 1ms | -| ✔️ | 'undefined' is falsy | 1ms | -| ✔️ | '0n' is falsy | 2ms | - -### .toBeNaN() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect(NaN).toBeNaN() | 1ms | -| ✔️ | throws | 2ms | - -### .toBeNull() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fails for '{}' | 1ms | -| ✔️ | fails for '[]' | 0ms | -| ✔️ | fails for 'true' | 0ms | -| ✔️ | fails for '1' | 1ms | -| ✔️ | fails for '\\"a\\"' | 0ms | -| ✔️ | fails for '0.5' | 2ms | -| ✔️ | fails for 'Map {}' | 0ms | -| ✔️ | fails for '[Function anonymous]' | 1ms | -| ✔️ | fails for 'Infinity' | 0ms | -| ✔️ | fails for null with .not | 0ms | -| ✔️ | pass for null | 0ms | - -### .toBeDefined(), .toBeUndefined() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | '{}' is defined | 0ms | -| ✔️ | '[]' is defined | 1ms | -| ✔️ | 'true' is defined | 0ms | -| ✔️ | '1' is defined | 1ms | -| ✔️ | '\\"a\\"' is defined | 0ms | -| ✔️ | '0.5' is defined | 0ms | -| ✔️ | 'Map {}' is defined | 1ms | -| ✔️ | '[Function anonymous]' is defined | 0ms | -| ✔️ | 'Infinity' is defined | 1ms | -| ✔️ | '1n' is defined | 1ms | -| ✔️ | undefined is undefined | 0ms | - -### .toBeGreaterThan(), .toBeLessThan(), .toBeGreaterThanOrEqual(), .toBeLessThanOrEqual() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect(1).toBeLessThan(2) | 0ms | -| ✔️ | {pass: false} expect(2).toBeLessThan(1) | 0ms | -| ✔️ | {pass: true} expect(2).toBeGreaterThan(1) | 0ms | -| ✔️ | {pass: false} expect(1).toBeGreaterThan(2) | 0ms | -| ✔️ | {pass: true} expect(1).toBeLessThanOrEqual(2) | 0ms | -| ✔️ | {pass: false} expect(2).toBeLessThanOrEqual(1) | 0ms | -| ✔️ | {pass: true} expect(2).toBeGreaterThanOrEqual(1) | 0ms | -| ✔️ | {pass: false} expect(1).toBeGreaterThanOrEqual(2) | 0ms | -| ✔️ | throws: [1, 2] | 2ms | -| ✔️ | {pass: true} expect(-Infinity).toBeLessThan(Infinity) | 0ms | -| ✔️ | {pass: false} expect(Infinity).toBeLessThan(-Infinity) | 0ms | -| ✔️ | {pass: true} expect(Infinity).toBeGreaterThan(-Infinity) | 0ms | -| ✔️ | {pass: false} expect(-Infinity).toBeGreaterThan(Infinity) | 0ms | -| ✔️ | {pass: true} expect(-Infinity).toBeLessThanOrEqual(Infinity) | 0ms | -| ✔️ | {pass: false} expect(Infinity).toBeLessThanOrEqual(-Infinity) | 0ms | -| ✔️ | {pass: true} expect(Infinity).toBeGreaterThanOrEqual(-Infinity) | 0ms | -| ✔️ | {pass: false} expect(-Infinity).toBeGreaterThanOrEqual(Infinity) | 0ms | -| ✔️ | throws: [-Infinity, Infinity] | 1ms | -| ✔️ | {pass: true} expect(5e-324).toBeLessThan(1.7976931348623157e+308) | 0ms | -| ✔️ | {pass: false} expect(1.7976931348623157e+308).toBeLessThan(5e-324) | 0ms | -| ✔️ | {pass: true} expect(1.7976931348623157e+308).toBeGreaterThan(5e-324) | 0ms | -| ✔️ | {pass: false} expect(5e-324).toBeGreaterThan(1.7976931348623157e+308) | 0ms | -| ✔️ | {pass: true} expect(5e-324).toBeLessThanOrEqual(1.7976931348623157e+308) | 0ms | -| ✔️ | {pass: false} expect(1.7976931348623157e+308).toBeLessThanOrEqual(5e-324) | 0ms | -| ✔️ | {pass: true} expect(1.7976931348623157e+308).toBeGreaterThanOrEqual(5e-324) | 0ms | -| ✔️ | {pass: false} expect(5e-324).toBeGreaterThanOrEqual(1.7976931348623157e+308) | 0ms | -| ✔️ | throws: [5e-324, 1.7976931348623157e+308] | 1ms | -| ✔️ | {pass: true} expect(17).toBeLessThan(34) | 0ms | -| ✔️ | {pass: false} expect(34).toBeLessThan(17) | 0ms | -| ✔️ | {pass: true} expect(34).toBeGreaterThan(17) | 0ms | -| ✔️ | {pass: false} expect(17).toBeGreaterThan(34) | 0ms | -| ✔️ | {pass: true} expect(17).toBeLessThanOrEqual(34) | 1ms | -| ✔️ | {pass: false} expect(34).toBeLessThanOrEqual(17) | 0ms | -| ✔️ | {pass: true} expect(34).toBeGreaterThanOrEqual(17) | 0ms | -| ✔️ | {pass: false} expect(17).toBeGreaterThanOrEqual(34) | 0ms | -| ✔️ | throws: [17, 34] | 3ms | -| ✔️ | {pass: true} expect(3).toBeLessThan(7) | 0ms | -| ✔️ | {pass: false} expect(7).toBeLessThan(3) | 0ms | -| ✔️ | {pass: true} expect(7).toBeGreaterThan(3) | 1ms | -| ✔️ | {pass: false} expect(3).toBeGreaterThan(7) | 0ms | -| ✔️ | {pass: true} expect(3).toBeLessThanOrEqual(7) | 0ms | -| ✔️ | {pass: false} expect(7).toBeLessThanOrEqual(3) | 0ms | -| ✔️ | {pass: true} expect(7).toBeGreaterThanOrEqual(3) | 0ms | -| ✔️ | {pass: false} expect(3).toBeGreaterThanOrEqual(7) | 0ms | -| ✔️ | throws: [3, 7] | 2ms | -| ✔️ | {pass: true} expect(9).toBeLessThan(18) | 0ms | -| ✔️ | {pass: false} expect(18).toBeLessThan(9) | 0ms | -| ✔️ | {pass: true} expect(18).toBeGreaterThan(9) | 0ms | -| ✔️ | {pass: false} expect(9).toBeGreaterThan(18) | 0ms | -| ✔️ | {pass: true} expect(9).toBeLessThanOrEqual(18) | 0ms | -| ✔️ | {pass: false} expect(18).toBeLessThanOrEqual(9) | 0ms | -| ✔️ | {pass: true} expect(18).toBeGreaterThanOrEqual(9) | 0ms | -| ✔️ | {pass: false} expect(9).toBeGreaterThanOrEqual(18) | 0ms | -| ✔️ | throws: [9, 18] | 1ms | -| ✔️ | {pass: true} expect(0.1).toBeLessThan(0.2) | 0ms | -| ✔️ | {pass: false} expect(0.2).toBeLessThan(0.1) | 0ms | -| ✔️ | {pass: true} expect(0.2).toBeGreaterThan(0.1) | 0ms | -| ✔️ | {pass: false} expect(0.1).toBeGreaterThan(0.2) | 0ms | -| ✔️ | {pass: true} expect(0.1).toBeLessThanOrEqual(0.2) | 0ms | -| ✔️ | {pass: false} expect(0.2).toBeLessThanOrEqual(0.1) | 0ms | -| ✔️ | {pass: true} expect(0.2).toBeGreaterThanOrEqual(0.1) | 0ms | -| ✔️ | {pass: false} expect(0.1).toBeGreaterThanOrEqual(0.2) | 0ms | -| ✔️ | throws: [0.1, 0.2] | 1ms | -| ✔️ | can compare BigInt to Numbers | 0ms | -| ✔️ | {pass: true} expect(1n).toBeLessThan(2n) | 1ms | -| ✔️ | {pass: false} expect(2n).toBeLessThan(1n) | 0ms | -| ✔️ | {pass: true} expect(2n).toBeGreaterThan(1n) | 0ms | -| ✔️ | {pass: false} expect(1n).toBeGreaterThan(2n) | 0ms | -| ✔️ | {pass: true} expect(1n).toBeLessThanOrEqual(2n) | 0ms | -| ✔️ | {pass: false} expect(2n).toBeLessThanOrEqual(1n) | 0ms | -| ✔️ | {pass: true} expect(2n).toBeGreaterThanOrEqual(1n) | 0ms | -| ✔️ | {pass: false} expect(1n).toBeGreaterThanOrEqual(2n) | 0ms | -| ✔️ | throws: [1n, 2n] | 2ms | -| ✔️ | {pass: true} expect(17n).toBeLessThan(34n) | 0ms | -| ✔️ | {pass: false} expect(34n).toBeLessThan(17n) | 0ms | -| ✔️ | {pass: true} expect(34n).toBeGreaterThan(17n) | 0ms | -| ✔️ | {pass: false} expect(17n).toBeGreaterThan(34n) | 0ms | -| ✔️ | {pass: true} expect(17n).toBeLessThanOrEqual(34n) | 0ms | -| ✔️ | {pass: false} expect(34n).toBeLessThanOrEqual(17n) | 0ms | -| ✔️ | {pass: true} expect(34n).toBeGreaterThanOrEqual(17n) | 0ms | -| ✔️ | {pass: false} expect(17n).toBeGreaterThanOrEqual(34n) | 0ms | -| ✔️ | throws: [17n, 34n] | 3ms | -| ✔️ | {pass: true} expect(-1).toBeLessThan(2n) | 0ms | -| ✔️ | {pass: false} expect(2n).toBeLessThan(-1) | 0ms | -| ✔️ | {pass: true} expect(2n).toBeGreaterThan(-1) | 0ms | -| ✔️ | {pass: false} expect(-1).toBeGreaterThan(2n) | 0ms | -| ✔️ | {pass: true} expect(-1).toBeLessThanOrEqual(2n) | 0ms | -| ✔️ | {pass: false} expect(2n).toBeLessThanOrEqual(-1) | 0ms | -| ✔️ | {pass: true} expect(2n).toBeGreaterThanOrEqual(-1) | 0ms | -| ✔️ | {pass: false} expect(-1).toBeGreaterThanOrEqual(2n) | 0ms | -| ✔️ | throws: [-1, 2n] | 2ms | -| ✔️ | equal numbers: [1, 1] | 1ms | -| ✔️ | equal numbers: [5e-324, 5e-324] | 8ms | -| ✔️ | equal numbers: [1.7976931348623157e+308, 1.7976931348623157e+308] | 1ms | -| ✔️ | equal numbers: [Infinity, Infinity] | 0ms | -| ✔️ | equal numbers: [-Infinity, -Infinity] | 1ms | -| ✔️ | equal numbers: [1, 1] | 1ms | -| ✔️ | equal numbers: [9007199254740991, 9007199254740991] | 0ms | - -### .toContain(), .toContainEqual() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | iterable | 1ms | -| ✔️ | '[1, 2, 3, 4]' contains '1' | 0ms | -| ✔️ | '[\\"a\\", \\"b\\", \\"c\\", \\"d\\"]' contains '\\"a\\"' | 1ms | -| ✔️ | '[undefined, null]' contains 'null' | 0ms | -| ✔️ | '[undefined, null]' contains 'undefined' | 0ms | -| ✔️ | '[Symbol(a)]' contains 'Symbol(a)' | 1ms | -| ✔️ | '\\"abcdef\\"' contains '\\"abc\\"' | 0ms | -| ✔️ | '\\"11112111\\"' contains '\\"2\\"' | 1ms | -| ✔️ | 'Set {\\"abc\\", \\"def\\"}' contains '\\"abc\\"' | 0ms | -| ✔️ | '[0, 1]' contains '1' | 0ms | -| ✔️ | '[1n, 2n, 3n, 4n]' contains '1n' | 1ms | -| ✔️ | '[1, 2, 3, 3n, 4]' contains '3n' | 0ms | -| ✔️ | '[1, 2, 3]' does not contain '4' | 1ms | -| ✔️ | '[null, undefined]' does not contain '1' | 0ms | -| ✔️ | '[{}, []]' does not contain '[]' | 1ms | -| ✔️ | '[{}, []]' does not contain '{}' | 0ms | -| ✔️ | '[1n, 2n, 3n]' does not contain '3' | 1ms | -| ✔️ | error cases | 1ms | -| ✔️ | '[1, 2, 3, 4]' contains a value equal to '1' | 0ms | -| ✔️ | '[\\"a\\", \\"b\\", \\"c\\", \\"d\\"]' contains a value equal to '\\"a\\"' | 0ms | -| ✔️ | '[undefined, null]' contains a value equal to 'null' | 1ms | -| ✔️ | '[undefined, null]' contains a value equal to 'undefined' | 0ms | -| ✔️ | '[Symbol(a)]' contains a value equal to 'Symbol(a)' | 0ms | -| ✔️ | '[{\\"a\\": \\"b\\"}, {\\"a\\": \\"c\\"}]' contains a value equal to '{\\"a\\": \\"b\\"}' | 1ms | -| ✔️ | 'Set {1, 2, 3, 4}' contains a value equal to '1' | 1ms | -| ✔️ | '[0, 1]' contains a value equal to '1' | 0ms | -| ✔️ | '[{\\"a\\": \\"b\\"}, {\\"a\\": \\"c\\"}]' does not contain a value equal to'{\\"a\\": \\"d\\"}' | 2ms | -| ✔️ | error cases for toContainEqual | 1ms | - -### .toBeCloseTo - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect(0).toBeCloseTo(0) | 0ms | -| ✔️ | {pass: true} expect(0).toBeCloseTo(0.001) | 0ms | -| ✔️ | {pass: true} expect(1.23).toBeCloseTo(1.229) | 0ms | -| ✔️ | {pass: true} expect(1.23).toBeCloseTo(1.226) | 1ms | -| ✔️ | {pass: true} expect(1.23).toBeCloseTo(1.225) | 0ms | -| ✔️ | {pass: true} expect(1.23).toBeCloseTo(1.234) | 0ms | -| ✔️ | {pass: true} expect(Infinity).toBeCloseTo(Infinity) | 1ms | -| ✔️ | {pass: true} expect(-Infinity).toBeCloseTo(-Infinity) | 3ms | -| ✔️ | {pass: false} expect(0).toBeCloseTo(0.01) | 1ms | -| ✔️ | {pass: false} expect(1).toBeCloseTo(1.23) | 0ms | -| ✔️ | {pass: false} expect(1.23).toBeCloseTo(1.2249999) | 1ms | -| ✔️ | {pass: false} expect(Infinity).toBeCloseTo(-Infinity) | 0ms | -| ✔️ | {pass: false} expect(Infinity).toBeCloseTo(1.23) | 0ms | -| ✔️ | {pass: false} expect(-Infinity).toBeCloseTo(-1.23) | 1ms | -| ✔️ | {pass: false} expect(3.141592e-7).toBeCloseTo(3e-7, 8) | 0ms | -| ✔️ | {pass: false} expect(56789).toBeCloseTo(51234, -4) | 0ms | -| ✔️ | {pass: true} expect(0).toBeCloseTo(0.1, 0) | 1ms | -| ✔️ | {pass: true} expect(0).toBeCloseTo(0.0001, 3) | 0ms | -| ✔️ | {pass: true} expect(0).toBeCloseTo(0.000004, 5) | 0ms | -| ✔️ | {pass: true} expect(2.0000002).toBeCloseTo(2, 5) | 1ms | - -### .toBeCloseTo throws: Matcher error - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | promise empty isNot false received | 0ms | -| ✔️ | promise empty isNot true expected | 0ms | -| ✔️ | promise rejects isNot false expected | 1ms | -| ✔️ | promise rejects isNot true received | 0ms | -| ✔️ | promise resolves isNot false received | 0ms | -| ✔️ | promise resolves isNot true expected | 0ms | - -### .toMatch() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect(foo).toMatch(foo) | 0ms | -| ✔️ | {pass: true} expect(Foo bar).toMatch(/^foo/i) | 0ms | -| ✔️ | throws: [bar, foo] | 0ms | -| ✔️ | throws: [bar, /foo/] | 1ms | -| ✔️ | throws if non String actual value passed: [1, \\"foo\\"] | 0ms | -| ✔️ | throws if non String actual value passed: [{}, \\"foo\\"] | 0ms | -| ✔️ | throws if non String actual value passed: [[], \\"foo\\"] | 0ms | -| ✔️ | throws if non String actual value passed: [true, \\"foo\\"] | 0ms | -| ✔️ | throws if non String actual value passed: [/foo/i, \\"foo\\"] | 0ms | -| ✔️ | throws if non String actual value passed: [[Function anonymous], \\"foo\\"] | 0ms | -| ✔️ | throws if non String actual value passed: [undefined, \\"foo\\"] | 1ms | -| ✔️ | throws if non String/RegExp expected value passed: [\\"foo\\", 1] | 0ms | -| ✔️ | throws if non String/RegExp expected value passed: [\\"foo\\", {}] | 0ms | -| ✔️ | throws if non String/RegExp expected value passed: [\\"foo\\", []] | 0ms | -| ✔️ | throws if non String/RegExp expected value passed: [\\"foo\\", true] | 1ms | -| ✔️ | throws if non String/RegExp expected value passed: [\\"foo\\", [Function anonymous]] | 0ms | -| ✔️ | throws if non String/RegExp expected value passed: [\\"foo\\", undefined] | 0ms | -| ✔️ | escapes strings properly | 1ms | -| ✔️ | does not maintain RegExp state between calls | 0ms | - -### .toHaveLength - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect([1, 2]).toHaveLength(2) | 1ms | -| ✔️ | {pass: true} expect([]).toHaveLength(0) | 0ms | -| ✔️ | {pass: true} expect([\\"a\\", \\"b\\"]).toHaveLength(2) | 0ms | -| ✔️ | {pass: true} expect(\\"abc\\").toHaveLength(3) | 1ms | -| ✔️ | {pass: true} expect(\\"\\").toHaveLength(0) | 0ms | -| ✔️ | {pass: true} expect([Function anonymous]).toHaveLength(0) | 0ms | -| ✔️ | {pass: false} expect([1, 2]).toHaveLength(3) | 1ms | -| ✔️ | {pass: false} expect([]).toHaveLength(1) | 0ms | -| ✔️ | {pass: false} expect([\\"a\\", \\"b\\"]).toHaveLength(99) | 1ms | -| ✔️ | {pass: false} expect(\\"abc\\").toHaveLength(66) | 0ms | -| ✔️ | {pass: false} expect(\\"\\").toHaveLength(1) | 1ms | -| ✔️ | error cases | 1ms | - -### .toHaveLength matcher error expected length - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | not number | 0ms | -| ✔️ | number Infinity | 1ms | -| ✔️ | number NaN | 0ms | -| ✔️ | number float | 0ms | -| ✔️ | number negative integer | 1ms | - -### .toHaveProperty() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a.b.c.d', 1) | 1ms | -| ✔️ | {pass: true} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a,b,c,d', 1) | 0ms | -| ✔️ | {pass: true} expect({\\"a.b.c.d\\": 1}).toHaveProperty('a.b.c.d', 1) | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": {\\"b\\": [1, 2, 3]}}).toHaveProperty('a,b,1', 2) | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": {\\"b\\": [1, 2, 3]}}).toHaveProperty('a,b,1', Any) | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": 0}).toHaveProperty('a', 0) | 1ms | -| ✔️ | {pass: true} expect({\\"a\\": {\\"b\\": undefined}}).toHaveProperty('a.b', undefined) | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": {}}).toHaveProperty('a.b', undefined) | 1ms | -| ✔️ | {pass: true} expect({\\"a\\": {\\"b\\": {\\"c\\": 5}}}).toHaveProperty('a.b', {\\"c\\": 5}) | 2ms | -| ✔️ | {pass: true} expect({\\"property\\": 1}).toHaveProperty('property', 1) | 0ms | -| ✔️ | {pass: true} expect({}).toHaveProperty('a', undefined) | 1ms | -| ✔️ | {pass: true} expect({}).toHaveProperty('b', \\"b\\") | 0ms | -| ✔️ | {pass: true} expect({}).toHaveProperty('setter', undefined) | 0ms | -| ✔️ | {pass: true} expect({\\"val\\": true}).toHaveProperty('a', undefined) | 0ms | -| ✔️ | {pass: true} expect({\\"val\\": true}).toHaveProperty('c', \\"c\\") | 0ms | -| ✔️ | {pass: true} expect({\\"val\\": true}).toHaveProperty('val', true) | 1ms | -| ✔️ | {pass: true} expect({\\"nodeName\\": \\"DIV\\"}).toHaveProperty('nodeType', 1) | 0ms | -| ✔️ | {pass: true} expect(\\"\\").toHaveProperty('length', 0) | 0ms | -| ✔️ | {pass: true} expect([Function memoized]).toHaveProperty('memo', []) | 1ms | -| ✔️ | {pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a.b.ttt.d', 1) | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a.b.c.d', 2) | 1ms | -| ✔️ | {pass: false} expect({\\"a.b.c.d\\": 1}).toHaveProperty('a.b.c.d', 2) | 2ms | -| ✔️ | {pass: false} expect({\\"a.b.c.d\\": 1}).toHaveProperty('a.b.c.d', 2) | 0ms | -| ✔️ | {pass: false} expect({\\"children\\": [\\"\\\\\\"That cartoon\\\\\\"\\"], \\"props\\": null, \\"type\\": \\"p\\"}).toHaveProperty('children,0', \\"\\\\\\"That cat cartoon\\\\\\"\\") | 1ms | -| ✔️ | {pass: false} expect({\\"children\\": [\\"Roses are red. -Violets are blue. -Testing with Jest is good for you.\\"], \\"props\\": null, \\"type\\": \\"pre\\"}).toHaveProperty('children,0', \\"Roses are red, violets are blue. -Testing with Jest -Is good for you.\\") | 1ms | -| ✔️ | {pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a,b,c,d', 2) | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": {}}}}).toHaveProperty('a.b.c.d', 1) | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": 1}).toHaveProperty('a.b.c.d', 5) | 0ms | -| ✔️ | {pass: false} expect({}).toHaveProperty('a', \\"test\\") | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": {\\"b\\": 3}}).toHaveProperty('a.b', undefined) | 1ms | -| ✔️ | {pass: false} expect(1).toHaveProperty('a.b.c', \\"test\\") | 0ms | -| ✔️ | {pass: false} expect(\\"abc\\").toHaveProperty('a.b.c', {\\"a\\": 5}) | 1ms | -| ✔️ | {pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": 5}}}).toHaveProperty('a.b', {\\"c\\": 4}) | 0ms | -| ✔️ | {pass: false} expect({}).toHaveProperty('a', \\"a\\") | 1ms | -| ✔️ | {pass: false} expect({}).toHaveProperty('b', undefined) | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a.b.c.d') | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a,b,c,d') | 1ms | -| ✔️ | {pass: true} expect({\\"a.b.c.d\\": 1}).toHaveProperty('a.b.c.d') | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": {\\"b\\": [1, 2, 3]}}).toHaveProperty('a,b,1') | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": 0}).toHaveProperty('a') | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": {\\"b\\": undefined}}).toHaveProperty('a.b') | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": {}}}}).toHaveProperty('a.b.c.d') | 1ms | -| ✔️ | {pass: false} expect({\\"a\\": 1}).toHaveProperty('a.b.c.d') | 0ms | -| ✔️ | {pass: false} expect({}).toHaveProperty('a') | 0ms | -| ✔️ | {pass: false} expect(1).toHaveProperty('a.b.c') | 1ms | -| ✔️ | {pass: false} expect(\\"abc\\").toHaveProperty('a.b.c') | 0ms | -| ✔️ | {pass: false} expect(false).toHaveProperty('key') | 0ms | -| ✔️ | {pass: false} expect(0).toHaveProperty('key') | 0ms | -| ✔️ | {pass: false} expect(\\"\\").toHaveProperty('key') | 0ms | -| ✔️ | {pass: false} expect(Symbol()).toHaveProperty('key') | 1ms | -| ✔️ | {pass: false} expect({\\"key\\": 1}).toHaveProperty('not') | 0ms | -| ✔️ | {error} expect(null).toHaveProperty('a.b') | 0ms | -| ✔️ | {error} expect(undefined).toHaveProperty('a') | 1ms | -| ✔️ | {error} expect({\\"a\\": {\\"b\\": {}}}).toHaveProperty('undefined') | 0ms | -| ✔️ | {error} expect({\\"a\\": {\\"b\\": {}}}).toHaveProperty('null') | 0ms | -| ✔️ | {error} expect({\\"a\\": {\\"b\\": {}}}).toHaveProperty('1') | 0ms | -| ✔️ | {error} expect({}).toHaveProperty('') | 1ms | - -### toMatchObject() circular references simple circular references - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect({\\"a\\": \\"hello\\", \\"ref\\": [Circular]}).toMatchObject({}) | 3ms | -| ✔️ | {pass: true} expect({\\"a\\": \\"hello\\", \\"ref\\": [Circular]}).toMatchObject({\\"a\\": \\"hello\\", \\"ref\\": [Circular]}) | 0ms | -| ✔️ | {pass: false} expect({}).toMatchObject({\\"a\\": \\"hello\\", \\"ref\\": [Circular]}) | 1ms | -| ✔️ | {pass: false} expect({\\"a\\": \\"hello\\", \\"ref\\": [Circular]}).toMatchObject({\\"a\\": \\"world\\", \\"ref\\": [Circular]}) | 0ms | -| ✔️ | {pass: false} expect({\\"ref\\": \\"not a ref\\"}).toMatchObject({\\"a\\": \\"hello\\", \\"ref\\": [Circular]}) | 1ms | - -### toMatchObject() circular references transitive circular references - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}}).toMatchObject({}) | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}}).toMatchObject({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}}) | 1ms | -| ✔️ | {pass: false} expect({}).toMatchObject({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}}) | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": \\"world\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}}).toMatchObject({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}}) | 0ms | -| ✔️ | {pass: false} expect({\\"nestedObj\\": {\\"parentObj\\": \\"not the parent ref\\"}}).toMatchObject({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}}) | 1ms | - -### toMatchObject() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | {pass: true} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\"}).toMatchObject({\\"a\\": \\"b\\"}) | 1ms | -| ✔️ | {pass: true} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\"}).toMatchObject({\\"a\\": \\"b\\", \\"c\\": \\"d\\"}) | 1ms | -| ✔️ | {pass: true} expect({\\"a\\": \\"b\\", \\"t\\": {\\"x\\": {\\"r\\": \\"r\\"}, \\"z\\": \\"z\\"}}).toMatchObject({\\"a\\": \\"b\\", \\"t\\": {\\"z\\": \\"z\\"}}) | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": \\"b\\", \\"t\\": {\\"x\\": {\\"r\\": \\"r\\"}, \\"z\\": \\"z\\"}}).toMatchObject({\\"t\\": {\\"x\\": {\\"r\\": \\"r\\"}}}) | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": [3, 4, 5], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": [3, 4, 5]}) | 1ms | -| ✔️ | {pass: true} expect({\\"a\\": [3, 4, 5, \\"v\\"], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": [3, 4, 5, \\"v\\"]}) | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": 1, \\"c\\": 2}).toMatchObject({\\"a\\": Any}) | 1ms | -| ✔️ | {pass: true} expect({\\"a\\": {\\"x\\": \\"x\\", \\"y\\": \\"y\\"}}).toMatchObject({\\"a\\": {\\"x\\": Any}}) | 0ms | -| ✔️ | {pass: true} expect(Set {1, 2}).toMatchObject(Set {1, 2}) | 1ms | -| ✔️ | {pass: true} expect(Set {1, 2}).toMatchObject(Set {2, 1}) | 0ms | -| ✔️ | {pass: true} expect(2015-11-30T00:00:00.000Z).toMatchObject(2015-11-30T00:00:00.000Z) | 1ms | -| ✔️ | {pass: true} expect({\\"a\\": 2015-11-30T00:00:00.000Z, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": 2015-11-30T00:00:00.000Z}) | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": null, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": null}) | 2ms | -| ✔️ | {pass: true} expect({\\"a\\": undefined, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": undefined}) | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": [{\\"a\\": \\"a\\", \\"b\\": \\"b\\"}]}).toMatchObject({\\"a\\": [{\\"a\\": \\"a\\"}]}) | 1ms | -| ✔️ | {pass: true} expect([1, 2]).toMatchObject([1, 2]) | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": undefined}).toMatchObject({\\"a\\": undefined}) | 1ms | -| ✔️ | {pass: true} expect([]).toMatchObject([]) | 0ms | -| ✔️ | {pass: true} expect([Error: foo]).toMatchObject([Error: foo]) | 0ms | -| ✔️ | {pass: true} expect([Error: bar]).toMatchObject({\\"message\\": \\"bar\\"}) | 1ms | -| ✔️ | {pass: true} expect({}).toMatchObject({\\"a\\": undefined, \\"b\\": \\"b\\"}) | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": \\"b\\"}).toMatchObject({\\"a\\": \\"b\\"}) | 1ms | -| ✔️ | {pass: true} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\", Symbol(jest): \\"jest\\"}).toMatchObject({\\"a\\": \\"b\\", Symbol(jest): \\"jest\\"}) | 0ms | -| ✔️ | {pass: true} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\", Symbol(jest): \\"jest\\"}).toMatchObject({\\"a\\": \\"b\\", \\"c\\": \\"d\\", Symbol(jest): \\"jest\\"}) | 1ms | -| ✔️ | {pass: true} expect({}).toMatchObject({\\"a\\": undefined, \\"b\\": \\"b\\", \\"c\\": \\"c\\"}) | 0ms | -| ✔️ | {pass: true} expect({}).toMatchObject({\\"d\\": 4}) | 1ms | -| ✔️ | {pass: true} expect({\\"a\\": \\"b\\", \\"toString\\": [Function toString]}).toMatchObject({\\"toString\\": Any}) | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\"}).toMatchObject({\\"e\\": \\"b\\"}) | 1ms | -| ✔️ | {pass: false} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\"}).toMatchObject({\\"a\\": \\"b!\\", \\"c\\": \\"d\\"}) | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": \\"a\\", \\"c\\": \\"d\\"}).toMatchObject({\\"a\\": Any}) | 1ms | -| ✔️ | {pass: false} expect({\\"a\\": \\"b\\", \\"t\\": {\\"x\\": {\\"r\\": \\"r\\"}, \\"z\\": \\"z\\"}}).toMatchObject({\\"a\\": \\"b\\", \\"t\\": {\\"z\\": [3]}}) | 1ms | -| ✔️ | {pass: false} expect({\\"a\\": \\"b\\", \\"t\\": {\\"x\\": {\\"r\\": \\"r\\"}, \\"z\\": \\"z\\"}}).toMatchObject({\\"t\\": {\\"l\\": {\\"r\\": \\"r\\"}}}) | 2ms | -| ✔️ | {pass: false} expect({\\"a\\": [3, 4, 5], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": [3, 4, 5, 6]}) | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": [3, 4, 5], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": [3, 4]}) | 1ms | -| ✔️ | {pass: false} expect({\\"a\\": [3, 4, \\"v\\"], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": [\\"v\\"]}) | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": [3, 4, 5], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": {\\"b\\": 4}}) | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": [3, 4, 5], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": {\\"b\\": Any}}) | 1ms | -| ✔️ | {pass: false} expect([1, 2]).toMatchObject([1, 3]) | 2ms | -| ✔️ | {pass: false} expect([0]).toMatchObject([-0]) | 1ms | -| ✔️ | {pass: false} expect(Set {1, 2}).toMatchObject(Set {2}) | 1ms | -| ✔️ | {pass: false} expect(2015-11-30T00:00:00.000Z).toMatchObject(2015-10-10T00:00:00.000Z) | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": 2015-11-30T00:00:00.000Z, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": 2015-10-10T00:00:00.000Z}) | 1ms | -| ✔️ | {pass: false} expect({\\"a\\": null, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": \\"4\\"}) | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": null, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": undefined}) | 1ms | -| ✔️ | {pass: false} expect({\\"a\\": undefined}).toMatchObject({\\"a\\": null}) | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": [{\\"a\\": \\"a\\", \\"b\\": \\"b\\"}]}).toMatchObject({\\"a\\": [{\\"a\\": \\"c\\"}]}) | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": 1, \\"b\\": 1, \\"c\\": 1, \\"d\\": {\\"e\\": {\\"f\\": 555}}}).toMatchObject({\\"d\\": {\\"e\\": {\\"f\\": 222}}}) | 1ms | -| ✔️ | {pass: false} expect({}).toMatchObject({\\"a\\": undefined}) | 0ms | -| ✔️ | {pass: false} expect([1, 2, 3]).toMatchObject([2, 3, 1]) | 0ms | -| ✔️ | {pass: false} expect([1, 2, 3]).toMatchObject([1, 2, 2]) | 0ms | -| ✔️ | {pass: false} expect([Error: foo]).toMatchObject([Error: bar]) | 0ms | -| ✔️ | {pass: false} expect({\\"a\\": \\"b\\"}).toMatchObject({\\"c\\": \\"d\\"}) | 4ms | -| ✔️ | {pass: false} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\", Symbol(jest): \\"jest\\"}).toMatchObject({\\"a\\": \\"c\\", Symbol(jest): Any}) | 1ms | -| ✔️ | {pass: false} expect({\\"a\\": \\"b\\"}).toMatchObject({\\"toString\\": Any}) | 0ms | -| ✔️ | throws expect(null).toMatchObject({}) | 0ms | -| ✔️ | throws expect(4).toMatchObject({}) | 0ms | -| ✔️ | throws expect(\\"44\\").toMatchObject({}) | 0ms | -| ✔️ | throws expect(true).toMatchObject({}) | 3ms | -| ✔️ | throws expect(undefined).toMatchObject({}) | 0ms | -| ✔️ | throws expect({}).toMatchObject(null) | 0ms | -| ✔️ | throws expect({}).toMatchObject(4) | 0ms | -| ✔️ | throws expect({}).toMatchObject(\\"some string\\") | 0ms | -| ✔️ | throws expect({}).toMatchObject(true) | 7ms | -| ✔️ | throws expect({}).toMatchObject(undefined) | 0ms | -| ✔️ | does not match properties up in the prototype chain | 1ms | - -## e2e/__tests__/jestRequireActual.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | understands dependencies using jest.requireActual | 1614ms | - -## packages/jest-core/src/__tests__/watch.test.js ✔️ - -### Watch mode flows - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Correctly passing test path pattern | 582ms | -| ✔️ | Correctly passing test name pattern | 73ms | -| ✔️ | Runs Jest once by default and shows usage | 60ms | -| ✔️ | Runs Jest in a non-interactive environment not showing usage | 125ms | -| ✔️ | resolves relative to the package root | 77ms | -| ✔️ | shows prompts for WatchPlugins in alphabetical order | 72ms | -| ✔️ | shows update snapshot prompt (without interactive) | 57ms | -| ✔️ | shows update snapshot prompt (with interactive) | 60ms | -| ✔️ | allows WatchPlugins to hook into JestHook | 69ms | -| ✔️ | allows WatchPlugins to override eligible internal plugins | 61ms | -| ✔️ | allows WatchPlugins to be configured | 70ms | -| ✔️ | allows WatchPlugins to hook into file system changes | 68ms | -| ✔️ | makes watch plugin initialization errors look nice | 104ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 114ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 72ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 174ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 63ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 66ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 65ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 68ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 64ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 65ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 65ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 65ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 62ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 60ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 70ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 61ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 64ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 63ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 71ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 76ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 66ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 78ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 57ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 68ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 52ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 65ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 58ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 62ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 73ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 69ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 61ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 65ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 65ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 70ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 66ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 65ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 110ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 84ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 69ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 78ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 87ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 93ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 82ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 131ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 248ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 77ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 64ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 86ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 72ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 74ms | -| ✔️ | allows WatchPlugins to modify only white-listed global config keys | 60ms | -| ✔️ | triggers enter on a WatchPlugin when its key is pressed | 73ms | -| ✔️ | prevents Jest from handling keys when active and returns control when end is called | 68ms | -| ✔️ | Pressing \\"o\\" runs test in \\"only changed files\\" mode | 69ms | -| ✔️ | Pressing \\"a\\" runs test in \\"watch all\\" mode | 62ms | -| ✔️ | Pressing \\"ENTER\\" reruns the tests | 108ms | -| ✔️ | Pressing \\"t\\" reruns the tests in \\"test name pattern\\" mode | 93ms | -| ✔️ | Pressing \\"p\\" reruns the tests in \\"filename pattern\\" mode | 80ms | -| ✔️ | Can combine \\"p\\" and \\"t\\" filters | 68ms | -| ✔️ | Pressing \\"u\\" reruns the tests in \\"update snapshot\\" mode | 67ms | -| ✔️ | passWithNoTest should be set to true in watch mode | 65ms | -| ✔️ | shows the correct usage for the f key in \\"only failed tests\\" mode | 62ms | - -### Watch mode flows when dealing with potential watch plugin key conflicts - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | forbids WatchPlugins overriding reserved internal plugins | 70ms | -| ✔️ | forbids WatchPlugins overriding reserved internal plugins | 58ms | -| ✔️ | forbids WatchPlugins overriding reserved internal plugins | 62ms | -| ✔️ | allows WatchPlugins to override non-reserved internal plugins | 68ms | -| ✔️ | allows WatchPlugins to override non-reserved internal plugins | 62ms | -| ✔️ | forbids third-party WatchPlugins overriding each other | 78ms | - -## packages/jest-runtime/src/__tests__/runtime_require_module_or_mock_transitive_deps.test.js ✔️ - -### transitive dependencies - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | mocks a manually mocked and mapped module | 618ms | -| ✔️ | unmocks transitive dependencies in node_modules by default | 357ms | -| ✔️ | unmocks transitive dependencies in node_modules when using unmock | 360ms | -| ✔️ | unmocks transitive dependencies in node_modules by default when using both patterns and unmock | 415ms | -| ✔️ | mocks deep dependencies when using unmock | 299ms | -| ✔️ | does not mock deep dependencies when using deepUnmock | 258ms | - -## packages/jest-core/src/__tests__/watchFileChanges.test.ts ✔️ - -### Watch mode flows with changed files - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should correct require new files without legacy cache | 1430ms | - -## packages/jest-haste-map/src/__tests__/index.test.js ✔️ - -### HasteMap - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | exports constants | 272ms | -| ✔️ | creates valid cache file paths | 9ms | -| ✔️ | creates different cache file paths for different roots | 9ms | -| ✔️ | creates different cache file paths for different dependency extractor cache keys | 14ms | -| ✔️ | creates different cache file paths for different hasteImplModulePath cache keys | 10ms | -| ✔️ | creates different cache file paths for different projects | 22ms | -| ✔️ | matches files against a pattern | 10ms | -| ✔️ | ignores files given a pattern | 6ms | -| ✔️ | ignores vcs directories without ignore pattern | 6ms | -| ✔️ | ignores vcs directories with ignore pattern regex | 5ms | -| ✔️ | warn on ignore pattern except for regex | 6ms | -| ✔️ | builds a haste map on a fresh cache | 7ms | -| ✔️ | does not crawl native files even if requested to do so | 5ms | -| ✔️ | retains all files if \`retainAllFiles\` is specified | 9ms | -| ✔️ | warns on duplicate mock files | 5ms | -| ✔️ | warns on duplicate module ids | 6ms | -| ✔️ | warns on duplicate module ids only once | 5ms | -| ✔️ | throws on duplicate module ids if \\"throwOnModuleCollision\\" is set to true | 5ms | -| ✔️ | splits up modules by platform | 5ms | -| ✔️ | does not access the file system on a warm cache with no changes | 11ms | -| ✔️ | only does minimal file system access when files change | 6ms | -| ✔️ | correctly handles file deletions | 6ms | -| ✔️ | correctly handles platform-specific file additions | 8ms | -| ✔️ | correctly handles platform-specific file deletions | 5ms | -| ✔️ | correctly handles platform-specific file renames | 5ms | -| ✔️ | discards the cache when configuration changes | 6ms | -| ✔️ | ignores files that do not exist | 53ms | -| ✔️ | distributes work across workers | 5ms | -| ✔️ | tries to crawl using node as a fallback | 7ms | -| ✔️ | tries to crawl using node as a fallback when promise fails once | 10ms | -| ✔️ | stops crawling when both crawlers fail | 5ms | - -### HasteMap builds a haste map on a fresh cache with SHA-1s - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses watchman: false | 6ms | -| ✔️ | uses watchman: true | 15ms | - -### HasteMap duplicate modules - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | recovers when a duplicate file is deleted | 6ms | -| ✔️ | recovers with the correct type when a duplicate file is deleted | 6ms | -| ✔️ | recovers when a duplicate module is renamed | 12ms | - -### HasteMap file system changes processing - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | provides a new set of hasteHS and moduleMap | 41ms | -| ✔️ | handles several change events at once | 35ms | -| ✔️ | does not emit duplicate change events | 43ms | -| ✔️ | emits a change even if a file in node_modules has changed | 36ms | -| ✔️ | correctly tracks changes to both platform-specific versions of a single module name | 35ms | - -### HasteMap file system changes processing recovery from duplicate module IDs - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | recovers when the oldest version of the duplicates is fixed | 66ms | -| ✔️ | recovers when the most recent duplicate is fixed | 90ms | -| ✔️ | ignore directories | 37ms | - -## e2e/__tests__/coverageHandlebars.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | code coverage for Handlebars | 1830ms | - -## e2e/__tests__/compareDomNodes.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not crash when expect involving a DOM node fails | 1355ms | - -## e2e/__tests__/jestEnvironmentJsdom.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | check is not leaking memory | 1702ms | - -## e2e/__tests__/resolve.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resolve platform modules | 1764ms | - -## e2e/__tests__/snapshot.test.ts ✔️ - -### Snapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | stores new snapshots on the first run | 959ms | -| ✔️ | works with escaped characters | 2154ms | -| ✔️ | works with escaped regex | 1375ms | -| ✔️ | works with template literal substitutions | 1520ms | - -### Snapshot Validation - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not save snapshots in CI mode by default | 890ms | -| ✔️ | works on subsequent runs without \`-u\` | 1752ms | -| ✔️ | deletes the snapshot if the test suite has been removed | 1549ms | -| ✔️ | deletes a snapshot when a test does removes all the snapshots | 1766ms | -| ✔️ | updates the snapshot when a test removes some snapshots | 1800ms | - -## packages/jest-runtime/src/__tests__/runtime_require_module_or_mock.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | mocks modules by default when using automocking | 338ms | -| ✔️ | doesn't mock modules when explicitly unmocked when using automocking | 100ms | -| ✔️ | doesn't mock modules when explicitly unmocked via a different name | 45ms | -| ✔️ | doesn't mock modules when disableAutomock() has been called | 90ms | -| ✔️ | uses manual mock when automocking on and mock is available | 29ms | -| ✔️ | does not use manual mock when automocking is off and a real module is available | 20ms | -| ✔️ | resolves mapped module names and unmocks them by default | 88ms | -| ✔️ | automocking is disabled by default | 21ms | -| ✔️ | unmocks modules in config.unmockedModulePathPatterns for tests with automock enabled when automock is false | 96ms | -| ✔️ | unmocks virtual mocks after they have been mocked previously | 116ms | - -### resetModules - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resets all the modules | 22ms | - -### isolateModules - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | keeps it's registry isolated from global one | 22ms | -| ✔️ | resets all modules after the block | 26ms | -| ✔️ | resets module after failing | 48ms | -| ✔️ | cannot nest isolateModules blocks | 50ms | -| ✔️ | can call resetModules within a isolateModules block | 25ms | - -### isolateModules can use isolateModules from a beforeEach block - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | can use the required module from beforeEach and re-require it | 9ms | - -## packages/jest-runtime/src/__tests__/runtime_require_mock.test.js ✔️ - -### Runtime requireMock - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses manual mocks before attempting to automock | 281ms | -| ✔️ | can resolve modules that are only referenced from mocks | 38ms | -| ✔️ | stores and re-uses manual mock exports | 36ms | -| ✔️ | automocks haste modules without a manual mock | 77ms | -| ✔️ | automocks relative-path modules without a file extension | 43ms | -| ✔️ | automocks relative-path modules with a file extension | 36ms | -| ✔️ | just falls back when loading a native module | 31ms | -| ✔️ | stores and re-uses automocked haste exports | 31ms | -| ✔️ | stores and re-uses automocked relative-path modules | 102ms | -| ✔️ | multiple node core modules returns correct module | 74ms | -| ✔️ | throws on non-existent haste modules | 69ms | -| ✔️ | uses manual mocks when using a custom resolver | 49ms | -| ✔️ | provides \`require.main\` in mock | 33ms | - -## packages/jest-runtime/src/__tests__/runtime_node_path.test.js ✔️ - -### Runtime - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses NODE_PATH to find modules | 303ms | -| ✔️ | uses modulePaths to find modules | 231ms | -| ✔️ | finds modules in NODE_PATH containing multiple paths | 248ms | -| ✔️ | does not find modules if NODE_PATH is relative | 260ms | - -## packages/jest-runtime/src/__tests__/runtime_require_resolve.test.ts ✔️ - -### Runtime require.resolve - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resolves a module path | 292ms | -| ✔️ | resolves a module path with moduleNameMapper | 74ms | - -### Runtime require.resolve with the jest-resolve-outside-vm-option - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | forwards to the real Node require in an internal context | 87ms | -| ✔️ | ignores the option in an external context | 127ms | -| ✔️ | does not understand a self-constructed outsideJestVmPath in an external context | 87ms | - -## packages/jest-leak-detector/src/__tests__/index.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | complains if the value is a primitive | 3ms | -| ✔️ | does not show the GC if hidden | 80ms | -| ✔️ | does not hide the GC if visible | 34ms | -| ✔️ | correctly checks simple leaks | 108ms | -| ✔️ | tests different objects | 445ms | -| ✔️ | correctly checks more complex leaks | 240ms | - -## e2e/__tests__/jasmineAsyncWithPendingDuringTest.ts ✔️ - -### async jasmine with pending during test - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not work on jest-circus | 18ms | -| ✖️ | should be reported as a pending test | 0ms | - -## packages/jest-core/src/__tests__/TestScheduler.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | config for reporters supports \`default\` | 14ms | -| ✔️ | .addReporter() .removeReporter() | 1ms | -| ✔️ | schedule tests run in parallel per default | 4ms | -| ✔️ | schedule tests run in serial if the runner flags them | 1ms | -| ✔️ | should bail after \`n\` failures | 2ms | -| ✔️ | should not bail if less than \`n\` failures | 0ms | -| ✔️ | should set runInBand to run in serial | 2ms | -| ✔️ | should set runInBand to not run in serial | 2ms | - -## e2e/__tests__/expectInVm.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | expect works correctly with RegExps created inside a VM | 1477ms | - -## packages/jest-runtime/src/__tests__/runtime_require_actual.test.js ✔️ - -### Runtime requireActual - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | requires node module when manual mock exists | 314ms | -| ✔️ | requireActual with moduleNameMapper | 51ms | - -## packages/jest-runtime/src/__tests__/runtime_require_cache.test.js ✔️ - -### Runtime require.cache - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | require.cache returns loaded module list as native Nodejs require does | 388ms | -| ✔️ | require.cache is tolerant readonly | 31ms | - -## packages/jest-runtime/src/__tests__/runtime_module_directories.test.js ✔️ - -### Runtime - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses configured moduleDirectories | 288ms | -| ✔️ | resolves packages | 47ms | -| ✔️ | finds closest module from moduleDirectories | 44ms | -| ✔️ | only checks the configured directories | 103ms | - -## packages/jest-runtime/src/__tests__/runtime_internal_module.test.js ✔️ - -### Runtime internalModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | loads modules and applies transforms | 170ms | -| ✔️ | loads internal modules without applying transforms | 162ms | -| ✔️ | loads JSON modules and applies transforms | 189ms | -| ✔️ | loads internal JSON modules without applying transforms | 123ms | - -## packages/jest-cli/src/__tests__/cli/args.test.ts ✔️ - -### check - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns true if the arguments are valid | 1ms | -| ✔️ | raises an exception if runInBand and maxWorkers are both specified | 23ms | -| ✔️ | raises an exception if onlyChanged and watchAll are both specified | 1ms | -| ✔️ | raises an exception if onlyFailures and watchAll are both specified | 1ms | -| ✔️ | raises an exception when lastCommit and watchAll are both specified | 0ms | -| ✔️ | raises an exception if findRelatedTests is specified with no file paths | 1ms | -| ✔️ | raises an exception if maxWorkers is specified with no number | 0ms | -| ✔️ | allows maxWorkers to be a % | 1ms | -| ✔️ | allows using \\"js\\" file for --config option | 10ms | -| ✔️ | allows using \\"ts\\" file for --config option | 0ms | -| ✔️ | allows using \\"mjs\\" file for --config option | 0ms | -| ✔️ | allows using \\"cjs\\" file for --config option | 1ms | -| ✔️ | allows using \\"json\\" file for --config option | 0ms | -| ✔️ | raises an exception if selectProjects is not provided any project names | 0ms | -| ✔️ | raises an exception if config is not a valid JSON string | 1ms | -| ✔️ | raises an exception if config is not a supported file type | 1ms | - -### buildArgv - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return only camelcased args | 14ms | - -## packages/jest-runtime/src/__tests__/runtime_jest_spy_on.test.js ✔️ - -### Runtime jest.spyOn - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls the original function | 395ms | - -### Runtime jest.spyOnProperty - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls the original function | 43ms | - -## packages/jest-resolve-dependencies/src/__tests__/dependency_resolver.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resolves no dependencies for non-existent path | 72ms | -| ✔️ | resolves dependencies for existing path | 30ms | -| ✔️ | includes the mocks of dependencies as dependencies | 67ms | -| ✔️ | resolves dependencies for scoped packages | 41ms | -| ✔️ | resolves no inverse dependencies for empty paths set | 51ms | -| ✔️ | resolves no inverse dependencies for set of non-existent paths | 41ms | -| ✔️ | resolves inverse dependencies for existing path | 27ms | -| ✔️ | resolves inverse dependencies of mock | 26ms | -| ✔️ | resolves inverse dependencies from available snapshot | 47ms | -| ✔️ | resolves dependencies correctly when dependency resolution fails | 41ms | -| ✔️ | resolves dependencies correctly when mock dependency resolution fails | 27ms | - -## packages/jest-message-util/src/__tests__/messages.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should exclude jasmine from stack trace for Unix paths. | 4ms | -| ✔️ | .formatExecError() | 0ms | -| ✔️ | formatStackTrace should strip node internals | 1ms | -| ✔️ | should not exclude vendor from stack trace | 1ms | -| ✔️ | retains message in babel code frame error | 1ms | -| ✔️ | codeframe | 3ms | -| ✔️ | no codeframe | 0ms | -| ✔️ | no stack | 1ms | - -### formatStackTrace - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints code frame and stacktrace | 1ms | -| ✔️ | does not print code frame when noCodeFrame = true | 1ms | -| ✔️ | does not print codeframe when noStackTrace = true | 0ms | - -## packages/jest-diff/src/__tests__/diff.test.ts ✔️ - -### different types - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | '1' and 'a' | 0ms | -| ✔️ | '[object Object]' and 'a' | 1ms | -| ✔️ | '' and '2' | 0ms | -| ✔️ | 'null' and 'undefined' | 0ms | -| ✔️ | '() => {}' and '3' | 0ms | - -### no visual difference - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | '\\"a\\"' and '\\"a\\"' | 2ms | -| ✔️ | '{}' and '{}' | 1ms | -| ✔️ | '[]' and '[]' | 0ms | -| ✔️ | '[1,2]' and '[1,2]' | 0ms | -| ✔️ | '11' and '11' | 1ms | -| ✔️ | 'null' and 'null' | 0ms | -| ✔️ | 'null' and 'null' | 0ms | -| ✔️ | 'undefined' and 'undefined' | 0ms | -| ✔️ | 'null' and 'null' | 0ms | -| ✔️ | 'undefined' and 'undefined' | 1ms | -| ✔️ | 'false' and 'false' | 0ms | -| ✔️ | '{\\"a\\":1}' and '{\\"a\\":1}' | 0ms | -| ✔️ | '{\\"a\\":{\\"b\\":5}}' and '{\\"a\\":{\\"b\\":5}}' | 0ms | -| ✔️ | Map key order should be irrelevant | 1ms | -| ✔️ | Set value order should be irrelevant | 1ms | - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | oneline strings | 1ms | -| ✔️ | numbers | 0ms | -| ✔️ | -0 and 0 | 0ms | -| ✔️ | booleans | 0ms | -| ✔️ | collapses big diffs to patch format | 1ms | - -### falls back to not call toJSON if serialization has no differences - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | but then objects have differences | 1ms | -| ✔️ | and then objects have no differences | 0ms | - -### falls back to not call toJSON if it throws - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | and then objects have differences | 0ms | -| ✔️ | and then objects have no differences | 0ms | - -### multiline strings - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 1ms | -| ✔️ | (expanded) | 0ms | - -### objects - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 0ms | - -### multiline string non-snapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 0ms | - -### multiline string snapshot - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 1ms | -| ✔️ | (expanded) | 0ms | - -### React elements - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 1ms | -| ✔️ | (expanded) | 0ms | - -### multiline string as value of object property (non-snapshot) - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 1ms | - -### multiline string as value of object property (snapshot) - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 0ms | - -### indentation in JavaScript structures from less to more - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 7ms | -| ✔️ | (expanded) | 1ms | - -### indentation in JavaScript structures from more to less - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 1ms | - -### color of text - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (expanded) | 0ms | -| ✔️ | (unexpanded) | 1ms | - -### indentation in React elements (non-snapshot) from less to more - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 0ms | - -### indentation in React elements (non-snapshot) from more to less - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 1ms | - -### indentation in React elements (snapshot) from less to more - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 0ms | - -### indentation in React elements (snapshot) from more to less - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 1ms | - -### outer React element (non-snapshot) from less to more - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 0ms | - -### outer React element (non-snapshot) from more to less - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 1ms | - -### trailing newline in multiline string not enclosed in quotes from less to more - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 1ms | - -### trailing newline in multiline string not enclosed in quotes from more to less - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | (unexpanded) | 0ms | -| ✔️ | (expanded) | 0ms | - -### context - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | number of lines: -1 (5 default) | 0ms | -| ✔️ | number of lines: 0 | 1ms | -| ✔️ | number of lines: 1 | 0ms | -| ✔️ | number of lines: 2 | 1ms | -| ✔️ | number of lines: 3.1 (5 default) | 0ms | -| ✔️ | number of lines: undefined (5 default) | 1ms | - -### diffLinesUnified edge cases - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | a empty string b empty string | 0ms | -| ✔️ | a empty string b one line | 0ms | -| ✔️ | a multiple lines b empty string | 0ms | -| ✔️ | a one line b multiple lines | 0ms | - -### diffLinesUnified2 edge cases - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | a empty string b empty string | 0ms | -| ✔️ | a empty string b one line | 0ms | -| ✔️ | a multiple lines b empty string | 0ms | -| ✔️ | a one line b multiple lines | 1ms | - -### diffLinesUnified2 edge cases lengths not equal - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | a | 0ms | -| ✔️ | b | 0ms | - -### diffStringsUnified edge cases - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | empty both a and b | 0ms | -| ✔️ | empty only a | 1ms | -| ✔️ | empty only b | 0ms | -| ✔️ | equal both non-empty | 2ms | -| ✔️ | multiline has no common after clean up chaff | 1ms | -| ✔️ | one-line has no common after clean up chaff | 0ms | - -### options 7980 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diff | 1ms | -| ✔️ | diffStringsUnified | 0ms | - -### options change indicators - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diff | 0ms | - -### options change color - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diffStringsUnified | 0ms | -| ✔️ | no diff | 0ms | - -### options common - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diff | 5ms | -| ✔️ | no diff | 1ms | - -### options includeChangeCounts false - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diffLinesUnified | 2ms | -| ✔️ | diffStringsUnified | 0ms | - -### options includeChangeCounts true padding - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diffLinesUnified a has 2 digits | 0ms | -| ✔️ | diffLinesUnified b has 2 digits | 0ms | -| ✔️ | diffStringsUnified | 0ms | - -### options omitAnnotationLines true - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diff | 1ms | -| ✔️ | diffStringsUnified and includeChangeCounts true | 0ms | -| ✔️ | diffStringsUnified empty strings | 0ms | - -### options trailingSpaceFormatter - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diffDefault default no color | 1ms | -| ✔️ | diffDefault middle dot | 0ms | -| ✔️ | diffDefault yellowish common | 0ms | - -### options emptyFirstOrLastLinePlaceholder default empty string - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | diffDefault | 0ms | -| ✔️ | diffStringsUnified | 0ms | - -## packages/jest-core/src/__tests__/watchTestNamePatternMode.test.js ✔️ - -### Watch mode flows - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Pressing \\"T\\" enters pattern mode | 8ms | - -## packages/expect/src/__tests__/spyMatchers.test.ts ✔️ - -### toBeCalled - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 1ms | -| ✔️ | passes when called | 1ms | -| ✔️ | .not passes when called | 1ms | -| ✔️ | fails with any argument passed | 0ms | -| ✔️ | .not fails with any argument passed | 1ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### toHaveBeenCalled - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 1ms | -| ✔️ | passes when called | 1ms | -| ✔️ | .not passes when called | 0ms | -| ✔️ | fails with any argument passed | 1ms | -| ✔️ | .not fails with any argument passed | 0ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### toBeCalledTimes - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | .not works only on spies or jest.fn | 0ms | -| ✔️ | only accepts a number argument | 5ms | -| ✔️ | .not only accepts a number argument | 2ms | -| ✔️ | passes if function called equal to expected times | 0ms | -| ✔️ | .not passes if function called more than expected times | 1ms | -| ✔️ | .not passes if function called less than expected times | 1ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### toHaveBeenCalledTimes - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | .not works only on spies or jest.fn | 0ms | -| ✔️ | only accepts a number argument | 1ms | -| ✔️ | .not only accepts a number argument | 4ms | -| ✔️ | passes if function called equal to expected times | 0ms | -| ✔️ | .not passes if function called more than expected times | 1ms | -| ✔️ | .not passes if function called less than expected times | 0ms | -| ✔️ | includes the custom mock name in the error message | 1ms | - -### lastCalledWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 1ms | -| ✔️ | works with no arguments | 0ms | -| ✔️ | works with arguments that don't match | 1ms | -| ✔️ | works with arguments that match | 1ms | -| ✔️ | works with trailing undefined arguments | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 2ms | -| ✔️ | works with Immutable.js objects | 1ms | -| ✔️ | works with many arguments | 0ms | -| ✔️ | works with many arguments that don't match | 1ms | -| ✔️ | includes the custom mock name in the error message | 1ms | - -### toHaveBeenLastCalledWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 1ms | -| ✔️ | works with arguments that don't match | 0ms | -| ✔️ | works with arguments that match | 1ms | -| ✔️ | works with trailing undefined arguments | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects | 1ms | -| ✔️ | works with many arguments | 0ms | -| ✔️ | works with many arguments that don't match | 1ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### nthCalledWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 1ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 1ms | -| ✔️ | works with arguments that don't match | 0ms | -| ✔️ | works with arguments that match | 1ms | -| ✔️ | works with trailing undefined arguments | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects | 1ms | -| ✔️ | works with three calls | 0ms | -| ✔️ | positive throw matcher error for n that is not positive integer | 0ms | -| ✔️ | positive throw matcher error for n that is not integer | 0ms | -| ✔️ | negative throw matcher error for n that is not integer | 1ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### toHaveBeenNthCalledWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 1ms | -| ✔️ | works with arguments that don't match | 0ms | -| ✔️ | works with arguments that match | 1ms | -| ✔️ | works with trailing undefined arguments | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects | 1ms | -| ✔️ | works with three calls | 2ms | -| ✔️ | positive throw matcher error for n that is not positive integer | 0ms | -| ✔️ | positive throw matcher error for n that is not integer | 0ms | -| ✔️ | negative throw matcher error for n that is not integer | 1ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### toBeCalledWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 1ms | -| ✔️ | works with arguments that don't match | 0ms | -| ✔️ | works with arguments that match | 1ms | -| ✔️ | works with trailing undefined arguments | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects | 1ms | -| ✔️ | works with many arguments | 0ms | -| ✔️ | works with many arguments that don't match | 0ms | -| ✔️ | includes the custom mock name in the error message | 1ms | - -### toHaveBeenCalledWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 0ms | -| ✔️ | works with arguments that don't match | 0ms | -| ✔️ | works with arguments that match | 0ms | -| ✔️ | works with trailing undefined arguments | 1ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects | 0ms | -| ✔️ | works with many arguments | 1ms | -| ✔️ | works with many arguments that don't match | 0ms | -| ✔️ | includes the custom mock name in the error message | 1ms | - -### toReturn - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | .not works only on jest.fn | 0ms | -| ✔️ | throw matcher error if received is spy | 0ms | -| ✔️ | passes when returned | 0ms | -| ✔️ | passes when undefined is returned | 0ms | -| ✔️ | passes when at least one call does not throw | 0ms | -| ✔️ | .not passes when not returned | 0ms | -| ✔️ | .not passes when all calls throw | 1ms | -| ✔️ | .not passes when a call throws undefined | 0ms | -| ✔️ | fails with any argument passed | 1ms | -| ✔️ | .not fails with any argument passed | 0ms | -| ✔️ | includes the custom mock name in the error message | 1ms | -| ✔️ | incomplete recursive calls are handled properly | 0ms | - -### toHaveReturned - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | .not works only on jest.fn | 0ms | -| ✔️ | throw matcher error if received is spy | 1ms | -| ✔️ | passes when returned | 0ms | -| ✔️ | passes when undefined is returned | 3ms | -| ✔️ | passes when at least one call does not throw | 0ms | -| ✔️ | .not passes when not returned | 1ms | -| ✔️ | .not passes when all calls throw | 0ms | -| ✔️ | .not passes when a call throws undefined | 1ms | -| ✔️ | fails with any argument passed | 0ms | -| ✔️ | .not fails with any argument passed | 0ms | -| ✔️ | includes the custom mock name in the error message | 1ms | -| ✔️ | incomplete recursive calls are handled properly | 0ms | - -### toReturnTimes - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throw matcher error if received is spy | 0ms | -| ✔️ | only accepts a number argument | 2ms | -| ✔️ | .not only accepts a number argument | 1ms | -| ✔️ | passes if function returned equal to expected times | 1ms | -| ✔️ | calls that return undefined are counted as returns | 0ms | -| ✔️ | .not passes if function returned more than expected times | 0ms | -| ✔️ | .not passes if function called less than expected times | 1ms | -| ✔️ | calls that throw are not counted | 0ms | -| ✔️ | calls that throw undefined are not counted | 2ms | -| ✔️ | includes the custom mock name in the error message | 1ms | -| ✔️ | incomplete recursive calls are handled properly | 0ms | - -### toHaveReturnedTimes - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throw matcher error if received is spy | 0ms | -| ✔️ | only accepts a number argument | 2ms | -| ✔️ | .not only accepts a number argument | 1ms | -| ✔️ | passes if function returned equal to expected times | 0ms | -| ✔️ | calls that return undefined are counted as returns | 0ms | -| ✔️ | .not passes if function returned more than expected times | 1ms | -| ✔️ | .not passes if function called less than expected times | 0ms | -| ✔️ | calls that throw are not counted | 0ms | -| ✔️ | calls that throw undefined are not counted | 0ms | -| ✔️ | includes the custom mock name in the error message | 0ms | -| ✔️ | incomplete recursive calls are handled properly | 1ms | - -### lastReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 1ms | -| ✔️ | works with no arguments | 0ms | -| ✔️ | works with argument that does not match | 1ms | -| ✔️ | works with argument that does match | 1ms | -| ✔️ | works with undefined | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects directly created | 1ms | -| ✔️ | works with Immutable.js objects indirectly created | 1ms | -| ✔️ | a call that throws is not considered to have returned | 0ms | -| ✔️ | a call that throws undefined is not considered to have returned | 1ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### lastReturnedWith lastReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with three calls | 1ms | -| ✔️ | incomplete recursive calls are handled properly | 5ms | - -### toHaveLastReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 0ms | -| ✔️ | works with argument that does not match | 0ms | -| ✔️ | works with argument that does match | 1ms | -| ✔️ | works with undefined | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects directly created | 1ms | -| ✔️ | works with Immutable.js objects indirectly created | 1ms | -| ✔️ | a call that throws is not considered to have returned | 0ms | -| ✔️ | a call that throws undefined is not considered to have returned | 1ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### toHaveLastReturnedWith lastReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with three calls | 0ms | -| ✔️ | incomplete recursive calls are handled properly | 1ms | - -### nthReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 1ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 0ms | -| ✔️ | works with argument that does not match | 1ms | -| ✔️ | works with argument that does match | 1ms | -| ✔️ | works with undefined | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects directly created | 1ms | -| ✔️ | works with Immutable.js objects indirectly created | 0ms | -| ✔️ | a call that throws is not considered to have returned | 0ms | -| ✔️ | a call that throws undefined is not considered to have returned | 1ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### nthReturnedWith nthReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with three calls | 0ms | -| ✔️ | should replace 1st, 2nd, 3rd with first, second, third | 1ms | -| ✔️ | positive throw matcher error for n that is not positive integer | 1ms | -| ✔️ | should reject nth value greater than number of calls | 0ms | -| ✔️ | positive throw matcher error for n that is not integer | 1ms | -| ✔️ | negative throw matcher error for n that is not number | 0ms | -| ✔️ | incomplete recursive calls are handled properly | 2ms | - -### toHaveNthReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 1ms | -| ✔️ | works with no arguments | 0ms | -| ✔️ | works with argument that does not match | 0ms | -| ✔️ | works with argument that does match | 1ms | -| ✔️ | works with undefined | 0ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 1ms | -| ✔️ | works with Immutable.js objects directly created | 1ms | -| ✔️ | works with Immutable.js objects indirectly created | 0ms | -| ✔️ | a call that throws is not considered to have returned | 1ms | -| ✔️ | a call that throws undefined is not considered to have returned | 2ms | -| ✔️ | includes the custom mock name in the error message | 0ms | - -### toHaveNthReturnedWith nthReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with three calls | 1ms | -| ✔️ | should replace 1st, 2nd, 3rd with first, second, third | 0ms | -| ✔️ | positive throw matcher error for n that is not positive integer | 1ms | -| ✔️ | should reject nth value greater than number of calls | 0ms | -| ✔️ | positive throw matcher error for n that is not integer | 0ms | -| ✔️ | negative throw matcher error for n that is not number | 1ms | -| ✔️ | incomplete recursive calls are handled properly | 1ms | - -### toReturnWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 1ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 0ms | -| ✔️ | works with argument that does not match | 1ms | -| ✔️ | works with argument that does match | 0ms | -| ✔️ | works with undefined | 1ms | -| ✔️ | works with Map | 0ms | -| ✔️ | works with Set | 2ms | -| ✔️ | works with Immutable.js objects directly created | 1ms | -| ✔️ | works with Immutable.js objects indirectly created | 0ms | -| ✔️ | a call that throws is not considered to have returned | 0ms | -| ✔️ | a call that throws undefined is not considered to have returned | 1ms | -| ✔️ | includes the custom mock name in the error message | 1ms | - -### toReturnWith returnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with more calls than the limit | 1ms | -| ✔️ | incomplete recursive calls are handled properly | 0ms | - -### toHaveReturnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works only on spies or jest.fn | 0ms | -| ✔️ | works when not called | 0ms | -| ✔️ | works with no arguments | 1ms | -| ✔️ | works with argument that does not match | 0ms | -| ✔️ | works with argument that does match | 0ms | -| ✔️ | works with undefined | 1ms | -| ✔️ | works with Map | 1ms | -| ✔️ | works with Set | 0ms | -| ✔️ | works with Immutable.js objects directly created | 1ms | -| ✔️ | works with Immutable.js objects indirectly created | 0ms | -| ✔️ | a call that throws is not considered to have returned | 1ms | -| ✔️ | a call that throws undefined is not considered to have returned | 0ms | -| ✔️ | includes the custom mock name in the error message | 1ms | - -### toHaveReturnedWith returnedWith - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with more calls than the limit | 1ms | -| ✔️ | incomplete recursive calls are handled properly | 0ms | - -## e2e/__tests__/jestChangedFiles.test.ts ❌ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | gets hg SCM roots and dedupes them | 559ms | -| ✔️ | gets git SCM roots and dedupes them | 416ms | -| ✔️ | gets mixed git and hg SCM roots and dedupes them | 467ms | -| ✔️ | gets changed files for git | 2298ms | -| ✔️ | monitors only root paths for git | 151ms | -| ✔️ | does not find changes in files with no diff, for git | 628ms | -| ✔️ | handles a bad revision for \\"changedSince\\", for git | 878ms | -| ❌ | gets changed files for hg | 2219ms | -| ✔️ | monitors only root paths for hg | 281ms | -| ✔️ | handles a bad revision for \\"changedSince\\", for hg | 949ms | - -## packages/jest-matcher-utils/src/__tests__/index.test.ts ✔️ - -### stringify() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | [] | 0ms | -| ✔️ | {} | 1ms | -| ✔️ | 1 | 0ms | -| ✔️ | 0 | 0ms | -| ✔️ | 1.5 | 1ms | -| ✔️ | null | 0ms | -| ✔️ | undefined | 0ms | -| ✔️ | \\"abc\\" | 0ms | -| ✔️ | Symbol(abc) | 0ms | -| ✔️ | NaN | 0ms | -| ✔️ | Infinity | 0ms | -| ✔️ | -Infinity | 1ms | -| ✔️ | /ab\\\\.c/gi | 0ms | -| ✔️ | 1n | 0ms | -| ✔️ | 0n | 0ms | -| ✔️ | circular references | 0ms | -| ✔️ | toJSON error | 1ms | -| ✔️ | toJSON errors when comparing two objects | 3ms | -| ✔️ | reduces maxDepth if stringifying very large objects | 96ms | - -### ensureNumbers() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | dont throw error when variables are numbers | 0ms | -| ✔️ | throws error when expected is not a number (backward compatibility) | 1ms | -| ✔️ | throws error when received is not a number (backward compatibility) | 0ms | - -### ensureNumbers() with options - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | promise empty isNot false received | 1ms | -| ✔️ | promise empty isNot true expected | 1ms | -| ✔️ | promise rejects isNot false expected | 0ms | -| ✔️ | promise rejects isNot true received | 0ms | -| ✔️ | promise resolves isNot false received | 1ms | -| ✔️ | promise resolves isNot true expected | 0ms | - -### ensureNoExpected() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | dont throw error when undefined | 0ms | -| ✔️ | throws error when expected is not undefined with matcherName | 1ms | -| ✔️ | throws error when expected is not undefined with matcherName and options | 0ms | - -### diff - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | forwards to jest-diff | 1ms | -| ✔️ | two booleans | 0ms | -| ✔️ | two numbers | 0ms | -| ✔️ | two bigints | 0ms | - -### pluralize() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | one | 1ms | -| ✔️ | two | 0ms | -| ✔️ | 20 | 1ms | - -### getLabelPrinter - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | 0 args | 0ms | -| ✔️ | 1 empty string | 0ms | -| ✔️ | 1 non-empty string | 0ms | -| ✔️ | 2 equal lengths | 1ms | -| ✔️ | 2 unequal lengths | 0ms | -| ✔️ | returns incorrect padding if inconsistent arg is shorter | 0ms | -| ✔️ | throws if inconsistent arg is longer | 26ms | - -### matcherHint - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | expectedColor | 0ms | -| ✔️ | receivedColor | 1ms | -| ✔️ | secondArgumentColor | 0ms | - -## packages/jest-core/src/__tests__/watchFilenamePatternMode.test.js ✔️ - -### Watch mode flows - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Pressing \\"P\\" enters pattern mode | 7ms | -| ✔️ | Pressing \\"c\\" clears the filters | 1ms | - -## packages/jest-runtime/src/__tests__/runtime_create_mock_from_module.test.js ✔️ - -### Runtime createMockFromModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not cause side effects in the rest of the module system when generating a mock | 408ms | -| ✔️ | resolves mapped modules correctly | 94ms | - -### Runtime - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | creates mock objects in the right environment | 37ms | - -## packages/jest-runtime/src/__tests__/runtime_environment.test.js ✔️ - -### Runtime requireModule - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | emulates a node stack trace during module load | 398ms | -| ✔️ | emulates a node stack trace during function execution | 70ms | - -## packages/jest-haste-map/src/__tests__/includes_dotfiles.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | watchman crawler and node crawler both include dotfiles | 77ms | - -## packages/jest-haste-map/src/crawlers/__tests__/watchman.test.js ✔️ - -### watchman watch - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns a list of all files when there are no clocks | 7ms | -| ✔️ | updates file map and removedFiles when the clock is given | 1ms | -| ✔️ | resets the file map and tracks removedFiles when watchman is fresh | 2ms | -| ✔️ | properly resets the file map when only one watcher is reset | 6ms | -| ✔️ | does not add directory filters to query when watching a ROOT | 2ms | -| ✔️ | SHA-1 requested and available | 1ms | -| ✔️ | SHA-1 requested and NOT available | 1ms | -| ✔️ | source control query | 1ms | - -## packages/jest-fake-timers/src/__tests__/legacyFakeTimers.test.ts ✔️ - -### FakeTimers construction - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | installs setTimeout mock | 1ms | -| ✔️ | accepts to promisify setTimeout mock | 2ms | -| ✔️ | installs clearTimeout mock | 1ms | -| ✔️ | installs setInterval mock | 0ms | -| ✔️ | installs clearInterval mock | 1ms | -| ✔️ | mocks process.nextTick if it exists on global | 1ms | -| ✔️ | mocks setImmediate if it exists on global | 1ms | -| ✔️ | mocks clearImmediate if setImmediate is on global | 1ms | - -### FakeTimers runAllTicks - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs all ticks, in order | 1ms | -| ✔️ | does nothing when no ticks have been scheduled | 1ms | -| ✔️ | only runs a scheduled callback once | 1ms | -| ✔️ | cancels a callback even from native nextTick | 1ms | -| ✔️ | cancels a callback even from native setImmediate | 1ms | -| ✔️ | doesnt run a tick callback if native nextTick already did | 1ms | -| ✔️ | doesnt run immediate if native setImmediate already did | 1ms | -| ✔️ | native doesnt run immediate if fake already did | 2ms | -| ✔️ | throws before allowing infinite recursion | 43ms | - -### FakeTimers runAllTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs all timers in order | 1ms | -| ✔️ | warns when trying to advance timers while real timers are used | 3ms | -| ✔️ | does nothing when no timers have been scheduled | 1ms | -| ✔️ | only runs a setTimeout callback once (ever) | 1ms | -| ✔️ | runs callbacks with arguments after the interval | 1ms | -| ✔️ | doesnt pass the callback to native setTimeout | 0ms | -| ✔️ | throws before allowing infinite recursion | 1ms | -| ✔️ | also clears ticks | 1ms | - -### FakeTimers advanceTimersByTime - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs timers in order | 1ms | -| ✔️ | does nothing when no timers have been scheduled | 1ms | -| ✔️ | throws before allowing infinite recursion | 1ms | - -### FakeTimers advanceTimersToNextTimer - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs timers in order | 1ms | -| ✔️ | run correct amount of steps | 1ms | -| ✔️ | setTimeout inside setTimeout | 0ms | -| ✔️ | does nothing when no timers have been scheduled | 1ms | - -### FakeTimers reset - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resets all pending setTimeouts | 1ms | -| ✔️ | resets all pending setIntervals | 1ms | -| ✔️ | resets all pending ticks callbacks & immediates | 1ms | -| ✔️ | resets current advanceTimersByTime time cursor | 1ms | - -### FakeTimers runOnlyPendingTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs all timers in order | 1ms | -| ✔️ | does not run timers that were cleared in another timer | 1ms | - -### FakeTimers runWithRealTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | executes callback with native timers | 2ms | -| ✔️ | resets mock timers after executing callback | 1ms | -| ✔️ | resets mock timer functions even if callback throws | 2ms | - -### FakeTimers useRealTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resets native timer APIs | 1ms | -| ✔️ | resets native process.nextTick when present | 1ms | -| ✔️ | resets native setImmediate when present | 1ms | - -### FakeTimers useFakeTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resets mock timer APIs | 1ms | -| ✔️ | resets mock process.nextTick when present | 1ms | -| ✔️ | resets mock setImmediate when present | 1ms | - -### FakeTimers getTimerCount - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the correct count | 1ms | -| ✔️ | includes immediates and ticks | 10ms | -| ✔️ | not includes cancelled immediates | 1ms | - -## packages/jest-runtime/src/__tests__/runtime_jest_fn.js ✔️ - -### Runtime jest.fn - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | creates mock functions | 330ms | -| ✔️ | creates mock functions with mock implementations | 31ms | - -### Runtime jest.isMockFunction - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | recognizes a mocked function | 35ms | - -### Runtime jest.clearAllMocks - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | clears all mocks | 29ms | - -## packages/expect/src/__tests__/matchers-toStrictEqual.property.test.ts ✔️ - -### toStrictEqual - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be reflexive | 44ms | -| ✔️ | should be symmetric | 92ms | - -### toStrictEqual on node >=9 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be equivalent to Node deepStrictEqual | 113ms | - -## packages/diff-sequences/src/__tests__/index.property.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be reflexive | 45ms | -| ✔️ | should find the same number of common items when switching the inputs | 29ms | -| ✔️ | should have at most the length of its inputs | 20ms | -| ✔️ | should have at most the same number of each character as its inputs | 17ms | -| ✔️ | should be a subsequence of its inputs | 22ms | -| ✔️ | should be no-op when passing common items | 30ms | -| ✔️ | should find the exact common items when one array is subarray of the other | 22ms | - -## packages/jest-fake-timers/src/__tests__/modernFakeTimers.test.ts ✔️ - -### FakeTimers construction - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | installs setTimeout mock | 1ms | -| ✔️ | installs clearTimeout mock | 0ms | -| ✔️ | installs setInterval mock | 1ms | -| ✔️ | installs clearInterval mock | 1ms | -| ✔️ | mocks process.nextTick if it exists on global | 0ms | -| ✔️ | mocks setImmediate if it exists on global | 0ms | -| ✔️ | mocks clearImmediate if setImmediate is on global | 0ms | - -### FakeTimers runAllTicks - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs all ticks, in order | 1ms | -| ✔️ | does nothing when no ticks have been scheduled | 0ms | -| ✔️ | only runs a scheduled callback once | 1ms | -| ✔️ | throws before allowing infinite recursion | 25ms | - -### FakeTimers runAllTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs all timers in order | 1ms | -| ✔️ | warns when trying to advance timers while real timers are used | 4ms | -| ✔️ | does nothing when no timers have been scheduled | 1ms | -| ✔️ | only runs a setTimeout callback once (ever) | 0ms | -| ✔️ | runs callbacks with arguments after the interval | 1ms | -| ✔️ | doesn't pass the callback to native setTimeout | 0ms | -| ✔️ | throws before allowing infinite recursion | 7ms | -| ✔️ | also clears ticks | 1ms | - -### FakeTimers advanceTimersByTime - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs timers in order | 1ms | -| ✔️ | does nothing when no timers have been scheduled | 0ms | - -### FakeTimers advanceTimersToNextTimer - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs timers in order | 4ms | -| ✔️ | run correct amount of steps | 1ms | -| ✔️ | setTimeout inside setTimeout | 0ms | -| ✔️ | does nothing when no timers have been scheduled | 1ms | - -### FakeTimers reset - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resets all pending setTimeouts | 0ms | -| ✔️ | resets all pending setIntervals | 0ms | -| ✔️ | resets all pending ticks callbacks | 1ms | -| ✔️ | resets current advanceTimersByTime time cursor | 0ms | - -### FakeTimers runOnlyPendingTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs all timers in order | 1ms | -| ✔️ | does not run timers that were cleared in another timer | 0ms | - -### FakeTimers useRealTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resets native timer APIs | 2ms | -| ✔️ | resets native process.nextTick when present | 0ms | -| ✔️ | resets native setImmediate when present | 0ms | - -### FakeTimers useFakeTimers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resets mock timer APIs | 1ms | -| ✔️ | resets mock process.nextTick when present | 0ms | -| ✔️ | resets mock setImmediate when present | 0ms | - -### FakeTimers getTimerCount - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the correct count | 1ms | -| ✔️ | includes immediates and ticks | 0ms | -| ✔️ | not includes cancelled immediates | 1ms | - -## packages/expect/src/__tests__/matchers-toContain.property.test.ts ✔️ - -### toContain - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should always find the value when inside the array | 122ms | -| ✔️ | should not find the value if it has been cloned into the array | 56ms | - -## packages/jest-runtime/src/__tests__/runtime_wrap.js ✔️ - -### Runtime wrapCodeInModuleWrapper - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | generates the correct args for the module wrapper | 194ms | -| ✔️ | injects \\"extra globals\\" | 43ms | - -## packages/expect/src/__tests__/matchers-toContainEqual.property.test.ts ✔️ - -### toContainEqual - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should always find the value when inside the array | 91ms | -| ✔️ | should always find the value when cloned inside the array | 52ms | - -## packages/diff-sequences/src/__tests__/index.test.ts ✔️ - -### invalid arg length - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is not a number | 40ms | -| ✔️ | Infinity is not a safe integer | 1ms | -| ✔️ | Not a Number is not a safe integer | 0ms | -| ✔️ | MAX_SAFE_INTEGER + 1 is not a safe integer | 0ms | -| ✔️ | MIN_SAFE_INTEGER - 1 is not a safe integer | 1ms | -| ✔️ | is a negative integer | 0ms | - -### invalid arg callback - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | null is not a function | 1ms | -| ✔️ | undefined is not a function | 0ms | - -### input callback encapsulates comparison zero and negative zero - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | are not common according to Object.is method | 0ms | -| ✔️ | are common according to === operator | 0ms | - -### input callback encapsulates comparison Not a Number - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is common according to Object.is method | 0ms | -| ✔️ | is not common according to === operator | 0ms | - -### input callback encapsulates sequences - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | arrays of strings | 1ms | -| ✔️ | string and array of strings | 1ms | -| ✔️ | strings | 1ms | - -### no common items negative zero is equivalent to zero for length - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | of a | 0ms | -| ✔️ | of b | 0ms | -| ✔️ | of a and b | 1ms | - -### no common items - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | a empty and b empty | 3ms | -| ✔️ | a empty and b non-empty | 1ms | -| ✔️ | a non-empty and b empty | 0ms | - -### no common items a non-empty and b non-empty - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | baDeltaLength 0 even | 1ms | -| ✔️ | baDeltaLength 1 odd | 0ms | -| ✔️ | baDeltaLength 2 even | 0ms | -| ✔️ | baDeltaLength 7 odd | 1ms | - -### only common items - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | length 1 | 0ms | -| ✔️ | length 2 | 1ms | - -### all common items outside - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | preceding changes | 0ms | -| ✔️ | following change | 0ms | -| ✔️ | preceding and following changes in one sequence | 1ms | - -### some common items inside and outside - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | preceding changes adjacent to common in both sequences | 0ms | -| ✔️ | following changes adjacent to common in both sequences | 1ms | - -### all common items inside non-recursive - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | move from start to end relative to change | 0ms | -| ✔️ | move from start to end relative to common | 0ms | -| ✔️ | move from start to end relative to change and common | 0ms | -| ✔️ | reverse relative to change | 0ms | -| ✔️ | preceding middle | 0ms | -| ✔️ | following middle | 1ms | - -### all common items inside recursive - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prev reverse at depth 1 and preceding at depth 2 | 0ms | -| ✔️ | last forward at depth 1 and following at depth 2 | 1ms | -| ✔️ | preceding at depth 2 and both at depth 3 of following | 7ms | -| ✔️ | interleaved single change | 0ms | -| ✔️ | interleaved double changes | 1ms | -| ✔️ | optimization decreases iMaxF | 0ms | -| ✔️ | optimization decreases iMaxR | 0ms | - -### common substrings - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | progress | 1ms | -| ✔️ | regression | 12ms | -| ✔️ | wrapping | 1ms | - -## packages/jest-get-type/src/__tests__/getType.test.ts ✔️ - -### .getType() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | null | 1ms | -| ✔️ | undefined | 0ms | -| ✔️ | object | 0ms | -| ✔️ | array | 0ms | -| ✔️ | number | 1ms | -| ✔️ | string | 0ms | -| ✔️ | function | 0ms | -| ✔️ | boolean | 0ms | -| ✔️ | symbol | 1ms | -| ✔️ | regexp | 0ms | -| ✔️ | map | 0ms | -| ✔️ | set | 0ms | -| ✔️ | date | 0ms | -| ✔️ | bigint | 1ms | - -## packages/jest-cli/src/init/__tests__/init.test.js ✔️ - -### init project with package.json and no jest config all questions answered with answer: \\"No\\" - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return the default configuration (an empty config) | 1ms | -| ✔️ | should generate empty config with mjs extension | 1ms | - -### init project with package.json and no jest config some questions answered with answer: \\"Yes\\" - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should create configuration for {clearMocks: true} | 1ms | -| ✔️ | should create configuration for {coverage: true} | 1ms | -| ✔️ | should create configuration for {coverageProvider: \\"babel\\"} | 0ms | -| ✔️ | should create configuration for {coverageProvider: \\"v8\\"} | 0ms | -| ✔️ | should create configuration for {environment: \\"jsdom\\"} | 0ms | -| ✔️ | should create configuration for {environment: \\"node\\"} | 1ms | -| ✔️ | should create package.json with configured test command when {scripts: true} | 1ms | - -### init no package json - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should throw an error if there is no package.json file | 0ms | - -### init has-jest-config-file-js ask the user whether to override config or not - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | user answered with \\"Yes\\" | 1ms | -| ✔️ | user answered with \\"No\\" | 0ms | - -### init has-jest-config-file-ts ask the user whether to override config or not - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | user answered with \\"Yes\\" | 1ms | -| ✔️ | user answered with \\"No\\" | 0ms | - -### init has-jest-config-file-mjs ask the user whether to override config or not - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | user answered with \\"Yes\\" | 0ms | -| ✔️ | user answered with \\"No\\" | 1ms | - -### init has-jest-config-file-cjs ask the user whether to override config or not - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | user answered with \\"Yes\\" | 1ms | -| ✔️ | user answered with \\"No\\" | 1ms | - -### init has-jest-config-file-json ask the user whether to override config or not - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | user answered with \\"Yes\\" | 0ms | -| ✔️ | user answered with \\"No\\" | 0ms | - -### init project using jest.config.ts ask the user whether he wants to use Typescript or not - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | user answered with \\"Yes\\" | 1ms | -| ✔️ | user answered with \\"No\\" | 1ms | - -### init has jest config in package.json - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should ask the user whether to override config or not | 1ms | - -### init already has \\"jest\\" in packageJson.scripts.test - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should not ask \\"test script question\\" | 0ms | - -## packages/jest-runtime/src/__tests__/runtime_require_module_no_ext.test.js ✔️ - -### Runtime requireModule with no extension - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | throws error pointing out file with extension | 204ms | - -## packages/jest-util/src/__tests__/deepCyclicCopy.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the same value for primitive or function values | 1ms | -| ✔️ | does not execute getters/setters, but copies them | 0ms | -| ✔️ | copies symbols | 10ms | -| ✔️ | copies arrays as array objects | 1ms | -| ✔️ | handles cyclic dependencies | 0ms | -| ✔️ | uses the blacklist to avoid copying properties on the first level | 1ms | -| ✔️ | does not keep the prototype by default when top level is object | 0ms | -| ✔️ | does not keep the prototype by default when top level is array | 1ms | -| ✔️ | does not keep the prototype of arrays when keepPrototype = false | 0ms | -| ✔️ | keeps the prototype of arrays when keepPrototype = true | 2ms | -| ✔️ | does not keep the prototype for objects when keepPrototype = false | 0ms | -| ✔️ | keeps the prototype for objects when keepPrototype = true | 1ms | - -## e2e/__tests__/version.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with jest.config.js | 94ms | - -## packages/jest-util/src/__tests__/createProcessObject.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | creates a process object that looks like the original one | 32ms | -| ✔️ | fakes require(\\"process\\") so it is equal to \\"global.process\\" | 0ms | -| ✔️ | checks that process.env works as expected on Linux platforms | 5ms | -| ✔️ | checks that process.env works as expected in Windows platforms | 2ms | - -## packages/jest-runtime/src/__tests__/instrumentation.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | instruments files | 239ms | - -## packages/jest-core/src/__tests__/runJest.test.js ✔️ - -### runJest - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | when watch is set then exit process | 18ms | -| ✔️ | when watch is set then an error message is printed | 1ms | - -## packages/jest-matcher-utils/src/__tests__/Replaceable.test.ts ✔️ - -### Replaceable constructor - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | init with object | 0ms | -| ✔️ | init with array | 0ms | -| ✔️ | init with Map | 0ms | -| ✔️ | init with other type should throw error | 16ms | - -### Replaceable get - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | get object item | 0ms | -| ✔️ | get array item | 0ms | -| ✔️ | get Map item | 1ms | - -### Replaceable set - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | set object item | 0ms | -| ✔️ | set array item | 0ms | -| ✔️ | set Map item | 0ms | - -### Replaceable forEach - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | object forEach | 1ms | -| ✔️ | array forEach | 0ms | -| ✔️ | map forEach | 0ms | -| ✔️ | forEach should ignore nonenumerable property | 1ms | - -### Replaceable isReplaceable - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return true if two object types equal and support | 1ms | -| ✔️ | should return false if two object types not equal | 0ms | -| ✔️ | should return false if object types not support | 0ms | - -## packages/jest-util/src/__tests__/formatTime.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to milliseconds | 1ms | -| ✔️ | formats seconds properly | 0ms | -| ✔️ | formats milliseconds properly | 0ms | -| ✔️ | formats microseconds properly | 30ms | -| ✔️ | formats nanoseconds properly | 0ms | -| ✔️ | interprets lower than lowest powers as nanoseconds | 0ms | -| ✔️ | interprets higher than highest powers as seconds | 2ms | -| ✔️ | interprets non-multiple-of-3 powers as next higher prefix | 0ms | -| ✔️ | formats the quantity properly when pad length is lower | 0ms | -| ✔️ | formats the quantity properly when pad length is equal | 0ms | -| ✔️ | left pads the quantity properly when pad length is higher | 0ms | - -## packages/jest-worker/src/__tests__/thread-integration.test.js ✔️ - -### Jest Worker Process Integration - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls a single method from the worker | 25ms | -| ✔️ | distributes sequential calls across child processes | 6ms | -| ✔️ | schedules the task on the first available child processes if the scheduling policy is in-order | 3ms | -| ✔️ | schedules the task on the first available child processes | 4ms | -| ✔️ | distributes concurrent calls across child processes | 6ms | -| ✔️ | sticks parallel calls to children | 15ms | - -## packages/jest-haste-map/src/__tests__/worker.test.js ✔️ - -### worker - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | parses JavaScript files and extracts module information | 1ms | -| ✔️ | accepts a custom dependency extractor | 2ms | -| ✔️ | delegates to hasteImplModulePath for getting the id | 1ms | -| ✔️ | parses package.json files as haste packages | 1ms | -| ✔️ | returns an error when a file cannot be accessed | 0ms | -| ✔️ | simply computes SHA-1s when requested (works well with binary data) | 12ms | -| ✔️ | avoids computing dependencies if not requested and Haste does not need it | 0ms | - -## packages/jest-matcher-utils/src/__tests__/printDiffOrStringify.test.ts ✔️ - -### printDiffOrStringify - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | expected is empty and received is single line | 1ms | -| ✔️ | expected is multi line and received is empty | 0ms | -| ✔️ | expected and received are single line with multiple changes | 2ms | -| ✔️ | expected and received are multi line with trailing spaces | 1ms | -| ✔️ | has no common after clean up chaff multiline | 2ms | -| ✔️ | has no common after clean up chaff one-line | 0ms | -| ✔️ | object contain readonly symbol key object | 1ms | - -### printDiffOrStringify MAX_DIFF_STRING_LENGTH - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | both are less | 1ms | -| ✔️ | expected is more | 4ms | -| ✔️ | received is more | 8ms | - -### printDiffOrStringify asymmetricMatcher - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | minimal test | 1ms | -| ✔️ | jest asymmetricMatcher | 5ms | -| ✔️ | custom asymmetricMatcher | 0ms | -| ✔️ | nested object | 0ms | -| ✔️ | array | 1ms | -| ✔️ | object in array | 1ms | -| ✔️ | map | 1ms | -| ✔️ | circular object | 1ms | -| ✔️ | transitive circular | 1ms | -| ✔️ | circular array | 1ms | -| ✔️ | circular map | 5ms | - -## packages/expect/src/__tests__/utils.test.ts ✔️ - -### getPath() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | property exists | 0ms | -| ✔️ | property doesnt exist | 1ms | -| ✔️ | property exist but undefined | 0ms | -| ✔️ | property is a getter on class instance | 1ms | -| ✔️ | property is inherited | 1ms | -| ✔️ | path breaks | 0ms | -| ✔️ | empty object at the end | 1ms | - -### getObjectSubset - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | expect(getObjectSubset({\\"a\\": \\"b\\", \\"c\\": \\"d\\"}, {\\"a\\": \\"d\\"})).toEqual({\\"a\\": \\"b\\"}) | 1ms | -| ✔️ | expect(getObjectSubset({\\"a\\": [1, 2], \\"b\\": \\"b\\"}, {\\"a\\": [3, 4]})).toEqual({\\"a\\": [1, 2]}) | 0ms | -| ✔️ | expect(getObjectSubset([{\\"a\\": \\"b\\", \\"c\\": \\"d\\"}], [{\\"a\\": \\"z\\"}])).toEqual([{\\"a\\": \\"b\\"}]) | 1ms | -| ✔️ | expect(getObjectSubset([1, 2], [1, 2, 3])).toEqual([1, 2]) | 0ms | -| ✔️ | expect(getObjectSubset({\\"a\\": [1]}, {\\"a\\": [1, 2]})).toEqual({\\"a\\": [1]}) | 0ms | -| ✔️ | expect(getObjectSubset(2015-11-30T00:00:00.000Z, 2016-12-30T00:00:00.000Z)).toEqual(2015-11-30T00:00:00.000Z) | 0ms | - -### getObjectSubset returns the object instance if the subset has no extra properties - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Date | 0ms | - -### getObjectSubset returns the subset instance if its property values are equal - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Object | 0ms | - -### getObjectSubset returns the subset instance if its property values are equal Uint8Array - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | expected | 0ms | -| ✔️ | received | 1ms | - -### getObjectSubset calculating subsets of objects with circular references - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | simple circular references | 0ms | -| ✔️ | transitive circular references | 7ms | - -### emptyObject() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | matches an empty object | 0ms | -| ✔️ | does not match an object with keys | 0ms | -| ✔️ | does not match a non-object | 0ms | - -### subsetEquality() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | matching object returns true | 0ms | -| ✔️ | object without keys is undefined | 0ms | -| ✔️ | objects to not match | 1ms | -| ✔️ | null does not return errors | 0ms | -| ✔️ | undefined does not return errors | 0ms | - -### subsetEquality() matching subsets with circular references - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | simple circular references | 0ms | -| ✔️ | referenced object on same level should not regarded as circular reference | 0ms | -| ✔️ | transitive circular references | 9ms | - -### iterableEquality - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns true when given circular iterators | 0ms | -| ✔️ | returns true when given circular Set | 0ms | -| ✔️ | returns true when given nested Sets | 1ms | -| ✔️ | returns false when given inequal set within a set | 0ms | -| ✔️ | returns false when given inequal map within a set | 5ms | -| ✔️ | returns false when given inequal set within a map | 0ms | -| ✔️ | returns true when given circular Set shape | 0ms | -| ✔️ | returns true when given circular key in Map | 1ms | -| ✔️ | returns true when given nested Maps | 0ms | -| ✔️ | returns true when given circular key and value in Map | 0ms | -| ✔️ | returns true when given circular value in Map | 0ms | - -## packages/jest-matcher-utils/src/__tests__/deepCyclicCopyReplaceable.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the same value for primitive or function values | 1ms | -| ✔️ | convert accessor descriptor into value descriptor | 1ms | -| ✔️ | shuold not skips non-enumerables | 0ms | -| ✔️ | copies symbols | 1ms | -| ✔️ | copies arrays as array objects | 0ms | -| ✔️ | handles cyclic dependencies | 1ms | -| ✔️ | Copy Map | 0ms | -| ✔️ | Copy cyclic Map | 0ms | -| ✔️ | return same value for built-in object type except array, map and object | 0ms | -| ✔️ | should copy object symbol key property | 0ms | -| ✔️ | should set writable, configurable to true | 1ms | - -## packages/expect/src/__tests__/isError.test.ts ✔️ - -### isError - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should not assume objects are errors | 1ms | -| ✔️ | should detect simple error instances | 0ms | -| ✔️ | should detect errors from another context | 12ms | -| ✔️ | should detect DOMException errors from another context | 7ms | - -## packages/jest-get-type/src/__tests__/isPrimitive.test.ts ✔️ - -### .isPrimitive() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns true when given primitive value of: null | 0ms | -| ✔️ | returns true when given primitive value of: undefined | 1ms | -| ✔️ | returns true when given primitive value of: 100 | 0ms | -| ✔️ | returns true when given primitive value of: hello world | 0ms | -| ✔️ | returns true when given primitive value of: true | 0ms | -| ✔️ | returns true when given primitive value of: Symbol(a) | 0ms | -| ✔️ | returns true when given primitive value of: 0 | 0ms | -| ✔️ | returns true when given primitive value of: NaN | 0ms | -| ✔️ | returns true when given primitive value of: Infinity | 0ms | -| ✔️ | returns true when given primitive value of: 1n | 0ms | -| ✔️ | returns false when given non primitive value of: {} | 0ms | -| ✔️ | returns false when given non primitive value of: [] | 0ms | -| ✔️ | returns false when given non primitive value of: undefined | 1ms | -| ✔️ | returns false when given non primitive value of: {} | 0ms | -| ✔️ | returns false when given non primitive value of: {} | 0ms | -| ✔️ | returns false when given non primitive value of: {} | 0ms | -| ✔️ | returns false when given non primitive value of: \\"2021-01-24T19:22:19.272Z\\" | 0ms | -| ✔️ | returns false when given non primitive value of: {} | 0ms | - -## packages/jest-haste-map/src/crawlers/__tests__/node.test.js ✔️ - -### node crawler - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | crawls for files based on patterns | 12ms | -| ✔️ | updates only changed files | 7ms | -| ✔️ | returns removed files | 13ms | -| ✔️ | uses node fs APIs with incompatible find binary | 9ms | -| ✔️ | uses node fs APIs without find binary | 8ms | -| ✔️ | uses node fs APIs if \\"forceNodeFilesystemAPI\\" is set to true, regardless of platform | 6ms | -| ✔️ | completes with empty roots | 0ms | -| ✔️ | completes with fs.readdir throwing an error | 11ms | - -### node crawler readdir withFileTypes support - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls lstat for directories and symlinks if readdir withFileTypes is not supported | 7ms | -| ✔️ | avoids calling lstat for directories and symlinks if readdir withFileTypes is supported | 8ms | - -## e2e/__tests__/onlyChanged.test.ts ❌ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | run for \\"onlyChanged\\" and \\"changedSince\\" | 1464ms | -| ✔️ | run only changed files | 5196ms | -| ✔️ | report test coverage for only changed files | 1889ms | -| ✔️ | report test coverage of source on test file change under only changed files | 822ms | -| ✔️ | do not pickup non-tested files when reporting coverage on only changed files | 861ms | -| ✔️ | collect test coverage when using onlyChanged | 1058ms | -| ✔️ | onlyChanged in config is overwritten by --all or testPathPattern | 7023ms | -| ❌ | gets changed files for hg | 3765ms | -| ✔️ | path on Windows is case-insensitive | 0ms | - -## packages/jest-diff/src/__tests__/joinAlignedDiffs.test.ts ✔️ - -### joinAlignedDiffsExpand - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | first line is empty common | 1ms | - -### joinAlignedDiffsNoExpand - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | patch 0 with context 1 and change at start and end | 0ms | -| ✔️ | patch 0 with context 5 and first line is empty common | 7ms | -| ✔️ | patch 1 with context 4 and last line is empty common | 0ms | -| ✔️ | patch 2 with context 3 | 1ms | -| ✔️ | patch 3 with context 2 and omit excess common at start | 0ms | - -## packages/jest-core/src/__tests__/SnapshotInteractiveMode.test.js ✔️ - -### SnapshotInteractiveMode - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is inactive at construction | 1ms | -| ✔️ | call to run process the first file | 1ms | -| ✔️ | call to abort | 11ms | -| ✔️ | call to reset | 1ms | -| ✔️ | press Q or ESC triggers an abort | 0ms | -| ✔️ | press ENTER trigger a run | 0ms | -| ✔️ | skip 1 test, then restart | 2ms | -| ✔️ | skip 1 test, then quit | 2ms | -| ✔️ | update 1 test, then finish and return | 1ms | -| ✔️ | skip 2 tests, then finish and restart | 1ms | -| ✔️ | update 2 tests, then finish and return | 1ms | -| ✔️ | update 1 test, skip 1 test, then finish and restart | 2ms | -| ✔️ | skip 1 test, update 1 test, then finish and restart | 2ms | - -## packages/jest-runtime/src/__tests__/Runtime-statics.test.js ✔️ - -### Runtime statics - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Runtime.createHasteMap passes correct ignore files to HasteMap | 2ms | -| ✔️ | Runtime.createHasteMap passes correct ignore files to HasteMap in watch mode | 1ms | - -## packages/jest-diff/src/__tests__/getAlignedDiffs.test.ts ✔️ - -### getAlignedDiffs lines - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | change preceding and following common | 1ms | -| ✔️ | common preceding and following change | 1ms | -| ✔️ | common at end when both current change lines are empty | 0ms | -| ✔️ | common between delete and insert | 0ms | -| ✔️ | common between insert and delete | 0ms | - -### getAlignedDiffs newline - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | delete only | 1ms | -| ✔️ | insert only | 0ms | -| ✔️ | delete with adjacent change | 0ms | -| ✔️ | insert with adjacent changes | 1ms | -| ✔️ | change from space | 0ms | -| ✔️ | change to space | 0ms | - -### getAlignedDiffs substrings first - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | common when both current change lines are empty | 1ms | -| ✔️ | common when either current change line is non-empty | 13ms | -| ✔️ | delete completes the current line | 0ms | -| ✔️ | insert completes the current line | 0ms | - -### getAlignedDiffs substrings middle - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is empty in delete between common | 0ms | -| ✔️ | is empty in insert at start | 1ms | -| ✔️ | is non-empty in delete at end | 0ms | -| ✔️ | is non-empty in insert between common | 1ms | - -### getAlignedDiffs substrings last - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is empty in delete at end | 0ms | -| ✔️ | is empty in insert at end | 1ms | -| ✔️ | is non-empty in common not at end | 0ms | - -### getAlignedDiffs strings - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | change at start and delete or insert at end | 1ms | -| ✔️ | delete or insert at start and change at end | 1ms | - -## packages/expect/src/__tests__/assertionCounts.test.ts ✔️ - -### .assertions() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not throw | 1ms | -| ✔️ | redeclares different assertion count | 1ms | -| ✔️ | expects no assertions | 0ms | - -### .hasAssertions() - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not throw if there is an assertion | 0ms | -| ✔️ | throws if expected is not undefined | 1ms | -| ✔️ | hasAssertions not leaking to global state | 0ms | - -## packages/jest-haste-map/src/lib/__tests__/getPlatformExtension.test.js ✔️ - -### getPlatformExtension - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should get platform ext | 1ms | - -## packages/jest-haste-map/src/lib/__tests__/isRegExpSupported.test.js ✔️ - -### isRegExpSupported - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should return true when passing valid regular expression | 0ms | -| ✔️ | should return false when passing an invalid regular expression | 1ms | - -## packages/expect/src/__tests__/stacktrace.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | stack trace points to correct location when using matchers | 4ms | -| ✔️ | stack trace points to correct location when using nested matchers | 21ms | -| ✔️ | stack trace points to correct location when throwing from a custom matcher | 0ms | - -## packages/jest-worker/src/__tests__/process-integration.test.js ✔️ - -### Jest Worker Integration - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls a single method from the worker | 3ms | -| ✔️ | distributes sequential calls across child processes | 3ms | -| ✔️ | schedules the task on the first available child processes if the scheduling policy is in-order | 15ms | -| ✔️ | distributes concurrent calls across child processes | 2ms | -| ✔️ | sticks parallel calls to children | 7ms | - -## packages/jest-core/src/lib/__tests__/isValidPath.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | is valid when it is a file inside roots | 1ms | -| ✔️ | is not valid when it is a snapshot file | 0ms | -| ✔️ | is not valid when it is a file in the coverage dir | 1ms | - -## packages/jest-util/src/__tests__/errorWithStack.test.ts ✔️ - -### ErrorWithStack - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls Error.captureStackTrace with given callsite when capture exists | 2ms | - -## packages/jest-util/src/__tests__/isInteractive.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Returns true when running on interactive environment | 7ms | -| ✔️ | Returns false when running on a non-interactive environment | 1ms | - -## packages/jest-diff/src/__tests__/diffStringsRaw.test.ts ✔️ - -### diffStringsRaw - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | one-line with cleanup | 1ms | -| ✔️ | one-line without cleanup | 1ms | - -## packages/jest-util/src/__tests__/globsToMatcher.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works like micromatch with only positive globs | 1ms | -| ✔️ | works like micromatch with a mix of overlapping positive and negative globs | 1ms | -| ✔️ | works like micromatch with only negative globs | 1ms | -| ✔️ | works like micromatch with empty globs | 0ms | - -## packages/jest-core/src/__tests__/testSchedulerHelper.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | shouldRunInBand() - should return true for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return true for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return false for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return false for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return false for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return true for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return false for runInBand mode | 1ms | -| ✔️ | shouldRunInBand() - should return true for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return true for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return false for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return false for runInBand mode | 0ms | -| ✔️ | shouldRunInBand() - should return true for runInBand mode | 1ms | - -## packages/jest-util/src/__tests__/installCommonGlobals.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns the passed object | 28ms | -| ✔️ | turns a V8 global object into a Node global object | 1ms | - -## packages/jest-haste-map/src/__tests__/get_mock_name.test.js ✔️ - -### getMockName - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | extracts mock name from file path | 0ms | - -## packages/jest-worker/src/__tests__/WorkerPool.test.js ✔️ - -### WorkerPool - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should create a ChildProcessWorker and send to it | 1ms | -| ✔️ | should create a NodeThreadWorker and send to it | 1ms | -| ✔️ | should avoid NodeThreadWorker if not passed enableWorkerThreads | 1ms | - -## packages/jest-haste-map/src/lib/__tests__/dependencyExtractor.test.js ✔️ - -### dependencyExtractor - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should not extract dependencies inside comments | 1ms | -| ✔️ | should not extract dependencies inside comments (windows line endings) | 0ms | -| ✔️ | should not extract dependencies inside comments (unicode line endings) | 1ms | -| ✔️ | should extract dependencies from \`import\` statements | 0ms | -| ✔️ | should extract dependencies from side-effect only \`import\` statements | 0ms | -| ✔️ | should not extract dependencies from \`import type/typeof\` statements | 1ms | -| ✔️ | should extract dependencies from \`export\` statements | 0ms | -| ✔️ | should extract dependencies from \`export-from\` statements | 0ms | -| ✔️ | should not extract dependencies from \`export type/typeof\` statements | 0ms | -| ✔️ | should extract dependencies from dynamic \`import\` calls | 1ms | -| ✔️ | should extract dependencies from \`require\` calls | 0ms | -| ✔️ | should extract dependencies from \`jest.requireActual\` calls | 0ms | -| ✔️ | should extract dependencies from \`jest.requireMock\` calls | 0ms | -| ✔️ | should extract dependencies from \`jest.genMockFromModule\` calls | 1ms | -| ✔️ | should extract dependencies from \`jest.createMockFromModule\` calls | 0ms | - -## packages/jest-haste-map/src/lib/__tests__/normalizePathSep.test.js ✔️ - -### normalizePathSep - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does nothing on posix | 1ms | -| ✔️ | replace slashes on windows | 1ms | - -## packages/jest-haste-map/src/lib/__tests__/fast_path.test.js ✔️ - -### fastPath.relative - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should get relative paths inside the root | 0ms | -| ✔️ | should get relative paths outside the root | 0ms | -| ✔️ | should get relative paths outside the root when start with same word | 1ms | - -### fastPath.resolve - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should get the absolute path for paths inside the root | 0ms | -| ✔️ | should get the absolute path for paths outside the root | 0ms | - -## packages/jest-core/src/__tests__/FailedTestsCache.test.js ✔️ - -### FailedTestsCache - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should filter tests | 1ms | - -## packages/jest-core/src/__tests__/getNoTestsFoundMessage.test.js ✔️ - -### getNoTestsFoundMessage - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns correct message when monitoring only failures | 1ms | -| ✔️ | returns correct message when monitoring only changed | 0ms | -| ✔️ | returns correct message with verbose option | 1ms | -| ✔️ | returns correct message without options | 0ms | -| ✔️ | returns correct message with passWithNoTests | 1ms | - -## packages/jest-core/src/__tests__/globals.test.ts ✔️ - -### Common globals - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | check process | 1ms | - -## packages/jest-core/src/lib/__tests__/logDebugMessages.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints the jest version | 1ms | -| ✔️ | prints the test framework name | 0ms | -| ✔️ | prints the config object | 1ms | - -## packages/jest-util/src/__tests__/isPromise.test.ts ✔️ - -### not a Promise: - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | undefined | 0ms | -| ✔️ | null | 0ms | -| ✔️ | true | 1ms | -| ✔️ | 42 | 0ms | -| ✔️ | \\"1337\\" | 0ms | -| ✔️ | Symbol() | 0ms | -| ✔️ | [] | 0ms | -| ✔️ | {} | 1ms | - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | a resolved Promise | 0ms | -| ✔️ | a rejected Promise | 0ms | - -## packages/jest-cli/src/init/__tests__/modifyPackageJson.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should remove jest config if exists | 1ms | -| ✔️ | should add test script when there are no scripts | 0ms | -| ✔️ | should add test script when there are scripts | 0ms | -| ✔️ | should not add test script when { shouldModifyScripts: false } | 0ms | - -## packages/expect/src/__tests__/symbolInObjects.test.ts ✔️ - -### Symbol in objects - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should compare objects with Symbol keys | 0ms | -| ✔️ | should compare objects with mixed keys and Symbol | 1ms | -| ✔️ | should compare objects with different Symbol keys | 0ms | - -## e2e/test-in-root/test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | stub | 1ms | - -## e2e/test-in-root/spec.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | stub | 1ms | - -## e2e/v8-coverage/empty-sourcemap/test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | dummy-test | 0ms | - -## packages/jest-matcher-utils/src/__tests__/deepCyclicCopyReplaceableDom.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should copy dom element | 2ms | -| ✔️ | should copy complex element | 3ms | - -## e2e/__tests__/nativeEsmTypescript.test.ts ✔️ - -### on node ^12.16.0 || >=13.7.0 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs TS test with native ESM | 923ms | - -## e2e/__tests__/coverageRemapping.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | maps code coverage against original source | 12660ms | - -## e2e/__tests__/globalTeardown.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | globalTeardown is triggered once after all test suites | 2025.9999999999998ms | -| ✔️ | jest throws an error when globalTeardown does not export a function | 1144ms | -| ✔️ | globalTeardown function gets jest config object as a parameter | 959ms | -| ✔️ | should call globalTeardown function of multiple projects | 1711ms | -| ✔️ | should not call a globalTeardown of a project if there are no tests to run from this project | 882ms | -| ✔️ | globalTeardown works with default export | 1045ms | -| ✔️ | globalTeardown throws with named export | 1041ms | - -## e2e/__tests__/multiProjectRunner.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | --listTests doesn't duplicate the test files | 445ms | -| ✔️ | can pass projects or global config | 3379ms | -| ✔️ | \\"No tests found\\" message for projects | 977ms | -| ✔️ | allows a single non-root project | 1215ms | -| ✔️ | allows a single non-root project | 751ms | -| ✔️ | correctly runs a single non-root project | 805ms | -| ✔️ | correctly runs a single non-root project | 839ms | -| ✔️ | projects can be workspaces with non-JS/JSON files | 1371ms | -| ✔️ | objects in project configuration | 869ms | -| ✔️ | allows a single project | 822ms | -| ✔️ | resolves projects and their properly | 1938ms | -| ✔️ | Does transform files with the corresponding project transformer | 737ms | - -### doesn't bleed module file extensions resolution with multiple workers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | external config files | 1025ms | -| ✔️ | inline config files | 1101ms | - -## e2e/__tests__/toMatchSnapshot.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | basic support | 3007ms | -| ✔️ | error thrown before snapshot | 2377ms | -| ✔️ | first snapshot fails, second passes | 1373ms | -| ✔️ | does not mark snapshots as obsolete in skipped tests | 1244ms | -| ✔️ | accepts custom snapshot name | 821ms | -| ✔️ | handles property matchers | 1917ms | -| ✔️ | handles invalid property matchers | 1906ms | -| ✔️ | handles property matchers with hint | 1752ms | -| ✔️ | handles property matchers with deep properties | 2528ms | - -## e2e/__tests__/detectOpenHandles.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints message about flag on slow tests | 1993ms | -| ✔️ | prints message about flag on forceExit | 678ms | -| ✔️ | prints out info about open handlers | 868ms | -| ✔️ | does not report promises | 728ms | -| ✔️ | prints out info about open handlers from inside tests | 903ms | - -### on node >=11.10.0 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not report ELD histograms | 729ms | - -### notify - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not report --notify flag | 789ms | - -### on node >=11 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not report timeouts using unref | 763ms | - -## e2e/__tests__/failures.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | not throwing Error objects | 4615ms | -| ✔️ | works with node assert | 854ms | -| ✔️ | works with assertions in separate files | 765ms | -| ✔️ | works with async failures | 983ms | -| ✔️ | works with snapshot failures | 782ms | -| ✔️ | works with snapshot failures with hint | 784ms | -| ✔️ | errors after test has completed | 782ms | - -## e2e/__tests__/console.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | console printing | 755ms | -| ✔️ | console printing with --verbose | 943ms | -| ✔️ | does not print to console with --silent | 855ms | -| ✔️ | respects --noStackTrace | 974ms | -| ✔️ | respects noStackTrace in config | 1008ms | -| ✔️ | the jsdom console is the same as the test console | 1429ms | -| ✔️ | does not error out when using winston | 2049ms | - -## e2e/__tests__/globals.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | basic test constructs | 762ms | -| ✔️ | interleaved describe and test children order | 704ms | -| ✔️ | skips | 685ms | -| ✔️ | only | 827ms | -| ✔️ | cannot have describe with no implementation | 682ms | -| ✔️ | cannot test with no implementation | 701ms | -| ✔️ | skips with expand arg | 683ms | -| ✔️ | only with expand arg | 701ms | -| ✔️ | cannot test with no implementation with expand arg | 663ms | -| ✔️ | function as descriptor | 752ms | - -## e2e/__tests__/coverageThreshold.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | exits with 1 if coverage threshold is not met | 963ms | -| ✔️ | exits with 1 if path threshold group is not found in coverage data | 962ms | -| ✔️ | exits with 0 if global threshold group is not found in coverage data | 847ms | -| ✔️ | excludes tests matched by path threshold groups from global group | 1174ms | -| ✔️ | file is matched by all path and glob threshold groups | 836ms | - -## e2e/__tests__/testPathPatternReporterMessage.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints a message with path pattern at the end | 3030ms | - -## e2e/__tests__/filter.test.ts ✔️ - -### Dynamic test filtering - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses the default JSON option | 1044ms | -| ✔️ | uses the CLI option | 786ms | -| ✔️ | ignores the filter if requested to do so | 880ms | -| ✔️ | throws when you return clowny stuff | 361ms | -| ✔️ | will call setup on filter before filtering | 1544ms | -| ✔️ | will print error when filter throws | 369ms | -| ✔️ | will return no results when setup hook throws | 354ms | - -## e2e/__tests__/selectProjects.test.ts ✔️ - -### Given a config with two named projects, first-project and second-project when Jest is started with \`--selectProjects first-project\` - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs the tests in the first project only | 1ms | -| ✔️ | prints that only first-project will run | 0ms | - -### Given a config with two named projects, first-project and second-project when Jest is started with \`--selectProjects second-project\` - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs the tests in the second project only | 1ms | -| ✔️ | prints that only second-project will run | 0ms | - -### Given a config with two named projects, first-project and second-project when Jest is started with \`--selectProjects first-project second-project\` - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs the tests in the first and second projects | 0ms | -| ✔️ | prints that both first-project and second-project will run | 1ms | - -### Given a config with two named projects, first-project and second-project when Jest is started without providing \`--selectProjects\` - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs the tests in the first and second projects | 1ms | -| ✔️ | does not print which projects are run | 0ms | - -### Given a config with two named projects, first-project and second-project when Jest is started with \`--selectProjects third-project\` - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fails | 0ms | -| ✔️ | prints that no project was found | 1ms | - -### Given a config with two projects, first-project and an unnamed project when Jest is started with \`--selectProjects first-project\` - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs the tests in the first project only | 1ms | -| ✔️ | prints that a project does not have a name | 0ms | -| ✔️ | prints that only first-project will run | 0ms | - -### Given a config with two projects, first-project and an unnamed project when Jest is started without providing \`--selectProjects\` - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs the tests in the first and second projects | 4ms | -| ✔️ | does not print that a project has no name | 0ms | - -### Given a config with two projects, first-project and an unnamed project when Jest is started with \`--selectProjects third-project\` - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fails | 1ms | -| ✔️ | prints that a project does not have a name | 0ms | -| ✔️ | prints that no project was found | 0ms | - -## e2e/__tests__/mockNames.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | suite without mock name, mock called | 872ms | -| ✔️ | suite without mock name, mock not called | 864ms | -| ✔️ | suite with mock name, expect mock not called | 755ms | -| ✔️ | suite with mock name, mock called, expect fail | 721ms | -| ✔️ | suite with mock name, mock called 5 times | 766ms | -| ✔️ | suite with mock name, mock not called 5 times, expect fail | 948ms | -| ✔️ | suite with mock name, mock called | 848ms | -| ✔️ | suite with mock name, mock not called | 948ms | - -## e2e/__tests__/stackTrace.test.ts ✔️ - -### Stack Trace - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints a stack trace for runtime errors | 958ms | -| ✔️ | does not print a stack trace for runtime errors when --noStackTrace is given | 606ms | -| ✔️ | prints a stack trace for matching errors | 714ms | -| ✔️ | does not print a stack trace for matching errors when --noStackTrace is given | 599ms | -| ✔️ | prints a stack trace for errors | 643ms | -| ✔️ | prints a stack trace for errors without message in stack trace | 602ms | -| ✔️ | does not print a stack trace for errors when --noStackTrace is given | 520ms | - -## e2e/__tests__/each.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with passing tests | 882ms | -| ✔️ | shows error message when not enough arguments are supplied to tests | 597ms | -| ✔️ | shows the correct errors in stderr when failing tests | 769ms | -| ✔️ | shows only the tests with .only as being ran | 653ms | -| ✔️ | shows only the tests without .skip as being ran | 612ms | -| ✔️ | runs only the describe.only.each tests | 562ms | -| ✔️ | formats args with pretty format when given %p | 580ms | - -## e2e/__tests__/toThrowErrorMatchingInlineSnapshot.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works fine when function throws error | 1138ms | -| ✔️ | updates existing snapshot | 844ms | -| ✔️ | cannot be used with .not | 680ms | -| ✔️ | should support rejecting promises | 808ms | - -## e2e/__tests__/watchModeNoAccess.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not re-run tests when only access time is modified | 4313ms | - -## e2e/__tests__/pnp.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | successfully runs the tests inside \`pnp/\` | 2547ms | - -## e2e/__tests__/declarationErrors.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | errors if describe returns a Promise | 781ms | -| ✔️ | errors if describe returns something | 709ms | -| ✔️ | errors if describe throws | 778ms | - -## e2e/__tests__/wrongEnv.test.ts ✔️ - -### Wrong globals for environment - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | print useful error for window | 736ms | -| ✔️ | print useful error for document | 533ms | -| ✔️ | print useful error for navigator | 606ms | -| ✔️ | print useful error for unref | 1301ms | -| ✔️ | print useful error when it explodes during evaluation | 659ms | - -## e2e/__tests__/setupFilesAfterEnvConfig.test.ts ✔️ - -### setupFilesAfterEnv - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | requires multiple setup files before each file in the suite | 1063ms | -| ✔️ | requires setup files *after* the test runners are required | 800ms | - -## e2e/__tests__/noTestsFound.test.ts ✔️ - -### No tests are found - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fails the test suite in standard situation | 488ms | -| ✔️ | doesn't fail the test suite if --passWithNoTests passed | 518ms | -| ✔️ | doesn't fail the test suite if using --lastCommit | 608ms | -| ✔️ | doesn't fail the test suite if using --onlyChanged | 565ms | -| ✔️ | doesn't fail the test suite if using --findRelatedTests | 505ms | - -## e2e/__tests__/customMatcherStackTrace.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with custom matchers | 873ms | -| ✔️ | custom async matchers | 623ms | - -## e2e/__tests__/nestedTestDefinitions.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | print correct error message with nested test definitions outside describe | 1354ms | -| ✔️ | print correct error message with nested test definitions inside describe | 1088ms | -| ✔️ | print correct message when nesting describe inside it | 1047ms | -| ✔️ | print correct message when nesting a hook inside it | 1027ms | - -## e2e/__tests__/autoClearMocks.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | suite with auto-clear | 801ms | -| ✔️ | suite without auto-clear | 837ms | - -## e2e/__tests__/forceExit.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | exits the process after test are done but before timers complete | 2157ms | - -## e2e/__tests__/testFailureExitCode.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | exits with a specified code when test fail | 2073ms | -| ✔️ | exits with a specified code when bailing from a failed test | 2188ms | - -## e2e/__tests__/promiseReject.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | | 905ms | - -## e2e/__tests__/timerResetMocks.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | run timers after resetAllMocks test | 944ms | -| ✔️ | run timers with resetMocks in config test | 814ms | - -## e2e/__tests__/testEnvironmentAsync.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | triggers setup/teardown hooks | 1422ms | - -## e2e/__tests__/resolveNoFileExtensions.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | show error message with matching files | 1064ms | -| ✔️ | show error message when no js moduleFileExtensions | 117ms | - -## e2e/__tests__/nestedEventLoop.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with nested event loops | 1392ms | - -## e2e/__tests__/useStderr.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | no tests found message is redirected to stderr | 1257ms | - -## e2e/__tests__/domDiffing.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should work without error | 1310ms | - -## e2e/__tests__/consoleAfterTeardown.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | console printing | 1301ms | - -## e2e/__tests__/testInRoot.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs tests in only test.js and spec.js | 944ms | - -## e2e/__tests__/requireMainIsolateModules.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | \`require.main\` on using \`jest.isolateModules\` should not be undefined | 867ms | - -## e2e/__tests__/clearCache.test.ts ✔️ - -### jest --clearCache - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | normal run results in cache directory being written | 792ms | -| ✔️ | clearCache results in deleted directory and exitCode 0 | 127ms | - -## e2e/__tests__/runtimeInternalModuleRegistry.test.ts ✔️ - -### Runtime Internal Module Registry - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | correctly makes use of internal module registry when requiring modules | 1150ms | - -## e2e/__tests__/resolveNodeModule.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | resolve node module | 890ms | - -## e2e/__tests__/setImmediate.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | setImmediate | 859ms | - -## e2e/__tests__/emptySuiteError.test.ts ✔️ - -### JSON Reporter - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fails the test suite if it contains no tests | 824ms | - -## e2e/__tests__/badSourceMap.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | suite with test cases that contain malformed sourcemaps | 823ms | - -## e2e/__tests__/timerUseRealTimers.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | useRealTimers cancels \\"timers\\": \\"fake\\" for whole test file | 986ms | - -## e2e/__tests__/global-mutation.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | can redefine global | 1ms | - -## e2e/__tests__/runProgrammatically.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | run Jest programmatically cjs | 75ms | -| ✔️ | run Jest programmatically esm | 462ms | - -## e2e/__tests__/symbol.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Symbol deletion | 0ms | - -## e2e/__tests__/hasteMapMockChanged.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should not warn when a mock file changes | 298ms | - -## e2e/__tests__/existentRoots.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | error when rootDir does not exist | 109ms | -| ✔️ | error when rootDir is a file | 109ms | -| ✔️ | error when roots directory does not exist | 137ms | -| ✔️ | error when roots is a file | 129ms | - -## e2e/__tests__/doneInHooks.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | \`done()\` works properly in hooks | 819ms | - -## e2e/__tests__/testEnvironmentCircusAsync.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls asynchronous handleTestEvent in testEnvironment | 1458ms | - -## e2e/__tests__/moduleNameMapper.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | moduleNameMapper wrong configuration | 1030ms | -| ✔️ | moduleNameMapper wrong array configuration | 909ms | -| ✔️ | moduleNameMapper correct configuration | 913ms | -| ✔️ | moduleNameMapper correct configuration mocking module of absolute path | 1479ms | -| ✔️ | moduleNameMapper with mocking | 967ms | - -## e2e/__tests__/customReporters.test.ts ✔️ - -### Custom Reporters Integration - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | valid string format for adding reporters | 966ms | -| ✔️ | valid array format for adding reporters | 623ms | -| ✔️ | invalid format for adding reporters | 115ms | -| ✔️ | default reporters enabled | 620ms | -| ✔️ | TestReporter with all tests passing | 978ms | -| ✔️ | TestReporter with all tests failing | 1093ms | -| ✔️ | IncompleteReporter for flexibility | 801ms | -| ✔️ | reporters can be default exports | 792ms | -| ✔️ | prints reporter errors | 495ms | - -## e2e/__tests__/findRelatedFiles.test.ts ✔️ - -### --findRelatedTests flag - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs tests related to filename | 1324ms | -| ✔️ | runs tests related to uppercased filename on case-insensitive os | 1ms | -| ✔️ | runs tests related to filename with a custom dependency extractor | 1307ms | -| ✔️ | generates coverage report for filename | 2001.9999999999998ms | -| ✔️ | coverage configuration is applied correctly | 1516ms | - -## e2e/__tests__/env.test.ts ✔️ - -### Environment override - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses jsdom when specified | 1501ms | -| ✔️ | uses node as default from package.json | 1002ms | -| ✔️ | uses node when specified | 664ms | -| ✔️ | fails when the env is not available | 121ms | - -### Environment equivalent - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses jsdom | 1092ms | -| ✔️ | uses node | 731ms | - -## e2e/__tests__/globalSetup.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | globalSetup is triggered once before all test suites | 2384ms | -| ✔️ | jest throws an error when globalSetup does not export a function | 851ms | -| ✔️ | globalSetup function gets jest config object as a parameter | 918ms | -| ✔️ | should call globalSetup function of multiple projects | 1307ms | -| ✔️ | should not call a globalSetup of a project if there are no tests to run from this project | 1189ms | -| ✔️ | should not call any globalSetup if there are no tests to run | 792ms | -| ✔️ | globalSetup works with default export | 926ms | -| ✔️ | globalSetup throws with named export | 783ms | -| ✔️ | should not transpile the transformer | 718ms | -| ✔️ | should transform node_modules if configured by transformIgnorePatterns | 1165ms | - -## e2e/__tests__/workerForceExit.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints a warning if a worker is force exited | 2355ms | -| ✔️ | force exits a worker that fails to exit gracefully | 2319ms | - -## e2e/__tests__/babelPluginJestHoist.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | successfully runs the tests inside \`babel-plugin-jest-hoist/\` | 6179ms | - -## e2e/__tests__/coverageTransformInstrumented.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | code coverage for transform instrumented code | 4910ms | - -## e2e/__tests__/timeoutsLegacy.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not work on jest-circus | 2ms | -| ✖️ | exceeds the timeout set using jasmine.DEFAULT_TIMEOUT_INTERVAL | 0ms | -| ✖️ | does not exceed the timeout using jasmine.DEFAULT_TIMEOUT_INTERVAL | 0ms | -| ✖️ | can read and write jasmine.DEFAULT_TIMEOUT_INTERVAL | 0ms | - -## e2e/__tests__/asyncRegenerator.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | successfully transpiles async | 4040ms | - -## e2e/__tests__/toThrowErrorMatchingSnapshot.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works fine when function throws error | 790ms | -| ✔️ | throws the error if tested function didn't throw error | 713ms | -| ✔️ | accepts custom snapshot name | 653ms | -| ✔️ | cannot be used with .not | 644ms | -| ✔️ | should support rejecting promises | 647ms | - -## e2e/__tests__/testTodo.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with all statuses | 891ms | -| ✔️ | shows error messages when called with no arguments | 602ms | -| ✔️ | shows error messages when called with multiple arguments | 669ms | -| ✔️ | shows error messages when called with invalid argument | 624ms | -| ✔️ | shows todo messages when in verbose mode | 710ms | - -## e2e/__tests__/onlyFailuresNonWatch.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | onlyFailures flag works in non-watch mode | 2841ms | - -## e2e/__tests__/presets.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports json preset | 860ms | -| ✔️ | supports js preset | 956ms | - -## e2e/__tests__/expectAsyncMatcher.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with passing tests | 1173ms | -| ✔️ | shows the correct errors in stderr when failing tests | 760ms | - -## e2e/__tests__/transform.test.ts ✔️ - -### babel-jest - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs transpiled code | 2241ms | -| ✔️ | instruments only specific files and collects coverage | 2589ms | - -### babel-jest ignored - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | tells user to match ignored files | 940ms | - -### babel-jest with manual transformer - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs transpiled code | 1608ms | - -### no babel-jest - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fails with syntax error on flow types | 1343ms | -| ✔️ | instrumentation with no babel-jest | 1378ms | - -### custom transformer - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | proprocesses files | 673ms | -| ✔️ | instruments files | 706ms | - -### multiple-transformers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | transforms dependencies using specific transformers | 7383ms | - -### ecmascript-modules-support - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs transpiled code | 923ms | - -### transformer-config - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs transpiled code | 1636ms | -| ✔️ | instruments only specific files and collects coverage | 1588ms | - -### transformer caching - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not rerun transform within worker | 1033ms | - -### transform-environment - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should transform the environment | 1044ms | - -### transform-runner - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should transform runner | 795ms | - -### transform-testrunner - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should transform testRunner | 783ms | - -## e2e/__tests__/chaiAssertionLibrary.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | chai assertion errors should display properly | 1817ms | - -## e2e/__tests__/stackTraceSourceMapsWithCoverage.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | processes stack traces and code frames with source maps with coverage | 2394ms | - -## e2e/__tests__/customTestSequencers.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | run prioritySequence first sync | 933ms | -| ✔️ | run prioritySequence first async | 901ms | -| ✔️ | run failed tests async | 849ms | - -## e2e/__tests__/beforeAllFiltered.ts ✔️ - -### Correct BeforeAll run - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | ensures the BeforeAll of ignored suite is not run | 905ms | - -## e2e/__tests__/fakePromises.test.ts ✔️ - -### Fake promises - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be possible to resolve with fake timers using immediates | 901ms | -| ✔️ | should be possible to resolve with fake timers using asap | 780ms | - -## e2e/__tests__/stackTraceSourceMaps.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | processes stack traces and code frames with source maps | 2153ms | - -## e2e/__tests__/dynamicRequireDependencies.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | successfully runs tests with dynamic dependencies | 811ms | - -## e2e/__tests__/overrideGlobals.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | overriding native promise does not freeze Jest | 1116ms | -| ✔️ | has a duration even if time is faked | 859ms | - -## e2e/__tests__/executeTestsOnceInMpr.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Tests are executed only once even in an MPR | 908ms | - -## e2e/__tests__/moduleParentNullInTest.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | module.parent should be null in test files | 830ms | - -## e2e/__tests__/requireAfterTeardown.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints useful error for requires after test is done | 842ms | - -## e2e/__tests__/lifecycles.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | suite with invalid assertions in afterAll | 827ms | - -## e2e/__tests__/hasteMapSha1.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | exits the process after test are done but before timers complete | 187ms | - -## e2e/__tests__/json.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | JSON is available in the global scope | 1ms | -| ✔️ | JSON.parse creates objects from within this context | 0ms | - -## e2e/__tests__/testResultsProcessor.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | testNamePattern | 859ms | - -## e2e/__tests__/debug.test.ts ✔️ - -### jest --debug - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | outputs debugging info before running the test | 857ms | - -## e2e/__tests__/importedGlobals.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | imported globals | 1012ms | - -## e2e/__tests__/customResolver.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | use the custom resolver | 749ms | - -## e2e/__tests__/circularInequality.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | handles circular inequality properly | 1407ms | - -## e2e/__tests__/injectGlobals.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | globals are undefined if passed \`false\` from CLI | 876ms | -| ✔️ | globals are undefined if passed \`false\` from config | 918ms | - -## e2e/__tests__/skipBeforeAfterAll.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | correctly skip \`beforeAll\`s in skipped tests | 998ms | - -## e2e/__tests__/customInlineSnapshotMatchers.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with custom inline snapshot matchers | 2145ms | - -## e2e/__tests__/regexCharInPath.test.ts ✔️ - -### Regex Char In Path - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | parses paths containing regex chars correctly | 873ms | - -## e2e/__tests__/noTestFound.test.ts ✔️ - -### Coverage Report - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | outputs coverage report | 551ms | - -### File path not found in mulit-project scenario - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | outputs coverage report | 463ms | - -## e2e/__tests__/nativeEsm.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | test config is without transform | 133ms | - -### on node ^12.16.0 || >=13.7.0 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs test with native ESM | 690ms | - -### on node >=14.3.0 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✖️ | supports top-level await | 0ms | - -## e2e/__tests__/supportsDashedArgs.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with passing tests | 777ms | -| ✔️ | throws error for unknown dashed & camelcase args | 119ms | - -## e2e/__tests__/transformLinkedModules.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should transform linked modules | 734ms | - -## e2e/__tests__/testNamePattern.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | testNamePattern | 788ms | - -## e2e/__tests__/nativeAsyncMock.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | mocks async functions | 0ms | - -## e2e/__tests__/hasteMapSize.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | reports the correct file size | 83ms | -| ✔️ | updates the file size when a file changes | 217ms | - -## e2e/__tests__/circusDeclarationErrors.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defining tests and hooks asynchronously throws | 832ms | - -## e2e/__tests__/testEnvironmentCircus.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls testEnvironment handleTestEvent | 1456ms | - -## e2e/__tests__/callDoneTwice.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | \`done()\` should not be called more than once | 820ms | - -## e2e/__tests__/emptyDescribeWithHooks.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | hook in empty describe | 829ms | -| ✔️ | hook in describe with skipped test | 614ms | -| ✔️ | hook in empty nested describe | 680ms | -| ✔️ | multiple hooks in empty describe | 726ms | - -## e2e/__tests__/errorOnDeprecated.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not work on jest-circus | 4ms | -| ✖️ | fail.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.addMatchers.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.any.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.anything.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.arrayContaining.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.createSpy.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.objectContaining.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.stringMatching.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | pending.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | spyOn.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | spyOnProperty.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | defaultTimeoutInterval.test.js errors in errorOnDeprecated mode | 0ms | -| ✖️ | fail.test.js errors when not in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.addMatchers.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.any.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.anything.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.arrayContaining.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.createSpy.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.objectContaining.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | jasmine.stringMatching.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | pending.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | spyOn.test.js passes when not in errorOnDeprecated mode | 0ms | -| ✖️ | spyOnProperty.test.js errors when not in errorOnDeprecated mode | 0ms | -| ✖️ | defaultTimeoutInterval.test.js passes when not in errorOnDeprecated mode | 0ms | - -## e2e/__tests__/testRetries.test.ts ✔️ - -### Test Retries - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | retries failed tests | 859ms | -| ✔️ | reporter shows more than 1 invocation if test is retried | 829ms | -| ✔️ | reporter shows 1 invocation if tests are not retried | 811ms | -| ✔️ | tests are not retried if beforeAll hook failure occurs | 706ms | - -## e2e/__tests__/jest.config.ts.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with jest.config.ts | 3356ms | -| ✔️ | works with tsconfig.json | 3224ms | -| ✔️ | traverses directory tree up until it finds jest.config | 3116ms | -| ✔️ | it does type check the config | 2278ms | -| ✔️ | invalid JS in jest.config.ts | 2200ms | - -## e2e/__tests__/coverageReport.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | outputs coverage report | 2076ms | -| ✔️ | collects coverage only from specified file | 1646ms | -| ✔️ | collects coverage only from multiple specified files | 1587ms | -| ✔️ | collects coverage only from specified files avoiding dependencies | 1173ms | -| ✔️ | json reporter printing with --coverage | 898ms | -| ✔️ | outputs coverage report as json | 1824ms | -| ✔️ | outputs coverage report when text is requested | 1872ms | -| ✔️ | outputs coverage report when text-summary is requested | 1850ms | -| ✔️ | outputs coverage report when text and text-summary is requested | 1827ms | -| ✔️ | does not output coverage report when html is requested | 2021ms | -| ✔️ | collects coverage from duplicate files avoiding shared cache | 2245ms | -| ✔️ | generates coverage when using the testRegex config param | 2300ms | - -## e2e/__tests__/toMatchInlineSnapshot.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | basic support | 4442ms | -| ✔️ | do not indent empty lines | 1940ms | -| ✔️ | handles property matchers | 3820ms | -| ✔️ | removes obsolete external snapshots | 3007ms | -| ✔️ | supports async matchers | 895ms | -| ✔️ | supports async tests | 1117ms | -| ✔️ | writes snapshots with non-literals in expect(...) | 897ms | -| ✔️ | handles mocking native modules prettier relies on | 1142ms | -| ✔️ | supports custom matchers | 2263ms | -| ✔️ | supports custom matchers with property matcher | 1950ms | -| ✔️ | multiple custom matchers and native matchers | 1385ms | -| ✔️ | indentation is correct in the presences of existing snapshots | 932ms | - -## examples/react-native/__tests__/intro.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | renders correctly | 478ms | -| ✔️ | renders the ActivityIndicator component | 106ms | -| ✔️ | renders the TextInput component | 2887ms | -| ✔️ | renders the FlatList component | 791ms | - -## e2e/__tests__/toMatchInlineSnapshotWithRetries.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with a single snapshot | 2009ms | -| ✔️ | works when a different assertion is failing | 600ms | -| ✔️ | works when multiple tests have snapshots but only one of them failed multiple times | 1640ms | - -## e2e/__tests__/timeouts.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | exceeds the timeout | 782ms | -| ✔️ | does not exceed the timeout | 664ms | -| ✔️ | exceeds the command line testTimeout | 1529ms | -| ✔️ | does not exceed the command line testTimeout | 856ms | - -## e2e/__tests__/toMatchSnapshotWithStringSerializer.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | empty external | 1636ms | -| ✔️ | empty internal ci false | 1213ms | -| ✔️ | undefined internal ci true | 598ms | - -## e2e/__tests__/jasmineAsync.test.ts ✔️ - -### async jasmine - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with beforeAll | 1317ms | -| ✔️ | works with beforeEach | 673ms | -| ✔️ | works with afterAll | 1151ms | -| ✔️ | works with afterEach | 638ms | -| ✔️ | works with fit | 936ms | -| ✔️ | works with xit | 738ms | -| ✔️ | throws when not a promise is returned | 670ms | -| ✔️ | tests async promise code | 10831ms | -| ✔️ | works with concurrent | 757ms | -| ✔️ | works with concurrent within a describe block when invoked with testNamePattern | 686ms | -| ✔️ | works with concurrent.each | 717ms | -| ✔️ | works with concurrent.only.each | 1171ms | -| ✔️ | doesn't execute more than 5 tests simultaneously | 976ms | -| ✔️ | async test fails | 6223ms | -| ✔️ | generator test | 688ms | - -## e2e/__tests__/config.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | config as JSON | 381ms | -| ✔️ | works with sane config JSON | 621ms | -| ✔️ | watchman config option is respected over default argv | 640ms | -| ✔️ | config from argv is respected with sane config JSON | 530ms | -| ✔️ | works with jsdom testEnvironmentOptions config JSON | 1558ms | -| ✔️ | negated flags override previous flags | 156ms | - -## e2e/__tests__/fatalWorkerError.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | fails a test that terminates the worker with a fatal error | 3117ms | - -## e2e/__tests__/toMatchSnapshotWithRetries.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with a single snapshot | 2153ms | -| ✔️ | works when multiple tests have snapshots but only one of them failed multiple times | 2208ms | - -## e2e/__tests__/watchModePatterns.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | can press \\"p\\" to filter by file name | 1471ms | -| ✔️ | can press \\"t\\" to filter by test name | 1775ms | - -## e2e/__tests__/unexpectedToken.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | triggers unexpected token error message for non-JS assets | 980ms | -| ✔️ | triggers unexpected token error message for untranspiled node_modules | 794ms | -| ✔️ | does not trigger unexpected token error message for regular syntax errors | 1539ms | - -## e2e/__tests__/jestRequireMock.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | understands dependencies using jest.requireMock | 1909ms | - -## e2e/__tests__/typescriptCoverage.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | instruments and collects coverage for typescript files | 2830ms | - -## e2e/__tests__/jest.config.js.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with jest.config.js | 1016ms | -| ✔️ | traverses directory tree up until it finds jest.config | 882ms | -| ✔️ | invalid JS in jest.config.js | 135ms | - -## e2e/__tests__/requireMainResetModules.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | \`require.main\` on using \`--resetModules='true'\` should not be undefined | 970ms | -| ✔️ | \`require.main\` on using \`jest.resetModules()\` should not be undefined | 915ms | - -## e2e/__tests__/modernFakeTimers.test.ts ✔️ - -### modern implementation of fake timers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should be possible to use modern implementation from config | 792ms | -| ✔️ | should be possible to use modern implementation from jest-object | 831ms | - -## e2e/__tests__/runTestsByPath.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs tests by exact path | 1938ms | - -## e2e/__tests__/testEnvironment.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | respects testEnvironment docblock | 1513ms | - -## e2e/__tests__/circusConcurrentEach.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with concurrent.each | 817ms | -| ✔️ | works with concurrent.only.each | 695ms | - -## e2e/__tests__/autoRestoreMocks.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | suite with auto-restore | 822ms | -| ✔️ | suite without auto-restore | 845ms | - -## e2e/__tests__/jsonReporter.test.ts ✔️ - -### JSON Reporter - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | writes test result to sum.result.json | 721ms | -| ✔️ | outputs coverage report | 698ms | - -## e2e/__tests__/autoResetMocks.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | suite with auto-reset | 801ms | -| ✔️ | suite without auto-reset | 827ms | - -## e2e/__tests__/focusedTests.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | runs only \\"it.only\\" tests | 834ms | - -## e2e/__tests__/watchModeOnlyFailed.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | can press \\"f\\" to run only failed tests | 1341ms | - -## e2e/__tests__/beforeEachQueue.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not work on jest-circus | 1ms | - -### Correct beforeEach order - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✖️ | ensures the correct order for beforeEach | 0ms | - -## e2e/__tests__/extraGlobals.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with injected globals | 962ms | - -## e2e/__tests__/snapshotSerializers.test.ts ✔️ - -### Snapshot serializers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | renders snapshot | 607ms | -| ✔️ | compares snapshots correctly | 1365ms | - -## e2e/__tests__/locationInResults.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | defaults to null for location | 836ms | -| ✔️ | adds correct location info when provided with flag | 859ms | - -## e2e/__tests__/consoleLogOutputWhenRunInBand.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints console.logs when run with forceExit | 726ms | - -## e2e/__tests__/dependencyClash.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does not require project modules from inside node_modules | 723ms | - -## e2e/__tests__/coverageWithoutTransform.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | produces code coverage for uncovered files without transformer | 1020.9999999999999ms | - -## e2e/__tests__/cliHandlesExactFilenames.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | CLI accepts exact file names if matchers matched | 741ms | -| ✔️ | CLI skips exact file names if no matchers matched | 389ms | - -## e2e/__tests__/requireMainAfterCreateRequire.test.ts ✔️ - -### on node >=12.2.0 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | \`require.main\` not undefined after createRequire | 891ms | - -## e2e/__tests__/resetModules.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | jest.resetModules should not error when _isMockFunction is defined but not boolean | 883ms | - -## e2e/__tests__/watchModeUpdateSnapshot.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | can press \\"u\\" to update snapshots | 993ms | - -## e2e/__tests__/generatorMock.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | mock works with generator | 974ms | - -## e2e/__tests__/resolveGetPaths.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | require.resolve.paths | 1119ms | - -## e2e/__tests__/v8Coverage.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints coverage with missing sourcemaps | 1002.9999999999999ms | -| ✔️ | prints coverage with empty sourcemaps | 1338ms | - -## e2e/__tests__/resolveWithPaths.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | require.resolve with paths | 1117ms | - -## e2e/__tests__/logHeapUsage.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | logs memory usage | 830ms | - -## e2e/__tests__/requireMain.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | provides \`require.main\` set to test suite module | 1008.9999999999999ms | - -## e2e/__tests__/snapshotMockFs.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | store snapshot even if fs is mocked | 800ms | - -## e2e/__tests__/snapshot-unknown.test.ts ✔️ - -### Snapshot serializers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | renders snapshot | 798ms | - -## examples/angular/app.component.spec.ts ✔️ - -### AppComponent - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should create the app | 69ms | -| ✔️ | should have as title 'angular' | 28ms | -| ✔️ | should render title in a h1 tag | 115ms | - -## e2e/__tests__/stackTraceNoCaptureStackTrace.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints a usable stack trace even if no Error.captureStackTrace | 848ms | - -## e2e/__tests__/testNamePatternSkipped.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | testNamePattern skipped | 924ms | - -## e2e/__tests__/failureDetailsProperty.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | that the failureDetails property is set | 856ms | - -## e2e/__tests__/snapshotResolver.test.ts ✔️ - -### Custom snapshot resolver - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Resolves snapshot files using custom resolver | 735ms | - -## e2e/__tests__/processExit.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints stack trace pointing to process.exit call | 1012.9999999999999ms | - -## e2e/__tests__/nodePath.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | supports NODE_PATH | 833ms | - -## e2e/__tests__/verbose.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | Verbose Reporter | 631ms | - -## e2e/__tests__/listTests.test.ts ✔️ - -### --listTests flag - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | causes tests to be printed in different lines | 478ms | -| ✔️ | causes tests to be printed out as JSON when using the --json flag | 404ms | - -## e2e/__tests__/createProcessObject.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | allows retrieving the current domain | 867ms | - -## examples/react-testing-library/__tests__/CheckboxWithLabel-test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | CheckboxWithLabel changes the text after click | 33ms | - -## examples/angular/shared/data.service.spec.ts ✔️ - -### Service: DataService - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should create service | 20ms | -| ✔️ | should return the right title | 8ms | - -## e2e/__tests__/environmentAfterTeardown.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | prints useful error for environment methods after test is done | 846ms | - -## e2e/__tests__/esmConfigFile.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | reads config from cjs file | 157ms | - -### on node ^12.17.0 || >=13.2.0 - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | reads config from mjs file | 202ms | -| ✔️ | reads config from js file when package.json#type=module | 115ms | - -## examples/enzyme/__tests__/CheckboxWithLabel-test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | CheckboxWithLabel changes the text after click | 6ms | - -## examples/module-mock/__tests__/mock_per_test.js ✔️ - -### define mock per test - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | uses mocked module | 2ms | -| ✔️ | uses actual module | 10ms | - -## examples/mongodb/__test__/db.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should aggregate docs from collection | 10ms | - -## examples/snapshot/__tests__/link.react.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | renders correctly | 6ms | -| ✔️ | renders as an anchor when no page is set | 1ms | -| ✔️ | properly escapes quotes | 1ms | -| ✔️ | changes the class when hovered | 2ms | - -## examples/typescript/__tests__/CheckboxWithLabel-test.tsx ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | CheckboxWithLabel changes the text after click | 16ms | - -## examples/react/__tests__/CheckboxWithLabel-test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | CheckboxWithLabel changes the text after click | 17ms | - -## e2e/__tests__/showConfig.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | --showConfig outputs config info and exits | 144ms | - -## examples/snapshot/__tests__/clock.react.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | renders correctly | 2ms | - -## examples/timer/__tests__/infinite_timer_game.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | schedules a 10-second timer after 1 second | 26ms | - -## examples/jquery/__tests__/fetch_current_user.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | calls into $.ajax with the correct params | 73ms | -| ✔️ | calls the callback when $.ajax requests are finished | 10ms | - -## examples/jquery/__tests__/display_user.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | displays a user after a click | 71ms | - -## examples/timer/__tests__/timer_game.test.js ✔️ - -### timerGame - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | waits 1 second before ending the game | 8ms | -| ✔️ | calls the callback after 1 second via runAllTimers | 2ms | -| ✔️ | calls the callback after 1 second via advanceTimersByTime | 1ms | - -## examples/async/__tests__/user.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | works with resolves | 1ms | -| ✔️ | works with promises | 0ms | -| ✔️ | works with async/await | 0ms | -| ✔️ | works with async/await and resolves | 1ms | -| ✔️ | tests error with rejects | 0ms | -| ✔️ | tests error with promises | 0ms | -| ✔️ | tests error with async/await | 1ms | -| ✔️ | tests error with async/await and rejects | 0ms | - -## examples/automatic-mocks/__tests__/createMockFromModule.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | implementation created by automock | 1ms | -| ✔️ | implementation created by jest.createMockFromModule | 0ms | - -## examples/manual-mocks/__tests__/file_summarizer.test.js ✔️ - -### listFilesInDirectorySync - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | includes all files in the directory in the summary | 21ms | - -## examples/typescript/__tests__/calc.test.ts ✔️ - -### calc - mocks - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | returns result from subtract | 1ms | -| ✔️ | returns result from sum | 1ms | -| ✔️ | adds last result to memory | 0ms | -| ✔️ | subtracts last result to memory | 1ms | -| ✔️ | clears the memory | 1ms | -| ✔️ | throws an error when invalid Op is passed | 8ms | - -## examples/getting-started/sum.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | adds 1 + 2 to equal 3 | 0ms | - -## examples/angular/shared/sub.service.spec.ts ✔️ - -### Service: SubService - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should create service | 12ms | - -## examples/manual-mocks/__tests__/user.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | if orginal user model | 1ms | - -## examples/typescript/__tests__/sum-test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | adds 1 + 2 to equal 3 in TScript | 8ms | -| ✔️ | adds 1 + 2 to equal 3 in JavaScript | 9ms | - -## examples/automatic-mocks/__tests__/automock.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | if utils are mocked | 0ms | -| ✔️ | mocked implementation | 1ms | - -## examples/manual-mocks/__tests__/lodashMocking.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | if lodash head is mocked | 1ms | - -## examples/manual-mocks/__tests__/userMocked.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | if user model is mocked | 1ms | - -## examples/typescript/__tests__/sum.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | adds 1 + 2 to equal 3 in Typescript | 2ms | -| ✔️ | adds 1 + 2 to equal 3 in JavaScript | 1ms | - -## e2e/custom-test-sequencer/b.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | b | 0ms | - -## examples/typescript/__tests__/sub-test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | subtracts 5 - 1 to equal 4 in TypeScript | 1ms | - -## examples/module-mock/__tests__/full_mock.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does a full mock | 0ms | - -## e2e/__tests__/global.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | globals are properly defined | 0ms | - -## examples/automatic-mocks/__tests__/disableAutomocking.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | original implementation | 0ms | - -## e2e/timer-reset-mocks/after-reset-all-mocks/timerAndMock.test.js ✔️ - -### timers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should work before calling resetAllMocks | 1ms | -| ✔️ | should not break after calling resetAllMocks | 1ms | - -## e2e/__tests__/requireV8Module.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | v8 module | 1ms | - -## e2e/timer-reset-mocks/with-reset-mocks/timerWithMock.test.js ✔️ - -### timers - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | should work before calling resetAllMocks | 0ms | - -## examples/module-mock/__tests__/partial_mock.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | does a partial mock | 1ms | - -## e2e/custom-test-sequencer/d.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | d | 0ms | - -## e2e/custom-test-sequencer/a.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | a | 0ms | - -## e2e/custom-test-sequencer/e.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | e | 0ms | - -## e2e/custom-test-sequencer/c.test.js ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | c | 0ms | - -## e2e/__tests__/asyncAndCallback.test.ts ✔️ - -| Result | Test | Time | -| :---: | :--- | ---: | -| ✔️ | errors when a test both returns a promise and takes a callback | 704ms | -", - "title": "jest tests ❌", + and thresholds will be applied independently", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "that files are matched by all matching threshold groups", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "that it passes custom options when creating reporters", + "result": "success", + "time": 2, + }, + ], + }, + ], + "name": "packages/jest-reporters/src/__tests__/CoverageReporter.test.js", + "totalTime": 397, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "saveInlineSnapshots() replaces empty function call with a template literal", + "result": "success", + "time": 63, + }, + TestCaseResult { + "name": "saveInlineSnapshots() without prettier leaves formatting outside of snapshots alone", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "saveInlineSnapshots() can handle typescript without prettier", + "result": "success", + "time": 8, + }, + TestCaseResult { + "name": "saveInlineSnapshots() can handle tsx without prettier", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "saveInlineSnapshots() can handle flow and jsx without prettier", + "result": "success", + "time": 35, + }, + TestCaseResult { + "name": "saveInlineSnapshots() can use prettier to fix formatting for whole file", + "result": "success", + "time": 17, + }, + TestCaseResult { + "name": "saveInlineSnapshots() replaces existing template literal - babel parser", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "saveInlineSnapshots() replaces existing template literal - flow parser", + "result": "success", + "time": 169, + }, + TestCaseResult { + "name": "saveInlineSnapshots() replaces existing template literal - typescript parser", + "result": "success", + "time": 155, + }, + TestCaseResult { + "name": "saveInlineSnapshots() replaces existing template literal with property matchers", + "result": "success", + "time": 17, + }, + TestCaseResult { + "name": "saveInlineSnapshots() creates template literal with property matchers", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "saveInlineSnapshots() creates template literal with property matchers", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "saveInlineSnapshots() throws if frame does not match", + "result": "success", + "time": 22, + }, + TestCaseResult { + "name": "saveInlineSnapshots() throws if multiple calls to to the same location", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "saveInlineSnapshots() uses escaped backticks", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "saveInlineSnapshots() works with non-literals in expect call", + "result": "success", + "time": 8, + }, + TestCaseResult { + "name": "saveInlineSnapshots() indents multi-line snapshots with spaces", + "result": "success", + "time": 13, + }, + TestCaseResult { + "name": "saveInlineSnapshots() does not re-indent error snapshots", + "result": "success", + "time": 22, + }, + TestCaseResult { + "name": "saveInlineSnapshots() does not re-indent already indented snapshots", + "result": "success", + "time": 11, + }, + TestCaseResult { + "name": "saveInlineSnapshots() indents multi-line snapshots with tabs", + "result": "success", + "time": 12, + }, + TestCaseResult { + "name": "saveInlineSnapshots() indents snapshots after prettier reformats", + "result": "success", + "time": 16, + }, + TestCaseResult { + "name": "saveInlineSnapshots() does not indent empty lines", + "result": "success", + "time": 7, + }, + ], + }, + ], + "name": "packages/jest-snapshot/src/__tests__/InlineSnapshots.test.ts", + "totalTime": 1149, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "readConfig() throws when an object is passed without a file path", + "result": "success", + "time": 16, + }, + ], + }, + ], + "name": "packages/jest-config/src/__tests__/readConfig.test.ts", + "totalTime": 76, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "When offset is -1", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "When offset is in the first set of items", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "When offset is in the middle of the list", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "When offset is at the end of the list", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "When offset is at the end and size is smaller than max", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-watcher/src/lib/__tests__/scroll.test.ts", + "totalTime": 57, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "toThrowError", + "tests": Array [ + TestCaseResult { + "name": "to throw or not to throw", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "invalid arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "invalid actual", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "toThrowError substring", + "tests": Array [ + TestCaseResult { + "name": "passes", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "did not throw at all", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "threw, but message did not match (error)", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "threw, but message did not match (non-error falsey)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "properly escapes strings when matching against errors", + "result": "success", + "time": 37, + }, + TestCaseResult { + "name": "threw, but message should not match (error)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "threw, but message should not match (non-error truthy)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrowError regexp", + "tests": Array [ + TestCaseResult { + "name": "passes", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "did not throw at all", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "threw, but message did not match (error)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "threw, but message did not match (non-error falsey)", + "result": "success", + "time": 8, + }, + TestCaseResult { + "name": "threw, but message should not match (error)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "threw, but message should not match (non-error truthy)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrowError error class", + "tests": Array [ + TestCaseResult { + "name": "passes", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "did not throw at all", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "threw, but class did not match (error)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "threw, but class did not match (non-error falsey)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "threw, but class should not match (error)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "threw, but class should not match (error subclass)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "threw, but class should not match (error subsubclass)", + "result": "success", + "time": 4, + }, + ], + }, + TestGroupResult { + "name": "toThrowError error-message pass", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "toThrowError error-message fail", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "multiline diff highlight incorrect expected space", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "toThrowError asymmetric any-Class pass", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrowError asymmetric any-Class fail", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "toThrowError asymmetric anything pass", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrowError asymmetric anything fail", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrowError asymmetric no-symbol pass", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrowError asymmetric no-symbol fail", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "toThrowError asymmetric objectContaining pass", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrowError asymmetric objectContaining fail", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 4, + }, + ], + }, + TestGroupResult { + "name": "toThrowError promise/async throws if Error-like object is returned", + "tests": Array [ + TestCaseResult { + "name": "passes", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "did not throw at all", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "threw, but class did not match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "threw, but should not have", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrowError expected is undefined", + "tests": Array [ + TestCaseResult { + "name": "threw, but should not have (non-error falsey)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrow", + "tests": Array [ + TestCaseResult { + "name": "to throw or not to throw", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "invalid arguments", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "invalid actual", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrow substring", + "tests": Array [ + TestCaseResult { + "name": "passes", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "did not throw at all", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "threw, but message did not match (error)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "threw, but message did not match (non-error falsey)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "properly escapes strings when matching against errors", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "threw, but message should not match (error)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "threw, but message should not match (non-error truthy)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrow regexp", + "tests": Array [ + TestCaseResult { + "name": "passes", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "did not throw at all", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "threw, but message did not match (error)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "threw, but message did not match (non-error falsey)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "threw, but message should not match (error)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "threw, but message should not match (non-error truthy)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrow error class", + "tests": Array [ + TestCaseResult { + "name": "passes", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "did not throw at all", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "threw, but class did not match (error)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "threw, but class did not match (non-error falsey)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "threw, but class should not match (error)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "threw, but class should not match (error subclass)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "threw, but class should not match (error subsubclass)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrow error-message pass", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrow error-message fail", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "multiline diff highlight incorrect expected space", + "result": "success", + "time": 4, + }, + ], + }, + TestGroupResult { + "name": "toThrow asymmetric any-Class pass", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrow asymmetric any-Class fail", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrow asymmetric anything pass", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrow asymmetric anything fail", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrow asymmetric no-symbol pass", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrow asymmetric no-symbol fail", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "toThrow asymmetric objectContaining pass", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrow asymmetric objectContaining fail", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toThrow promise/async throws if Error-like object is returned", + "tests": Array [ + TestCaseResult { + "name": "passes", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "did not throw at all", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "threw, but class did not match", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "threw, but should not have", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "toThrow expected is undefined", + "tests": Array [ + TestCaseResult { + "name": "threw, but should not have (non-error falsey)", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/expect/src/__tests__/toThrowMatchers.test.ts", + "totalTime": 257, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "recursively validates default Jest config", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "recursively validates default jest-validate config", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "pretty prints valid config for Boolean", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "pretty prints valid config for Array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "pretty prints valid config for String", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "pretty prints valid config for Object", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "pretty prints valid config for Function", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "omits null and undefined config values", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "recursively omits null and undefined config values", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "treat async and non-async functions as equivalent", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "treat async and non-async functions as equivalent", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "treat async and non-async functions as equivalent", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "treat async and non-async functions as equivalent", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "respects recursiveDenylist", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "displays warning for unknown config options", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "displays warning for deprecated config options", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with custom warnings", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with custom errors", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with custom deprecations", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with multiple valid types", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "reports errors nicely when failing with multiple valid options", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "Repeated types within multiple valid examples are coalesced in error report", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "Comments in config JSON using \\"//\\" key are not warned", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-validate/src/__tests__/validate.test.ts", + "totalTime": 283, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "defaults", + "tests": Array [ + TestCaseResult { + "name": "returns cached object if called multiple times", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "resolveSnapshotPath()", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "resolveTestPath()", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "custom resolver in project config", + "tests": Array [ + TestCaseResult { + "name": "returns cached object if called multiple times", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "resolveSnapshotPath()", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "resolveTestPath()", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "malformed custom resolver in project config", + "tests": Array [ + TestCaseResult { + "name": "missing resolveSnapshotPath throws", + "result": "success", + "time": 8, + }, + TestCaseResult { + "name": "missing resolveTestPath throws", + "result": "success", + "time": 10, + }, + TestCaseResult { + "name": "missing testPathForConsistencyCheck throws", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "inconsistent functions throws", + "result": "success", + "time": 20, + }, + ], + }, + ], + "name": "packages/jest-snapshot/src/__tests__/SnapshotResolver.test.ts", + "totalTime": 98, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "resolves to the result of generateEmptyCoverage upon success", + "result": "success", + "time": 127, + }, + TestCaseResult { + "name": "throws errors on invalid JavaScript", + "result": "success", + "time": 5, + }, + ], + }, + ], + "name": "packages/jest-reporters/src/__tests__/CoverageWorker.test.js", + "totalTime": 199, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "Returns source string with inline maps when no transformOptions is passed", + "result": "success", + "time": 177, + }, + TestCaseResult { + "name": "can pass null to createTransformer", + "result": "success", + "time": 17, + }, + ], + }, + TestGroupResult { + "name": "caller option correctly merges from defaults and options", + "tests": Array [ + TestCaseResult { + "name": "{\\"supportsDynamicImport\\":true,\\"supportsStaticESM\\":true} -> {\\"supportsDynamicImport\\":true,\\"supportsStaticESM\\":true}", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "{\\"supportsDynamicImport\\":false,\\"supportsStaticESM\\":false} -> {\\"supportsDynamicImport\\":false,\\"supportsStaticESM\\":false}", + "result": "success", + "time": 11, + }, + TestCaseResult { + "name": "{\\"supportsStaticESM\\":false} -> {\\"supportsDynamicImport\\":false,\\"supportsStaticESM\\":false}", + "result": "success", + "time": 13, + }, + TestCaseResult { + "name": "{\\"supportsDynamicImport\\":true} -> {\\"supportsDynamicImport\\":true,\\"supportsStaticESM\\":false}", + "result": "success", + "time": 11, + }, + ], + }, + ], + "name": "packages/babel-jest/src/__tests__/index.ts", + "totalTime": 371, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Resolve config path .js", + "tests": Array [ + TestCaseResult { + "name": "file path with \\".js\\"", + "result": "success", + "time": 9, + }, + TestCaseResult { + "name": "directory path with \\".js\\"", + "result": "success", + "time": 11, + }, + ], + }, + TestGroupResult { + "name": "Resolve config path .ts", + "tests": Array [ + TestCaseResult { + "name": "file path with \\".ts\\"", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "directory path with \\".ts\\"", + "result": "success", + "time": 3, + }, + ], + }, + TestGroupResult { + "name": "Resolve config path .mjs", + "tests": Array [ + TestCaseResult { + "name": "file path with \\".mjs\\"", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "directory path with \\".mjs\\"", + "result": "success", + "time": 7, + }, + ], + }, + TestGroupResult { + "name": "Resolve config path .cjs", + "tests": Array [ + TestCaseResult { + "name": "file path with \\".cjs\\"", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "directory path with \\".cjs\\"", + "result": "success", + "time": 2, + }, + ], + }, + TestGroupResult { + "name": "Resolve config path .json", + "tests": Array [ + TestCaseResult { + "name": "file path with \\".json\\"", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "directory path with \\".json\\"", + "result": "success", + "time": 3, + }, + ], + }, + ], + "name": "packages/jest-config/src/__tests__/resolveConfigPath.test.ts", + "totalTime": 183, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "groupTestsBySuites", + "tests": Array [ + TestCaseResult { + "name": "should handle empty results", + "result": "success", + "time": 293, + }, + TestCaseResult { + "name": "should group A1 in A", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should group A1 in A; B1 in B", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should group A1, A2 in A", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should group A1, A2 in A; B1, B2 in B", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should group AB1 in AB", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should group AB1, AB2 in AB", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should group A1 in A; AB1 in AB", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should group AB1 in AB; A1 in A", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should group AB1 in AB; CD1 in CD", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should group ABC1 in ABC; BC1 in BC; D1 in D; A1 in A", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-reporters/src/__tests__/VerboseReporter.test.js", + "totalTime": 425, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "keyToTestName()", + "result": "success", + "time": 18, + }, + TestCaseResult { + "name": "testNameToKey", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "saveSnapshotFile() works with", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "saveSnapshotFile() works with", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "getSnapshotData() throws when no snapshot version", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "getSnapshotData() throws for older snapshot version", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "getSnapshotData() throws for newer snapshot version", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "getSnapshotData() does not throw for when updating", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "getSnapshotData() marks invalid snapshot dirty when updating", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "getSnapshotData() marks valid snapshot not dirty when updating", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "escaping", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "serialize handles \\\\r\\\\n", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "ExtraLineBreaks", + "tests": Array [ + TestCaseResult { + "name": "0 empty string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "1 line has double quote marks at edges", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "1 line has spaces at edges", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "2 lines both are blank", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "2 lines have double quote marks at edges", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "2 lines first is blank", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "2 lines last is blank", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "removeLinesBeforeExternalMatcherTrap", + "tests": Array [ + TestCaseResult { + "name": "contains external matcher trap", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "doesn't contain external matcher trap", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "DeepMerge with property matchers", + "tests": Array [ + TestCaseResult { + "name": "Correctly merges a nested object", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "Correctly merges an object with an array of objects", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "Correctly merges an object with an array of strings", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "Correctly merges an array of objects", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "Correctly merges an array of arrays", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-snapshot/src/__tests__/utils.test.ts", + "totalTime": 214, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "test always", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "test success", + "result": "success", + "time": 8, + }, + TestCaseResult { + "name": "test change", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "test success-change", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "test failure-change", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "test always with rootDir", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "test success with rootDir", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "test change with rootDir", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "test success-change with rootDir", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "test failure-change with rootDir", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "test always with moduleName", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "test success with moduleName", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "test change with moduleName", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "test success-change with moduleName", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "test failure-change with moduleName", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "node-notifier is an optional dependency", + "tests": Array [ + TestCaseResult { + "name": "without node-notifier uses mock function that throws an error", + "result": "success", + "time": 23, + }, + TestCaseResult { + "name": "throws the error when require throws an unexpected error", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "uses node-notifier when it is available", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-reporters/src/__tests__/NotifyReporter.test.ts", + "totalTime": 166, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime CLI", + "tests": Array [ + TestCaseResult { + "name": "fails with no path", + "result": "success", + "time": 80, + }, + TestCaseResult { + "name": "displays script output", + "result": "success", + "time": 1197, + }, + TestCaseResult { + "name": "always disables automocking", + "result": "success", + "time": 1424, + }, + TestCaseResult { + "name": "throws script errors", + "result": "success", + "time": 1209, + }, + ], + }, + ], + "name": "packages/jest-repl/src/__tests__/runtime_cli.test.js", + "totalTime": 4094.0000000000005, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "is available globally when matcher is unary", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "is available globally when matcher is variadic", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "exposes matcherUtils in context", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "is ok if there is no message specified", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "exposes an equality function to custom matchers", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "defines asymmetric unary matchers", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "defines asymmetric unary matchers that can be prefixed by not", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "defines asymmetric variadic matchers", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "defines asymmetric variadic matchers that can be prefixed by not", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints the Symbol into the error message", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/expect/src/__tests__/extend.test.ts", + "totalTime": 99, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "getCallsite", + "tests": Array [ + TestCaseResult { + "name": "without source map", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "ignores errors when fs throws", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "reads source map file to determine line and column", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-source-map/src/__tests__/getCallsite.test.ts", + "totalTime": 86, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "maps special values to valid options", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "maps regular values to themselves", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with string objects", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "explicit flags override those from --config", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-config/src/__tests__/setFromArgv.test.ts", + "totalTime": 53, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "calls handler on change value", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "calls handler on success prompt", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls handler on cancel prompt", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-watcher/src/lib/__tests__/prompt.test.ts", + "totalTime": 91, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "docblock", + "tests": Array [ + TestCaseResult { + "name": "extracts valid docblock with line comment", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "extracts valid docblock", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "extracts valid docblock with more comments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "extracts from invalid docblock", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns extract and parsedocblock", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "parses directives out of a docblock", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "parses multiple of the same directives out of a docblock", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "parses >=3 of the same directives out of a docblock", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "parses directives out of a docblock with comments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "parses directives out of a docblock with line comments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "parses multiline directives", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "parses multiline directives even if there are linecomments within the docblock", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports slashes in @team directive", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "extracts comments from docblock", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "extracts multiline comments from docblock", + "result": "success", + "time": 10, + }, + TestCaseResult { + "name": "preserves leading whitespace in multiline comments from docblock", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "removes leading newlines in multiline comments from docblock", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "extracts comments from beginning and end of docblock", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "preserve urls within a pragma's values", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "strip linecomments from pragmas but preserve for comments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "extracts docblock comments as CRLF when docblock contains CRLF", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "extracts docblock comments as LF when docblock contains LF", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "strips the docblock out of a file that contains a top docblock", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns a file unchanged if there is no top docblock to strip", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints docblocks with no pragmas as empty string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints docblocks with one pragma on one line", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints docblocks with multiple pragmas on multiple lines", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints docblocks with multiple of the same pragma", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints docblocks with pragmas", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints docblocks with comments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints docblocks with comments and no keys", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints docblocks with multiline comments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints docblocks that are parseable", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "can augment existing docblocks with comments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints docblocks using CRLF if comments contains CRLF", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints docblocks using LF if comments contains LF", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-docblock/src/__tests__/index.test.ts", + "totalTime": 177, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "dedentLines non-null", + "tests": Array [ + TestCaseResult { + "name": "no lines", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "one line empty string", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "one line empty object", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "one line self-closing element", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "object value empty string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "object value string includes double-quote marks", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "markup with props and text", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "markup with components as props", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "dedentLines null", + "tests": Array [ + TestCaseResult { + "name": "object key multi-line", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "object value multi-line", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "object key and value multi-line", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "markup prop multi-line", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "markup prop component with multi-line text", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "markup text multi-line", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "markup text multiple lines", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "markup unclosed self-closing start tag", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "markup unclosed because no end tag", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-snapshot/src/__tests__/dedentLines.test.ts", + "totalTime": 94, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "getMaxWorkers", + "tests": Array [ + TestCaseResult { + "name": "Returns 1 when runInBand", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "Returns 1 when the OS CPUs are not available", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "Returns the \`maxWorkers\` when specified", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "Returns based on the number of cpus", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "getMaxWorkers % based", + "tests": Array [ + TestCaseResult { + "name": "50% = 2 workers", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "< 0 workers should become 1", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "0% shouldn't break", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-config/src/__tests__/getMaxWorkers.test.ts", + "totalTime": 67, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "wrapAnsiString()", + "tests": Array [ + TestCaseResult { + "name": "wraps a long string containing ansi chars", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "returns the string unaltered if given a terminal width of zero", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "trimAndFormatPath()", + "tests": Array [ + TestCaseResult { + "name": "trims dirname", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "trims dirname (longer line width)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "trims dirname and basename", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not trim anything", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "split at the path.sep index", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "printDisplayName", + "tests": Array [ + TestCaseResult { + "name": "should default displayName color to white when displayName is a string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should default displayName color to white when color is not a valid value", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should correctly print the displayName when color and name are valid values", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-reporters/src/__tests__/utils.test.ts", + "totalTime": 85, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "throw matcher can take func", + "result": "success", + "time": 2, + }, + ], + }, + TestGroupResult { + "name": "throw matcher from promise", + "tests": Array [ + TestCaseResult { + "name": "can take error", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "can take custom error", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-snapshot/src/__tests__/throwMatcher.test.ts", + "totalTime": 481, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "matcher returns matcher name, expected and actual values", + "result": "success", + "time": 7, + }, + ], + }, + ], + "name": "packages/jest-snapshot/src/__tests__/matcher.test.ts", + "totalTime": 131, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "validate pattern function", + "tests": Array [ + TestCaseResult { + "name": "without passed args returns true", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "returns true for empty pattern", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns true for valid pattern", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns false for invalid pattern", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-config/src/__tests__/validatePattern.test.ts", + "totalTime": 52, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "isBuiltinModule", + "tests": Array [ + TestCaseResult { + "name": "should return true for the \`path\` module", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should return false for the \`chalk\` module", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should return true for the \`_http_common\` module", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should return false for any internal node builtins", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-resolve/src/__tests__/isBuiltinModule.test.ts", + "totalTime": 36, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "throw when directly imported", + "result": "success", + "time": 505, + }, + ], + }, + ], + "name": "packages/jest-globals/src/__tests__/index.ts", + "totalTime": 533, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "replacePathSepForRegex() posix", + "tests": Array [ + TestCaseResult { + "name": "should return the path", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "replacePathSepForRegex() win32", + "tests": Array [ + TestCaseResult { + "name": "should replace POSIX path separators", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should escape Windows path separators", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should not escape an escaped dot", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should not escape an escaped regexp symbol", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should escape Windows path separators inside groups", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should escape Windows path separator at the beginning", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should not escape several already escaped path separators", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-regex-util/src/__tests__/index.test.ts", + "totalTime": 56, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "mock with 0 calls and default name", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mock with 2 calls, 1 return, 1 throw", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mock with 0 calls and default name in React element", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "mock with 0 calls and non-default name", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "mock with 1 calls and non-default name via new in object", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mock with 1 calls in React element", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "mock with 2 calls", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "indent option", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "min option", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "maxDepth option", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-snapshot/src/__tests__/mockSerializer.test.ts", + "totalTime": 45, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "getWatermarks", + "tests": Array [ + TestCaseResult { + "name": "that watermarks use thresholds as upper target", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "that watermarks are created always created", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-reporters/src/__tests__/getWatermarks.test.ts", + "totalTime": 37, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "normal output, everything goes to stdout", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "when using stderr as output, no stdout call is made", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-reporters/src/__tests__/DefaultReporter.test.js", + "totalTime": 148, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "should call \`terminal-link\` correctly", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should render the terminal link", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should display test time for slow test", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should not display test time for fast test", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-reporters/src/__tests__/getResultHeader.test.js", + "totalTime": 30, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "toEqual duck type Text", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toEqual duck type Element", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toEqual duck type Fragment", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toEqual document createTextNode", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "toEqual document createElement", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toEqual document createDocumentFragment", + "tests": Array [ + TestCaseResult { + "name": "isNot false", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "isNot true", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/expect/src/__tests__/toEqual-dom.test.ts", + "totalTime": 99, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "NodeEnvironment", + "tests": Array [ + TestCaseResult { + "name": "uses a copy of the process object", + "result": "success", + "time": 11, + }, + TestCaseResult { + "name": "exposes process.on", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "exposes global.global", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should configure setTimeout/setInterval to use the node api", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "has modern fake timers implementation", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "TextEncoder references the same global Uint8Array constructor", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-environment-node/src/__tests__/node_environment.test.ts", + "totalTime": 184, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "Retrieves the snapshot status", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "Shows no snapshot updates if all snapshots matched", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "Retrieves the snapshot status after a snapshot update", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-reporters/src/__tests__/getSnapshotStatus.test.js", + "totalTime": 28, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "validates yargs special options", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "validates testURL", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails for unknown option", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "fails for multiple unknown options", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not show suggestion when unrecognized cli param length <= 1", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "shows suggestion when unrecognized cli param length > 1", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-validate/src/__tests__/validateCLIOptions.test.js", + "totalTime": 83, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "creates a snapshot summary", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "creates a snapshot summary after an update", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "creates a snapshot summary with multiple snapshot being written/updated", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns nothing if there are no updates", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-reporters/src/__tests__/getSnapshotSummary.test.js", + "totalTime": 49, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "for multiline test name returns", + "tests": Array [ + TestCaseResult { + "name": "test name with highlighted pattern and replaced line breaks", + "result": "success", + "time": 2, + }, + ], + }, + TestGroupResult { + "name": "for one line test name with pattern in the head returns", + "tests": Array [ + TestCaseResult { + "name": "test name with highlighted pattern", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "test name with cutted tail and highlighted pattern", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "test name with cutted tail and cutted highlighted pattern", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "for one line test name pattern in the middle", + "tests": Array [ + TestCaseResult { + "name": "test name with highlighted pattern returns", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "test name with cutted tail and highlighted pattern", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "test name with cutted tail and cutted highlighted pattern", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "test name with highlighted cutted", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "for one line test name pattern in the tail returns", + "tests": Array [ + TestCaseResult { + "name": "test name with highlighted pattern", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "test name with cutted tail and cutted highlighted pattern", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "test name with highlighted cutted", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-watcher/src/lib/__tests__/formatTestNameByPattern.test.ts", + "totalTime": 129, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "shouldInstrument should return true", + "tests": Array [ + TestCaseResult { + "name": "when testRegex is provided and file is not a test file", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "when more than one testRegex is provided and filename is not a test file", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "when testMatch is provided and file is not a test file", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "when testPathIgnorePatterns is provided and file is not a test file", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "when more than one testPathIgnorePatterns is provided and filename is not a test file", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "when testRegex and testPathIgnorePatterns are provided and file is not a test file", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "when testMatch and testPathIgnorePatterns are provided and file is not a test file", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should return true when file is in collectCoverageOnlyFrom when provided", + "result": "success", + "time": 32, + }, + TestCaseResult { + "name": "should return true when filename matches collectCoverageFrom", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should return true if the file is not in coveragePathIgnorePatterns", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should return true if file is a testfile but forceCoverageMatch is set", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "shouldInstrument should return false", + "tests": Array [ + TestCaseResult { + "name": "if collectCoverage is falsy", + "result": "success", + "time": 11, + }, + TestCaseResult { + "name": "when testRegex is provided and filename is a test file", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "when more than one testRegex is provided and filename matches one of the patterns", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "when testMatch is provided and file is a test file", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "when testRegex and testPathIgnorePatterns are provided and filename is a test file", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "when testMatch and testPathIgnorePatterns are provided and file is a test file", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "when file is not in collectCoverageOnlyFrom when provided", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "when filename does not match collectCoverageFrom", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "if the file is in coveragePathIgnorePatterns", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "if file is in mock patterns", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "if file is a globalSetup file", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "if file is globalTeardown file", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "if file is in setupFiles", + "result": "success", + "time": 11, + }, + TestCaseResult { + "name": "if file is in setupFilesAfterEnv", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-transform/src/__tests__/shouldInstrument.test.ts", + "totalTime": 155, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "ScriptTransformer", + "tests": Array [ + TestCaseResult { + "name": "transforms a file properly", + "result": "success", + "time": 204, + }, + TestCaseResult { + "name": "does not transform Node core modules", + "result": "success", + "time": 51, + }, + TestCaseResult { + "name": "throws an error if \`process\` doesn't return a string or an objectcontaining \`code\` key with processed string", + "result": "success", + "time": 79, + }, + TestCaseResult { + "name": "throws an error if \`process\` doesn't defined", + "result": "success", + "time": 42, + }, + TestCaseResult { + "name": "throws an error if createTransformer returns object without \`process\` method", + "result": "success", + "time": 98, + }, + TestCaseResult { + "name": "shouldn't throw error without process method. But with corrent createTransformer method", + "result": "success", + "time": 66, + }, + TestCaseResult { + "name": "uses the supplied preprocessor", + "result": "success", + "time": 45, + }, + TestCaseResult { + "name": "uses multiple preprocessors", + "result": "success", + "time": 35, + }, + TestCaseResult { + "name": "writes source map if preprocessor supplies it", + "result": "success", + "time": 26, + }, + TestCaseResult { + "name": "writes source map if preprocessor inlines it", + "result": "success", + "time": 38, + }, + TestCaseResult { + "name": "warns of unparseable inlined source maps from the preprocessor", + "result": "success", + "time": 67, + }, + TestCaseResult { + "name": "writes source maps if given by the transformer", + "result": "success", + "time": 32, + }, + TestCaseResult { + "name": "does not write source map if not given by the transformer", + "result": "success", + "time": 75, + }, + TestCaseResult { + "name": "should write a source map for the instrumented file when transformed", + "result": "success", + "time": 66, + }, + TestCaseResult { + "name": "should write a source map for the instrumented file when not transformed", + "result": "success", + "time": 66, + }, + TestCaseResult { + "name": "passes expected transform options to getCacheKey", + "result": "success", + "time": 73, + }, + TestCaseResult { + "name": "creates transformer with config", + "result": "success", + "time": 35, + }, + TestCaseResult { + "name": "reads values from the cache", + "result": "success", + "time": 93, + }, + TestCaseResult { + "name": "reads values from the cache when the file contains colons", + "result": "success", + "time": 84, + }, + TestCaseResult { + "name": "should reuse the value from in-memory cache which is set by custom transformer", + "result": "success", + "time": 25, + }, + TestCaseResult { + "name": "does not reuse the in-memory cache between different projects", + "result": "success", + "time": 37, + }, + TestCaseResult { + "name": "preload transformer when using \`preloadTransformer\`", + "result": "success", + "time": 36, + }, + ], + }, + ], + "name": "packages/jest-transform/src/__tests__/ScriptTransformer.test.ts", + "totalTime": 1660, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "simple test", + "result": "success", + "time": 2145, + }, + TestCaseResult { + "name": "failures", + "result": "success", + "time": 707, + }, + ], + }, + ], + "name": "packages/jest-circus/src/__tests__/baseTest.test.ts", + "totalTime": 2902, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "moduleMocker getMetadata", + "tests": Array [ + TestCaseResult { + "name": "returns the function \`name\` property", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "mocks constant values", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not retrieve metadata for arrays", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not retrieve metadata for undefined", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not retrieve metadata for null", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "retrieves metadata for ES6 classes", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "retrieves synchronous function metadata", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "retrieves asynchronous function metadata", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "retrieves metadata for object literals and it's members", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "retrieves Date object metadata", + "result": "success", + "time": 5, + }, + ], + }, + TestGroupResult { + "name": "moduleMocker generateFromMetadata", + "tests": Array [ + TestCaseResult { + "name": "forwards the function name property", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fixes illegal function name properties", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "special cases the mockConstructor name", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "wont interfere with previous mocks on a shared prototype", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "does not mock non-enumerable getters", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mocks getters of ES modules", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "mocks ES2015 non-enumerable methods", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mocks ES2015 non-enumerable static properties and methods", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mocks methods in all the prototype chain (null prototype)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not mock methods from Object.prototype", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not mock methods from Object.prototype (in mock context)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not mock methods from Function.prototype", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not mock methods from Function.prototype (in mock context)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not mock methods from RegExp.prototype", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not mock methods from RegExp.prototype (in mock context)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mocks methods that are bound multiple times", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "mocks methods that are bound after mocking", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "mocks regexp instances", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mocks functions with numeric names", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mocks the method in the passed object itself", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should delete previously inexistent methods when restoring", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports mock value returning undefined", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports mock value once returning undefined", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mockReturnValueOnce mocks value just once", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports mocking resolvable async functions", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports mocking resolvable async functions only once", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports mocking rejectable async functions", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports mocking rejectable async functions only once", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "tracks thrown errors without interfering with other tracking", + "result": "success", + "time": 33, + }, + TestCaseResult { + "name": "a call that throws undefined is tracked properly", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "results of recursive calls are tracked properly", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "test results of recursive calls from within the recursive call", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "call mockClear inside recursive mock", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "moduleMocker generateFromMetadata mocked functions", + "tests": Array [ + TestCaseResult { + "name": "tracks calls to mocks", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "tracks instances made by mocks", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports clearing mock calls", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports clearing mocks", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "supports clearing all mocks", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports resetting mock return values", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports resetting single use mock return values", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports resetting mock implementations", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports resetting single use mock implementations", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports resetting all mocks", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "maintains function arity", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "moduleMocker generateFromMetadata return values", + "tests": Array [ + TestCaseResult { + "name": "tracks return values", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "tracks mocked return values", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports resetting return values", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "moduleMocker generateFromMetadata invocationCallOrder", + "tests": Array [ + TestCaseResult { + "name": "tracks invocationCallOrder made by mocks", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports clearing mock invocationCallOrder", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports clearing all mocks invocationCallOrder", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "handles a property called \`prototype\`", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "moduleMocker getMockImplementation", + "tests": Array [ + TestCaseResult { + "name": "should mock calls to a mock function", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "moduleMocker mockImplementationOnce", + "tests": Array [ + TestCaseResult { + "name": "should mock constructor", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should mock single call to a mock function", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should fallback to default mock function when no specific mock is available", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "moduleMocker", + "tests": Array [ + TestCaseResult { + "name": "mockReturnValue does not override mockImplementationOnce", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mockImplementation resets the mock", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should recognize a mocked function", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "default mockName is jest.fn()", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "mockName sets the mock name", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mockName gets reset by mockReset", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mockName gets reset by mockRestore", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mockName is not reset by mockClear", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "moduleMocker spyOn", + "tests": Array [ + TestCaseResult { + "name": "should work", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should throw on invalid input", + "result": "success", + "time": 28, + }, + TestCaseResult { + "name": "supports restoring all spies", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "should work with getters", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "moduleMocker spyOnProperty", + "tests": Array [ + TestCaseResult { + "name": "should work - getter", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "should work - setter", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should throw on invalid input", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports restoring all spies", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should work with getters on the prototype chain", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should work with setters on the prototype chain", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports restoring all spies on the prototype chain", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-mock/src/__tests__/index.test.ts", + "totalTime": 509, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "beforeEach is executed before each test in current/child describe blocks", + "result": "success", + "time": 2304, + }, + TestCaseResult { + "name": "multiple before each hooks in one describe are executed in the right order", + "result": "success", + "time": 678, + }, + TestCaseResult { + "name": "beforeAll is exectued correctly", + "result": "success", + "time": 625, + }, + ], + }, + ], + "name": "packages/jest-circus/src/__tests__/hooks.test.ts", + "totalTime": 3762, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime requireModule", + "tests": Array [ + TestCaseResult { + "name": "finds haste modules", + "result": "success", + "time": 1124, + }, + TestCaseResult { + "name": "provides \`module\` to modules", + "result": "success", + "time": 26, + }, + TestCaseResult { + "name": "provides \`module.parent\` to modules", + "result": "success", + "time": 80, + }, + TestCaseResult { + "name": "\`module.parent\` should be undefined for entrypoints", + "result": "success", + "time": 25, + }, + TestCaseResult { + "name": "resolve module.parent.require correctly", + "result": "success", + "time": 49, + }, + TestCaseResult { + "name": "resolve module.parent.filename correctly", + "result": "success", + "time": 23, + }, + TestCaseResult { + "name": "provides \`module.loaded\` to modules", + "result": "success", + "time": 27, + }, + TestCaseResult { + "name": "provides \`module.filename\` to modules", + "result": "success", + "time": 36, + }, + TestCaseResult { + "name": "provides \`module.paths\` to modules", + "result": "success", + "time": 49, + }, + TestCaseResult { + "name": "provides \`require.main\` to modules", + "result": "success", + "time": 52, + }, + TestCaseResult { + "name": "throws on non-existent haste modules", + "result": "success", + "time": 68, + }, + TestCaseResult { + "name": "finds relative-path modules without file extension", + "result": "success", + "time": 46, + }, + TestCaseResult { + "name": "finds relative-path modules with file extension", + "result": "success", + "time": 21, + }, + TestCaseResult { + "name": "throws on non-existent relative-path modules", + "result": "success", + "time": 22, + }, + TestCaseResult { + "name": "finds node core built-in modules", + "result": "success", + "time": 48, + }, + TestCaseResult { + "name": "finds and loads JSON files without file extension", + "result": "success", + "time": 27, + }, + TestCaseResult { + "name": "finds and loads JSON files with file extension", + "result": "success", + "time": 29, + }, + TestCaseResult { + "name": "requires a JSON file twice successfully", + "result": "success", + "time": 34, + }, + TestCaseResult { + "name": "provides manual mock when real module doesnt exist", + "result": "success", + "time": 27, + }, + TestCaseResult { + "name": "doesn't override real modules with manual mocks when explicitly unmocked", + "result": "success", + "time": 166, + }, + TestCaseResult { + "name": "resolves haste packages properly", + "result": "success", + "time": 30, + }, + TestCaseResult { + "name": "resolves platform extensions based on the default platform", + "result": "success", + "time": 204, + }, + TestCaseResult { + "name": "finds modules encoded in UTF-8 *with BOM*", + "result": "success", + "time": 25, + }, + TestCaseResult { + "name": "finds and loads JSON files encoded in UTF-8 *with BOM*", + "result": "success", + "time": 21, + }, + TestCaseResult { + "name": "should export a constructable Module class", + "result": "success", + "time": 21, + }, + TestCaseResult { + "name": "caches Module correctly", + "result": "success", + "time": 23, + }, + ], + }, + TestGroupResult { + "name": "Runtime requireModule on node >=12.12.0", + "tests": Array [ + TestCaseResult { + "name": "overrides module.createRequire", + "result": "success", + "time": 28, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/runtime_require_module.test.js", + "totalTime": 2439, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime jest.mock", + "tests": Array [ + TestCaseResult { + "name": "uses explicitly set mocks instead of automocking", + "result": "success", + "time": 635, + }, + TestCaseResult { + "name": "sets virtual mock for non-existing module required from same directory", + "result": "success", + "time": 29, + }, + TestCaseResult { + "name": "sets virtual mock for non-existing module required from different directory", + "result": "success", + "time": 18, + }, + ], + }, + TestGroupResult { + "name": "Runtime jest.setMock", + "tests": Array [ + TestCaseResult { + "name": "uses explicitly set mocks instead of automocking", + "result": "success", + "time": 21, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/runtime_mock.test.js", + "totalTime": 743, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "test/it error throwing", + "tests": Array [ + TestCaseResult { + "name": "it doesn't throw an error with valid arguments", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "it throws error with missing callback function", + "result": "success", + "time": 28, + }, + TestCaseResult { + "name": "it throws an error when first argument isn't a string", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "it throws an error when callback function is not a function", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "test doesn't throw an error with valid arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "test throws error with missing callback function", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "test throws an error when first argument isn't a string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "test throws an error when callback function is not a function", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-circus/src/__tests__/circusItTestError.test.ts", + "totalTime": 300, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "BaseWorkerPool", + "tests": Array [ + TestCaseResult { + "name": "throws error when createWorker is not defined", + "result": "success", + "time": 15, + }, + TestCaseResult { + "name": "creates and exposes n workers", + "result": "success", + "time": 9, + }, + TestCaseResult { + "name": "creates and expoeses n workers", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "creates workers with the right options", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "makes a non-existing relative worker throw", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "create multiple workers with unique worker ids", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "aggregates all stdouts and stderrs from all workers", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works when stdout and stderr are not piped to the parent", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "BaseWorkerPool end", + "tests": Array [ + TestCaseResult { + "name": "ends all workers", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "resolves with forceExited=false if workers exited gracefully", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "force exits workers that do not exit gracefully and resolves with forceExited=true", + "result": "success", + "time": 501, + }, + ], + }, + ], + "name": "packages/jest-worker/src/base/__tests__/BaseWorkerPool.test.js", + "totalTime": 653, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "does not incorrectly match identity-obj-proxy as Immutable object", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "Immutable.OrderedSet", + "tests": Array [ + TestCaseResult { + "name": "supports an empty collection {min: true}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports an empty collection {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a single string element", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports a single integer element", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports multiple string elements {min: true}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports multiple string elements {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports multiple integer elements {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports multiple integer elements {min: false}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports object elements {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports object elements {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports React elements {min: true}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports React elements {min: false}", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "Immutable.List", + "tests": Array [ + TestCaseResult { + "name": "supports an empty collection {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports an empty collection {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a single string element", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a single integer element", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports multiple string elements {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports multiple string elements {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports multiple integer elements {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports multiple integer elements {min: false}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports object elements {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports object elements {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports React elements {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports React elements {min: false}", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "Immutable.Stack", + "tests": Array [ + TestCaseResult { + "name": "supports an empty collection {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports an empty collection {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a single string element", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports a single integer element", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports multiple string elements {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports multiple string elements {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports multiple integer elements {min: true}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports multiple integer elements {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports object elements {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports object elements {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports React elements {min: true}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports React elements {min: false}", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "Immutable.Set", + "tests": Array [ + TestCaseResult { + "name": "supports an empty collection {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports an empty collection {min: false}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports a single string element", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a single integer element", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports multiple string elements {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports multiple string elements {min: false}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports multiple integer elements {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports multiple integer elements {min: false}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports object elements {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports object elements {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports React elements {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports React elements {min: false}", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "Immutable.Map", + "tests": Array [ + TestCaseResult { + "name": "supports an empty collection {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports an empty collection {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports an object with single key", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports an object with multiple keys {min: true}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports an object with multiple keys {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports object elements {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports object elements {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports React elements {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports React elements {min: false}", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "Immutable.OrderedMap", + "tests": Array [ + TestCaseResult { + "name": "supports an empty collection {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports an empty collection {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports an object with single key", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports an object with multiple keys {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports an object with multiple keys {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports object elements {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports object elements {min: false}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports React elements {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports React elements {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports non-string keys", + "result": "success", + "time": 2, + }, + ], + }, + TestGroupResult { + "name": "Immutable.Record", + "tests": Array [ + TestCaseResult { + "name": "supports an empty record {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports an empty record {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a record with descriptive name", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a record without descriptive name", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a record with values {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a record with values {min: false}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports a record with Map value {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a record with Map value {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports imbricated Record {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports imbricated Record {min: false}", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "indentation of heterogeneous collections", + "tests": Array [ + TestCaseResult { + "name": "empty Immutable.List as child of Object", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "empty Immutable.Map as child of Array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "non-empty Array as child of Immutable.Map", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "non-empty Object as child of Immutable.List", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "indent option", + "tests": Array [ + TestCaseResult { + "name": "default implicit: 2 spaces", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "default explicit: 2 spaces", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "non-default: 0 spaces", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "non-default: 4 spaces", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "maxDepth option", + "tests": Array [ + TestCaseResult { + "name": "Immutable.List as child of Object", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "Immutable.Map as child of Array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "Immutable.Seq as child of Immutable.Map", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "Immutable.Map as descendants in immutable collection", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "Immutable.Seq", + "tests": Array [ + TestCaseResult { + "name": "supports an empty sequence from array {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports an empty sequence from array {min: false}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports a non-empty sequence from array {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a non-empty sequence from array {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a non-empty sequence from arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports an empty sequence from object {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports an empty sequence from object {min: false}", + "result": "success", + "time": 14, + }, + TestCaseResult { + "name": "supports a non-empty sequence from object {min: true}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a non-empty sequence from object {min: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a sequence of entries from Immutable.Map", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports a sequence of values from ECMAScript Set", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a sequence of values from Immutable.List", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a sequence of values from Immutable.Set", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports a sequence of values from Immutable.Stack", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "Immutable.Seq lazy entries", + "tests": Array [ + TestCaseResult { + "name": "from object properties", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "from Immutable.Map entries", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "Immutable.Seq lazy values", + "tests": Array [ + TestCaseResult { + "name": "from Immutable.Range", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "from iterator", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "from array items", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "from Immutable.List values", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "from ECMAScript Set values", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/pretty-format/src/__tests__/Immutable.test.ts", + "totalTime": 443, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime requireModule", + "tests": Array [ + TestCaseResult { + "name": "installs source maps if available", + "result": "success", + "time": 560, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/Runtime-sourceMaps.test.js", + "totalTime": 584, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "JSDomEnvironment", + "tests": Array [ + TestCaseResult { + "name": "should configure setTimeout/setInterval to use the browser api", + "result": "success", + "time": 47, + }, + TestCaseResult { + "name": "has modern fake timers implementation", + "result": "success", + "time": 19, + }, + ], + }, + ], + "name": "packages/jest-environment-jsdom/src/__tests__/jsdom_environment.test.ts", + "totalTime": 783, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "babel-plugin-jest-hoist", + "tests": Array [ + TestCaseResult { + "name": "automatic react runtime", + "result": "success", + "time": 102, + }, + TestCaseResult { + "name": "top level mocking", + "result": "success", + "time": 18, + }, + TestCaseResult { + "name": "within a block", + "result": "success", + "time": 10, + }, + TestCaseResult { + "name": "within a block with no siblings", + "result": "success", + "time": 7, + }, + ], + }, + ], + "name": "packages/babel-plugin-jest-hoist/src/__tests__/hoistPlugin.test.ts", + "totalTime": 347, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "passes fork options down to child_process.fork, adding the defaults", + "result": "success", + "time": 26, + }, + TestCaseResult { + "name": "passes workerId to the child process and assign it to 1-indexed env.JEST_WORKER_ID", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "initializes the child process with the given workerPath", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "stops initializing the worker after the amount of retries is exceeded", + "result": "success", + "time": 25, + }, + TestCaseResult { + "name": "provides stdout and stderr from the child processes", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "sends the task to the child process", + "result": "success", + "time": 10, + }, + TestCaseResult { + "name": "resends the task to the child process after a retry", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "calls the onProcessStart method synchronously if the queue is empty", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "can send multiple messages to parent", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "creates error instances for known errors", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "throws when the child process returns a strange message", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "does not restart the child if it cleanly exited", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "resolves waitForExit() after the child process cleanly exited", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "restarts the child when the child process dies", + "result": "success", + "time": 13, + }, + TestCaseResult { + "name": "sends SIGTERM when forceExit() is called", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "sends SIGKILL some time after SIGTERM", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not send SIGKILL if SIGTERM exited the process", + "result": "success", + "time": 2, + }, + ], + }, + ], + "name": "packages/jest-worker/src/workers/__tests__/ChildProcessWorker.test.js", + "totalTime": 184, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "jest-each .test", + "tests": Array [ + TestCaseResult { + "name": "throws an error when not called with an array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws an error when called with an empty array", + "result": "success", + "time": 9, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing param values when using printf format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not call global test with title containing more param values than sprintf placeholders", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global test title with %p placeholder injected at the correct positions", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not calls global test title with %p placeholder when no data is supplied at given position", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case when given 1d array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case 2d array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 4, + }, + ], + }, + TestGroupResult { + "name": "jest-each .test.concurrent", + "tests": Array [ + TestCaseResult { + "name": "throws an error when not called with an array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws an error when called with an empty array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing param values when using printf format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not call global test with title containing more param values than sprintf placeholders", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global test title with %p placeholder injected at the correct positions", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not calls global test title with %p placeholder when no data is supplied at given position", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case when given 1d array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case 2d array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .test.concurrent.only", + "tests": Array [ + TestCaseResult { + "name": "throws an error when not called with an array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws an error when called with an empty array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing param values when using printf format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not call global test with title containing more param values than sprintf placeholders", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global test title with %p placeholder injected at the correct positions", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not calls global test title with %p placeholder when no data is supplied at given position", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case when given 1d array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case 2d array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "jest-each .test.concurrent.skip", + "tests": Array [ + TestCaseResult { + "name": "throws an error when not called with an array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws an error when called with an empty array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing param values when using printf format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not call global test with title containing more param values than sprintf placeholders", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global test title with %p placeholder injected at the correct positions", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not calls global test title with %p placeholder when no data is supplied at given position", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case when given 1d array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case 2d array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using sprintf format", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title with placeholder values correctly interpolated", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .test.only", + "tests": Array [ + TestCaseResult { + "name": "throws an error when not called with an array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws an error when called with an empty array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using printf format", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "does not call global test with title containing more param values than sprintf placeholders", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global test title with %p placeholder injected at the correct positions", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not calls global test title with %p placeholder when no data is supplied at given position", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case when given 1d array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case 2d array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .it", + "tests": Array [ + TestCaseResult { + "name": "throws an error when not called with an array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws an error when called with an empty array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing param values when using printf format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not call global test with title containing more param values than sprintf placeholders", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global test title with %p placeholder injected at the correct positions", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not calls global test title with %p placeholder when no data is supplied at given position", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case when given 1d array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case 2d array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .fit", + "tests": Array [ + TestCaseResult { + "name": "throws an error when not called with an array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws an error when called with an empty array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using printf format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not call global test with title containing more param values than sprintf placeholders", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global test title with %p placeholder injected at the correct positions", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not calls global test title with %p placeholder when no data is supplied at given position", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case when given 1d array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case 2d array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .it.only", + "tests": Array [ + TestCaseResult { + "name": "throws an error when not called with an array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws an error when called with an empty array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using printf format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not call global test with title containing more param values than sprintf placeholders", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global test title with %p placeholder injected at the correct positions", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not calls global test title with %p placeholder when no data is supplied at given position", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case when given 1d array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case 2d array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .describe", + "tests": Array [ + TestCaseResult { + "name": "throws an error when not called with an array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws an error when called with an empty array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing param values when using printf format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not call global test with title containing more param values than sprintf placeholders", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global test title with %p placeholder injected at the correct positions", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not calls global test title with %p placeholder when no data is supplied at given position", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case when given 1d array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case 2d array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "jest-each .fdescribe", + "tests": Array [ + TestCaseResult { + "name": "throws an error when not called with an array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws an error when called with an empty array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using printf format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not call global test with title containing more param values than sprintf placeholders", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global test title with %p placeholder injected at the correct positions", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not calls global test title with %p placeholder when no data is supplied at given position", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case when given 1d array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case 2d array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .describe.only", + "tests": Array [ + TestCaseResult { + "name": "throws an error when not called with an array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws an error when called with an empty array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing param values when using printf format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not call global test with title containing more param values than sprintf placeholders", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global test title with %p placeholder injected at the correct positions", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not calls global test title with %p placeholder when no data is supplied at given position", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case when given 1d array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with cb function containing all parameters of each test case 2d array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each done callback", + "tests": Array [ + TestCaseResult { + "name": "calls [ 'test' ] with done when cb function has more args than params of given test row", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls [ 'test', 'only' ] with done when cb function has more args than params of given test row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls [ 'test', 'concurrent' ] with done when cb function has more args than params of given test row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls [ 'test', 'concurrent', 'only' ] with done when cb function has more args than params of given test row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls [ 'it' ] with done when cb function has more args than params of given test row", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls [ 'fit' ] with done when cb function has more args than params of given test row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls [ 'it', 'only' ] with done when cb function has more args than params of given test row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not call [ 'describe' ] with done when test function has more args than params of given test row", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not call [ 'fdescribe' ] with done when test function has more args than params of given test row", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "does not call [ 'describe', 'only' ] with done when test function has more args than params of given test row", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "jest-each .xtest", + "tests": Array [ + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using sprintf format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title with placeholder values correctly interpolated", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "jest-each .test.skip", + "tests": Array [ + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing param values when using sprintf format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title with placeholder values correctly interpolated", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "jest-each .xit", + "tests": Array [ + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing param values when using sprintf format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title with placeholder values correctly interpolated", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "jest-each .it.skip", + "tests": Array [ + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing param values when using sprintf format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title with placeholder values correctly interpolated", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .xdescribe", + "tests": Array [ + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using sprintf format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title with placeholder values correctly interpolated", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "jest-each .describe.skip", + "tests": Array [ + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing param values when using sprintf format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title with placeholder values correctly interpolated", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-each/src/__tests__/array.test.ts", + "totalTime": 192, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "jest-each .test", + "tests": Array [ + TestCaseResult { + "name": "throws error when there are additional words in first column heading", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "throws error when there are additional words in second column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are additional words in last column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is additional words in template after heading row", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not throw error when there is only one column", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is only one column with additional words in template after heading", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are no arguments for given headings", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings when given one row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings over multiple rows", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "throws an error when called with an empty string", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing $key in multiple positions", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing $key.path", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing last seen object when $key.path is invalid", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function with object built from table headings and values", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "formats primitive values using .toString()", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "jest-each .test.concurrent", + "tests": Array [ + TestCaseResult { + "name": "throws error when there are additional words in first column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are additional words in second column heading", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are additional words in last column heading", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not throw error when there is additional words in template after heading row", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not throw error when there is only one column", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is only one column with additional words in template after heading", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are no arguments for given headings", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings when given one row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings over multiple rows", + "result": "success", + "time": 33, + }, + TestCaseResult { + "name": "throws an error when called with an empty string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing $key in multiple positions", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing $key.path", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing last seen object when $key.path is invalid", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with cb function with object built from table headings and values", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "formats primitive values using .toString()", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .test.concurrent.only", + "tests": Array [ + TestCaseResult { + "name": "throws error when there are additional words in first column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are additional words in second column heading", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are additional words in last column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is additional words in template after heading row", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not throw error when there is only one column", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is only one column with additional words in template after heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are no arguments for given headings", + "result": "success", + "time": 12, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings when given one row", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings over multiple rows", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws an error when called with an empty string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing $key in multiple positions", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing $key.path", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing last seen object when $key.path is invalid", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with cb function with object built from table headings and values", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "formats primitive values using .toString()", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .test.concurrent.skip", + "tests": Array [ + TestCaseResult { + "name": "throws error when there are additional words in first column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are additional words in second column heading", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "throws error when there are additional words in last column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is additional words in template after heading row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is only one column", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not throw error when there is only one column with additional words in template after heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are no arguments for given headings", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings when given one row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings over multiple rows", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws an error when called with an empty string", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing $key in multiple positions", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing $key.path", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing last seen object when $key.path is invalid", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function with object built from table headings and values", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "formats primitive values using .toString()", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .test.only", + "tests": Array [ + TestCaseResult { + "name": "throws error when there are additional words in first column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are additional words in second column heading", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are additional words in last column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is additional words in template after heading row", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not throw error when there is only one column", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is only one column with additional words in template after heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are no arguments for given headings", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings when given one row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings over multiple rows", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws an error when called with an empty string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing $key in multiple positions", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing $key.path", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing last seen object when $key.path is invalid", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function with object built from table headings and values", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "formats primitive values using .toString()", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .it", + "tests": Array [ + TestCaseResult { + "name": "throws error when there are additional words in first column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are additional words in second column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are additional words in last column heading", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not throw error when there is additional words in template after heading row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is only one column", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is only one column with additional words in template after heading", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are no arguments for given headings", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings when given one row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings over multiple rows", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws an error when called with an empty string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing $key in multiple positions", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "calls global with title containing $key.path", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing last seen object when $key.path is invalid", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with cb function with object built from table headings and values", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "formats primitive values using .toString()", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .fit", + "tests": Array [ + TestCaseResult { + "name": "throws error when there are additional words in first column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are additional words in second column heading", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are additional words in last column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is additional words in template after heading row", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not throw error when there is only one column", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is only one column with additional words in template after heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are no arguments for given headings", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings when given one row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings over multiple rows", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws an error when called with an empty string", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing $key in multiple positions", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing $key.path", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing last seen object when $key.path is invalid", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with cb function with object built from table headings and values", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "formats primitive values using .toString()", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .it.only", + "tests": Array [ + TestCaseResult { + "name": "throws error when there are additional words in first column heading", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are additional words in second column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are additional words in last column heading", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not throw error when there is additional words in template after heading row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is only one column", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is only one column with additional words in template after heading", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are no arguments for given headings", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings when given one row", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings over multiple rows", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws an error when called with an empty string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing $key in multiple positions", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing $key.path", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing last seen object when $key.path is invalid", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with cb function with object built from table headings and values", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "formats primitive values using .toString()", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .describe", + "tests": Array [ + TestCaseResult { + "name": "throws error when there are additional words in first column heading", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are additional words in second column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are additional words in last column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is additional words in template after heading row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is only one column", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is only one column with additional words in template after heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are no arguments for given headings", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings when given one row", + "result": "success", + "time": 28, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings over multiple rows", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws an error when called with an empty string", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing $key in multiple positions", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing $key.path", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing last seen object when $key.path is invalid", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with cb function with object built from table headings and values", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 17, + }, + TestCaseResult { + "name": "formats primitive values using .toString()", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "jest-each .fdescribe", + "tests": Array [ + TestCaseResult { + "name": "throws error when there are additional words in first column heading", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are additional words in second column heading", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are additional words in last column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is additional words in template after heading row", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not throw error when there is only one column", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not throw error when there is only one column with additional words in template after heading", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are no arguments for given headings", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings when given one row", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings over multiple rows", + "result": "success", + "time": 51, + }, + TestCaseResult { + "name": "throws an error when called with an empty string", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing $key in multiple positions", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing $key.path", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing last seen object when $key.path is invalid", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function with object built from table headings and values", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "formats primitive values using .toString()", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .describe.only", + "tests": Array [ + TestCaseResult { + "name": "throws error when there are additional words in first column heading", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are additional words in second column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are additional words in last column heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is additional words in template after heading row", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not throw error when there is only one column", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not throw error when there is only one column with additional words in template after heading", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are no arguments for given headings", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings when given one row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when there are fewer arguments than headings over multiple rows", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws an error when called with an empty string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing $key in multiple positions", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing $key.path", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing last seen object when $key.path is invalid", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with cb function with object built from table headings and values", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given timeout", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "formats primitive values using .toString()", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each done callback", + "tests": Array [ + TestCaseResult { + "name": "calls [ 'test' ] with done when cb function has more args than params of given test row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls [ 'test', 'only' ] with done when cb function has more args than params of given test row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls [ 'test', 'concurrent', 'only' ] with done when cb function has more args than params of given test row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls [ 'it' ] with done when cb function has more args than params of given test row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls [ 'fit' ] with done when cb function has more args than params of given test row", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls [ 'it', 'only' ] with done when cb function has more args than params of given test row", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not call [ 'describe' ] with done when test function has more args than params of given test row", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "does not call [ 'fdescribe' ] with done when test function has more args than params of given test row", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "does not call [ 'describe', 'only' ] with done when test function has more args than params of given test row", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .xtest", + "tests": Array [ + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .test.skip", + "tests": Array [ + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "jest-each .xit", + "tests": Array [ + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .it.skip", + "tests": Array [ + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .xdescribe", + "tests": Array [ + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "jest-each .describe.skip", + "tests": Array [ + TestCaseResult { + "name": "calls global with given title", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with given title when multiple tests cases exist", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls global with title containing param values when using $variable format", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-each/src/__tests__/template.test.ts", + "totalTime": 483, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "supports a single element with no props or children", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "supports a single element with non-empty string child", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a single element with empty string child", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports a single element with non-zero number child", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a single element with zero number child", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a single element with mixed children", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports props with strings", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports props with multiline strings", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports props with numbers", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports a single element with a function prop", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a single element with a object prop", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports an element with and object prop and children", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports an element with complex props and mixed children", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "escapes children properly", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports everything all together", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "sorts props in nested components", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports a single element with React elements as props", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a single element with React elements with props", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports a single element with custom React elements with props", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a single element with custom React elements with props (using displayName)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports a single element with custom React elements with props (using anonymous function)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a single element with custom React elements with a child", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports undefined element type", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a fragment with no children", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a fragment with string child", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a fragment with element child", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports suspense", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports a single element with React elements with a child", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a single element with React elements with children", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports a single element with React elements with array children", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports array of elements", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "min option", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "ReactElement plugin highlights syntax", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "ReactTestComponent plugin highlights syntax", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if theme option is null", + "result": "success", + "time": 50, + }, + TestCaseResult { + "name": "throws if theme option is not of type \\"object\\"", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if theme option has value that is undefined in ansi-styles", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "ReactElement plugin highlights syntax with color from theme option", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "ReactTestComponent plugin highlights syntax with color from theme option", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports forwardRef with a child", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports context Provider with a child", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports context Consumer with a child", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "ReactElement removes undefined props", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "ReactTestComponent removes undefined props", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "test object for subset match", + "tests": Array [ + TestCaseResult { + "name": "undefined props", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "undefined children", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "indent option", + "tests": Array [ + TestCaseResult { + "name": "default implicit: 2 spaces", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "default explicit: 2 spaces", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "non-default: 0 spaces", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "non-default: 4 spaces", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "maxDepth option", + "tests": Array [ + TestCaseResult { + "name": "elements", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "array of elements", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "React.memo without displayName", + "tests": Array [ + TestCaseResult { + "name": "renders the component name", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "React.memo with displayName", + "tests": Array [ + TestCaseResult { + "name": "renders the displayName of component before memoizing", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "renders the displayName of memoized component", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/pretty-format/src/__tests__/react.test.tsx", + "totalTime": 325, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "tests are not marked done until their parent afterAll runs", + "result": "success", + "time": 2231, + }, + TestCaseResult { + "name": "describe block cannot have hooks and no tests", + "result": "success", + "time": 697, + }, + TestCaseResult { + "name": "describe block _can_ have hooks if a child describe block has tests", + "result": "success", + "time": 650, + }, + TestCaseResult { + "name": "describe block hooks must not run if describe block is skipped", + "result": "success", + "time": 599, + }, + TestCaseResult { + "name": "child tests marked with todo should not run if describe block is skipped", + "result": "success", + "time": 677, + }, + TestCaseResult { + "name": "child tests marked with only should not run if describe block is skipped", + "result": "success", + "time": 724, + }, + ], + }, + ], + "name": "packages/jest-circus/src/__tests__/afterAll.test.ts", + "totalTime": 5755, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "prettyFormat()", + "tests": Array [ + TestCaseResult { + "name": "prints empty arguments", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints an empty array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints an array with items", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints a empty typed array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints a typed array with items", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints an array buffer", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints a nested array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints true", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints false", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints an error", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints a typed error with a message", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints a function constructor", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints an anonymous callback function", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints an anonymous assigned function", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints a named function", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints a named generator function", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "can customize function names", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints Infinity", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints -Infinity", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints an empty map", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints a map with values", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints a map with non-string keys", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints NaN", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints null", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints a positive number", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints a negative number", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints zero", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints negative zero", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints a positive bigint", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "prints a negative bigint", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints zero bigint", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints negative zero bigint", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints a date", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints an invalid date", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints an empty object", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints an object with properties", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints an object with properties and symbols", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints an object without non-enumerable properties which have string key", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints an object without non-enumerable properties which have symbol key", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints an object with sorted properties", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints regular expressions from constructors", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints regular expressions from literals", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints regular expressions {escapeRegex: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints regular expressions {escapeRegex: true}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "escapes regular expressions nested inside object", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "prints an empty set", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints a set with values", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints a string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints and escape a string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "doesn't escape string with {excapeString: false}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints a string with escapes", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints a multiline string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints a multiline string as value of object property", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints a symbol", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints undefined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints a WeakMap", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints a WeakSet", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints deeply nested objects", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints circular references", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints parallel references", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "can customize the max depth", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws on invalid options", + "result": "success", + "time": 32, + }, + TestCaseResult { + "name": "supports plugins", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports plugins that return empty string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if plugin does not return a string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws PrettyFormatPluginError if test throws an error", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws PrettyFormatPluginError if print throws an error", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws PrettyFormatPluginError if serialize throws an error", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports plugins with deeply nested arrays (#24)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should call plugins on nested basic values", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints objects with no constructor", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints identity-obj-proxy with string constructor", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls toJSON and prints its return value", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls toJSON and prints an internal representation.", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls toJSON only on functions", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not call toJSON recursively", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls toJSON on Sets", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "disables toJSON calls through options", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "prettyFormat() indent option", + "tests": Array [ + TestCaseResult { + "name": "default implicit: 2 spaces", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "default explicit: 2 spaces", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "non-default: 0 spaces", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "non-default: 4 spaces", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "prettyFormat() min", + "tests": Array [ + TestCaseResult { + "name": "prints some basic values in min mode", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints some complex values in min mode", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not allow indent !== 0 in min mode", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/pretty-format/src/__tests__/prettyFormat.test.ts", + "totalTime": 219, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Farm", + "tests": Array [ + TestCaseResult { + "name": "sends a request to one worker", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "sends four requests to four unique workers", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "handles null computeWorkerKey, sending to first worker", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "sends the same worker key to the same worker", + "result": "success", + "time": 9, + }, + TestCaseResult { + "name": "returns the result if the call worked", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws if the call failed", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "checks that once a sticked task finishes, next time is sent to that worker", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "checks that even before a sticked task finishes, next time is sent to that worker", + "result": "success", + "time": 8, + }, + TestCaseResult { + "name": "checks that locking works, and jobs are never lost", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "can receive custom messages from workers", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-worker/src/__tests__/Farm.test.js", + "totalTime": 158, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "lazily requires the file", + "result": "success", + "time": 26, + }, + TestCaseResult { + "name": "calls initialize with the correct arguments", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "returns results immediately when function is synchronous", + "result": "success", + "time": 15, + }, + TestCaseResult { + "name": "returns results when it gets resolved if function is asynchronous", + "result": "success", + "time": 22, + }, + TestCaseResult { + "name": "calls the main module if the method call is \\"default\\"", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls the main export if the method call is \\"default\\" and it is a Babel transpiled one", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "removes the message listener on END message", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls the teardown method", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws if an invalid message is detected", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws if child is not forked", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-worker/src/workers/__tests__/threadChild.test.js", + "totalTime": 120, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "queueRunner", + "tests": Array [ + TestCaseResult { + "name": "runs every function in the queue.", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "exposes \`fail\` to \`next\`.", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "passes errors to \`onException\`.", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "passes an error to \`onException\` on timeout.", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "calls \`fail\` with arguments", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls \`fail\` when done(error) is invoked", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-jasmine2/src/__tests__/queueRunner.test.ts", + "totalTime": 93, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "passes fork options down to child_process.fork, adding the defaults", + "result": "success", + "time": 67, + }, + TestCaseResult { + "name": "passes workerId to the thread and assign it to env.JEST_WORKER_ID", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "initializes the thread with the given workerPath", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "stops initializing the worker after the amount of retries is exceeded", + "result": "success", + "time": 26, + }, + TestCaseResult { + "name": "provides stdout and stderr from the threads", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "sends the task to the thread", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "resends the task to the thread after a retry", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "calls the onProcessStart method synchronously if the queue is empty", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "can send multiple messages to parent", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "creates error instances for known errors", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "throws when the thread returns a strange message", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not restart the thread if it cleanly exited", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "resolves waitForExit() after the thread cleanly exited", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "restarts the thread when the thread dies", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "terminates the thread when forceExit() is called", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-worker/src/workers/__tests__/NodeThreadsWorker.test.js", + "totalTime": 258, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "lazily requires the file", + "result": "success", + "time": 28, + }, + TestCaseResult { + "name": "calls initialize with the correct arguments", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "returns results immediately when function is synchronous", + "result": "success", + "time": 13, + }, + TestCaseResult { + "name": "returns results when it gets resolved if function is asynchronous", + "result": "success", + "time": 23, + }, + TestCaseResult { + "name": "calls the main module if the method call is \\"default\\"", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls the main export if the method call is \\"default\\" and it is a Babel transpiled one", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "removes the message listener on END message", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls the teardown method", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if an invalid message is detected", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws if child is not forked", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-worker/src/workers/__tests__/processChild.test.js", + "totalTime": 135, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "injects the serializable module map into each worker in watch mode", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "assign process.env.JEST_WORKER_ID = 1 when in runInBand mode", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-runner/src/__tests__/testRunner.test.ts", + "totalTime": 905, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "beforeEach hooks error throwing", + "tests": Array [ + TestCaseResult { + "name": "beforeEach throws an error when \\"String\\" is provided as a first argument to it", + "result": "success", + "time": 19, + }, + TestCaseResult { + "name": "beforeEach throws an error when 1 is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "beforeEach throws an error when [] is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "beforeEach throws an error when {} is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "beforeEach throws an error when Symbol(hello) is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "beforeEach throws an error when true is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "beforeEach throws an error when null is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "beforeEach throws an error when undefined is provided as a first argument to it", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "beforeAll hooks error throwing", + "tests": Array [ + TestCaseResult { + "name": "beforeAll throws an error when \\"String\\" is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "beforeAll throws an error when 1 is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "beforeAll throws an error when [] is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "beforeAll throws an error when {} is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "beforeAll throws an error when Symbol(hello) is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "beforeAll throws an error when true is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "beforeAll throws an error when null is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "beforeAll throws an error when undefined is provided as a first argument to it", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "afterEach hooks error throwing", + "tests": Array [ + TestCaseResult { + "name": "afterEach throws an error when \\"String\\" is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "afterEach throws an error when 1 is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "afterEach throws an error when [] is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "afterEach throws an error when {} is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "afterEach throws an error when Symbol(hello) is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "afterEach throws an error when true is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "afterEach throws an error when null is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "afterEach throws an error when undefined is provided as a first argument to it", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "afterAll hooks error throwing", + "tests": Array [ + TestCaseResult { + "name": "afterAll throws an error when \\"String\\" is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "afterAll throws an error when 1 is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "afterAll throws an error when [] is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "afterAll throws an error when {} is provided as a first argument to it", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "afterAll throws an error when Symbol(hello) is provided as a first argument to it", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "afterAll throws an error when true is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "afterAll throws an error when null is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "afterAll throws an error when undefined is provided as a first argument to it", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-circus/src/__tests__/hooksError.test.ts", + "totalTime": 127, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Using V8 implementation", + "tests": Array [ + TestCaseResult { + "name": "throws the error with an invalid serialization", + "result": "success", + "time": 6, + }, + ], + }, + TestGroupResult { + "name": "Using V8 implementation Object 0", + "tests": Array [ + TestCaseResult { + "name": "serializes/deserializes in memory", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "serializes/deserializes in disk", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "Using V8 implementation Object 1", + "tests": Array [ + TestCaseResult { + "name": "serializes/deserializes in memory", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "serializes/deserializes in disk", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "Using V8 implementation Object 2", + "tests": Array [ + TestCaseResult { + "name": "serializes/deserializes in memory", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "serializes/deserializes in disk", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "Using V8 implementation Object 3", + "tests": Array [ + TestCaseResult { + "name": "serializes/deserializes in memory", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "serializes/deserializes in disk", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "Using V8 implementation Object 4", + "tests": Array [ + TestCaseResult { + "name": "serializes/deserializes in memory", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "serializes/deserializes in disk", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "Using V8 implementation Object 5", + "tests": Array [ + TestCaseResult { + "name": "serializes/deserializes in memory", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "serializes/deserializes in disk", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "Using V8 implementation Object 6", + "tests": Array [ + TestCaseResult { + "name": "serializes/deserializes in memory", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "serializes/deserializes in disk", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "Using V8 implementation Object 7", + "tests": Array [ + TestCaseResult { + "name": "serializes/deserializes in memory", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "serializes/deserializes in disk", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-serializer/src/__tests__/index.test.ts", + "totalTime": 158, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "CustomConsole assert", + "tests": Array [ + TestCaseResult { + "name": "do not log when the assertion is truthy", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "do not log when the assertion is truthy and there is a message", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "log the assertion error when the assertion is falsy", + "result": "success", + "time": 33, + }, + TestCaseResult { + "name": "log the assertion error when the assertion is falsy with another message argument", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "CustomConsole count", + "tests": Array [ + TestCaseResult { + "name": "count using the default counter", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "count using the a labeled counter", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "countReset restarts default counter", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "countReset restarts custom counter", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "CustomConsole group", + "tests": Array [ + TestCaseResult { + "name": "group without label", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "group with label", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "groupEnd remove the indentation of the current group", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "groupEnd can not remove the indentation below the starting point", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "CustomConsole time", + "tests": Array [ + TestCaseResult { + "name": "should return the time between time() and timeEnd() on default timer", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should return the time between time() and timeEnd() on custom timer", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "CustomConsole dir", + "tests": Array [ + TestCaseResult { + "name": "should print the deepest value", + "result": "success", + "time": 2, + }, + ], + }, + TestGroupResult { + "name": "CustomConsole timeLog", + "tests": Array [ + TestCaseResult { + "name": "should return the time between time() and timeEnd() on default timer", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should return the time between time() and timeEnd() on custom timer", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "default timer with data", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "custom timer with data", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "CustomConsole console", + "tests": Array [ + TestCaseResult { + "name": "should be able to initialize console instance", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-console/src/__tests__/bufferedConsole.test.ts", + "totalTime": 171, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "CustomConsole log", + "tests": Array [ + TestCaseResult { + "name": "should print to stdout", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "CustomConsole error", + "tests": Array [ + TestCaseResult { + "name": "should print to stderr", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "CustomConsole warn", + "tests": Array [ + TestCaseResult { + "name": "should print to stderr", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "CustomConsole assert", + "tests": Array [ + TestCaseResult { + "name": "do not log when the assertion is truthy", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "do not log when the assertion is truthy and there is a message", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "log the assertion error when the assertion is falsy", + "result": "success", + "time": 18, + }, + TestCaseResult { + "name": "log the assertion error when the assertion is falsy with another message argument", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "CustomConsole count", + "tests": Array [ + TestCaseResult { + "name": "count using the default counter", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "count using the a labeled counter", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "countReset restarts default counter", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "countReset restarts custom counter", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "CustomConsole group", + "tests": Array [ + TestCaseResult { + "name": "group without label", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "group with label", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "groupEnd remove the indentation of the current group", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "groupEnd can not remove the indentation below the starting point", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "CustomConsole time", + "tests": Array [ + TestCaseResult { + "name": "should return the time between time() and timeEnd() on default timer", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should return the time between time() and timeEnd() on custom timer", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "CustomConsole dir", + "tests": Array [ + TestCaseResult { + "name": "should print the deepest value", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "CustomConsole timeLog", + "tests": Array [ + TestCaseResult { + "name": "should return the time between time() and timeEnd() on default timer", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should return the time between time() and timeEnd() on custom timer", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "default timer with data", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "custom timer with data", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "CustomConsole console", + "tests": Array [ + TestCaseResult { + "name": "should be able to initialize console instance", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-console/src/__tests__/CustomConsole.test.ts", + "totalTime": 115, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "DOMCollection plugin for object properties", + "tests": Array [ + TestCaseResult { + "name": "supports DOMStringMap", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports NamedNodeMap", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports config.min option", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "DOMCollection plugin for list items", + "tests": Array [ + TestCaseResult { + "name": "supports HTMLCollection for getElementsByTagName", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "supports HTMLCollection for children", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports config.maxDepth option", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports NodeList for querySelectorAll", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "supports NodeList for childNodes", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports HTMLOptionsCollection for select options", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports HTMLCollection for form elements", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/pretty-format/src/__tests__/DOMCollection.test.ts", + "totalTime": 64, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "test/it.todo error throwing", + "tests": Array [ + TestCaseResult { + "name": "todo throws error when given no arguments", + "result": "success", + "time": 35, + }, + TestCaseResult { + "name": "todo throws error when given more than one argument", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "todo throws error when given none string description", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-circus/src/__tests__/circusItTodoTestError.test.ts", + "totalTime": 81, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "sorts by file size if there is no timing information", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "sorts based on timing information", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "sorts based on failures and timing information", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "sorts based on failures, timing information and file size", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "writes the cache based on results without existing cache", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns failed tests in sorted order", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "writes the cache based on the results", + "result": "success", + "time": 13, + }, + TestCaseResult { + "name": "works with multiple contexts", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-test-sequencer/src/__tests__/test_sequencer.test.js", + "totalTime": 251, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Suite", + "tests": Array [ + TestCaseResult { + "name": "doesn't throw on addExpectationResult when there are no children", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-jasmine2/src/__tests__/Suite.test.ts", + "totalTime": 84, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "supports any(String)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports nested any(String)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports any(Function)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports nested any(Function)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports any(Array)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports nested any(Array)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports any(Object)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports nested any(Object)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports any(RegExp)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports nested any(RegExp)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports any(Symbol)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports nested any(Symbol)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports any(Function)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports nested any(Function)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports any()", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports nested any()", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports any(namedFuntction)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports nested any(namedFuntction)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "anything()", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "arrayContaining()", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "arrayNotContaining()", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "objectContaining()", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "objectNotContaining()", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "stringContaining(string)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "not.stringContaining(string)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "stringMatching(string)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "stringMatching(regexp)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "stringMatching(regexp) {escapeRegex: false}", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "stringMatching(regexp) {escapeRegex: true}", + "result": "success", + "time": 13, + }, + TestCaseResult { + "name": "stringNotMatching(string)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports multiple nested asymmetric matchers", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "min option", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "indent option", + "tests": Array [ + TestCaseResult { + "name": "default implicit: 2 spaces", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "default explicit: 2 spaces", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "non-default: 0 spaces", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "non-default: 4 spaces", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "maxDepth option", + "tests": Array [ + TestCaseResult { + "name": "matchers as leaf nodes", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "matchers as internal nodes", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/pretty-format/src/__tests__/AsymmetricMatcher.test.ts", + "totalTime": 137, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "ConvertAnsi plugin", + "tests": Array [ + TestCaseResult { + "name": "supports style.red", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports style.green", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports style.reset", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports style.bold", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports style.dim", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not support other colors", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/pretty-format/src/__tests__/ConvertAnsi.test.ts", + "totalTime": 43, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "getConsoleOutput", + "tests": Array [ + TestCaseResult { + "name": "takes noStackTrace and pass it on for assert", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "takes noStackTrace and pass it on for count", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "takes noStackTrace and pass it on for debug", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "takes noStackTrace and pass it on for dir", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "takes noStackTrace and pass it on for dirxml", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "takes noStackTrace and pass it on for error", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "takes noStackTrace and pass it on for group", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "takes noStackTrace and pass it on for groupCollapsed", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "takes noStackTrace and pass it on for info", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "takes noStackTrace and pass it on for log", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "takes noStackTrace and pass it on for time", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "takes noStackTrace and pass it on for warn", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-console/src/__tests__/getConsoleOutput.test.ts", + "totalTime": 56, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "expectationResultFactory", + "tests": Array [ + TestCaseResult { + "name": "returns the result if passed.", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "returns the result if failed.", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "returns the result if failed (with \`message\`).", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "returns the result if failed (with \`error\`).", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "returns the error name if the error message is empty", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns the result if failed (with \`error\` as a string).", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns the result if failed (with \`error.stack\` not as a string).", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-jasmine2/src/__tests__/expectationResultFactory.test.ts", + "totalTime": 70, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "array .add", + "tests": Array [ + TestCaseResult { + "name": "returns the result of adding 0 to 0", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns the result of adding 0 to 1", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns the result of adding 1 to 1", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "concurrent .add", + "tests": Array [ + TestCaseResult { + "name": "returns the result of adding 0 to 0", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns the result of adding 0 to 1", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns the result of adding 1 to 1", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "template .add", + "tests": Array [ + TestCaseResult { + "name": "returns 0 when given 0 and 0", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns 1 when given 0 and 1", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns 2 when given 1 and 1", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "throws an error when not called with the right number of arguments", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-each/src/__tests__/index.test.ts", + "totalTime": 44, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "pretty-format", + "tests": Array [ + TestCaseResult { + "name": "prints global window as constructor name alone", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "DOMElement Plugin", + "tests": Array [ + TestCaseResult { + "name": "supports a single HTML element", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "supports an HTML element with a class property", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports an HTML element with a title property", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "escapes double quote in attribute value", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports an HTML element with a single attribute", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports an HTML element with multiple attributes", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports an HTML element with attribute and text content", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "supports an element with text content", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports nested elements", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports nested elements with attributes", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports nested elements with attribute and text content", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "supports nested elements with text content", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports siblings", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "supports multiline text node in pre", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports multiline text node preceding span in pre", + "result": "success", + "time": 8, + }, + TestCaseResult { + "name": "supports multiline text node in textarea", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports empty text node", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports non-empty text node", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports comment node", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "supports fragment node", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "supports custom elements", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "supports SVG elements", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "supports indentation for array of elements", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "supports maxDepth option", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "handles \`tagName\` not being a string", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "DOMElement Plugin matches constructor name of SVG elements", + "tests": Array [ + TestCaseResult { + "name": "jsdom 9 and 10", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "jsdom 11", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/pretty-format/src/__tests__/DOMElement.test.ts", + "totalTime": 148, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "formatTestResults", + "tests": Array [ + TestCaseResult { + "name": "includes test full name", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-test-result/src/__tests__/formatTestResults.test.ts", + "totalTime": 53, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "exposes the right API using default working", + "result": "success", + "time": 85, + }, + TestCaseResult { + "name": "exposes the right API using passed worker", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "breaks if any of the forbidden methods is tried to be exposed", + "result": "success", + "time": 27, + }, + TestCaseResult { + "name": "works with minimal options", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "does not let make calls after the farm is ended", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "does not let end the farm after it is ended", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "calls doWork", + "result": "success", + "time": 9, + }, + TestCaseResult { + "name": "calls getStderr and getStdout from worker", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-worker/src/__tests__/index.test.js", + "totalTime": 230, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "beforeEach hooks error throwing", + "tests": Array [ + TestCaseResult { + "name": "beforeEach throws an error when \\"String\\" is provided as a first argument to it", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "beforeEach throws an error when 1 is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "beforeEach throws an error when [] is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "beforeEach throws an error when {} is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "beforeEach throws an error when Symbol(hello) is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "beforeEach throws an error when true is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "beforeEach throws an error when null is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "beforeEach throws an error when undefined is provided as a first argument to it", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "beforeAll hooks error throwing", + "tests": Array [ + TestCaseResult { + "name": "beforeAll throws an error when \\"String\\" is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "beforeAll throws an error when 1 is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "beforeAll throws an error when [] is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "beforeAll throws an error when {} is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "beforeAll throws an error when Symbol(hello) is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "beforeAll throws an error when true is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "beforeAll throws an error when null is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "beforeAll throws an error when undefined is provided as a first argument to it", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "afterEach hooks error throwing", + "tests": Array [ + TestCaseResult { + "name": "afterEach throws an error when \\"String\\" is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "afterEach throws an error when 1 is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "afterEach throws an error when [] is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "afterEach throws an error when {} is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "afterEach throws an error when Symbol(hello) is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "afterEach throws an error when true is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "afterEach throws an error when null is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "afterEach throws an error when undefined is provided as a first argument to it", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "afterAll hooks error throwing", + "tests": Array [ + TestCaseResult { + "name": "afterAll throws an error when \\"String\\" is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "afterAll throws an error when 1 is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "afterAll throws an error when [] is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "afterAll throws an error when {} is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "afterAll throws an error when Symbol(hello) is provided as a first argument to it", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "afterAll throws an error when true is provided as a first argument to it", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "afterAll throws an error when null is provided as a first argument to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "afterAll throws an error when undefined is provided as a first argument to it", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-jasmine2/src/__tests__/hooksError.test.ts", + "totalTime": 51, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Jasmine2Reporter", + "tests": Array [ + TestCaseResult { + "name": "reports nested suites", + "result": "success", + "time": 2, + }, + ], + }, + ], + "name": "packages/jest-jasmine2/src/__tests__/reporter.test.ts", + "totalTime": 107, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "test/it.todo error throwing", + "tests": Array [ + TestCaseResult { + "name": "it throws error when given no arguments", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "it throws error when given more than one argument", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "it throws error when given none string description", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-jasmine2/src/__tests__/todoError.test.ts", + "totalTime": 27, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "test/it error throwing", + "tests": Array [ + TestCaseResult { + "name": "it throws error with missing callback function", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "it throws an error when first argument isn't a string", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "it throws an error when callback function is not a function", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "test throws error with missing callback function", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "test throws an error when first argument isn't a string", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "test throws an error when callback function is not a function", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-jasmine2/src/__tests__/itTestError.test.ts", + "totalTime": 32, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "iterators", + "tests": Array [ + TestCaseResult { + "name": "works for arrays", + "result": "success", + "time": 10, + }, + TestCaseResult { + "name": "works for custom iterables", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works for Sets", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works for Maps", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-jasmine2/src/__tests__/iterators.test.ts", + "totalTime": 43, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "pTimeout", + "tests": Array [ + TestCaseResult { + "name": "calls \`clearTimeout\` and resolves when \`promise\` resolves.", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls \`clearTimeout\` and rejects when \`promise\` rejects.", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls \`onTimeout\` on timeout.", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-jasmine2/src/__tests__/pTimeout.test.ts", + "totalTime": 44, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "creation of a cache key", + "result": "success", + "time": 33, + }, + ], + }, + ], + "name": "packages/jest-create-cache-key-function/src/__tests__/index.test.ts", + "totalTime": 75, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "concurrent", + "tests": Array [ + TestCaseResult { + "name": "should add 1 to number", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should add 1 to number", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should add 1 to number", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-jasmine2/src/__tests__/concurrent.test.ts", + "totalTime": 24, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "global.test", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-jasmine2/src/__tests__/itToTestAlias.test.ts", + "totalTime": 23, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "ReactElement Plugin", + "tests": Array [ + TestCaseResult { + "name": "serializes forwardRef without displayName", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "serializes forwardRef with displayName", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "serializes forwardRef component with displayName", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/pretty-format/src/__tests__/ReactElement.test.ts", + "totalTime": 64, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "returns the shared tasks in FIFO ordering", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "returns the worker specific tasks in FIFO ordering", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "maintains global FIFO ordering between worker specific and shared tasks", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-worker/src/__tests__/FifoQueue.test.js", + "totalTime": 48, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "returns the tasks in order", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "returns the task with the lowest priority value if inserted in reversed order", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns the task with the lowest priority value if inserted in correct order", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "uses different queues for each worker", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "process task in the global and shared queue in order", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-worker/src/__tests__/PriorityQueue.test.js", + "totalTime": 63, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "SearchSource isTestFilePath", + "tests": Array [ + TestCaseResult { + "name": "supports ../ paths and unix separators via testRegex", + "result": "success", + "time": 804, + }, + TestCaseResult { + "name": "supports unix separators", + "result": "success", + "time": 265, + }, + TestCaseResult { + "name": "supports win32 separators", + "result": "success", + "time": 277, + }, + ], + }, + TestGroupResult { + "name": "SearchSource testPathsMatching", + "tests": Array [ + TestCaseResult { + "name": "finds tests matching a pattern via testRegex", + "result": "success", + "time": 23, + }, + TestCaseResult { + "name": "finds tests matching a pattern via testMatch", + "result": "success", + "time": 14, + }, + TestCaseResult { + "name": "finds tests matching a JS regex pattern", + "result": "success", + "time": 12, + }, + TestCaseResult { + "name": "finds tests matching a JS glob pattern", + "result": "success", + "time": 13, + }, + TestCaseResult { + "name": "finds tests matching a JS with overriding glob patterns", + "result": "success", + "time": 18, + }, + TestCaseResult { + "name": "finds tests with default file extensions using testRegex", + "result": "success", + "time": 16, + }, + TestCaseResult { + "name": "finds tests with default file extensions using testMatch", + "result": "success", + "time": 13, + }, + TestCaseResult { + "name": "finds tests with parentheses in their rootDir when using testMatch", + "result": "success", + "time": 16, + }, + TestCaseResult { + "name": "finds tests with similar but custom file extensions", + "result": "success", + "time": 13, + }, + TestCaseResult { + "name": "finds tests with totally custom foobar file extensions", + "result": "success", + "time": 38, + }, + TestCaseResult { + "name": "finds tests with many kinds of file extensions", + "result": "success", + "time": 20, + }, + TestCaseResult { + "name": "finds tests using a regex only", + "result": "success", + "time": 41, + }, + TestCaseResult { + "name": "finds tests using a glob only", + "result": "success", + "time": 24, + }, + ], + }, + TestGroupResult { + "name": "SearchSource findRelatedTests", + "tests": Array [ + TestCaseResult { + "name": "makes sure a file is related to itself", + "result": "success", + "time": 60, + }, + TestCaseResult { + "name": "finds tests that depend directly on the path", + "result": "success", + "time": 15, + }, + TestCaseResult { + "name": "excludes untested files from coverage", + "result": "success", + "time": 17, + }, + ], + }, + TestGroupResult { + "name": "SearchSource findRelatedTestsFromPattern", + "tests": Array [ + TestCaseResult { + "name": "returns empty search result for empty input", + "result": "success", + "time": 18, + }, + TestCaseResult { + "name": "returns empty search result for invalid input", + "result": "success", + "time": 14, + }, + TestCaseResult { + "name": "returns empty search result if no related tests were found", + "result": "success", + "time": 15, + }, + TestCaseResult { + "name": "finds tests for a single file", + "result": "success", + "time": 24, + }, + TestCaseResult { + "name": "finds tests for multiple files", + "result": "success", + "time": 15, + }, + TestCaseResult { + "name": "does not mistake roots folders with prefix names", + "result": "success", + "time": 29, + }, + ], + }, + TestGroupResult { + "name": "SearchSource findRelatedSourcesFromTestsInChangedFiles", + "tests": Array [ + TestCaseResult { + "name": "return empty set if no SCM", + "result": "success", + "time": 22, + }, + TestCaseResult { + "name": "return sources required by tests", + "result": "success", + "time": 17, + }, + ], + }, + ], + "name": "packages/jest-core/src/__tests__/SearchSource.test.ts", + "totalTime": 2596, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "should throw if passed two arguments", + "result": "success", + "time": 46, + }, + ], + }, + TestGroupResult { + "name": ".rejects", + "tests": Array [ + TestCaseResult { + "name": "should reject", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "should reject with toThrow", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should reject async function to toThrow", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails non-promise value \\"a\\" synchronously", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value \\"a\\"", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "fails non-promise value [1] synchronously", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails non-promise value [1]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value [Function anonymous] synchronously", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value [Function anonymous]", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "fails non-promise value {\\"a\\": 1} synchronously", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value {\\"a\\": 1}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value 4 synchronously", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails non-promise value 4", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "fails non-promise value null synchronously", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value null", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value true synchronously", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value true", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails non-promise value undefined synchronously", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value undefined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for promise that resolves", + "result": "success", + "time": 4, + }, + ], + }, + TestGroupResult { + "name": ".resolves", + "tests": Array [ + TestCaseResult { + "name": "should resolve", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails non-promise value \\"a\\" synchronously", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value \\"a\\"", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value [1] synchronously", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails non-promise value [1]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value [Function anonymous] synchronously", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails non-promise value [Function anonymous]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value {\\"a\\": 1} synchronously", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails non-promise value {\\"a\\": 1}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value 4 synchronously", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails non-promise value 4", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value null synchronously", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value null", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails non-promise value true synchronously", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value true", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails non-promise value undefined synchronously", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails non-promise value undefined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for promise that rejects", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": ".toBe()", + "tests": Array [ + TestCaseResult { + "name": "does not throw", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails for: 1 and 2", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails for: true and false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for: [Function anonymous] and [Function anonymous]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails for: {} and {}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails for: {\\"a\\": 1} and {\\"a\\": 1}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for: {\\"a\\": 1} and {\\"a\\": 5}", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "fails for: {\\"a\\": [Function a], \\"b\\": 2} and {\\"a\\": Any, \\"b\\": 2}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails for: {\\"a\\": undefined, \\"b\\": 2} and {\\"b\\": 2}", + "result": "success", + "time": 8, + }, + TestCaseResult { + "name": "fails for: 2020-02-20T00:00:00.000Z and 2020-02-20T00:00:00.000Z", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for: 2020-02-21T00:00:00.000Z and 2020-02-20T00:00:00.000Z", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails for: /received/ and /expected/", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for: Symbol(received) and Symbol(expected)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for: [Error: received] and [Error: expected]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails for: \\"abc\\" and \\"cde\\"", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails for: \\"painless JavaScript testing\\" and \\"delightful JavaScript testing\\"", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for: \\"\\" and \\"compare one-line string to empty string\\"", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails for: \\"with +trailing space\\" and \\"without trailing space\\"", + "result": "success", + "time": 8, + }, + TestCaseResult { + "name": "fails for: \\"four +4 +line +string\\" and \\"3 +line +string\\"", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for: [] and []", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails for: null and undefined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for: -0 and 0", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for: 1n and 2n", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails for: {\\"a\\": 1n} and {\\"a\\": 1n}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for 'false' with '.not'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for '1' with '.not'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for '\\"a\\"' with '.not'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for 'undefined' with '.not'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for 'null' with '.not'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for '{}' with '.not'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for '[]' with '.not'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails for '1n' with '.not'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for '1n' with '.not'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not crash on circular references", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "assertion error matcherResult property contains matcher name, expected and actual values", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": ".toStrictEqual()", + "tests": Array [ + TestCaseResult { + "name": "does not ignore keys with undefined values", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not ignore keys with undefined values inside an array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not ignore keys with undefined values deep inside an object", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "passes when comparing same type", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "matches the expected snapshot when it fails", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "displays substring diff", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "displays substring diff for multiple lines", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not pass for different types", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not simply compare constructor names", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "passes for matching sparse arrays", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not pass when sparseness of arrays do not match", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not pass when equally sparse arrays have different values", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": ".toEqual()", + "tests": Array [ + TestCaseResult { + "name": "{pass: false} expect(true).toEqual(false)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(1).toEqual(2)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(0).toEqual(-0)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(0).toEqual(5e-324)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(5e-324).toEqual(0)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(0).toEqual({})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({}).toEqual(0)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({}).toEqual({})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(\\"abc\\").toEqual({\\"0\\": \\"a\\", \\"1\\": \\"b\\", \\"2\\": \\"c\\"})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"0\\": \\"a\\", \\"1\\": \\"b\\", \\"2\\": \\"c\\"}).toEqual(\\"abc\\")", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(/abc/gsy).toEqual(/abc/g)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": 1}).toEqual({\\"a\\": 2})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": 5}).toEqual({\\"b\\": 6})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"foo\\": {\\"bar\\": 1}}).toEqual({\\"foo\\": {}})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"getterAndSetter\\": {}}).toEqual({\\"getterAndSetter\\": {\\"foo\\": \\"bar\\"}})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"frozenGetterAndSetter\\": {}}).toEqual({\\"frozenGetterAndSetter\\": {\\"foo\\": \\"bar\\"}})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"getter\\": {}}).toEqual({\\"getter\\": {\\"foo\\": \\"bar\\"}})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"frozenGetter\\": {}}).toEqual({\\"frozenGetter\\": {\\"foo\\": \\"bar\\"}})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"setter\\": undefined}).toEqual({\\"setter\\": {\\"foo\\": \\"bar\\"}})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"frozenSetter\\": undefined}).toEqual({\\"frozenSetter\\": {\\"foo\\": \\"bar\\"}})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(\\"banana\\").toEqual(\\"apple\\")", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(\\"1 234,57 $\\").toEqual(\\"1 234,57 $\\")", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(\\"type TypeName = T extends Function ? \\\\\\"function\\\\\\" : \\\\\\"object\\\\\\";\\").toEqual(\\"type TypeName = T extends Function +? \\\\\\"function\\\\\\" +: \\\\\\"object\\\\\\";\\")", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(null).toEqual(undefined)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect([1]).toEqual([2])", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect([1, 2]).toEqual([2, 1])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(Immutable.List [1]).toEqual(Immutable.List [2])", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(Immutable.List [1, 2]).toEqual(Immutable.List [2, 1])", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(Map {}).toEqual(Set {})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(Set {1, 2}).toEqual(Set {})", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "{pass: false} expect(Set {1, 2}).toEqual(Set {1, 2, 3})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(Set {[1], [2]}).toEqual(Set {[1], [2], [3]})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(Set {[1], [2]}).toEqual(Set {[1], [2], [2]})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(Set {Set {1}, Set {2}}).toEqual(Set {Set {1}, Set {3}})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(Immutable.Set [1, 2]).toEqual(Immutable.Set [])", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(Immutable.Set [1, 2]).toEqual(Immutable.Set [1, 2, 3])", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(Immutable.OrderedSet [1, 2]).toEqual(Immutable.OrderedSet [2, 1])", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(Map {1 => \\"one\\", 2 => \\"two\\"}).toEqual(Map {1 => \\"one\\"})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(Map {\\"a\\" => 0}).toEqual(Map {\\"b\\" => 0})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(Map {\\"v\\" => 1}).toEqual(Map {\\"v\\" => 2})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(Map {[\\"v\\"] => 1}).toEqual(Map {[\\"v\\"] => 2})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(Map {[1] => Map {[1] => \\"one\\"}}).toEqual(Map {[1] => Map {[1] => \\"two\\"}})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(Immutable.Map {\\"a\\": 0}).toEqual(Immutable.Map {\\"b\\": 0})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(Immutable.Map {\\"v\\": 1}).toEqual(Immutable.Map {\\"v\\": 2})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(Immutable.OrderedMap {1: \\"one\\", 2: \\"two\\"}).toEqual(Immutable.OrderedMap {2: \\"two\\", 1: \\"one\\"})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(Immutable.Map {\\"1\\": Immutable.Map {\\"2\\": {\\"a\\": 99}}}).toEqual(Immutable.Map {\\"1\\": Immutable.Map {\\"2\\": {\\"a\\": 11}}})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect([97, 98, 99]).toEqual([97, 98, 100])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": 1, \\"b\\": 2}).toEqual(ObjectContaining {\\"a\\": 2})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(false).toEqual(ObjectContaining {\\"a\\": 2})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect([1, 3]).toEqual(ArrayContaining [1, 2])", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(1).toEqual(ArrayContaining [1, 2])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(\\"abd\\").toEqual(StringContaining \\"bc\\")", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(\\"abd\\").toEqual(StringMatching /bc/i)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(undefined).toEqual(Anything)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(undefined).toEqual(Any)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(\\"Eve\\").toEqual({\\"asymmetricMatch\\": [Function asymmetricMatch]})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"target\\": {\\"nodeType\\": 1, \\"value\\": \\"a\\"}}).toEqual({\\"target\\": {\\"nodeType\\": 1, \\"value\\": \\"b\\"}})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"nodeName\\": \\"div\\", \\"nodeType\\": 1}).toEqual({\\"nodeName\\": \\"p\\", \\"nodeType\\": 1})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({Symbol(foo): 1, Symbol(bar): 2}).toEqual({Symbol(foo): Any, Symbol(bar): 1})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(1n).toEqual(2n)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(1n).toEqual(1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(true).not.toEqual(true)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(1).not.toEqual(1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(NaN).not.toEqual(NaN)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(0).not.toEqual(0)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(0).not.toEqual(0)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({}).not.toEqual({})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(\\"abc\\").not.toEqual(\\"abc\\")", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(\\"abc\\").not.toEqual(\\"abc\\")", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(\\"abc\\").not.toEqual(\\"abc\\")", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect([1]).not.toEqual([1])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect([1, 2]).not.toEqual([1, 2])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Immutable.List [1]).not.toEqual(Immutable.List [1])", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(Immutable.List [1, 2]).not.toEqual(Immutable.List [1, 2])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({}).not.toEqual({})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": 99}).not.toEqual({\\"a\\": 99})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(Set {}).not.toEqual(Set {})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Set {1, 2}).not.toEqual(Set {1, 2})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Set {1, 2}).not.toEqual(Set {2, 1})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(Set {[1], [2]}).not.toEqual(Set {[2], [1]})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Set {Set {[1]}, Set {[2]}}).not.toEqual(Set {Set {[2]}, Set {[1]}})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(Set {[1], [2], [3], [3]}).not.toEqual(Set {[3], [3], [2], [1]})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(Set {{\\"a\\": 1}, {\\"b\\": 2}}).not.toEqual(Set {{\\"b\\": 2}, {\\"a\\": 1}})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Immutable.Set []).not.toEqual(Immutable.Set [])", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "{pass: true} expect(Immutable.Set [1, 2]).not.toEqual(Immutable.Set [1, 2])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Immutable.Set [1, 2]).not.toEqual(Immutable.Set [2, 1])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Immutable.OrderedSet []).not.toEqual(Immutable.OrderedSet [])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Immutable.OrderedSet [1, 2]).not.toEqual(Immutable.OrderedSet [1, 2])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Map {}).not.toEqual(Map {})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(Map {1 => \\"one\\", 2 => \\"two\\"}).not.toEqual(Map {1 => \\"one\\", 2 => \\"two\\"})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Map {1 => \\"one\\", 2 => \\"two\\"}).not.toEqual(Map {2 => \\"two\\", 1 => \\"one\\"})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(Map {[1] => \\"one\\", [2] => \\"two\\", [3] => \\"three\\", [3] => \\"four\\"}).not.toEqual(Map {[3] => \\"three\\", [3] => \\"four\\", [2] => \\"two\\", [1] => \\"one\\"})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Map {[1] => Map {[1] => \\"one\\"}, [2] => Map {[2] => \\"two\\"}}).not.toEqual(Map {[2] => Map {[2] => \\"two\\"}, [1] => Map {[1] => \\"one\\"}})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(Map {[1] => \\"one\\", [2] => \\"two\\"}).not.toEqual(Map {[2] => \\"two\\", [1] => \\"one\\"})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(Map {{\\"a\\": 1} => \\"one\\", {\\"b\\": 2} => \\"two\\"}).not.toEqual(Map {{\\"b\\": 2} => \\"two\\", {\\"a\\": 1} => \\"one\\"})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Map {1 => [\\"one\\"], 2 => [\\"two\\"]}).not.toEqual(Map {2 => [\\"two\\"], 1 => [\\"one\\"]})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(Immutable.Map {}).not.toEqual(Immutable.Map {})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Immutable.Map {1: \\"one\\", 2: \\"two\\"}).not.toEqual(Immutable.Map {1: \\"one\\", 2: \\"two\\"})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Immutable.Map {1: \\"one\\", 2: \\"two\\"}).not.toEqual(Immutable.Map {2: \\"two\\", 1: \\"one\\"})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Immutable.OrderedMap {1: \\"one\\", 2: \\"two\\"}).not.toEqual(Immutable.OrderedMap {1: \\"one\\", 2: \\"two\\"})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(Immutable.Map {\\"1\\": Immutable.Map {\\"2\\": {\\"a\\": 99}}}).not.toEqual(Immutable.Map {\\"1\\": Immutable.Map {\\"2\\": {\\"a\\": 99}}})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect([97, 98, 99]).not.toEqual([97, 98, 99])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": 1, \\"b\\": 2}).not.toEqual(ObjectContaining {\\"a\\": 1})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect([1, 2, 3]).not.toEqual(ArrayContaining [2, 3])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(\\"abcd\\").not.toEqual(StringContaining \\"bc\\")", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(\\"abcd\\").not.toEqual(StringMatching /bc/)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(true).not.toEqual(Anything)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect([Function anonymous]).not.toEqual(Any)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": 1, \\"b\\": [Function b], \\"c\\": true}).not.toEqual({\\"a\\": 1, \\"b\\": Any, \\"c\\": Anything})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(\\"Alice\\").not.toEqual({\\"asymmetricMatch\\": [Function asymmetricMatch]})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"nodeName\\": \\"div\\", \\"nodeType\\": 1}).not.toEqual({\\"nodeName\\": \\"div\\", \\"nodeType\\": 1})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({Symbol(foo): 1, Symbol(bar): 2}).not.toEqual({Symbol(foo): Any, Symbol(bar): 2})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(1n).not.toEqual(1n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(0n).not.toEqual(0n)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect([1n]).not.toEqual([1n])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect([1n, 2]).not.toEqual([1n, 2])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Immutable.List [1n]).not.toEqual(Immutable.List [1n])", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": 99n}).not.toEqual({\\"a\\": 99n})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Set {1n, 2n}).not.toEqual(Set {1n, 2n})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "assertion error matcherResult property contains matcher name, expected and actual values", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "symbol based keys in arrays are processed correctly", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "non-enumerable members should be skipped during equal", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "non-enumerable symbolic members should be skipped during equal", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": ".toEqual() cyclic object equality", + "tests": Array [ + TestCaseResult { + "name": "properties with the same circularity are equal", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "properties with different circularity are not equal", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "are not equal if circularity is not on the same property", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": ".toBeInstanceOf()", + "tests": Array [ + TestCaseResult { + "name": "passing Map {} and [Function Map]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "passing [] and [Function Array]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "passing {} and [Function A]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "passing {} and [Function B]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "passing {} and [Function B]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "passing {} and [Function anonymous]", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "passing {} and [Function B]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "passing {} and [Function name() {}]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "failing \\"a\\" and [Function String]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "failing 1 and [Function Number]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "failing true and [Function Boolean]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "failing {} and [Function B]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "failing {} and [Function A]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "failing undefined and [Function String]", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "failing null and [Function String]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "failing /\\\\w+/ and [Function anonymous]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "failing {} and [Function RegExp]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if constructor is not a function", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": ".toBeTruthy(), .toBeFalsy()", + "tests": Array [ + TestCaseResult { + "name": "does not accept arguments", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'{}' is truthy", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'[]' is truthy", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "'true' is truthy", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "'1' is truthy", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'\\"a\\"' is truthy", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'0.5' is truthy", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'Map {}' is truthy", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'[Function anonymous]' is truthy", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'Infinity' is truthy", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'1n' is truthy", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'false' is falsy", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'null' is falsy", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'NaN' is falsy", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "'0' is falsy", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'\\"\\"' is falsy", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'undefined' is falsy", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'0n' is falsy", + "result": "success", + "time": 2, + }, + ], + }, + TestGroupResult { + "name": ".toBeNaN()", + "tests": Array [ + TestCaseResult { + "name": "{pass: true} expect(NaN).toBeNaN()", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws", + "result": "success", + "time": 2, + }, + ], + }, + TestGroupResult { + "name": ".toBeNull()", + "tests": Array [ + TestCaseResult { + "name": "fails for '{}'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails for '[]'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for 'true'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for '1'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails for '\\"a\\"'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for '0.5'", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "fails for 'Map {}'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for '[Function anonymous]'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails for 'Infinity'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails for null with .not", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "pass for null", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": ".toBeDefined(), .toBeUndefined()", + "tests": Array [ + TestCaseResult { + "name": "'{}' is defined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'[]' is defined", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'true' is defined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'1' is defined", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'\\"a\\"' is defined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'0.5' is defined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'Map {}' is defined", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'[Function anonymous]' is defined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'Infinity' is defined", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'1n' is defined", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "undefined is undefined", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": ".toBeGreaterThan(), .toBeLessThan(), .toBeGreaterThanOrEqual(), .toBeLessThanOrEqual()", + "tests": Array [ + TestCaseResult { + "name": "{pass: true} expect(1).toBeLessThan(2)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(2).toBeLessThan(1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(2).toBeGreaterThan(1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(1).toBeGreaterThan(2)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(1).toBeLessThanOrEqual(2)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(2).toBeLessThanOrEqual(1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(2).toBeGreaterThanOrEqual(1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(1).toBeGreaterThanOrEqual(2)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws: [1, 2]", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "{pass: true} expect(-Infinity).toBeLessThan(Infinity)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(Infinity).toBeLessThan(-Infinity)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Infinity).toBeGreaterThan(-Infinity)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(-Infinity).toBeGreaterThan(Infinity)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(-Infinity).toBeLessThanOrEqual(Infinity)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(Infinity).toBeLessThanOrEqual(-Infinity)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Infinity).toBeGreaterThanOrEqual(-Infinity)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(-Infinity).toBeGreaterThanOrEqual(Infinity)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws: [-Infinity, Infinity]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(5e-324).toBeLessThan(1.7976931348623157e+308)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(1.7976931348623157e+308).toBeLessThan(5e-324)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(1.7976931348623157e+308).toBeGreaterThan(5e-324)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(5e-324).toBeGreaterThan(1.7976931348623157e+308)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(5e-324).toBeLessThanOrEqual(1.7976931348623157e+308)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(1.7976931348623157e+308).toBeLessThanOrEqual(5e-324)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(1.7976931348623157e+308).toBeGreaterThanOrEqual(5e-324)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(5e-324).toBeGreaterThanOrEqual(1.7976931348623157e+308)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws: [5e-324, 1.7976931348623157e+308]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(17).toBeLessThan(34)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(34).toBeLessThan(17)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(34).toBeGreaterThan(17)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(17).toBeGreaterThan(34)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(17).toBeLessThanOrEqual(34)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(34).toBeLessThanOrEqual(17)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(34).toBeGreaterThanOrEqual(17)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(17).toBeGreaterThanOrEqual(34)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws: [17, 34]", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "{pass: true} expect(3).toBeLessThan(7)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(7).toBeLessThan(3)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(7).toBeGreaterThan(3)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(3).toBeGreaterThan(7)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(3).toBeLessThanOrEqual(7)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(7).toBeLessThanOrEqual(3)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(7).toBeGreaterThanOrEqual(3)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(3).toBeGreaterThanOrEqual(7)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws: [3, 7]", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "{pass: true} expect(9).toBeLessThan(18)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(18).toBeLessThan(9)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(18).toBeGreaterThan(9)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(9).toBeGreaterThan(18)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(9).toBeLessThanOrEqual(18)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(18).toBeLessThanOrEqual(9)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(18).toBeGreaterThanOrEqual(9)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(9).toBeGreaterThanOrEqual(18)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws: [9, 18]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(0.1).toBeLessThan(0.2)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(0.2).toBeLessThan(0.1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(0.2).toBeGreaterThan(0.1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(0.1).toBeGreaterThan(0.2)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(0.1).toBeLessThanOrEqual(0.2)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(0.2).toBeLessThanOrEqual(0.1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(0.2).toBeGreaterThanOrEqual(0.1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(0.1).toBeGreaterThanOrEqual(0.2)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws: [0.1, 0.2]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "can compare BigInt to Numbers", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(1n).toBeLessThan(2n)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(2n).toBeLessThan(1n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(2n).toBeGreaterThan(1n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(1n).toBeGreaterThan(2n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(1n).toBeLessThanOrEqual(2n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(2n).toBeLessThanOrEqual(1n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(2n).toBeGreaterThanOrEqual(1n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(1n).toBeGreaterThanOrEqual(2n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws: [1n, 2n]", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "{pass: true} expect(17n).toBeLessThan(34n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(34n).toBeLessThan(17n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(34n).toBeGreaterThan(17n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(17n).toBeGreaterThan(34n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(17n).toBeLessThanOrEqual(34n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(34n).toBeLessThanOrEqual(17n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(34n).toBeGreaterThanOrEqual(17n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(17n).toBeGreaterThanOrEqual(34n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws: [17n, 34n]", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "{pass: true} expect(-1).toBeLessThan(2n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(2n).toBeLessThan(-1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(2n).toBeGreaterThan(-1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(-1).toBeGreaterThan(2n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(-1).toBeLessThanOrEqual(2n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(2n).toBeLessThanOrEqual(-1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(2n).toBeGreaterThanOrEqual(-1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(-1).toBeGreaterThanOrEqual(2n)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws: [-1, 2n]", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "equal numbers: [1, 1]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "equal numbers: [5e-324, 5e-324]", + "result": "success", + "time": 8, + }, + TestCaseResult { + "name": "equal numbers: [1.7976931348623157e+308, 1.7976931348623157e+308]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "equal numbers: [Infinity, Infinity]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "equal numbers: [-Infinity, -Infinity]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "equal numbers: [1, 1]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "equal numbers: [9007199254740991, 9007199254740991]", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": ".toContain(), .toContainEqual()", + "tests": Array [ + TestCaseResult { + "name": "iterable", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'[1, 2, 3, 4]' contains '1'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'[\\"a\\", \\"b\\", \\"c\\", \\"d\\"]' contains '\\"a\\"'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'[undefined, null]' contains 'null'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'[undefined, null]' contains 'undefined'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'[Symbol(a)]' contains 'Symbol(a)'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'\\"abcdef\\"' contains '\\"abc\\"'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'\\"11112111\\"' contains '\\"2\\"'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'Set {\\"abc\\", \\"def\\"}' contains '\\"abc\\"'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'[0, 1]' contains '1'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'[1n, 2n, 3n, 4n]' contains '1n'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'[1, 2, 3, 3n, 4]' contains '3n'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'[1, 2, 3]' does not contain '4'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'[null, undefined]' does not contain '1'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'[{}, []]' does not contain '[]'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'[{}, []]' does not contain '{}'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'[1n, 2n, 3n]' does not contain '3'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "error cases", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'[1, 2, 3, 4]' contains a value equal to '1'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'[\\"a\\", \\"b\\", \\"c\\", \\"d\\"]' contains a value equal to '\\"a\\"'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'[undefined, null]' contains a value equal to 'null'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'[undefined, null]' contains a value equal to 'undefined'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'[Symbol(a)]' contains a value equal to 'Symbol(a)'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'[{\\"a\\": \\"b\\"}, {\\"a\\": \\"c\\"}]' contains a value equal to '{\\"a\\": \\"b\\"}'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'Set {1, 2, 3, 4}' contains a value equal to '1'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'[0, 1]' contains a value equal to '1'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'[{\\"a\\": \\"b\\"}, {\\"a\\": \\"c\\"}]' does not contain a value equal to'{\\"a\\": \\"d\\"}'", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "error cases for toContainEqual", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": ".toBeCloseTo", + "tests": Array [ + TestCaseResult { + "name": "{pass: true} expect(0).toBeCloseTo(0)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(0).toBeCloseTo(0.001)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(1.23).toBeCloseTo(1.229)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(1.23).toBeCloseTo(1.226)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(1.23).toBeCloseTo(1.225)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(1.23).toBeCloseTo(1.234)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Infinity).toBeCloseTo(Infinity)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(-Infinity).toBeCloseTo(-Infinity)", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "{pass: false} expect(0).toBeCloseTo(0.01)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(1).toBeCloseTo(1.23)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(1.23).toBeCloseTo(1.2249999)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(Infinity).toBeCloseTo(-Infinity)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(Infinity).toBeCloseTo(1.23)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(-Infinity).toBeCloseTo(-1.23)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(3.141592e-7).toBeCloseTo(3e-7, 8)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(56789).toBeCloseTo(51234, -4)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(0).toBeCloseTo(0.1, 0)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(0).toBeCloseTo(0.0001, 3)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(0).toBeCloseTo(0.000004, 5)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(2.0000002).toBeCloseTo(2, 5)", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": ".toBeCloseTo throws: Matcher error", + "tests": Array [ + TestCaseResult { + "name": "promise empty isNot false received", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "promise empty isNot true expected", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "promise rejects isNot false expected", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "promise rejects isNot true received", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "promise resolves isNot false received", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "promise resolves isNot true expected", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": ".toMatch()", + "tests": Array [ + TestCaseResult { + "name": "{pass: true} expect(foo).toMatch(foo)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Foo bar).toMatch(/^foo/i)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws: [bar, foo]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws: [bar, /foo/]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws if non String actual value passed: [1, \\"foo\\"]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if non String actual value passed: [{}, \\"foo\\"]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if non String actual value passed: [[], \\"foo\\"]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if non String actual value passed: [true, \\"foo\\"]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if non String actual value passed: [/foo/i, \\"foo\\"]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if non String actual value passed: [[Function anonymous], \\"foo\\"]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if non String actual value passed: [undefined, \\"foo\\"]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws if non String/RegExp expected value passed: [\\"foo\\", 1]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if non String/RegExp expected value passed: [\\"foo\\", {}]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if non String/RegExp expected value passed: [\\"foo\\", []]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if non String/RegExp expected value passed: [\\"foo\\", true]", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws if non String/RegExp expected value passed: [\\"foo\\", [Function anonymous]]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if non String/RegExp expected value passed: [\\"foo\\", undefined]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "escapes strings properly", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not maintain RegExp state between calls", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": ".toHaveLength", + "tests": Array [ + TestCaseResult { + "name": "{pass: true} expect([1, 2]).toHaveLength(2)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect([]).toHaveLength(0)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect([\\"a\\", \\"b\\"]).toHaveLength(2)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(\\"abc\\").toHaveLength(3)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(\\"\\").toHaveLength(0)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect([Function anonymous]).toHaveLength(0)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect([1, 2]).toHaveLength(3)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect([]).toHaveLength(1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect([\\"a\\", \\"b\\"]).toHaveLength(99)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(\\"abc\\").toHaveLength(66)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(\\"\\").toHaveLength(1)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "error cases", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": ".toHaveLength matcher error expected length", + "tests": Array [ + TestCaseResult { + "name": "not number", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "number Infinity", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "number NaN", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "number float", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "number negative integer", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": ".toHaveProperty()", + "tests": Array [ + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a.b.c.d', 1)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a,b,c,d', 1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a.b.c.d\\": 1}).toHaveProperty('a.b.c.d', 1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": {\\"b\\": [1, 2, 3]}}).toHaveProperty('a,b,1', 2)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": {\\"b\\": [1, 2, 3]}}).toHaveProperty('a,b,1', Any)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": 0}).toHaveProperty('a', 0)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": {\\"b\\": undefined}}).toHaveProperty('a.b', undefined)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": {}}).toHaveProperty('a.b', undefined)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": {\\"b\\": {\\"c\\": 5}}}).toHaveProperty('a.b', {\\"c\\": 5})", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"property\\": 1}).toHaveProperty('property', 1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({}).toHaveProperty('a', undefined)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({}).toHaveProperty('b', \\"b\\")", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({}).toHaveProperty('setter', undefined)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"val\\": true}).toHaveProperty('a', undefined)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"val\\": true}).toHaveProperty('c', \\"c\\")", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"val\\": true}).toHaveProperty('val', true)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"nodeName\\": \\"DIV\\"}).toHaveProperty('nodeType', 1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(\\"\\").toHaveProperty('length', 0)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect([Function memoized]).toHaveProperty('memo', [])", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a.b.ttt.d', 1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a.b.c.d', 2)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a.b.c.d\\": 1}).toHaveProperty('a.b.c.d', 2)", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a.b.c.d\\": 1}).toHaveProperty('a.b.c.d', 2)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"children\\": [\\"\\\\\\"That cartoon\\\\\\"\\"], \\"props\\": null, \\"type\\": \\"p\\"}).toHaveProperty('children,0', \\"\\\\\\"That cat cartoon\\\\\\"\\")", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"children\\": [\\"Roses are red. +Violets are blue. +Testing with Jest is good for you.\\"], \\"props\\": null, \\"type\\": \\"pre\\"}).toHaveProperty('children,0', \\"Roses are red, violets are blue. +Testing with Jest +Is good for you.\\")", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a,b,c,d', 2)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": {}}}}).toHaveProperty('a.b.c.d', 1)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": 1}).toHaveProperty('a.b.c.d', 5)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({}).toHaveProperty('a', \\"test\\")", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": {\\"b\\": 3}}).toHaveProperty('a.b', undefined)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(1).toHaveProperty('a.b.c', \\"test\\")", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(\\"abc\\").toHaveProperty('a.b.c', {\\"a\\": 5})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": 5}}}).toHaveProperty('a.b', {\\"c\\": 4})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({}).toHaveProperty('a', \\"a\\")", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({}).toHaveProperty('b', undefined)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a.b.c.d')", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": {\\"b\\": {\\"c\\": {\\"d\\": 1}}}}).toHaveProperty('a,b,c,d')", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a.b.c.d\\": 1}).toHaveProperty('a.b.c.d')", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": {\\"b\\": [1, 2, 3]}}).toHaveProperty('a,b,1')", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": 0}).toHaveProperty('a')", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": {\\"b\\": undefined}}).toHaveProperty('a.b')", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": {\\"b\\": {\\"c\\": {}}}}).toHaveProperty('a.b.c.d')", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": 1}).toHaveProperty('a.b.c.d')", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({}).toHaveProperty('a')", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(1).toHaveProperty('a.b.c')", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(\\"abc\\").toHaveProperty('a.b.c')", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(false).toHaveProperty('key')", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(0).toHaveProperty('key')", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(\\"\\").toHaveProperty('key')", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect(Symbol()).toHaveProperty('key')", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"key\\": 1}).toHaveProperty('not')", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{error} expect(null).toHaveProperty('a.b')", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{error} expect(undefined).toHaveProperty('a')", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{error} expect({\\"a\\": {\\"b\\": {}}}).toHaveProperty('undefined')", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{error} expect({\\"a\\": {\\"b\\": {}}}).toHaveProperty('null')", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{error} expect({\\"a\\": {\\"b\\": {}}}).toHaveProperty('1')", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{error} expect({}).toHaveProperty('')", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "toMatchObject() circular references simple circular references", + "tests": Array [ + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": \\"hello\\", \\"ref\\": [Circular]}).toMatchObject({})", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": \\"hello\\", \\"ref\\": [Circular]}).toMatchObject({\\"a\\": \\"hello\\", \\"ref\\": [Circular]})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({}).toMatchObject({\\"a\\": \\"hello\\", \\"ref\\": [Circular]})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": \\"hello\\", \\"ref\\": [Circular]}).toMatchObject({\\"a\\": \\"world\\", \\"ref\\": [Circular]})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"ref\\": \\"not a ref\\"}).toMatchObject({\\"a\\": \\"hello\\", \\"ref\\": [Circular]})", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "toMatchObject() circular references transitive circular references", + "tests": Array [ + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}}).toMatchObject({})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}}).toMatchObject({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({}).toMatchObject({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": \\"world\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}}).toMatchObject({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"nestedObj\\": {\\"parentObj\\": \\"not the parent ref\\"}}).toMatchObject({\\"a\\": \\"hello\\", \\"nestedObj\\": {\\"parentObj\\": [Circular]}})", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "toMatchObject()", + "tests": Array [ + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\"}).toMatchObject({\\"a\\": \\"b\\"})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\"}).toMatchObject({\\"a\\": \\"b\\", \\"c\\": \\"d\\"})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": \\"b\\", \\"t\\": {\\"x\\": {\\"r\\": \\"r\\"}, \\"z\\": \\"z\\"}}).toMatchObject({\\"a\\": \\"b\\", \\"t\\": {\\"z\\": \\"z\\"}})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": \\"b\\", \\"t\\": {\\"x\\": {\\"r\\": \\"r\\"}, \\"z\\": \\"z\\"}}).toMatchObject({\\"t\\": {\\"x\\": {\\"r\\": \\"r\\"}}})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": [3, 4, 5], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": [3, 4, 5]})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": [3, 4, 5, \\"v\\"], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": [3, 4, 5, \\"v\\"]})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": 1, \\"c\\": 2}).toMatchObject({\\"a\\": Any})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": {\\"x\\": \\"x\\", \\"y\\": \\"y\\"}}).toMatchObject({\\"a\\": {\\"x\\": Any}})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(Set {1, 2}).toMatchObject(Set {1, 2})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect(Set {1, 2}).toMatchObject(Set {2, 1})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect(2015-11-30T00:00:00.000Z).toMatchObject(2015-11-30T00:00:00.000Z)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": 2015-11-30T00:00:00.000Z, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": 2015-11-30T00:00:00.000Z})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": null, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": null})", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": undefined, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": undefined})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": [{\\"a\\": \\"a\\", \\"b\\": \\"b\\"}]}).toMatchObject({\\"a\\": [{\\"a\\": \\"a\\"}]})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect([1, 2]).toMatchObject([1, 2])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": undefined}).toMatchObject({\\"a\\": undefined})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect([]).toMatchObject([])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect([Error: foo]).toMatchObject([Error: foo])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect([Error: bar]).toMatchObject({\\"message\\": \\"bar\\"})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({}).toMatchObject({\\"a\\": undefined, \\"b\\": \\"b\\"})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": \\"b\\"}).toMatchObject({\\"a\\": \\"b\\"})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\", Symbol(jest): \\"jest\\"}).toMatchObject({\\"a\\": \\"b\\", Symbol(jest): \\"jest\\"})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\", Symbol(jest): \\"jest\\"}).toMatchObject({\\"a\\": \\"b\\", \\"c\\": \\"d\\", Symbol(jest): \\"jest\\"})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({}).toMatchObject({\\"a\\": undefined, \\"b\\": \\"b\\", \\"c\\": \\"c\\"})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: true} expect({}).toMatchObject({\\"d\\": 4})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: true} expect({\\"a\\": \\"b\\", \\"toString\\": [Function toString]}).toMatchObject({\\"toString\\": Any})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\"}).toMatchObject({\\"e\\": \\"b\\"})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\"}).toMatchObject({\\"a\\": \\"b!\\", \\"c\\": \\"d\\"})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": \\"a\\", \\"c\\": \\"d\\"}).toMatchObject({\\"a\\": Any})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": \\"b\\", \\"t\\": {\\"x\\": {\\"r\\": \\"r\\"}, \\"z\\": \\"z\\"}}).toMatchObject({\\"a\\": \\"b\\", \\"t\\": {\\"z\\": [3]}})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": \\"b\\", \\"t\\": {\\"x\\": {\\"r\\": \\"r\\"}, \\"z\\": \\"z\\"}}).toMatchObject({\\"t\\": {\\"l\\": {\\"r\\": \\"r\\"}}})", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": [3, 4, 5], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": [3, 4, 5, 6]})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": [3, 4, 5], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": [3, 4]})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": [3, 4, \\"v\\"], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": [\\"v\\"]})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": [3, 4, 5], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": {\\"b\\": 4}})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": [3, 4, 5], \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": {\\"b\\": Any}})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect([1, 2]).toMatchObject([1, 3])", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "{pass: false} expect([0]).toMatchObject([-0])", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(Set {1, 2}).toMatchObject(Set {2})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect(2015-11-30T00:00:00.000Z).toMatchObject(2015-10-10T00:00:00.000Z)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": 2015-11-30T00:00:00.000Z, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": 2015-10-10T00:00:00.000Z})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": null, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": \\"4\\"})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": null, \\"b\\": \\"b\\"}).toMatchObject({\\"a\\": undefined})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": undefined}).toMatchObject({\\"a\\": null})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": [{\\"a\\": \\"a\\", \\"b\\": \\"b\\"}]}).toMatchObject({\\"a\\": [{\\"a\\": \\"c\\"}]})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": 1, \\"b\\": 1, \\"c\\": 1, \\"d\\": {\\"e\\": {\\"f\\": 555}}}).toMatchObject({\\"d\\": {\\"e\\": {\\"f\\": 222}}})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({}).toMatchObject({\\"a\\": undefined})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect([1, 2, 3]).toMatchObject([2, 3, 1])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect([1, 2, 3]).toMatchObject([1, 2, 2])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect([Error: foo]).toMatchObject([Error: bar])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": \\"b\\"}).toMatchObject({\\"c\\": \\"d\\"})", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": \\"b\\", \\"c\\": \\"d\\", Symbol(jest): \\"jest\\"}).toMatchObject({\\"a\\": \\"c\\", Symbol(jest): Any})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "{pass: false} expect({\\"a\\": \\"b\\"}).toMatchObject({\\"toString\\": Any})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws expect(null).toMatchObject({})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws expect(4).toMatchObject({})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws expect(\\"44\\").toMatchObject({})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws expect(true).toMatchObject({})", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "throws expect(undefined).toMatchObject({})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws expect({}).toMatchObject(null)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws expect({}).toMatchObject(4)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws expect({}).toMatchObject(\\"some string\\")", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws expect({}).toMatchObject(true)", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "throws expect({}).toMatchObject(undefined)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not match properties up in the prototype chain", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/expect/src/__tests__/matchers.test.js", + "totalTime": 862, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "understands dependencies using jest.requireActual", + "result": "success", + "time": 1614, + }, + ], + }, + ], + "name": "e2e/__tests__/jestRequireActual.test.ts", + "totalTime": 1665, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Watch mode flows", + "tests": Array [ + TestCaseResult { + "name": "Correctly passing test path pattern", + "result": "success", + "time": 582, + }, + TestCaseResult { + "name": "Correctly passing test name pattern", + "result": "success", + "time": 73, + }, + TestCaseResult { + "name": "Runs Jest once by default and shows usage", + "result": "success", + "time": 60, + }, + TestCaseResult { + "name": "Runs Jest in a non-interactive environment not showing usage", + "result": "success", + "time": 125, + }, + TestCaseResult { + "name": "resolves relative to the package root", + "result": "success", + "time": 77, + }, + TestCaseResult { + "name": "shows prompts for WatchPlugins in alphabetical order", + "result": "success", + "time": 72, + }, + TestCaseResult { + "name": "shows update snapshot prompt (without interactive)", + "result": "success", + "time": 57, + }, + TestCaseResult { + "name": "shows update snapshot prompt (with interactive)", + "result": "success", + "time": 60, + }, + TestCaseResult { + "name": "allows WatchPlugins to hook into JestHook", + "result": "success", + "time": 69, + }, + TestCaseResult { + "name": "allows WatchPlugins to override eligible internal plugins", + "result": "success", + "time": 61, + }, + TestCaseResult { + "name": "allows WatchPlugins to be configured", + "result": "success", + "time": 70, + }, + TestCaseResult { + "name": "allows WatchPlugins to hook into file system changes", + "result": "success", + "time": 68, + }, + TestCaseResult { + "name": "makes watch plugin initialization errors look nice", + "result": "success", + "time": 104, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 114, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 72, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 174, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 63, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 66, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 65, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 68, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 64, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 65, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 65, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 65, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 62, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 60, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 70, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 61, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 64, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 63, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 71, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 76, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 66, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 78, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 57, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 68, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 52, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 65, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 58, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 62, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 73, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 69, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 61, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 65, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 65, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 70, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 66, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 65, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 110, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 84, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 69, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 78, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 87, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 93, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 82, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 131, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 248, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 77, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 64, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 86, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 72, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 74, + }, + TestCaseResult { + "name": "allows WatchPlugins to modify only white-listed global config keys", + "result": "success", + "time": 60, + }, + TestCaseResult { + "name": "triggers enter on a WatchPlugin when its key is pressed", + "result": "success", + "time": 73, + }, + TestCaseResult { + "name": "prevents Jest from handling keys when active and returns control when end is called", + "result": "success", + "time": 68, + }, + TestCaseResult { + "name": "Pressing \\"o\\" runs test in \\"only changed files\\" mode", + "result": "success", + "time": 69, + }, + TestCaseResult { + "name": "Pressing \\"a\\" runs test in \\"watch all\\" mode", + "result": "success", + "time": 62, + }, + TestCaseResult { + "name": "Pressing \\"ENTER\\" reruns the tests", + "result": "success", + "time": 108, + }, + TestCaseResult { + "name": "Pressing \\"t\\" reruns the tests in \\"test name pattern\\" mode", + "result": "success", + "time": 93, + }, + TestCaseResult { + "name": "Pressing \\"p\\" reruns the tests in \\"filename pattern\\" mode", + "result": "success", + "time": 80, + }, + TestCaseResult { + "name": "Can combine \\"p\\" and \\"t\\" filters", + "result": "success", + "time": 68, + }, + TestCaseResult { + "name": "Pressing \\"u\\" reruns the tests in \\"update snapshot\\" mode", + "result": "success", + "time": 67, + }, + TestCaseResult { + "name": "passWithNoTest should be set to true in watch mode", + "result": "success", + "time": 65, + }, + TestCaseResult { + "name": "shows the correct usage for the f key in \\"only failed tests\\" mode", + "result": "success", + "time": 62, + }, + ], + }, + TestGroupResult { + "name": "Watch mode flows when dealing with potential watch plugin key conflicts", + "tests": Array [ + TestCaseResult { + "name": "forbids WatchPlugins overriding reserved internal plugins", + "result": "success", + "time": 70, + }, + TestCaseResult { + "name": "forbids WatchPlugins overriding reserved internal plugins", + "result": "success", + "time": 58, + }, + TestCaseResult { + "name": "forbids WatchPlugins overriding reserved internal plugins", + "result": "success", + "time": 62, + }, + TestCaseResult { + "name": "allows WatchPlugins to override non-reserved internal plugins", + "result": "success", + "time": 68, + }, + TestCaseResult { + "name": "allows WatchPlugins to override non-reserved internal plugins", + "result": "success", + "time": 62, + }, + TestCaseResult { + "name": "forbids third-party WatchPlugins overriding each other", + "result": "success", + "time": 78, + }, + ], + }, + ], + "name": "packages/jest-core/src/__tests__/watch.test.js", + "totalTime": 6755, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "transitive dependencies", + "tests": Array [ + TestCaseResult { + "name": "mocks a manually mocked and mapped module", + "result": "success", + "time": 618, + }, + TestCaseResult { + "name": "unmocks transitive dependencies in node_modules by default", + "result": "success", + "time": 357, + }, + TestCaseResult { + "name": "unmocks transitive dependencies in node_modules when using unmock", + "result": "success", + "time": 360, + }, + TestCaseResult { + "name": "unmocks transitive dependencies in node_modules by default when using both patterns and unmock", + "result": "success", + "time": 415, + }, + TestCaseResult { + "name": "mocks deep dependencies when using unmock", + "result": "success", + "time": 299, + }, + TestCaseResult { + "name": "does not mock deep dependencies when using deepUnmock", + "result": "success", + "time": 258, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/runtime_require_module_or_mock_transitive_deps.test.js", + "totalTime": 2366, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Watch mode flows with changed files", + "tests": Array [ + TestCaseResult { + "name": "should correct require new files without legacy cache", + "result": "success", + "time": 1430, + }, + ], + }, + ], + "name": "packages/jest-core/src/__tests__/watchFileChanges.test.ts", + "totalTime": 1514, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "HasteMap", + "tests": Array [ + TestCaseResult { + "name": "exports constants", + "result": "success", + "time": 272, + }, + TestCaseResult { + "name": "creates valid cache file paths", + "result": "success", + "time": 9, + }, + TestCaseResult { + "name": "creates different cache file paths for different roots", + "result": "success", + "time": 9, + }, + TestCaseResult { + "name": "creates different cache file paths for different dependency extractor cache keys", + "result": "success", + "time": 14, + }, + TestCaseResult { + "name": "creates different cache file paths for different hasteImplModulePath cache keys", + "result": "success", + "time": 10, + }, + TestCaseResult { + "name": "creates different cache file paths for different projects", + "result": "success", + "time": 22, + }, + TestCaseResult { + "name": "matches files against a pattern", + "result": "success", + "time": 10, + }, + TestCaseResult { + "name": "ignores files given a pattern", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "ignores vcs directories without ignore pattern", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "ignores vcs directories with ignore pattern regex", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "warn on ignore pattern except for regex", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "builds a haste map on a fresh cache", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "does not crawl native files even if requested to do so", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "retains all files if \`retainAllFiles\` is specified", + "result": "success", + "time": 9, + }, + TestCaseResult { + "name": "warns on duplicate mock files", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "warns on duplicate module ids", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "warns on duplicate module ids only once", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "throws on duplicate module ids if \\"throwOnModuleCollision\\" is set to true", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "splits up modules by platform", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "does not access the file system on a warm cache with no changes", + "result": "success", + "time": 11, + }, + TestCaseResult { + "name": "only does minimal file system access when files change", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "correctly handles file deletions", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "correctly handles platform-specific file additions", + "result": "success", + "time": 8, + }, + TestCaseResult { + "name": "correctly handles platform-specific file deletions", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "correctly handles platform-specific file renames", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "discards the cache when configuration changes", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "ignores files that do not exist", + "result": "success", + "time": 53, + }, + TestCaseResult { + "name": "distributes work across workers", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "tries to crawl using node as a fallback", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "tries to crawl using node as a fallback when promise fails once", + "result": "success", + "time": 10, + }, + TestCaseResult { + "name": "stops crawling when both crawlers fail", + "result": "success", + "time": 5, + }, + ], + }, + TestGroupResult { + "name": "HasteMap builds a haste map on a fresh cache with SHA-1s", + "tests": Array [ + TestCaseResult { + "name": "uses watchman: false", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "uses watchman: true", + "result": "success", + "time": 15, + }, + ], + }, + TestGroupResult { + "name": "HasteMap duplicate modules", + "tests": Array [ + TestCaseResult { + "name": "recovers when a duplicate file is deleted", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "recovers with the correct type when a duplicate file is deleted", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "recovers when a duplicate module is renamed", + "result": "success", + "time": 12, + }, + ], + }, + TestGroupResult { + "name": "HasteMap file system changes processing", + "tests": Array [ + TestCaseResult { + "name": "provides a new set of hasteHS and moduleMap", + "result": "success", + "time": 41, + }, + TestCaseResult { + "name": "handles several change events at once", + "result": "success", + "time": 35, + }, + TestCaseResult { + "name": "does not emit duplicate change events", + "result": "success", + "time": 43, + }, + TestCaseResult { + "name": "emits a change even if a file in node_modules has changed", + "result": "success", + "time": 36, + }, + TestCaseResult { + "name": "correctly tracks changes to both platform-specific versions of a single module name", + "result": "success", + "time": 35, + }, + ], + }, + TestGroupResult { + "name": "HasteMap file system changes processing recovery from duplicate module IDs", + "tests": Array [ + TestCaseResult { + "name": "recovers when the oldest version of the duplicates is fixed", + "result": "success", + "time": 66, + }, + TestCaseResult { + "name": "recovers when the most recent duplicate is fixed", + "result": "success", + "time": 90, + }, + TestCaseResult { + "name": "ignore directories", + "result": "success", + "time": 37, + }, + ], + }, + ], + "name": "packages/jest-haste-map/src/__tests__/index.test.js", + "totalTime": 1145, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "code coverage for Handlebars", + "result": "success", + "time": 1830, + }, + ], + }, + ], + "name": "e2e/__tests__/coverageHandlebars.test.ts", + "totalTime": 1873, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "does not crash when expect involving a DOM node fails", + "result": "success", + "time": 1355, + }, + ], + }, + ], + "name": "e2e/__tests__/compareDomNodes.test.ts", + "totalTime": 1407, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "check is not leaking memory", + "result": "success", + "time": 1702, + }, + ], + }, + ], + "name": "e2e/__tests__/jestEnvironmentJsdom.test.ts", + "totalTime": 1744, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "resolve platform modules", + "result": "success", + "time": 1764, + }, + ], + }, + ], + "name": "e2e/__tests__/resolve.test.ts", + "totalTime": 1863, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Snapshot", + "tests": Array [ + TestCaseResult { + "name": "stores new snapshots on the first run", + "result": "success", + "time": 959, + }, + TestCaseResult { + "name": "works with escaped characters", + "result": "success", + "time": 2154, + }, + TestCaseResult { + "name": "works with escaped regex", + "result": "success", + "time": 1375, + }, + TestCaseResult { + "name": "works with template literal substitutions", + "result": "success", + "time": 1520, + }, + ], + }, + TestGroupResult { + "name": "Snapshot Validation", + "tests": Array [ + TestCaseResult { + "name": "does not save snapshots in CI mode by default", + "result": "success", + "time": 890, + }, + TestCaseResult { + "name": "works on subsequent runs without \`-u\`", + "result": "success", + "time": 1752, + }, + TestCaseResult { + "name": "deletes the snapshot if the test suite has been removed", + "result": "success", + "time": 1549, + }, + TestCaseResult { + "name": "deletes a snapshot when a test does removes all the snapshots", + "result": "success", + "time": 1766, + }, + TestCaseResult { + "name": "updates the snapshot when a test removes some snapshots", + "result": "success", + "time": 1800, + }, + ], + }, + ], + "name": "e2e/__tests__/snapshot.test.ts", + "totalTime": 13899, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "mocks modules by default when using automocking", + "result": "success", + "time": 338, + }, + TestCaseResult { + "name": "doesn't mock modules when explicitly unmocked when using automocking", + "result": "success", + "time": 100, + }, + TestCaseResult { + "name": "doesn't mock modules when explicitly unmocked via a different name", + "result": "success", + "time": 45, + }, + TestCaseResult { + "name": "doesn't mock modules when disableAutomock() has been called", + "result": "success", + "time": 90, + }, + TestCaseResult { + "name": "uses manual mock when automocking on and mock is available", + "result": "success", + "time": 29, + }, + TestCaseResult { + "name": "does not use manual mock when automocking is off and a real module is available", + "result": "success", + "time": 20, + }, + TestCaseResult { + "name": "resolves mapped module names and unmocks them by default", + "result": "success", + "time": 88, + }, + TestCaseResult { + "name": "automocking is disabled by default", + "result": "success", + "time": 21, + }, + TestCaseResult { + "name": "unmocks modules in config.unmockedModulePathPatterns for tests with automock enabled when automock is false", + "result": "success", + "time": 96, + }, + TestCaseResult { + "name": "unmocks virtual mocks after they have been mocked previously", + "result": "success", + "time": 116, + }, + ], + }, + TestGroupResult { + "name": "resetModules", + "tests": Array [ + TestCaseResult { + "name": "resets all the modules", + "result": "success", + "time": 22, + }, + ], + }, + TestGroupResult { + "name": "isolateModules", + "tests": Array [ + TestCaseResult { + "name": "keeps it's registry isolated from global one", + "result": "success", + "time": 22, + }, + TestCaseResult { + "name": "resets all modules after the block", + "result": "success", + "time": 26, + }, + TestCaseResult { + "name": "resets module after failing", + "result": "success", + "time": 48, + }, + TestCaseResult { + "name": "cannot nest isolateModules blocks", + "result": "success", + "time": 50, + }, + TestCaseResult { + "name": "can call resetModules within a isolateModules block", + "result": "success", + "time": 25, + }, + ], + }, + TestGroupResult { + "name": "isolateModules can use isolateModules from a beforeEach block", + "tests": Array [ + TestCaseResult { + "name": "can use the required module from beforeEach and re-require it", + "result": "success", + "time": 9, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/runtime_require_module_or_mock.test.js", + "totalTime": 1223, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime requireMock", + "tests": Array [ + TestCaseResult { + "name": "uses manual mocks before attempting to automock", + "result": "success", + "time": 281, + }, + TestCaseResult { + "name": "can resolve modules that are only referenced from mocks", + "result": "success", + "time": 38, + }, + TestCaseResult { + "name": "stores and re-uses manual mock exports", + "result": "success", + "time": 36, + }, + TestCaseResult { + "name": "automocks haste modules without a manual mock", + "result": "success", + "time": 77, + }, + TestCaseResult { + "name": "automocks relative-path modules without a file extension", + "result": "success", + "time": 43, + }, + TestCaseResult { + "name": "automocks relative-path modules with a file extension", + "result": "success", + "time": 36, + }, + TestCaseResult { + "name": "just falls back when loading a native module", + "result": "success", + "time": 31, + }, + TestCaseResult { + "name": "stores and re-uses automocked haste exports", + "result": "success", + "time": 31, + }, + TestCaseResult { + "name": "stores and re-uses automocked relative-path modules", + "result": "success", + "time": 102, + }, + TestCaseResult { + "name": "multiple node core modules returns correct module", + "result": "success", + "time": 74, + }, + TestCaseResult { + "name": "throws on non-existent haste modules", + "result": "success", + "time": 69, + }, + TestCaseResult { + "name": "uses manual mocks when using a custom resolver", + "result": "success", + "time": 49, + }, + TestCaseResult { + "name": "provides \`require.main\` in mock", + "result": "success", + "time": 33, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/runtime_require_mock.test.js", + "totalTime": 962, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime", + "tests": Array [ + TestCaseResult { + "name": "uses NODE_PATH to find modules", + "result": "success", + "time": 303, + }, + TestCaseResult { + "name": "uses modulePaths to find modules", + "result": "success", + "time": 231, + }, + TestCaseResult { + "name": "finds modules in NODE_PATH containing multiple paths", + "result": "success", + "time": 248, + }, + TestCaseResult { + "name": "does not find modules if NODE_PATH is relative", + "result": "success", + "time": 260, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/runtime_node_path.test.js", + "totalTime": 1088, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime require.resolve", + "tests": Array [ + TestCaseResult { + "name": "resolves a module path", + "result": "success", + "time": 292, + }, + TestCaseResult { + "name": "resolves a module path with moduleNameMapper", + "result": "success", + "time": 74, + }, + ], + }, + TestGroupResult { + "name": "Runtime require.resolve with the jest-resolve-outside-vm-option", + "tests": Array [ + TestCaseResult { + "name": "forwards to the real Node require in an internal context", + "result": "success", + "time": 87, + }, + TestCaseResult { + "name": "ignores the option in an external context", + "result": "success", + "time": 127, + }, + TestCaseResult { + "name": "does not understand a self-constructed outsideJestVmPath in an external context", + "result": "success", + "time": 87, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/runtime_require_resolve.test.ts", + "totalTime": 707, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "complains if the value is a primitive", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "does not show the GC if hidden", + "result": "success", + "time": 80, + }, + TestCaseResult { + "name": "does not hide the GC if visible", + "result": "success", + "time": 34, + }, + TestCaseResult { + "name": "correctly checks simple leaks", + "result": "success", + "time": 108, + }, + TestCaseResult { + "name": "tests different objects", + "result": "success", + "time": 445, + }, + TestCaseResult { + "name": "correctly checks more complex leaks", + "result": "success", + "time": 240, + }, + ], + }, + ], + "name": "packages/jest-leak-detector/src/__tests__/index.test.ts", + "totalTime": 986, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "async jasmine with pending during test", + "tests": Array [ + TestCaseResult { + "name": "does not work on jest-circus", + "result": "success", + "time": 18, + }, + TestCaseResult { + "name": "should be reported as a pending test", + "result": "skipped", + "time": 0, + }, + ], + }, + ], + "name": "e2e/__tests__/jasmineAsyncWithPendingDuringTest.ts", + "totalTime": 72, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "config for reporters supports \`default\`", + "result": "success", + "time": 14, + }, + TestCaseResult { + "name": ".addReporter() .removeReporter()", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "schedule tests run in parallel per default", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "schedule tests run in serial if the runner flags them", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should bail after \`n\` failures", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "should not bail if less than \`n\` failures", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should set runInBand to run in serial", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "should set runInBand to not run in serial", + "result": "success", + "time": 2, + }, + ], + }, + ], + "name": "packages/jest-core/src/__tests__/TestScheduler.test.js", + "totalTime": 520, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "expect works correctly with RegExps created inside a VM", + "result": "success", + "time": 1477, + }, + ], + }, + ], + "name": "e2e/__tests__/expectInVm.test.ts", + "totalTime": 1527, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime requireActual", + "tests": Array [ + TestCaseResult { + "name": "requires node module when manual mock exists", + "result": "success", + "time": 314, + }, + TestCaseResult { + "name": "requireActual with moduleNameMapper", + "result": "success", + "time": 51, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/runtime_require_actual.test.js", + "totalTime": 478, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime require.cache", + "tests": Array [ + TestCaseResult { + "name": "require.cache returns loaded module list as native Nodejs require does", + "result": "success", + "time": 388, + }, + TestCaseResult { + "name": "require.cache is tolerant readonly", + "result": "success", + "time": 31, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/runtime_require_cache.test.js", + "totalTime": 454, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime", + "tests": Array [ + TestCaseResult { + "name": "uses configured moduleDirectories", + "result": "success", + "time": 288, + }, + TestCaseResult { + "name": "resolves packages", + "result": "success", + "time": 47, + }, + TestCaseResult { + "name": "finds closest module from moduleDirectories", + "result": "success", + "time": 44, + }, + TestCaseResult { + "name": "only checks the configured directories", + "result": "success", + "time": 103, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/runtime_module_directories.test.js", + "totalTime": 525, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime internalModule", + "tests": Array [ + TestCaseResult { + "name": "loads modules and applies transforms", + "result": "success", + "time": 170, + }, + TestCaseResult { + "name": "loads internal modules without applying transforms", + "result": "success", + "time": 162, + }, + TestCaseResult { + "name": "loads JSON modules and applies transforms", + "result": "success", + "time": 189, + }, + TestCaseResult { + "name": "loads internal JSON modules without applying transforms", + "result": "success", + "time": 123, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/runtime_internal_module.test.js", + "totalTime": 727, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "check", + "tests": Array [ + TestCaseResult { + "name": "returns true if the arguments are valid", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "raises an exception if runInBand and maxWorkers are both specified", + "result": "success", + "time": 23, + }, + TestCaseResult { + "name": "raises an exception if onlyChanged and watchAll are both specified", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "raises an exception if onlyFailures and watchAll are both specified", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "raises an exception when lastCommit and watchAll are both specified", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "raises an exception if findRelatedTests is specified with no file paths", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "raises an exception if maxWorkers is specified with no number", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "allows maxWorkers to be a %", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "allows using \\"js\\" file for --config option", + "result": "success", + "time": 10, + }, + TestCaseResult { + "name": "allows using \\"ts\\" file for --config option", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "allows using \\"mjs\\" file for --config option", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "allows using \\"cjs\\" file for --config option", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "allows using \\"json\\" file for --config option", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "raises an exception if selectProjects is not provided any project names", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "raises an exception if config is not a valid JSON string", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "raises an exception if config is not a supported file type", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "buildArgv", + "tests": Array [ + TestCaseResult { + "name": "should return only camelcased args", + "result": "success", + "time": 14, + }, + ], + }, + ], + "name": "packages/jest-cli/src/__tests__/cli/args.test.ts", + "totalTime": 345, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime jest.spyOn", + "tests": Array [ + TestCaseResult { + "name": "calls the original function", + "result": "success", + "time": 395, + }, + ], + }, + TestGroupResult { + "name": "Runtime jest.spyOnProperty", + "tests": Array [ + TestCaseResult { + "name": "calls the original function", + "result": "success", + "time": 43, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/runtime_jest_spy_on.test.js", + "totalTime": 521, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "resolves no dependencies for non-existent path", + "result": "success", + "time": 72, + }, + TestCaseResult { + "name": "resolves dependencies for existing path", + "result": "success", + "time": 30, + }, + TestCaseResult { + "name": "includes the mocks of dependencies as dependencies", + "result": "success", + "time": 67, + }, + TestCaseResult { + "name": "resolves dependencies for scoped packages", + "result": "success", + "time": 41, + }, + TestCaseResult { + "name": "resolves no inverse dependencies for empty paths set", + "result": "success", + "time": 51, + }, + TestCaseResult { + "name": "resolves no inverse dependencies for set of non-existent paths", + "result": "success", + "time": 41, + }, + TestCaseResult { + "name": "resolves inverse dependencies for existing path", + "result": "success", + "time": 27, + }, + TestCaseResult { + "name": "resolves inverse dependencies of mock", + "result": "success", + "time": 26, + }, + TestCaseResult { + "name": "resolves inverse dependencies from available snapshot", + "result": "success", + "time": 47, + }, + TestCaseResult { + "name": "resolves dependencies correctly when dependency resolution fails", + "result": "success", + "time": 41, + }, + TestCaseResult { + "name": "resolves dependencies correctly when mock dependency resolution fails", + "result": "success", + "time": 27, + }, + ], + }, + ], + "name": "packages/jest-resolve-dependencies/src/__tests__/dependency_resolver.test.ts", + "totalTime": 666, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "should exclude jasmine from stack trace for Unix paths.", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": ".formatExecError()", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "formatStackTrace should strip node internals", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should not exclude vendor from stack trace", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "retains message in babel code frame error", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "codeframe", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "no codeframe", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "no stack", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "formatStackTrace", + "tests": Array [ + TestCaseResult { + "name": "prints code frame and stacktrace", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not print code frame when noCodeFrame = true", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not print codeframe when noStackTrace = true", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-message-util/src/__tests__/messages.test.ts", + "totalTime": 205, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "different types", + "tests": Array [ + TestCaseResult { + "name": "'1' and 'a'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'[object Object]' and 'a'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'' and '2'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'null' and 'undefined'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'() => {}' and '3'", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "no visual difference", + "tests": Array [ + TestCaseResult { + "name": "'\\"a\\"' and '\\"a\\"'", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "'{}' and '{}'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'[]' and '[]'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'[1,2]' and '[1,2]'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'11' and '11'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'null' and 'null'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'null' and 'null'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'undefined' and 'undefined'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'null' and 'null'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'undefined' and 'undefined'", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "'false' and 'false'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'{\\"a\\":1}' and '{\\"a\\":1}'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "'{\\"a\\":{\\"b\\":5}}' and '{\\"a\\":{\\"b\\":5}}'", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "Map key order should be irrelevant", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "Set value order should be irrelevant", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "oneline strings", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "numbers", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "-0 and 0", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "booleans", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "collapses big diffs to patch format", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "falls back to not call toJSON if serialization has no differences", + "tests": Array [ + TestCaseResult { + "name": "but then objects have differences", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "and then objects have no differences", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "falls back to not call toJSON if it throws", + "tests": Array [ + TestCaseResult { + "name": "and then objects have differences", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "and then objects have no differences", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "multiline strings", + "tests": Array [ + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "objects", + "tests": Array [ + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "multiline string non-snapshot", + "tests": Array [ + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "multiline string snapshot", + "tests": Array [ + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "React elements", + "tests": Array [ + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "multiline string as value of object property (non-snapshot)", + "tests": Array [ + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "multiline string as value of object property (snapshot)", + "tests": Array [ + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "indentation in JavaScript structures from less to more", + "tests": Array [ + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "indentation in JavaScript structures from more to less", + "tests": Array [ + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "color of text", + "tests": Array [ + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "indentation in React elements (non-snapshot) from less to more", + "tests": Array [ + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "indentation in React elements (non-snapshot) from more to less", + "tests": Array [ + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "indentation in React elements (snapshot) from less to more", + "tests": Array [ + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "indentation in React elements (snapshot) from more to less", + "tests": Array [ + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "outer React element (non-snapshot) from less to more", + "tests": Array [ + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "outer React element (non-snapshot) from more to less", + "tests": Array [ + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "trailing newline in multiline string not enclosed in quotes from less to more", + "tests": Array [ + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "trailing newline in multiline string not enclosed in quotes from more to less", + "tests": Array [ + TestCaseResult { + "name": "(unexpanded)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "(expanded)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "context", + "tests": Array [ + TestCaseResult { + "name": "number of lines: -1 (5 default)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "number of lines: 0", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "number of lines: 1", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "number of lines: 2", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "number of lines: 3.1 (5 default)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "number of lines: undefined (5 default)", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "diffLinesUnified edge cases", + "tests": Array [ + TestCaseResult { + "name": "a empty string b empty string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "a empty string b one line", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "a multiple lines b empty string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "a one line b multiple lines", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "diffLinesUnified2 edge cases", + "tests": Array [ + TestCaseResult { + "name": "a empty string b empty string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "a empty string b one line", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "a multiple lines b empty string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "a one line b multiple lines", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "diffLinesUnified2 edge cases lengths not equal", + "tests": Array [ + TestCaseResult { + "name": "a", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "b", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "diffStringsUnified edge cases", + "tests": Array [ + TestCaseResult { + "name": "empty both a and b", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "empty only a", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "empty only b", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "equal both non-empty", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "multiline has no common after clean up chaff", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "one-line has no common after clean up chaff", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "options 7980", + "tests": Array [ + TestCaseResult { + "name": "diff", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "diffStringsUnified", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "options change indicators", + "tests": Array [ + TestCaseResult { + "name": "diff", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "options change color", + "tests": Array [ + TestCaseResult { + "name": "diffStringsUnified", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "no diff", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "options common", + "tests": Array [ + TestCaseResult { + "name": "diff", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "no diff", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "options includeChangeCounts false", + "tests": Array [ + TestCaseResult { + "name": "diffLinesUnified", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "diffStringsUnified", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "options includeChangeCounts true padding", + "tests": Array [ + TestCaseResult { + "name": "diffLinesUnified a has 2 digits", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "diffLinesUnified b has 2 digits", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "diffStringsUnified", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "options omitAnnotationLines true", + "tests": Array [ + TestCaseResult { + "name": "diff", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "diffStringsUnified and includeChangeCounts true", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "diffStringsUnified empty strings", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "options trailingSpaceFormatter", + "tests": Array [ + TestCaseResult { + "name": "diffDefault default no color", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "diffDefault middle dot", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "diffDefault yellowish common", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "options emptyFirstOrLastLinePlaceholder default empty string", + "tests": Array [ + TestCaseResult { + "name": "diffDefault", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "diffStringsUnified", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-diff/src/__tests__/diff.test.ts", + "totalTime": 625, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Watch mode flows", + "tests": Array [ + TestCaseResult { + "name": "Pressing \\"T\\" enters pattern mode", + "result": "success", + "time": 8, + }, + ], + }, + ], + "name": "packages/jest-core/src/__tests__/watchTestNamePatternMode.test.js", + "totalTime": 246, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "toBeCalled", + "tests": Array [ + TestCaseResult { + "name": "works only on spies or jest.fn", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "passes when called", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": ".not passes when called", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails with any argument passed", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": ".not fails with any argument passed", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toHaveBeenCalled", + "tests": Array [ + TestCaseResult { + "name": "works only on spies or jest.fn", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "passes when called", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": ".not passes when called", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails with any argument passed", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": ".not fails with any argument passed", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toBeCalledTimes", + "tests": Array [ + TestCaseResult { + "name": ".not works only on spies or jest.fn", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "only accepts a number argument", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": ".not only accepts a number argument", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "passes if function called equal to expected times", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": ".not passes if function called more than expected times", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": ".not passes if function called less than expected times", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toHaveBeenCalledTimes", + "tests": Array [ + TestCaseResult { + "name": ".not works only on spies or jest.fn", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "only accepts a number argument", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": ".not only accepts a number argument", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "passes if function called equal to expected times", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": ".not passes if function called more than expected times", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": ".not passes if function called less than expected times", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "lastCalledWith", + "tests": Array [ + TestCaseResult { + "name": "works only on spies or jest.fn", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works when not called", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with no arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with arguments that don't match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with arguments that match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with trailing undefined arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with Map", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Set", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "works with Immutable.js objects", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with many arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with many arguments that don't match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "toHaveBeenLastCalledWith", + "tests": Array [ + TestCaseResult { + "name": "works only on spies or jest.fn", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works when not called", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with no arguments", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with arguments that don't match", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with arguments that match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with trailing undefined arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with Map", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Set", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Immutable.js objects", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with many arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with many arguments that don't match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "nthCalledWith", + "tests": Array [ + TestCaseResult { + "name": "works only on spies or jest.fn", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works when not called", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with no arguments", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with arguments that don't match", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with arguments that match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with trailing undefined arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with Map", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Set", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Immutable.js objects", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with three calls", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "positive throw matcher error for n that is not positive integer", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "positive throw matcher error for n that is not integer", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "negative throw matcher error for n that is not integer", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toHaveBeenNthCalledWith", + "tests": Array [ + TestCaseResult { + "name": "works only on spies or jest.fn", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works when not called", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with no arguments", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with arguments that don't match", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with arguments that match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with trailing undefined arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with Map", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Set", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Immutable.js objects", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with three calls", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "positive throw matcher error for n that is not positive integer", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "positive throw matcher error for n that is not integer", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "negative throw matcher error for n that is not integer", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toBeCalledWith", + "tests": Array [ + TestCaseResult { + "name": "works only on spies or jest.fn", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works when not called", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with no arguments", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with arguments that don't match", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with arguments that match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with trailing undefined arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with Map", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Set", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Immutable.js objects", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with many arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with many arguments that don't match", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "toHaveBeenCalledWith", + "tests": Array [ + TestCaseResult { + "name": "works only on spies or jest.fn", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works when not called", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with no arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with arguments that don't match", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with arguments that match", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with trailing undefined arguments", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Map", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Set", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Immutable.js objects", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with many arguments", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with many arguments that don't match", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "toReturn", + "tests": Array [ + TestCaseResult { + "name": ".not works only on jest.fn", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throw matcher error if received is spy", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "passes when returned", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "passes when undefined is returned", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "passes when at least one call does not throw", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": ".not passes when not returned", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": ".not passes when all calls throw", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": ".not passes when a call throws undefined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "fails with any argument passed", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": ".not fails with any argument passed", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "incomplete recursive calls are handled properly", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toHaveReturned", + "tests": Array [ + TestCaseResult { + "name": ".not works only on jest.fn", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throw matcher error if received is spy", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "passes when returned", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "passes when undefined is returned", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "passes when at least one call does not throw", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": ".not passes when not returned", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": ".not passes when all calls throw", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": ".not passes when a call throws undefined", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "fails with any argument passed", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": ".not fails with any argument passed", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "incomplete recursive calls are handled properly", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toReturnTimes", + "tests": Array [ + TestCaseResult { + "name": "throw matcher error if received is spy", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "only accepts a number argument", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": ".not only accepts a number argument", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "passes if function returned equal to expected times", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls that return undefined are counted as returns", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": ".not passes if function returned more than expected times", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": ".not passes if function called less than expected times", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "calls that throw are not counted", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls that throw undefined are not counted", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "incomplete recursive calls are handled properly", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toHaveReturnedTimes", + "tests": Array [ + TestCaseResult { + "name": "throw matcher error if received is spy", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "only accepts a number argument", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": ".not only accepts a number argument", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "passes if function returned equal to expected times", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls that return undefined are counted as returns", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": ".not passes if function returned more than expected times", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": ".not passes if function called less than expected times", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls that throw are not counted", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "calls that throw undefined are not counted", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "incomplete recursive calls are handled properly", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "lastReturnedWith", + "tests": Array [ + TestCaseResult { + "name": "works only on spies or jest.fn", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works when not called", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with no arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with argument that does not match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with argument that does match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with undefined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with Map", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Set", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Immutable.js objects directly created", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Immutable.js objects indirectly created", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "a call that throws is not considered to have returned", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "a call that throws undefined is not considered to have returned", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "lastReturnedWith lastReturnedWith", + "tests": Array [ + TestCaseResult { + "name": "works with three calls", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "incomplete recursive calls are handled properly", + "result": "success", + "time": 5, + }, + ], + }, + TestGroupResult { + "name": "toHaveLastReturnedWith", + "tests": Array [ + TestCaseResult { + "name": "works only on spies or jest.fn", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works when not called", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with no arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with argument that does not match", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with argument that does match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with undefined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with Map", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Set", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Immutable.js objects directly created", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Immutable.js objects indirectly created", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "a call that throws is not considered to have returned", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "a call that throws undefined is not considered to have returned", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toHaveLastReturnedWith lastReturnedWith", + "tests": Array [ + TestCaseResult { + "name": "works with three calls", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "incomplete recursive calls are handled properly", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "nthReturnedWith", + "tests": Array [ + TestCaseResult { + "name": "works only on spies or jest.fn", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works when not called", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with no arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with argument that does not match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with argument that does match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with undefined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with Map", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Set", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Immutable.js objects directly created", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Immutable.js objects indirectly created", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "a call that throws is not considered to have returned", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "a call that throws undefined is not considered to have returned", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "nthReturnedWith nthReturnedWith", + "tests": Array [ + TestCaseResult { + "name": "works with three calls", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should replace 1st, 2nd, 3rd with first, second, third", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "positive throw matcher error for n that is not positive integer", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should reject nth value greater than number of calls", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "positive throw matcher error for n that is not integer", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "negative throw matcher error for n that is not number", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "incomplete recursive calls are handled properly", + "result": "success", + "time": 2, + }, + ], + }, + TestGroupResult { + "name": "toHaveNthReturnedWith", + "tests": Array [ + TestCaseResult { + "name": "works only on spies or jest.fn", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works when not called", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with no arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with argument that does not match", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with argument that does match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with undefined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with Map", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Set", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Immutable.js objects directly created", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Immutable.js objects indirectly created", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "a call that throws is not considered to have returned", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "a call that throws undefined is not considered to have returned", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toHaveNthReturnedWith nthReturnedWith", + "tests": Array [ + TestCaseResult { + "name": "works with three calls", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should replace 1st, 2nd, 3rd with first, second, third", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "positive throw matcher error for n that is not positive integer", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should reject nth value greater than number of calls", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "positive throw matcher error for n that is not integer", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "negative throw matcher error for n that is not number", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "incomplete recursive calls are handled properly", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "toReturnWith", + "tests": Array [ + TestCaseResult { + "name": "works only on spies or jest.fn", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works when not called", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with no arguments", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with argument that does not match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with argument that does match", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with undefined", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Map", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with Set", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "works with Immutable.js objects directly created", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Immutable.js objects indirectly created", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "a call that throws is not considered to have returned", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "a call that throws undefined is not considered to have returned", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "toReturnWith returnedWith", + "tests": Array [ + TestCaseResult { + "name": "works with more calls than the limit", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "incomplete recursive calls are handled properly", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "toHaveReturnedWith", + "tests": Array [ + TestCaseResult { + "name": "works only on spies or jest.fn", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works when not called", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with no arguments", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with argument that does not match", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with argument that does match", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with undefined", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Map", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Set", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with Immutable.js objects directly created", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with Immutable.js objects indirectly created", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "a call that throws is not considered to have returned", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "a call that throws undefined is not considered to have returned", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "includes the custom mock name in the error message", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "toHaveReturnedWith returnedWith", + "tests": Array [ + TestCaseResult { + "name": "works with more calls than the limit", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "incomplete recursive calls are handled properly", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/expect/src/__tests__/spyMatchers.test.ts", + "totalTime": 395, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "gets hg SCM roots and dedupes them", + "result": "success", + "time": 559, + }, + TestCaseResult { + "name": "gets git SCM roots and dedupes them", + "result": "success", + "time": 416, + }, + TestCaseResult { + "name": "gets mixed git and hg SCM roots and dedupes them", + "result": "success", + "time": 467, + }, + TestCaseResult { + "name": "gets changed files for git", + "result": "success", + "time": 2298, + }, + TestCaseResult { + "name": "monitors only root paths for git", + "result": "success", + "time": 151, + }, + TestCaseResult { + "name": "does not find changes in files with no diff, for git", + "result": "success", + "time": 628, + }, + TestCaseResult { + "name": "handles a bad revision for \\"changedSince\\", for git", + "result": "success", + "time": 878, + }, + TestCaseResult { + "name": "gets changed files for hg", + "result": "failed", + "time": 2219, + }, + TestCaseResult { + "name": "monitors only root paths for hg", + "result": "success", + "time": 281, + }, + TestCaseResult { + "name": "handles a bad revision for \\"changedSince\\", for hg", + "result": "success", + "time": 949, + }, + ], + }, + ], + "name": "e2e/__tests__/jestChangedFiles.test.ts", + "totalTime": 9045, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "stringify()", + "tests": Array [ + TestCaseResult { + "name": "[]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "1", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "0", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "1.5", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "null", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "undefined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "\\"abc\\"", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "Symbol(abc)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "NaN", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "Infinity", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "-Infinity", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "/ab\\\\.c/gi", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "1n", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "0n", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "circular references", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "toJSON error", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "toJSON errors when comparing two objects", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "reduces maxDepth if stringifying very large objects", + "result": "success", + "time": 96, + }, + ], + }, + TestGroupResult { + "name": "ensureNumbers()", + "tests": Array [ + TestCaseResult { + "name": "dont throw error when variables are numbers", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when expected is not a number (backward compatibility)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when received is not a number (backward compatibility)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "ensureNumbers() with options", + "tests": Array [ + TestCaseResult { + "name": "promise empty isNot false received", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "promise empty isNot true expected", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "promise rejects isNot false expected", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "promise rejects isNot true received", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "promise resolves isNot false received", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "promise resolves isNot true expected", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "ensureNoExpected()", + "tests": Array [ + TestCaseResult { + "name": "dont throw error when undefined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws error when expected is not undefined with matcherName", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws error when expected is not undefined with matcherName and options", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "diff", + "tests": Array [ + TestCaseResult { + "name": "forwards to jest-diff", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "two booleans", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "two numbers", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "two bigints", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "pluralize()", + "tests": Array [ + TestCaseResult { + "name": "one", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "two", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "20", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "getLabelPrinter", + "tests": Array [ + TestCaseResult { + "name": "0 args", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "1 empty string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "1 non-empty string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "2 equal lengths", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "2 unequal lengths", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns incorrect padding if inconsistent arg is shorter", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if inconsistent arg is longer", + "result": "success", + "time": 26, + }, + ], + }, + TestGroupResult { + "name": "matcherHint", + "tests": Array [ + TestCaseResult { + "name": "expectedColor", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "receivedColor", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "secondArgumentColor", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-matcher-utils/src/__tests__/index.test.ts", + "totalTime": 391, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Watch mode flows", + "tests": Array [ + TestCaseResult { + "name": "Pressing \\"P\\" enters pattern mode", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "Pressing \\"c\\" clears the filters", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-core/src/__tests__/watchFilenamePatternMode.test.js", + "totalTime": 165, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime createMockFromModule", + "tests": Array [ + TestCaseResult { + "name": "does not cause side effects in the rest of the module system when generating a mock", + "result": "success", + "time": 408, + }, + TestCaseResult { + "name": "resolves mapped modules correctly", + "result": "success", + "time": 94, + }, + ], + }, + TestGroupResult { + "name": "Runtime", + "tests": Array [ + TestCaseResult { + "name": "creates mock objects in the right environment", + "result": "success", + "time": 37, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/runtime_create_mock_from_module.test.js", + "totalTime": 606, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime requireModule", + "tests": Array [ + TestCaseResult { + "name": "emulates a node stack trace during module load", + "result": "success", + "time": 398, + }, + TestCaseResult { + "name": "emulates a node stack trace during function execution", + "result": "success", + "time": 70, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/runtime_environment.test.js", + "totalTime": 497, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "watchman crawler and node crawler both include dotfiles", + "result": "success", + "time": 77, + }, + ], + }, + ], + "name": "packages/jest-haste-map/src/__tests__/includes_dotfiles.test.ts", + "totalTime": 337, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "watchman watch", + "tests": Array [ + TestCaseResult { + "name": "returns a list of all files when there are no clocks", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "updates file map and removedFiles when the clock is given", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "resets the file map and tracks removedFiles when watchman is fresh", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "properly resets the file map when only one watcher is reset", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "does not add directory filters to query when watching a ROOT", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "SHA-1 requested and available", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "SHA-1 requested and NOT available", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "source control query", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-haste-map/src/crawlers/__tests__/watchman.test.js", + "totalTime": 153, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "FakeTimers construction", + "tests": Array [ + TestCaseResult { + "name": "installs setTimeout mock", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "accepts to promisify setTimeout mock", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "installs clearTimeout mock", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "installs setInterval mock", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "installs clearInterval mock", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mocks process.nextTick if it exists on global", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mocks setImmediate if it exists on global", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mocks clearImmediate if setImmediate is on global", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers runAllTicks", + "tests": Array [ + TestCaseResult { + "name": "runs all ticks, in order", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does nothing when no ticks have been scheduled", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "only runs a scheduled callback once", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "cancels a callback even from native nextTick", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "cancels a callback even from native setImmediate", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "doesnt run a tick callback if native nextTick already did", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "doesnt run immediate if native setImmediate already did", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "native doesnt run immediate if fake already did", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "throws before allowing infinite recursion", + "result": "success", + "time": 43, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers runAllTimers", + "tests": Array [ + TestCaseResult { + "name": "runs all timers in order", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "warns when trying to advance timers while real timers are used", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "does nothing when no timers have been scheduled", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "only runs a setTimeout callback once (ever)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "runs callbacks with arguments after the interval", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "doesnt pass the callback to native setTimeout", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws before allowing infinite recursion", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "also clears ticks", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers advanceTimersByTime", + "tests": Array [ + TestCaseResult { + "name": "runs timers in order", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does nothing when no timers have been scheduled", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws before allowing infinite recursion", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers advanceTimersToNextTimer", + "tests": Array [ + TestCaseResult { + "name": "runs timers in order", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "run correct amount of steps", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "setTimeout inside setTimeout", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does nothing when no timers have been scheduled", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers reset", + "tests": Array [ + TestCaseResult { + "name": "resets all pending setTimeouts", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "resets all pending setIntervals", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "resets all pending ticks callbacks & immediates", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "resets current advanceTimersByTime time cursor", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers runOnlyPendingTimers", + "tests": Array [ + TestCaseResult { + "name": "runs all timers in order", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not run timers that were cleared in another timer", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers runWithRealTimers", + "tests": Array [ + TestCaseResult { + "name": "executes callback with native timers", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "resets mock timers after executing callback", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "resets mock timer functions even if callback throws", + "result": "success", + "time": 2, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers useRealTimers", + "tests": Array [ + TestCaseResult { + "name": "resets native timer APIs", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "resets native process.nextTick when present", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "resets native setImmediate when present", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers useFakeTimers", + "tests": Array [ + TestCaseResult { + "name": "resets mock timer APIs", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "resets mock process.nextTick when present", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "resets mock setImmediate when present", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers getTimerCount", + "tests": Array [ + TestCaseResult { + "name": "returns the correct count", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "includes immediates and ticks", + "result": "success", + "time": 10, + }, + TestCaseResult { + "name": "not includes cancelled immediates", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-fake-timers/src/__tests__/legacyFakeTimers.test.ts", + "totalTime": 302, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime jest.fn", + "tests": Array [ + TestCaseResult { + "name": "creates mock functions", + "result": "success", + "time": 330, + }, + TestCaseResult { + "name": "creates mock functions with mock implementations", + "result": "success", + "time": 31, + }, + ], + }, + TestGroupResult { + "name": "Runtime jest.isMockFunction", + "tests": Array [ + TestCaseResult { + "name": "recognizes a mocked function", + "result": "success", + "time": 35, + }, + ], + }, + TestGroupResult { + "name": "Runtime jest.clearAllMocks", + "tests": Array [ + TestCaseResult { + "name": "clears all mocks", + "result": "success", + "time": 29, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/runtime_jest_fn.js", + "totalTime": 479, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "toStrictEqual", + "tests": Array [ + TestCaseResult { + "name": "should be reflexive", + "result": "success", + "time": 44, + }, + TestCaseResult { + "name": "should be symmetric", + "result": "success", + "time": 92, + }, + ], + }, + TestGroupResult { + "name": "toStrictEqual on node >=9", + "tests": Array [ + TestCaseResult { + "name": "should be equivalent to Node deepStrictEqual", + "result": "success", + "time": 113, + }, + ], + }, + ], + "name": "packages/expect/src/__tests__/matchers-toStrictEqual.property.test.ts", + "totalTime": 394, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "should be reflexive", + "result": "success", + "time": 45, + }, + TestCaseResult { + "name": "should find the same number of common items when switching the inputs", + "result": "success", + "time": 29, + }, + TestCaseResult { + "name": "should have at most the length of its inputs", + "result": "success", + "time": 20, + }, + TestCaseResult { + "name": "should have at most the same number of each character as its inputs", + "result": "success", + "time": 17, + }, + TestCaseResult { + "name": "should be a subsequence of its inputs", + "result": "success", + "time": 22, + }, + TestCaseResult { + "name": "should be no-op when passing common items", + "result": "success", + "time": 30, + }, + TestCaseResult { + "name": "should find the exact common items when one array is subarray of the other", + "result": "success", + "time": 22, + }, + ], + }, + ], + "name": "packages/diff-sequences/src/__tests__/index.property.test.ts", + "totalTime": 357, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "FakeTimers construction", + "tests": Array [ + TestCaseResult { + "name": "installs setTimeout mock", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "installs clearTimeout mock", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "installs setInterval mock", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "installs clearInterval mock", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "mocks process.nextTick if it exists on global", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "mocks setImmediate if it exists on global", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "mocks clearImmediate if setImmediate is on global", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers runAllTicks", + "tests": Array [ + TestCaseResult { + "name": "runs all ticks, in order", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does nothing when no ticks have been scheduled", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "only runs a scheduled callback once", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws before allowing infinite recursion", + "result": "success", + "time": 25, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers runAllTimers", + "tests": Array [ + TestCaseResult { + "name": "runs all timers in order", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "warns when trying to advance timers while real timers are used", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "does nothing when no timers have been scheduled", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "only runs a setTimeout callback once (ever)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "runs callbacks with arguments after the interval", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "doesn't pass the callback to native setTimeout", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws before allowing infinite recursion", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "also clears ticks", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers advanceTimersByTime", + "tests": Array [ + TestCaseResult { + "name": "runs timers in order", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does nothing when no timers have been scheduled", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers advanceTimersToNextTimer", + "tests": Array [ + TestCaseResult { + "name": "runs timers in order", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "run correct amount of steps", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "setTimeout inside setTimeout", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does nothing when no timers have been scheduled", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers reset", + "tests": Array [ + TestCaseResult { + "name": "resets all pending setTimeouts", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "resets all pending setIntervals", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "resets all pending ticks callbacks", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "resets current advanceTimersByTime time cursor", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers runOnlyPendingTimers", + "tests": Array [ + TestCaseResult { + "name": "runs all timers in order", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not run timers that were cleared in another timer", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers useRealTimers", + "tests": Array [ + TestCaseResult { + "name": "resets native timer APIs", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "resets native process.nextTick when present", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "resets native setImmediate when present", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers useFakeTimers", + "tests": Array [ + TestCaseResult { + "name": "resets mock timer APIs", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "resets mock process.nextTick when present", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "resets mock setImmediate when present", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "FakeTimers getTimerCount", + "tests": Array [ + TestCaseResult { + "name": "returns the correct count", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "includes immediates and ticks", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "not includes cancelled immediates", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-fake-timers/src/__tests__/modernFakeTimers.test.ts", + "totalTime": 317, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "toContain", + "tests": Array [ + TestCaseResult { + "name": "should always find the value when inside the array", + "result": "success", + "time": 122, + }, + TestCaseResult { + "name": "should not find the value if it has been cloned into the array", + "result": "success", + "time": 56, + }, + ], + }, + ], + "name": "packages/expect/src/__tests__/matchers-toContain.property.test.ts", + "totalTime": 236, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime wrapCodeInModuleWrapper", + "tests": Array [ + TestCaseResult { + "name": "generates the correct args for the module wrapper", + "result": "success", + "time": 194, + }, + TestCaseResult { + "name": "injects \\"extra globals\\"", + "result": "success", + "time": 43, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/runtime_wrap.js", + "totalTime": 263, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "toContainEqual", + "tests": Array [ + TestCaseResult { + "name": "should always find the value when inside the array", + "result": "success", + "time": 91, + }, + TestCaseResult { + "name": "should always find the value when cloned inside the array", + "result": "success", + "time": 52, + }, + ], + }, + ], + "name": "packages/expect/src/__tests__/matchers-toContainEqual.property.test.ts", + "totalTime": 287, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "invalid arg length", + "tests": Array [ + TestCaseResult { + "name": "is not a number", + "result": "success", + "time": 40, + }, + TestCaseResult { + "name": "Infinity is not a safe integer", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "Not a Number is not a safe integer", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "MAX_SAFE_INTEGER + 1 is not a safe integer", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "MIN_SAFE_INTEGER - 1 is not a safe integer", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "is a negative integer", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "invalid arg callback", + "tests": Array [ + TestCaseResult { + "name": "null is not a function", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "undefined is not a function", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "input callback encapsulates comparison zero and negative zero", + "tests": Array [ + TestCaseResult { + "name": "are not common according to Object.is method", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "are common according to === operator", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "input callback encapsulates comparison Not a Number", + "tests": Array [ + TestCaseResult { + "name": "is common according to Object.is method", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "is not common according to === operator", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "input callback encapsulates sequences", + "tests": Array [ + TestCaseResult { + "name": "arrays of strings", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "string and array of strings", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "strings", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "no common items negative zero is equivalent to zero for length", + "tests": Array [ + TestCaseResult { + "name": "of a", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "of b", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "of a and b", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "no common items", + "tests": Array [ + TestCaseResult { + "name": "a empty and b empty", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "a empty and b non-empty", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "a non-empty and b empty", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "no common items a non-empty and b non-empty", + "tests": Array [ + TestCaseResult { + "name": "baDeltaLength 0 even", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "baDeltaLength 1 odd", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "baDeltaLength 2 even", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "baDeltaLength 7 odd", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "only common items", + "tests": Array [ + TestCaseResult { + "name": "length 1", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "length 2", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "all common items outside", + "tests": Array [ + TestCaseResult { + "name": "preceding changes", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "following change", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "preceding and following changes in one sequence", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "some common items inside and outside", + "tests": Array [ + TestCaseResult { + "name": "preceding changes adjacent to common in both sequences", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "following changes adjacent to common in both sequences", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "all common items inside non-recursive", + "tests": Array [ + TestCaseResult { + "name": "move from start to end relative to change", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "move from start to end relative to common", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "move from start to end relative to change and common", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "reverse relative to change", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "preceding middle", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "following middle", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "all common items inside recursive", + "tests": Array [ + TestCaseResult { + "name": "prev reverse at depth 1 and preceding at depth 2", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "last forward at depth 1 and following at depth 2", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "preceding at depth 2 and both at depth 3 of following", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "interleaved single change", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "interleaved double changes", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "optimization decreases iMaxF", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "optimization decreases iMaxR", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "common substrings", + "tests": Array [ + TestCaseResult { + "name": "progress", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "regression", + "result": "success", + "time": 12, + }, + TestCaseResult { + "name": "wrapping", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/diff-sequences/src/__tests__/index.test.ts", + "totalTime": 195, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": ".getType()", + "tests": Array [ + TestCaseResult { + "name": "null", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "undefined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "object", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "number", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "string", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "function", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "boolean", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "symbol", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "regexp", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "map", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "set", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "date", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "bigint", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-get-type/src/__tests__/getType.test.ts", + "totalTime": 45, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "init project with package.json and no jest config all questions answered with answer: \\"No\\"", + "tests": Array [ + TestCaseResult { + "name": "should return the default configuration (an empty config)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should generate empty config with mjs extension", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "init project with package.json and no jest config some questions answered with answer: \\"Yes\\"", + "tests": Array [ + TestCaseResult { + "name": "should create configuration for {clearMocks: true}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should create configuration for {coverage: true}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should create configuration for {coverageProvider: \\"babel\\"}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should create configuration for {coverageProvider: \\"v8\\"}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should create configuration for {environment: \\"jsdom\\"}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should create configuration for {environment: \\"node\\"}", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should create package.json with configured test command when {scripts: true}", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "init no package json", + "tests": Array [ + TestCaseResult { + "name": "should throw an error if there is no package.json file", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "init has-jest-config-file-js ask the user whether to override config or not", + "tests": Array [ + TestCaseResult { + "name": "user answered with \\"Yes\\"", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "user answered with \\"No\\"", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "init has-jest-config-file-ts ask the user whether to override config or not", + "tests": Array [ + TestCaseResult { + "name": "user answered with \\"Yes\\"", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "user answered with \\"No\\"", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "init has-jest-config-file-mjs ask the user whether to override config or not", + "tests": Array [ + TestCaseResult { + "name": "user answered with \\"Yes\\"", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "user answered with \\"No\\"", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "init has-jest-config-file-cjs ask the user whether to override config or not", + "tests": Array [ + TestCaseResult { + "name": "user answered with \\"Yes\\"", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "user answered with \\"No\\"", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "init has-jest-config-file-json ask the user whether to override config or not", + "tests": Array [ + TestCaseResult { + "name": "user answered with \\"Yes\\"", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "user answered with \\"No\\"", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "init project using jest.config.ts ask the user whether he wants to use Typescript or not", + "tests": Array [ + TestCaseResult { + "name": "user answered with \\"Yes\\"", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "user answered with \\"No\\"", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "init has jest config in package.json", + "tests": Array [ + TestCaseResult { + "name": "should ask the user whether to override config or not", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "init already has \\"jest\\" in packageJson.scripts.test", + "tests": Array [ + TestCaseResult { + "name": "should not ask \\"test script question\\"", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-cli/src/init/__tests__/init.test.js", + "totalTime": 119, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime requireModule with no extension", + "tests": Array [ + TestCaseResult { + "name": "throws error pointing out file with extension", + "result": "success", + "time": 204, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/runtime_require_module_no_ext.test.js", + "totalTime": 261, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "returns the same value for primitive or function values", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not execute getters/setters, but copies them", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "copies symbols", + "result": "success", + "time": 10, + }, + TestCaseResult { + "name": "copies arrays as array objects", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "handles cyclic dependencies", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "uses the blacklist to avoid copying properties on the first level", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not keep the prototype by default when top level is object", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not keep the prototype by default when top level is array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not keep the prototype of arrays when keepPrototype = false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "keeps the prototype of arrays when keepPrototype = true", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "does not keep the prototype for objects when keepPrototype = false", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "keeps the prototype for objects when keepPrototype = true", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-util/src/__tests__/deepCyclicCopy.test.ts", + "totalTime": 86, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works with jest.config.js", + "result": "success", + "time": 94, + }, + ], + }, + ], + "name": "e2e/__tests__/version.test.ts", + "totalTime": 138, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "creates a process object that looks like the original one", + "result": "success", + "time": 32, + }, + TestCaseResult { + "name": "fakes require(\\"process\\") so it is equal to \\"global.process\\"", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "checks that process.env works as expected on Linux platforms", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "checks that process.env works as expected in Windows platforms", + "result": "success", + "time": 2, + }, + ], + }, + ], + "name": "packages/jest-util/src/__tests__/createProcessObject.test.ts", + "totalTime": 81, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "instruments files", + "result": "success", + "time": 239, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/instrumentation.test.ts", + "totalTime": 275, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "runJest", + "tests": Array [ + TestCaseResult { + "name": "when watch is set then exit process", + "result": "success", + "time": 18, + }, + TestCaseResult { + "name": "when watch is set then an error message is printed", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-core/src/__tests__/runJest.test.js", + "totalTime": 261, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Replaceable constructor", + "tests": Array [ + TestCaseResult { + "name": "init with object", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "init with array", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "init with Map", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "init with other type should throw error", + "result": "success", + "time": 16, + }, + ], + }, + TestGroupResult { + "name": "Replaceable get", + "tests": Array [ + TestCaseResult { + "name": "get object item", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "get array item", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "get Map item", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "Replaceable set", + "tests": Array [ + TestCaseResult { + "name": "set object item", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "set array item", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "set Map item", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "Replaceable forEach", + "tests": Array [ + TestCaseResult { + "name": "object forEach", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "array forEach", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "map forEach", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "forEach should ignore nonenumerable property", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "Replaceable isReplaceable", + "tests": Array [ + TestCaseResult { + "name": "should return true if two object types equal and support", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should return false if two object types not equal", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should return false if object types not support", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-matcher-utils/src/__tests__/Replaceable.test.ts", + "totalTime": 111, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "defaults to milliseconds", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "formats seconds properly", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "formats milliseconds properly", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "formats microseconds properly", + "result": "success", + "time": 30, + }, + TestCaseResult { + "name": "formats nanoseconds properly", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "interprets lower than lowest powers as nanoseconds", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "interprets higher than highest powers as seconds", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "interprets non-multiple-of-3 powers as next higher prefix", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "formats the quantity properly when pad length is lower", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "formats the quantity properly when pad length is equal", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "left pads the quantity properly when pad length is higher", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-util/src/__tests__/formatTime.test.ts", + "totalTime": 82, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Jest Worker Process Integration", + "tests": Array [ + TestCaseResult { + "name": "calls a single method from the worker", + "result": "success", + "time": 25, + }, + TestCaseResult { + "name": "distributes sequential calls across child processes", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "schedules the task on the first available child processes if the scheduling policy is in-order", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "schedules the task on the first available child processes", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "distributes concurrent calls across child processes", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "sticks parallel calls to children", + "result": "success", + "time": 15, + }, + ], + }, + ], + "name": "packages/jest-worker/src/__tests__/thread-integration.test.js", + "totalTime": 114, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "worker", + "tests": Array [ + TestCaseResult { + "name": "parses JavaScript files and extracts module information", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "accepts a custom dependency extractor", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "delegates to hasteImplModulePath for getting the id", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "parses package.json files as haste packages", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "returns an error when a file cannot be accessed", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "simply computes SHA-1s when requested (works well with binary data)", + "result": "success", + "time": 12, + }, + TestCaseResult { + "name": "avoids computing dependencies if not requested and Haste does not need it", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-haste-map/src/__tests__/worker.test.js", + "totalTime": 100, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "printDiffOrStringify", + "tests": Array [ + TestCaseResult { + "name": "expected is empty and received is single line", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "expected is multi line and received is empty", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "expected and received are single line with multiple changes", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "expected and received are multi line with trailing spaces", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "has no common after clean up chaff multiline", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "has no common after clean up chaff one-line", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "object contain readonly symbol key object", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "printDiffOrStringify MAX_DIFF_STRING_LENGTH", + "tests": Array [ + TestCaseResult { + "name": "both are less", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "expected is more", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "received is more", + "result": "success", + "time": 8, + }, + ], + }, + TestGroupResult { + "name": "printDiffOrStringify asymmetricMatcher", + "tests": Array [ + TestCaseResult { + "name": "minimal test", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "jest asymmetricMatcher", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "custom asymmetricMatcher", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "nested object", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "object in array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "map", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "circular object", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "transitive circular", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "circular array", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "circular map", + "result": "success", + "time": 5, + }, + ], + }, + ], + "name": "packages/jest-matcher-utils/src/__tests__/printDiffOrStringify.test.ts", + "totalTime": 114, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "getPath()", + "tests": Array [ + TestCaseResult { + "name": "property exists", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "property doesnt exist", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "property exist but undefined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "property is a getter on class instance", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "property is inherited", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "path breaks", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "empty object at the end", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "getObjectSubset", + "tests": Array [ + TestCaseResult { + "name": "expect(getObjectSubset({\\"a\\": \\"b\\", \\"c\\": \\"d\\"}, {\\"a\\": \\"d\\"})).toEqual({\\"a\\": \\"b\\"})", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "expect(getObjectSubset({\\"a\\": [1, 2], \\"b\\": \\"b\\"}, {\\"a\\": [3, 4]})).toEqual({\\"a\\": [1, 2]})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "expect(getObjectSubset([{\\"a\\": \\"b\\", \\"c\\": \\"d\\"}], [{\\"a\\": \\"z\\"}])).toEqual([{\\"a\\": \\"b\\"}])", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "expect(getObjectSubset([1, 2], [1, 2, 3])).toEqual([1, 2])", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "expect(getObjectSubset({\\"a\\": [1]}, {\\"a\\": [1, 2]})).toEqual({\\"a\\": [1]})", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "expect(getObjectSubset(2015-11-30T00:00:00.000Z, 2016-12-30T00:00:00.000Z)).toEqual(2015-11-30T00:00:00.000Z)", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "getObjectSubset returns the object instance if the subset has no extra properties", + "tests": Array [ + TestCaseResult { + "name": "Date", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "getObjectSubset returns the subset instance if its property values are equal", + "tests": Array [ + TestCaseResult { + "name": "Object", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "getObjectSubset returns the subset instance if its property values are equal Uint8Array", + "tests": Array [ + TestCaseResult { + "name": "expected", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "received", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "getObjectSubset calculating subsets of objects with circular references", + "tests": Array [ + TestCaseResult { + "name": "simple circular references", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "transitive circular references", + "result": "success", + "time": 7, + }, + ], + }, + TestGroupResult { + "name": "emptyObject()", + "tests": Array [ + TestCaseResult { + "name": "matches an empty object", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not match an object with keys", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "does not match a non-object", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "subsetEquality()", + "tests": Array [ + TestCaseResult { + "name": "matching object returns true", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "object without keys is undefined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "objects to not match", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "null does not return errors", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "undefined does not return errors", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "subsetEquality() matching subsets with circular references", + "tests": Array [ + TestCaseResult { + "name": "simple circular references", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "referenced object on same level should not regarded as circular reference", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "transitive circular references", + "result": "success", + "time": 9, + }, + ], + }, + TestGroupResult { + "name": "iterableEquality", + "tests": Array [ + TestCaseResult { + "name": "returns true when given circular iterators", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns true when given circular Set", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns true when given nested Sets", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "returns false when given inequal set within a set", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns false when given inequal map within a set", + "result": "success", + "time": 5, + }, + TestCaseResult { + "name": "returns false when given inequal set within a map", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns true when given circular Set shape", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns true when given circular key in Map", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "returns true when given nested Maps", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns true when given circular key and value in Map", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns true when given circular value in Map", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/expect/src/__tests__/utils.test.ts", + "totalTime": 147, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "returns the same value for primitive or function values", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "convert accessor descriptor into value descriptor", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "shuold not skips non-enumerables", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "copies symbols", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "copies arrays as array objects", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "handles cyclic dependencies", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "Copy Map", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "Copy cyclic Map", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "return same value for built-in object type except array, map and object", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should copy object symbol key property", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should set writable, configurable to true", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-matcher-utils/src/__tests__/deepCyclicCopyReplaceable.test.ts", + "totalTime": 49, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "isError", + "tests": Array [ + TestCaseResult { + "name": "should not assume objects are errors", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should detect simple error instances", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should detect errors from another context", + "result": "success", + "time": 12, + }, + TestCaseResult { + "name": "should detect DOMException errors from another context", + "result": "success", + "time": 7, + }, + ], + }, + ], + "name": "packages/expect/src/__tests__/isError.test.ts", + "totalTime": 43, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": ".isPrimitive()", + "tests": Array [ + TestCaseResult { + "name": "returns true when given primitive value of: null", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns true when given primitive value of: undefined", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "returns true when given primitive value of: 100", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns true when given primitive value of: hello world", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns true when given primitive value of: true", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns true when given primitive value of: Symbol(a)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns true when given primitive value of: 0", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns true when given primitive value of: NaN", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns true when given primitive value of: Infinity", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns true when given primitive value of: 1n", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns false when given non primitive value of: {}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns false when given non primitive value of: []", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns false when given non primitive value of: undefined", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "returns false when given non primitive value of: {}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns false when given non primitive value of: {}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns false when given non primitive value of: {}", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns false when given non primitive value of: \\"2021-01-24T19:22:19.272Z\\"", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns false when given non primitive value of: {}", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-get-type/src/__tests__/isPrimitive.test.ts", + "totalTime": 36, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "node crawler", + "tests": Array [ + TestCaseResult { + "name": "crawls for files based on patterns", + "result": "success", + "time": 12, + }, + TestCaseResult { + "name": "updates only changed files", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "returns removed files", + "result": "success", + "time": 13, + }, + TestCaseResult { + "name": "uses node fs APIs with incompatible find binary", + "result": "success", + "time": 9, + }, + TestCaseResult { + "name": "uses node fs APIs without find binary", + "result": "success", + "time": 8, + }, + TestCaseResult { + "name": "uses node fs APIs if \\"forceNodeFilesystemAPI\\" is set to true, regardless of platform", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "completes with empty roots", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "completes with fs.readdir throwing an error", + "result": "success", + "time": 11, + }, + ], + }, + TestGroupResult { + "name": "node crawler readdir withFileTypes support", + "tests": Array [ + TestCaseResult { + "name": "calls lstat for directories and symlinks if readdir withFileTypes is not supported", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "avoids calling lstat for directories and symlinks if readdir withFileTypes is supported", + "result": "success", + "time": 8, + }, + ], + }, + ], + "name": "packages/jest-haste-map/src/crawlers/__tests__/node.test.js", + "totalTime": 170, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "run for \\"onlyChanged\\" and \\"changedSince\\"", + "result": "success", + "time": 1464, + }, + TestCaseResult { + "name": "run only changed files", + "result": "success", + "time": 5196, + }, + TestCaseResult { + "name": "report test coverage for only changed files", + "result": "success", + "time": 1889, + }, + TestCaseResult { + "name": "report test coverage of source on test file change under only changed files", + "result": "success", + "time": 822, + }, + TestCaseResult { + "name": "do not pickup non-tested files when reporting coverage on only changed files", + "result": "success", + "time": 861, + }, + TestCaseResult { + "name": "collect test coverage when using onlyChanged", + "result": "success", + "time": 1058, + }, + TestCaseResult { + "name": "onlyChanged in config is overwritten by --all or testPathPattern", + "result": "success", + "time": 7023, + }, + TestCaseResult { + "name": "gets changed files for hg", + "result": "failed", + "time": 3765, + }, + TestCaseResult { + "name": "path on Windows is case-insensitive", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "e2e/__tests__/onlyChanged.test.ts", + "totalTime": 22281, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "joinAlignedDiffsExpand", + "tests": Array [ + TestCaseResult { + "name": "first line is empty common", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "joinAlignedDiffsNoExpand", + "tests": Array [ + TestCaseResult { + "name": "patch 0 with context 1 and change at start and end", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "patch 0 with context 5 and first line is empty common", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "patch 1 with context 4 and last line is empty common", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "patch 2 with context 3", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "patch 3 with context 2 and omit excess common at start", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-diff/src/__tests__/joinAlignedDiffs.test.ts", + "totalTime": 44, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "SnapshotInteractiveMode", + "tests": Array [ + TestCaseResult { + "name": "is inactive at construction", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "call to run process the first file", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "call to abort", + "result": "success", + "time": 11, + }, + TestCaseResult { + "name": "call to reset", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "press Q or ESC triggers an abort", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "press ENTER trigger a run", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "skip 1 test, then restart", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "skip 1 test, then quit", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "update 1 test, then finish and return", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "skip 2 tests, then finish and restart", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "update 2 tests, then finish and return", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "update 1 test, skip 1 test, then finish and restart", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "skip 1 test, update 1 test, then finish and restart", + "result": "success", + "time": 2, + }, + ], + }, + ], + "name": "packages/jest-core/src/__tests__/SnapshotInteractiveMode.test.js", + "totalTime": 89, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime statics", + "tests": Array [ + TestCaseResult { + "name": "Runtime.createHasteMap passes correct ignore files to HasteMap", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "Runtime.createHasteMap passes correct ignore files to HasteMap in watch mode", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-runtime/src/__tests__/Runtime-statics.test.js", + "totalTime": 162, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "getAlignedDiffs lines", + "tests": Array [ + TestCaseResult { + "name": "change preceding and following common", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "common preceding and following change", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "common at end when both current change lines are empty", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "common between delete and insert", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "common between insert and delete", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "getAlignedDiffs newline", + "tests": Array [ + TestCaseResult { + "name": "delete only", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "insert only", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "delete with adjacent change", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "insert with adjacent changes", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "change from space", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "change to space", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "getAlignedDiffs substrings first", + "tests": Array [ + TestCaseResult { + "name": "common when both current change lines are empty", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "common when either current change line is non-empty", + "result": "success", + "time": 13, + }, + TestCaseResult { + "name": "delete completes the current line", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "insert completes the current line", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "getAlignedDiffs substrings middle", + "tests": Array [ + TestCaseResult { + "name": "is empty in delete between common", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "is empty in insert at start", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "is non-empty in delete at end", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "is non-empty in insert between common", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "getAlignedDiffs substrings last", + "tests": Array [ + TestCaseResult { + "name": "is empty in delete at end", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "is empty in insert at end", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "is non-empty in common not at end", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "getAlignedDiffs strings", + "tests": Array [ + TestCaseResult { + "name": "change at start and delete or insert at end", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "delete or insert at start and change at end", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-diff/src/__tests__/getAlignedDiffs.test.ts", + "totalTime": 72, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": ".assertions()", + "tests": Array [ + TestCaseResult { + "name": "does not throw", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "redeclares different assertion count", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "expects no assertions", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": ".hasAssertions()", + "tests": Array [ + TestCaseResult { + "name": "does not throw if there is an assertion", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "throws if expected is not undefined", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "hasAssertions not leaking to global state", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/expect/src/__tests__/assertionCounts.test.ts", + "totalTime": 60, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "getPlatformExtension", + "tests": Array [ + TestCaseResult { + "name": "should get platform ext", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-haste-map/src/lib/__tests__/getPlatformExtension.test.js", + "totalTime": 35, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "isRegExpSupported", + "tests": Array [ + TestCaseResult { + "name": "should return true when passing valid regular expression", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should return false when passing an invalid regular expression", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-haste-map/src/lib/__tests__/isRegExpSupported.test.js", + "totalTime": 31, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "stack trace points to correct location when using matchers", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "stack trace points to correct location when using nested matchers", + "result": "success", + "time": 21, + }, + TestCaseResult { + "name": "stack trace points to correct location when throwing from a custom matcher", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/expect/src/__tests__/stacktrace.test.ts", + "totalTime": 69, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Jest Worker Integration", + "tests": Array [ + TestCaseResult { + "name": "calls a single method from the worker", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "distributes sequential calls across child processes", + "result": "success", + "time": 3, + }, + TestCaseResult { + "name": "schedules the task on the first available child processes if the scheduling policy is in-order", + "result": "success", + "time": 15, + }, + TestCaseResult { + "name": "distributes concurrent calls across child processes", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "sticks parallel calls to children", + "result": "success", + "time": 7, + }, + ], + }, + ], + "name": "packages/jest-worker/src/__tests__/process-integration.test.js", + "totalTime": 62, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "is valid when it is a file inside roots", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "is not valid when it is a snapshot file", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "is not valid when it is a file in the coverage dir", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-core/src/lib/__tests__/isValidPath.test.ts", + "totalTime": 166, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "ErrorWithStack", + "tests": Array [ + TestCaseResult { + "name": "calls Error.captureStackTrace with given callsite when capture exists", + "result": "success", + "time": 2, + }, + ], + }, + ], + "name": "packages/jest-util/src/__tests__/errorWithStack.test.ts", + "totalTime": 41, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "Returns true when running on interactive environment", + "result": "success", + "time": 7, + }, + TestCaseResult { + "name": "Returns false when running on a non-interactive environment", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-util/src/__tests__/isInteractive.test.ts", + "totalTime": 35, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "diffStringsRaw", + "tests": Array [ + TestCaseResult { + "name": "one-line with cleanup", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "one-line without cleanup", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-diff/src/__tests__/diffStringsRaw.test.ts", + "totalTime": 55, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works like micromatch with only positive globs", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works like micromatch with a mix of overlapping positive and negative globs", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works like micromatch with only negative globs", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works like micromatch with empty globs", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-util/src/__tests__/globsToMatcher.test.ts", + "totalTime": 56, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "shouldRunInBand() - should return true for runInBand mode", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "shouldRunInBand() - should return true for runInBand mode", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "shouldRunInBand() - should return false for runInBand mode", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "shouldRunInBand() - should return false for runInBand mode", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "shouldRunInBand() - should return false for runInBand mode", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "shouldRunInBand() - should return true for runInBand mode", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "shouldRunInBand() - should return false for runInBand mode", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "shouldRunInBand() - should return true for runInBand mode", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "shouldRunInBand() - should return true for runInBand mode", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "shouldRunInBand() - should return false for runInBand mode", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "shouldRunInBand() - should return false for runInBand mode", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "shouldRunInBand() - should return true for runInBand mode", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-core/src/__tests__/testSchedulerHelper.test.js", + "totalTime": 48, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "returns the passed object", + "result": "success", + "time": 28, + }, + TestCaseResult { + "name": "turns a V8 global object into a Node global object", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-util/src/__tests__/installCommonGlobals.test.ts", + "totalTime": 68, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "getMockName", + "tests": Array [ + TestCaseResult { + "name": "extracts mock name from file path", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-haste-map/src/__tests__/get_mock_name.test.js", + "totalTime": 22, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "WorkerPool", + "tests": Array [ + TestCaseResult { + "name": "should create a ChildProcessWorker and send to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should create a NodeThreadWorker and send to it", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should avoid NodeThreadWorker if not passed enableWorkerThreads", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-worker/src/__tests__/WorkerPool.test.js", + "totalTime": 51, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "dependencyExtractor", + "tests": Array [ + TestCaseResult { + "name": "should not extract dependencies inside comments", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should not extract dependencies inside comments (windows line endings)", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should not extract dependencies inside comments (unicode line endings)", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should extract dependencies from \`import\` statements", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should extract dependencies from side-effect only \`import\` statements", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should not extract dependencies from \`import type/typeof\` statements", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should extract dependencies from \`export\` statements", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should extract dependencies from \`export-from\` statements", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should not extract dependencies from \`export type/typeof\` statements", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should extract dependencies from dynamic \`import\` calls", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should extract dependencies from \`require\` calls", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should extract dependencies from \`jest.requireActual\` calls", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should extract dependencies from \`jest.requireMock\` calls", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should extract dependencies from \`jest.genMockFromModule\` calls", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should extract dependencies from \`jest.createMockFromModule\` calls", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-haste-map/src/lib/__tests__/dependencyExtractor.test.js", + "totalTime": 56, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "normalizePathSep", + "tests": Array [ + TestCaseResult { + "name": "does nothing on posix", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "replace slashes on windows", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-haste-map/src/lib/__tests__/normalizePathSep.test.js", + "totalTime": 35, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "fastPath.relative", + "tests": Array [ + TestCaseResult { + "name": "should get relative paths inside the root", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should get relative paths outside the root", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should get relative paths outside the root when start with same word", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "fastPath.resolve", + "tests": Array [ + TestCaseResult { + "name": "should get the absolute path for paths inside the root", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should get the absolute path for paths outside the root", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-haste-map/src/lib/__tests__/fast_path.test.js", + "totalTime": 29, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "FailedTestsCache", + "tests": Array [ + TestCaseResult { + "name": "should filter tests", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-core/src/__tests__/FailedTestsCache.test.js", + "totalTime": 25, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "getNoTestsFoundMessage", + "tests": Array [ + TestCaseResult { + "name": "returns correct message when monitoring only failures", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "returns correct message when monitoring only changed", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns correct message with verbose option", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "returns correct message without options", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "returns correct message with passWithNoTests", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-core/src/__tests__/getNoTestsFoundMessage.test.js", + "totalTime": 61, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Common globals", + "tests": Array [ + TestCaseResult { + "name": "check process", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-core/src/__tests__/globals.test.ts", + "totalTime": 22, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "prints the jest version", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints the test framework name", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints the config object", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "packages/jest-core/src/lib/__tests__/logDebugMessages.test.ts", + "totalTime": 48, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "not a Promise: ", + "tests": Array [ + TestCaseResult { + "name": "undefined", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "null", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "true", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "42", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "\\"1337\\"", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "Symbol()", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "[]", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "{}", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "a resolved Promise", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "a rejected Promise", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-util/src/__tests__/isPromise.test.ts", + "totalTime": 30, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "should remove jest config if exists", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should add test script when there are no scripts", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should add test script when there are scripts", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should not add test script when { shouldModifyScripts: false }", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/jest-cli/src/init/__tests__/modifyPackageJson.test.ts", + "totalTime": 30, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Symbol in objects", + "tests": Array [ + TestCaseResult { + "name": "should compare objects with Symbol keys", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "should compare objects with mixed keys and Symbol", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should compare objects with different Symbol keys", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "packages/expect/src/__tests__/symbolInObjects.test.ts", + "totalTime": 33, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "stub", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "e2e/test-in-root/test.js", + "totalTime": 37, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "stub", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "e2e/test-in-root/spec.js", + "totalTime": 19, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "dummy-test", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "e2e/v8-coverage/empty-sourcemap/test.ts", + "totalTime": 31, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "should copy dom element", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "should copy complex element", + "result": "success", + "time": 3, + }, + ], + }, + ], + "name": "packages/jest-matcher-utils/src/__tests__/deepCyclicCopyReplaceableDom.test.ts", + "totalTime": 48, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "on node ^12.16.0 || >=13.7.0", + "tests": Array [ + TestCaseResult { + "name": "runs TS test with native ESM", + "result": "success", + "time": 923, + }, + ], + }, + ], + "name": "e2e/__tests__/nativeEsmTypescript.test.ts", + "totalTime": 956, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "maps code coverage against original source", + "result": "success", + "time": 12660, + }, + ], + }, + ], + "name": "e2e/__tests__/coverageRemapping.test.ts", + "totalTime": 12701, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "globalTeardown is triggered once after all test suites", + "result": "success", + "time": 2025.9999999999998, + }, + TestCaseResult { + "name": "jest throws an error when globalTeardown does not export a function", + "result": "success", + "time": 1144, + }, + TestCaseResult { + "name": "globalTeardown function gets jest config object as a parameter", + "result": "success", + "time": 959, + }, + TestCaseResult { + "name": "should call globalTeardown function of multiple projects", + "result": "success", + "time": 1711, + }, + TestCaseResult { + "name": "should not call a globalTeardown of a project if there are no tests to run from this project", + "result": "success", + "time": 882, + }, + TestCaseResult { + "name": "globalTeardown works with default export", + "result": "success", + "time": 1045, + }, + TestCaseResult { + "name": "globalTeardown throws with named export", + "result": "success", + "time": 1041, + }, + ], + }, + ], + "name": "e2e/__tests__/globalTeardown.test.ts", + "totalTime": 11886, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "--listTests doesn't duplicate the test files", + "result": "success", + "time": 445, + }, + TestCaseResult { + "name": "can pass projects or global config", + "result": "success", + "time": 3379, + }, + TestCaseResult { + "name": "\\"No tests found\\" message for projects", + "result": "success", + "time": 977, + }, + TestCaseResult { + "name": "allows a single non-root project", + "result": "success", + "time": 1215, + }, + TestCaseResult { + "name": "allows a single non-root project", + "result": "success", + "time": 751, + }, + TestCaseResult { + "name": "correctly runs a single non-root project", + "result": "success", + "time": 805, + }, + TestCaseResult { + "name": "correctly runs a single non-root project", + "result": "success", + "time": 839, + }, + TestCaseResult { + "name": "projects can be workspaces with non-JS/JSON files", + "result": "success", + "time": 1371, + }, + TestCaseResult { + "name": "objects in project configuration", + "result": "success", + "time": 869, + }, + TestCaseResult { + "name": "allows a single project", + "result": "success", + "time": 822, + }, + TestCaseResult { + "name": "resolves projects and their properly", + "result": "success", + "time": 1938, + }, + TestCaseResult { + "name": "Does transform files with the corresponding project transformer", + "result": "success", + "time": 737, + }, + ], + }, + TestGroupResult { + "name": "doesn't bleed module file extensions resolution with multiple workers", + "tests": Array [ + TestCaseResult { + "name": "external config files", + "result": "success", + "time": 1025, + }, + TestCaseResult { + "name": "inline config files", + "result": "success", + "time": 1101, + }, + ], + }, + ], + "name": "e2e/__tests__/multiProjectRunner.test.ts", + "totalTime": 16360, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "basic support", + "result": "success", + "time": 3007, + }, + TestCaseResult { + "name": "error thrown before snapshot", + "result": "success", + "time": 2377, + }, + TestCaseResult { + "name": "first snapshot fails, second passes", + "result": "success", + "time": 1373, + }, + TestCaseResult { + "name": "does not mark snapshots as obsolete in skipped tests", + "result": "success", + "time": 1244, + }, + TestCaseResult { + "name": "accepts custom snapshot name", + "result": "success", + "time": 821, + }, + TestCaseResult { + "name": "handles property matchers", + "result": "success", + "time": 1917, + }, + TestCaseResult { + "name": "handles invalid property matchers", + "result": "success", + "time": 1906, + }, + TestCaseResult { + "name": "handles property matchers with hint", + "result": "success", + "time": 1752, + }, + TestCaseResult { + "name": "handles property matchers with deep properties", + "result": "success", + "time": 2528, + }, + ], + }, + ], + "name": "e2e/__tests__/toMatchSnapshot.test.ts", + "totalTime": 17025, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "prints message about flag on slow tests", + "result": "success", + "time": 1993, + }, + TestCaseResult { + "name": "prints message about flag on forceExit", + "result": "success", + "time": 678, + }, + TestCaseResult { + "name": "prints out info about open handlers", + "result": "success", + "time": 868, + }, + TestCaseResult { + "name": "does not report promises", + "result": "success", + "time": 728, + }, + TestCaseResult { + "name": "prints out info about open handlers from inside tests", + "result": "success", + "time": 903, + }, + ], + }, + TestGroupResult { + "name": "on node >=11.10.0", + "tests": Array [ + TestCaseResult { + "name": "does not report ELD histograms", + "result": "success", + "time": 729, + }, + ], + }, + TestGroupResult { + "name": "notify", + "tests": Array [ + TestCaseResult { + "name": "does not report --notify flag", + "result": "success", + "time": 789, + }, + ], + }, + TestGroupResult { + "name": "on node >=11", + "tests": Array [ + TestCaseResult { + "name": "does not report timeouts using unref", + "result": "success", + "time": 763, + }, + ], + }, + ], + "name": "e2e/__tests__/detectOpenHandles.ts", + "totalTime": 7528, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "not throwing Error objects", + "result": "success", + "time": 4615, + }, + TestCaseResult { + "name": "works with node assert", + "result": "success", + "time": 854, + }, + TestCaseResult { + "name": "works with assertions in separate files", + "result": "success", + "time": 765, + }, + TestCaseResult { + "name": "works with async failures", + "result": "success", + "time": 983, + }, + TestCaseResult { + "name": "works with snapshot failures", + "result": "success", + "time": 782, + }, + TestCaseResult { + "name": "works with snapshot failures with hint", + "result": "success", + "time": 784, + }, + TestCaseResult { + "name": "errors after test has completed", + "result": "success", + "time": 782, + }, + ], + }, + ], + "name": "e2e/__tests__/failures.test.ts", + "totalTime": 10353, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "console printing", + "result": "success", + "time": 755, + }, + TestCaseResult { + "name": "console printing with --verbose", + "result": "success", + "time": 943, + }, + TestCaseResult { + "name": "does not print to console with --silent", + "result": "success", + "time": 855, + }, + TestCaseResult { + "name": "respects --noStackTrace", + "result": "success", + "time": 974, + }, + TestCaseResult { + "name": "respects noStackTrace in config", + "result": "success", + "time": 1008, + }, + TestCaseResult { + "name": "the jsdom console is the same as the test console", + "result": "success", + "time": 1429, + }, + TestCaseResult { + "name": "does not error out when using winston", + "result": "success", + "time": 2049, + }, + ], + }, + ], + "name": "e2e/__tests__/console.test.ts", + "totalTime": 8071.999999999999, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "basic test constructs", + "result": "success", + "time": 762, + }, + TestCaseResult { + "name": "interleaved describe and test children order", + "result": "success", + "time": 704, + }, + TestCaseResult { + "name": "skips", + "result": "success", + "time": 685, + }, + TestCaseResult { + "name": "only", + "result": "success", + "time": 827, + }, + TestCaseResult { + "name": "cannot have describe with no implementation", + "result": "success", + "time": 682, + }, + TestCaseResult { + "name": "cannot test with no implementation", + "result": "success", + "time": 701, + }, + TestCaseResult { + "name": "skips with expand arg", + "result": "success", + "time": 683, + }, + TestCaseResult { + "name": "only with expand arg", + "result": "success", + "time": 701, + }, + TestCaseResult { + "name": "cannot test with no implementation with expand arg", + "result": "success", + "time": 663, + }, + TestCaseResult { + "name": "function as descriptor", + "result": "success", + "time": 752, + }, + ], + }, + ], + "name": "e2e/__tests__/globals.test.ts", + "totalTime": 7505, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "exits with 1 if coverage threshold is not met", + "result": "success", + "time": 963, + }, + TestCaseResult { + "name": "exits with 1 if path threshold group is not found in coverage data", + "result": "success", + "time": 962, + }, + TestCaseResult { + "name": "exits with 0 if global threshold group is not found in coverage data", + "result": "success", + "time": 847, + }, + TestCaseResult { + "name": "excludes tests matched by path threshold groups from global group", + "result": "success", + "time": 1174, + }, + TestCaseResult { + "name": "file is matched by all path and glob threshold groups", + "result": "success", + "time": 836, + }, + ], + }, + ], + "name": "e2e/__tests__/coverageThreshold.test.ts", + "totalTime": 4868, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "prints a message with path pattern at the end", + "result": "success", + "time": 3030, + }, + ], + }, + ], + "name": "e2e/__tests__/testPathPatternReporterMessage.test.ts", + "totalTime": 3076, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Dynamic test filtering", + "tests": Array [ + TestCaseResult { + "name": "uses the default JSON option", + "result": "success", + "time": 1044, + }, + TestCaseResult { + "name": "uses the CLI option", + "result": "success", + "time": 786, + }, + TestCaseResult { + "name": "ignores the filter if requested to do so", + "result": "success", + "time": 880, + }, + TestCaseResult { + "name": "throws when you return clowny stuff", + "result": "success", + "time": 361, + }, + TestCaseResult { + "name": "will call setup on filter before filtering", + "result": "success", + "time": 1544, + }, + TestCaseResult { + "name": "will print error when filter throws", + "result": "success", + "time": 369, + }, + TestCaseResult { + "name": "will return no results when setup hook throws", + "result": "success", + "time": 354, + }, + ], + }, + ], + "name": "e2e/__tests__/filter.test.ts", + "totalTime": 5422, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Given a config with two named projects, first-project and second-project when Jest is started with \`--selectProjects first-project\`", + "tests": Array [ + TestCaseResult { + "name": "runs the tests in the first project only", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints that only first-project will run", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "Given a config with two named projects, first-project and second-project when Jest is started with \`--selectProjects second-project\`", + "tests": Array [ + TestCaseResult { + "name": "runs the tests in the second project only", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints that only second-project will run", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "Given a config with two named projects, first-project and second-project when Jest is started with \`--selectProjects first-project second-project\`", + "tests": Array [ + TestCaseResult { + "name": "runs the tests in the first and second projects", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints that both first-project and second-project will run", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "Given a config with two named projects, first-project and second-project when Jest is started without providing \`--selectProjects\`", + "tests": Array [ + TestCaseResult { + "name": "runs the tests in the first and second projects", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "does not print which projects are run", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "Given a config with two named projects, first-project and second-project when Jest is started with \`--selectProjects third-project\`", + "tests": Array [ + TestCaseResult { + "name": "fails", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints that no project was found", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "Given a config with two projects, first-project and an unnamed project when Jest is started with \`--selectProjects first-project\`", + "tests": Array [ + TestCaseResult { + "name": "runs the tests in the first project only", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints that a project does not have a name", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints that only first-project will run", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "Given a config with two projects, first-project and an unnamed project when Jest is started without providing \`--selectProjects\`", + "tests": Array [ + TestCaseResult { + "name": "runs the tests in the first and second projects", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "does not print that a project has no name", + "result": "success", + "time": 0, + }, + ], + }, + TestGroupResult { + "name": "Given a config with two projects, first-project and an unnamed project when Jest is started with \`--selectProjects third-project\`", + "tests": Array [ + TestCaseResult { + "name": "fails", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "prints that a project does not have a name", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "prints that no project was found", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "e2e/__tests__/selectProjects.test.ts", + "totalTime": 5236, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "suite without mock name, mock called", + "result": "success", + "time": 872, + }, + TestCaseResult { + "name": "suite without mock name, mock not called", + "result": "success", + "time": 864, + }, + TestCaseResult { + "name": "suite with mock name, expect mock not called", + "result": "success", + "time": 755, + }, + TestCaseResult { + "name": "suite with mock name, mock called, expect fail", + "result": "success", + "time": 721, + }, + TestCaseResult { + "name": "suite with mock name, mock called 5 times", + "result": "success", + "time": 766, + }, + TestCaseResult { + "name": "suite with mock name, mock not called 5 times, expect fail", + "result": "success", + "time": 948, + }, + TestCaseResult { + "name": "suite with mock name, mock called", + "result": "success", + "time": 848, + }, + TestCaseResult { + "name": "suite with mock name, mock not called", + "result": "success", + "time": 948, + }, + ], + }, + ], + "name": "e2e/__tests__/mockNames.test.ts", + "totalTime": 6771, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Stack Trace", + "tests": Array [ + TestCaseResult { + "name": "prints a stack trace for runtime errors", + "result": "success", + "time": 958, + }, + TestCaseResult { + "name": "does not print a stack trace for runtime errors when --noStackTrace is given", + "result": "success", + "time": 606, + }, + TestCaseResult { + "name": "prints a stack trace for matching errors", + "result": "success", + "time": 714, + }, + TestCaseResult { + "name": "does not print a stack trace for matching errors when --noStackTrace is given", + "result": "success", + "time": 599, + }, + TestCaseResult { + "name": "prints a stack trace for errors", + "result": "success", + "time": 643, + }, + TestCaseResult { + "name": "prints a stack trace for errors without message in stack trace", + "result": "success", + "time": 602, + }, + TestCaseResult { + "name": "does not print a stack trace for errors when --noStackTrace is given", + "result": "success", + "time": 520, + }, + ], + }, + ], + "name": "e2e/__tests__/stackTrace.test.ts", + "totalTime": 4725, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works with passing tests", + "result": "success", + "time": 882, + }, + TestCaseResult { + "name": "shows error message when not enough arguments are supplied to tests", + "result": "success", + "time": 597, + }, + TestCaseResult { + "name": "shows the correct errors in stderr when failing tests", + "result": "success", + "time": 769, + }, + TestCaseResult { + "name": "shows only the tests with .only as being ran", + "result": "success", + "time": 653, + }, + TestCaseResult { + "name": "shows only the tests without .skip as being ran", + "result": "success", + "time": 612, + }, + TestCaseResult { + "name": "runs only the describe.only.each tests", + "result": "success", + "time": 562, + }, + TestCaseResult { + "name": "formats args with pretty format when given %p", + "result": "success", + "time": 580, + }, + ], + }, + ], + "name": "e2e/__tests__/each.test.ts", + "totalTime": 4721, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works fine when function throws error", + "result": "success", + "time": 1138, + }, + TestCaseResult { + "name": "updates existing snapshot", + "result": "success", + "time": 844, + }, + TestCaseResult { + "name": "cannot be used with .not", + "result": "success", + "time": 680, + }, + TestCaseResult { + "name": "should support rejecting promises", + "result": "success", + "time": 808, + }, + ], + }, + ], + "name": "e2e/__tests__/toThrowErrorMatchingInlineSnapshot.test.ts", + "totalTime": 3562, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "does not re-run tests when only access time is modified", + "result": "success", + "time": 4313, + }, + ], + }, + ], + "name": "e2e/__tests__/watchModeNoAccess.test.ts", + "totalTime": 4370, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "successfully runs the tests inside \`pnp/\`", + "result": "success", + "time": 2547, + }, + ], + }, + ], + "name": "e2e/__tests__/pnp.test.ts", + "totalTime": 2715, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "errors if describe returns a Promise", + "result": "success", + "time": 781, + }, + TestCaseResult { + "name": "errors if describe returns something", + "result": "success", + "time": 709, + }, + TestCaseResult { + "name": "errors if describe throws", + "result": "success", + "time": 778, + }, + ], + }, + ], + "name": "e2e/__tests__/declarationErrors.test.ts", + "totalTime": 2389, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Wrong globals for environment", + "tests": Array [ + TestCaseResult { + "name": "print useful error for window", + "result": "success", + "time": 736, + }, + TestCaseResult { + "name": "print useful error for document", + "result": "success", + "time": 533, + }, + TestCaseResult { + "name": "print useful error for navigator", + "result": "success", + "time": 606, + }, + TestCaseResult { + "name": "print useful error for unref", + "result": "success", + "time": 1301, + }, + TestCaseResult { + "name": "print useful error when it explodes during evaluation", + "result": "success", + "time": 659, + }, + ], + }, + ], + "name": "e2e/__tests__/wrongEnv.test.ts", + "totalTime": 3877, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "setupFilesAfterEnv", + "tests": Array [ + TestCaseResult { + "name": "requires multiple setup files before each file in the suite", + "result": "success", + "time": 1063, + }, + TestCaseResult { + "name": "requires setup files *after* the test runners are required", + "result": "success", + "time": 800, + }, + ], + }, + ], + "name": "e2e/__tests__/setupFilesAfterEnvConfig.test.ts", + "totalTime": 1967, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "No tests are found", + "tests": Array [ + TestCaseResult { + "name": "fails the test suite in standard situation", + "result": "success", + "time": 488, + }, + TestCaseResult { + "name": "doesn't fail the test suite if --passWithNoTests passed", + "result": "success", + "time": 518, + }, + TestCaseResult { + "name": "doesn't fail the test suite if using --lastCommit", + "result": "success", + "time": 608, + }, + TestCaseResult { + "name": "doesn't fail the test suite if using --onlyChanged", + "result": "success", + "time": 565, + }, + TestCaseResult { + "name": "doesn't fail the test suite if using --findRelatedTests", + "result": "success", + "time": 505, + }, + ], + }, + ], + "name": "e2e/__tests__/noTestsFound.test.ts", + "totalTime": 2739, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works with custom matchers", + "result": "success", + "time": 873, + }, + TestCaseResult { + "name": "custom async matchers", + "result": "success", + "time": 623, + }, + ], + }, + ], + "name": "e2e/__tests__/customMatcherStackTrace.test.ts", + "totalTime": 1539, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "print correct error message with nested test definitions outside describe", + "result": "success", + "time": 1354, + }, + TestCaseResult { + "name": "print correct error message with nested test definitions inside describe", + "result": "success", + "time": 1088, + }, + TestCaseResult { + "name": "print correct message when nesting describe inside it", + "result": "success", + "time": 1047, + }, + TestCaseResult { + "name": "print correct message when nesting a hook inside it", + "result": "success", + "time": 1027, + }, + ], + }, + ], + "name": "e2e/__tests__/nestedTestDefinitions.test.ts", + "totalTime": 4641, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "suite with auto-clear", + "result": "success", + "time": 801, + }, + TestCaseResult { + "name": "suite without auto-clear", + "result": "success", + "time": 837, + }, + ], + }, + ], + "name": "e2e/__tests__/autoClearMocks.test.ts", + "totalTime": 1681, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "exits the process after test are done but before timers complete", + "result": "success", + "time": 2157, + }, + ], + }, + ], + "name": "e2e/__tests__/forceExit.test.ts", + "totalTime": 2208, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "exits with a specified code when test fail", + "result": "success", + "time": 2073, + }, + TestCaseResult { + "name": "exits with a specified code when bailing from a failed test", + "result": "success", + "time": 2188, + }, + ], + }, + ], + "name": "e2e/__tests__/testFailureExitCode.test.ts", + "totalTime": 4476, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "", + "result": "success", + "time": 905, + }, + ], + }, + ], + "name": "e2e/__tests__/promiseReject.test.ts", + "totalTime": 967, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "run timers after resetAllMocks test", + "result": "success", + "time": 944, + }, + TestCaseResult { + "name": "run timers with resetMocks in config test", + "result": "success", + "time": 814, + }, + ], + }, + ], + "name": "e2e/__tests__/timerResetMocks.test.ts", + "totalTime": 1878, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "triggers setup/teardown hooks", + "result": "success", + "time": 1422, + }, + ], + }, + ], + "name": "e2e/__tests__/testEnvironmentAsync.test.ts", + "totalTime": 1493, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "show error message with matching files", + "result": "success", + "time": 1064, + }, + TestCaseResult { + "name": "show error message when no js moduleFileExtensions", + "result": "success", + "time": 117, + }, + ], + }, + ], + "name": "e2e/__tests__/resolveNoFileExtensions.test.ts", + "totalTime": 1263, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works with nested event loops", + "result": "success", + "time": 1392, + }, + ], + }, + ], + "name": "e2e/__tests__/nestedEventLoop.test.ts", + "totalTime": 1422, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "no tests found message is redirected to stderr", + "result": "success", + "time": 1257, + }, + ], + }, + ], + "name": "e2e/__tests__/useStderr.test.ts", + "totalTime": 1352, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "should work without error", + "result": "success", + "time": 1310, + }, + ], + }, + ], + "name": "e2e/__tests__/domDiffing.test.ts", + "totalTime": 1361, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "console printing", + "result": "success", + "time": 1301, + }, + ], + }, + ], + "name": "e2e/__tests__/consoleAfterTeardown.test.ts", + "totalTime": 1341, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "runs tests in only test.js and spec.js", + "result": "success", + "time": 944, + }, + ], + }, + ], + "name": "e2e/__tests__/testInRoot.test.ts", + "totalTime": 1008.9999999999999, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "\`require.main\` on using \`jest.isolateModules\` should not be undefined", + "result": "success", + "time": 867, + }, + ], + }, + ], + "name": "e2e/__tests__/requireMainIsolateModules.test.ts", + "totalTime": 976, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "jest --clearCache", + "tests": Array [ + TestCaseResult { + "name": "normal run results in cache directory being written", + "result": "success", + "time": 792, + }, + TestCaseResult { + "name": "clearCache results in deleted directory and exitCode 0", + "result": "success", + "time": 127, + }, + ], + }, + ], + "name": "e2e/__tests__/clearCache.test.ts", + "totalTime": 1004, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Runtime Internal Module Registry", + "tests": Array [ + TestCaseResult { + "name": "correctly makes use of internal module registry when requiring modules", + "result": "success", + "time": 1150, + }, + ], + }, + ], + "name": "e2e/__tests__/runtimeInternalModuleRegistry.test.ts", + "totalTime": 1202, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "resolve node module", + "result": "success", + "time": 890, + }, + ], + }, + ], + "name": "e2e/__tests__/resolveNodeModule.test.ts", + "totalTime": 943, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "setImmediate", + "result": "success", + "time": 859, + }, + ], + }, + ], + "name": "e2e/__tests__/setImmediate.test.ts", + "totalTime": 904, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "JSON Reporter", + "tests": Array [ + TestCaseResult { + "name": "fails the test suite if it contains no tests", + "result": "success", + "time": 824, + }, + ], + }, + ], + "name": "e2e/__tests__/emptySuiteError.test.ts", + "totalTime": 885, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "suite with test cases that contain malformed sourcemaps", + "result": "success", + "time": 823, + }, + ], + }, + ], + "name": "e2e/__tests__/badSourceMap.test.ts", + "totalTime": 858, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "useRealTimers cancels \\"timers\\": \\"fake\\" for whole test file", + "result": "success", + "time": 986, + }, + ], + }, + ], + "name": "e2e/__tests__/timerUseRealTimers.test.ts", + "totalTime": 1018, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "can redefine global", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "e2e/__tests__/global-mutation.test.ts", + "totalTime": 40, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "run Jest programmatically cjs", + "result": "success", + "time": 75, + }, + TestCaseResult { + "name": "run Jest programmatically esm", + "result": "success", + "time": 462, + }, + ], + }, + ], + "name": "e2e/__tests__/runProgrammatically.test.ts", + "totalTime": 575, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "Symbol deletion", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "e2e/__tests__/symbol.test.ts", + "totalTime": 49, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "should not warn when a mock file changes", + "result": "success", + "time": 298, + }, + ], + }, + ], + "name": "e2e/__tests__/hasteMapMockChanged.test.ts", + "totalTime": 379, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "error when rootDir does not exist", + "result": "success", + "time": 109, + }, + TestCaseResult { + "name": "error when rootDir is a file", + "result": "success", + "time": 109, + }, + TestCaseResult { + "name": "error when roots directory does not exist", + "result": "success", + "time": 137, + }, + TestCaseResult { + "name": "error when roots is a file", + "result": "success", + "time": 129, + }, + ], + }, + ], + "name": "e2e/__tests__/existentRoots.test.ts", + "totalTime": 627, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "\`done()\` works properly in hooks", + "result": "success", + "time": 819, + }, + ], + }, + ], + "name": "e2e/__tests__/doneInHooks.test.ts", + "totalTime": 855, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "calls asynchronous handleTestEvent in testEnvironment", + "result": "success", + "time": 1458, + }, + ], + }, + ], + "name": "e2e/__tests__/testEnvironmentCircusAsync.test.ts", + "totalTime": 1507, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "moduleNameMapper wrong configuration", + "result": "success", + "time": 1030, + }, + TestCaseResult { + "name": "moduleNameMapper wrong array configuration", + "result": "success", + "time": 909, + }, + TestCaseResult { + "name": "moduleNameMapper correct configuration", + "result": "success", + "time": 913, + }, + TestCaseResult { + "name": "moduleNameMapper correct configuration mocking module of absolute path", + "result": "success", + "time": 1479, + }, + TestCaseResult { + "name": "moduleNameMapper with mocking", + "result": "success", + "time": 967, + }, + ], + }, + ], + "name": "e2e/__tests__/moduleNameMapper.test.ts", + "totalTime": 5395, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Custom Reporters Integration", + "tests": Array [ + TestCaseResult { + "name": "valid string format for adding reporters", + "result": "success", + "time": 966, + }, + TestCaseResult { + "name": "valid array format for adding reporters", + "result": "success", + "time": 623, + }, + TestCaseResult { + "name": "invalid format for adding reporters", + "result": "success", + "time": 115, + }, + TestCaseResult { + "name": "default reporters enabled", + "result": "success", + "time": 620, + }, + TestCaseResult { + "name": "TestReporter with all tests passing", + "result": "success", + "time": 978, + }, + TestCaseResult { + "name": "TestReporter with all tests failing", + "result": "success", + "time": 1093, + }, + TestCaseResult { + "name": "IncompleteReporter for flexibility", + "result": "success", + "time": 801, + }, + TestCaseResult { + "name": "reporters can be default exports", + "result": "success", + "time": 792, + }, + TestCaseResult { + "name": "prints reporter errors", + "result": "success", + "time": 495, + }, + ], + }, + ], + "name": "e2e/__tests__/customReporters.test.ts", + "totalTime": 6553, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "--findRelatedTests flag", + "tests": Array [ + TestCaseResult { + "name": "runs tests related to filename", + "result": "success", + "time": 1324, + }, + TestCaseResult { + "name": "runs tests related to uppercased filename on case-insensitive os", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "runs tests related to filename with a custom dependency extractor", + "result": "success", + "time": 1307, + }, + TestCaseResult { + "name": "generates coverage report for filename", + "result": "success", + "time": 2001.9999999999998, + }, + TestCaseResult { + "name": "coverage configuration is applied correctly", + "result": "success", + "time": 1516, + }, + ], + }, + ], + "name": "e2e/__tests__/findRelatedFiles.test.ts", + "totalTime": 6230, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Environment override", + "tests": Array [ + TestCaseResult { + "name": "uses jsdom when specified", + "result": "success", + "time": 1501, + }, + TestCaseResult { + "name": "uses node as default from package.json", + "result": "success", + "time": 1002, + }, + TestCaseResult { + "name": "uses node when specified", + "result": "success", + "time": 664, + }, + TestCaseResult { + "name": "fails when the env is not available", + "result": "success", + "time": 121, + }, + ], + }, + TestGroupResult { + "name": "Environment equivalent", + "tests": Array [ + TestCaseResult { + "name": "uses jsdom", + "result": "success", + "time": 1092, + }, + TestCaseResult { + "name": "uses node", + "result": "success", + "time": 731, + }, + ], + }, + ], + "name": "e2e/__tests__/env.test.ts", + "totalTime": 5221, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "globalSetup is triggered once before all test suites", + "result": "success", + "time": 2384, + }, + TestCaseResult { + "name": "jest throws an error when globalSetup does not export a function", + "result": "success", + "time": 851, + }, + TestCaseResult { + "name": "globalSetup function gets jest config object as a parameter", + "result": "success", + "time": 918, + }, + TestCaseResult { + "name": "should call globalSetup function of multiple projects", + "result": "success", + "time": 1307, + }, + TestCaseResult { + "name": "should not call a globalSetup of a project if there are no tests to run from this project", + "result": "success", + "time": 1189, + }, + TestCaseResult { + "name": "should not call any globalSetup if there are no tests to run", + "result": "success", + "time": 792, + }, + TestCaseResult { + "name": "globalSetup works with default export", + "result": "success", + "time": 926, + }, + TestCaseResult { + "name": "globalSetup throws with named export", + "result": "success", + "time": 783, + }, + TestCaseResult { + "name": "should not transpile the transformer", + "result": "success", + "time": 718, + }, + TestCaseResult { + "name": "should transform node_modules if configured by transformIgnorePatterns", + "result": "success", + "time": 1165, + }, + ], + }, + ], + "name": "e2e/__tests__/globalSetup.test.ts", + "totalTime": 13926, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "prints a warning if a worker is force exited", + "result": "success", + "time": 2355, + }, + TestCaseResult { + "name": "force exits a worker that fails to exit gracefully", + "result": "success", + "time": 2319, + }, + ], + }, + ], + "name": "e2e/__tests__/workerForceExit.test.ts", + "totalTime": 4751, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "successfully runs the tests inside \`babel-plugin-jest-hoist/\`", + "result": "success", + "time": 6179, + }, + ], + }, + ], + "name": "e2e/__tests__/babelPluginJestHoist.test.ts", + "totalTime": 6249, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "code coverage for transform instrumented code", + "result": "success", + "time": 4910, + }, + ], + }, + ], + "name": "e2e/__tests__/coverageTransformInstrumented.test.ts", + "totalTime": 5029, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "does not work on jest-circus", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "exceeds the timeout set using jasmine.DEFAULT_TIMEOUT_INTERVAL", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "does not exceed the timeout using jasmine.DEFAULT_TIMEOUT_INTERVAL", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "can read and write jasmine.DEFAULT_TIMEOUT_INTERVAL", + "result": "skipped", + "time": 0, + }, + ], + }, + ], + "name": "e2e/__tests__/timeoutsLegacy.test.ts", + "totalTime": 71, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "successfully transpiles async", + "result": "success", + "time": 4040, + }, + ], + }, + ], + "name": "e2e/__tests__/asyncRegenerator.test.ts", + "totalTime": 4127, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works fine when function throws error", + "result": "success", + "time": 790, + }, + TestCaseResult { + "name": "throws the error if tested function didn't throw error", + "result": "success", + "time": 713, + }, + TestCaseResult { + "name": "accepts custom snapshot name", + "result": "success", + "time": 653, + }, + TestCaseResult { + "name": "cannot be used with .not", + "result": "success", + "time": 644, + }, + TestCaseResult { + "name": "should support rejecting promises", + "result": "success", + "time": 647, + }, + ], + }, + ], + "name": "e2e/__tests__/toThrowErrorMatchingSnapshot.test.ts", + "totalTime": 3524, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works with all statuses", + "result": "success", + "time": 891, + }, + TestCaseResult { + "name": "shows error messages when called with no arguments", + "result": "success", + "time": 602, + }, + TestCaseResult { + "name": "shows error messages when called with multiple arguments", + "result": "success", + "time": 669, + }, + TestCaseResult { + "name": "shows error messages when called with invalid argument", + "result": "success", + "time": 624, + }, + TestCaseResult { + "name": "shows todo messages when in verbose mode", + "result": "success", + "time": 710, + }, + ], + }, + ], + "name": "e2e/__tests__/testTodo.test.ts", + "totalTime": 3573, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "onlyFailures flag works in non-watch mode", + "result": "success", + "time": 2841, + }, + ], + }, + ], + "name": "e2e/__tests__/onlyFailuresNonWatch.test.ts", + "totalTime": 2893, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "supports json preset", + "result": "success", + "time": 860, + }, + TestCaseResult { + "name": "supports js preset", + "result": "success", + "time": 956, + }, + ], + }, + ], + "name": "e2e/__tests__/presets.test.ts", + "totalTime": 1966, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works with passing tests", + "result": "success", + "time": 1173, + }, + TestCaseResult { + "name": "shows the correct errors in stderr when failing tests", + "result": "success", + "time": 760, + }, + ], + }, + ], + "name": "e2e/__tests__/expectAsyncMatcher.test.ts", + "totalTime": 2732, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "babel-jest", + "tests": Array [ + TestCaseResult { + "name": "runs transpiled code", + "result": "success", + "time": 2241, + }, + TestCaseResult { + "name": "instruments only specific files and collects coverage", + "result": "success", + "time": 2589, + }, + ], + }, + TestGroupResult { + "name": "babel-jest ignored", + "tests": Array [ + TestCaseResult { + "name": "tells user to match ignored files", + "result": "success", + "time": 940, + }, + ], + }, + TestGroupResult { + "name": "babel-jest with manual transformer", + "tests": Array [ + TestCaseResult { + "name": "runs transpiled code", + "result": "success", + "time": 1608, + }, + ], + }, + TestGroupResult { + "name": "no babel-jest", + "tests": Array [ + TestCaseResult { + "name": "fails with syntax error on flow types", + "result": "success", + "time": 1343, + }, + TestCaseResult { + "name": "instrumentation with no babel-jest", + "result": "success", + "time": 1378, + }, + ], + }, + TestGroupResult { + "name": "custom transformer", + "tests": Array [ + TestCaseResult { + "name": "proprocesses files", + "result": "success", + "time": 673, + }, + TestCaseResult { + "name": "instruments files", + "result": "success", + "time": 706, + }, + ], + }, + TestGroupResult { + "name": "multiple-transformers", + "tests": Array [ + TestCaseResult { + "name": "transforms dependencies using specific transformers", + "result": "success", + "time": 7383, + }, + ], + }, + TestGroupResult { + "name": "ecmascript-modules-support", + "tests": Array [ + TestCaseResult { + "name": "runs transpiled code", + "result": "success", + "time": 923, + }, + ], + }, + TestGroupResult { + "name": "transformer-config", + "tests": Array [ + TestCaseResult { + "name": "runs transpiled code", + "result": "success", + "time": 1636, + }, + TestCaseResult { + "name": "instruments only specific files and collects coverage", + "result": "success", + "time": 1588, + }, + ], + }, + TestGroupResult { + "name": "transformer caching", + "tests": Array [ + TestCaseResult { + "name": "does not rerun transform within worker", + "result": "success", + "time": 1033, + }, + ], + }, + TestGroupResult { + "name": "transform-environment", + "tests": Array [ + TestCaseResult { + "name": "should transform the environment", + "result": "success", + "time": 1044, + }, + ], + }, + TestGroupResult { + "name": "transform-runner", + "tests": Array [ + TestCaseResult { + "name": "should transform runner", + "result": "success", + "time": 795, + }, + ], + }, + TestGroupResult { + "name": "transform-testrunner", + "tests": Array [ + TestCaseResult { + "name": "should transform testRunner", + "result": "success", + "time": 783, + }, + ], + }, + ], + "name": "e2e/__tests__/transform.test.ts", + "totalTime": 26740, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "chai assertion errors should display properly", + "result": "success", + "time": 1817, + }, + ], + }, + ], + "name": "e2e/__tests__/chaiAssertionLibrary.ts", + "totalTime": 1902, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "processes stack traces and code frames with source maps with coverage", + "result": "success", + "time": 2394, + }, + ], + }, + ], + "name": "e2e/__tests__/stackTraceSourceMapsWithCoverage.test.ts", + "totalTime": 2444, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "run prioritySequence first sync", + "result": "success", + "time": 933, + }, + TestCaseResult { + "name": "run prioritySequence first async", + "result": "success", + "time": 901, + }, + TestCaseResult { + "name": "run failed tests async", + "result": "success", + "time": 849, + }, + ], + }, + ], + "name": "e2e/__tests__/customTestSequencers.test.ts", + "totalTime": 2757, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Correct BeforeAll run", + "tests": Array [ + TestCaseResult { + "name": "ensures the BeforeAll of ignored suite is not run", + "result": "success", + "time": 905, + }, + ], + }, + ], + "name": "e2e/__tests__/beforeAllFiltered.ts", + "totalTime": 958, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Fake promises", + "tests": Array [ + TestCaseResult { + "name": "should be possible to resolve with fake timers using immediates", + "result": "success", + "time": 901, + }, + TestCaseResult { + "name": "should be possible to resolve with fake timers using asap", + "result": "success", + "time": 780, + }, + ], + }, + ], + "name": "e2e/__tests__/fakePromises.test.ts", + "totalTime": 1716, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "processes stack traces and code frames with source maps", + "result": "success", + "time": 2153, + }, + ], + }, + ], + "name": "e2e/__tests__/stackTraceSourceMaps.test.ts", + "totalTime": 2185, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "successfully runs tests with dynamic dependencies", + "result": "success", + "time": 811, + }, + ], + }, + ], + "name": "e2e/__tests__/dynamicRequireDependencies.ts", + "totalTime": 847, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "overriding native promise does not freeze Jest", + "result": "success", + "time": 1116, + }, + TestCaseResult { + "name": "has a duration even if time is faked", + "result": "success", + "time": 859, + }, + ], + }, + ], + "name": "e2e/__tests__/overrideGlobals.test.ts", + "totalTime": 2045.9999999999998, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "Tests are executed only once even in an MPR", + "result": "success", + "time": 908, + }, + ], + }, + ], + "name": "e2e/__tests__/executeTestsOnceInMpr.ts", + "totalTime": 976, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "module.parent should be null in test files", + "result": "success", + "time": 830, + }, + ], + }, + ], + "name": "e2e/__tests__/moduleParentNullInTest.ts", + "totalTime": 886, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "prints useful error for requires after test is done", + "result": "success", + "time": 842, + }, + ], + }, + ], + "name": "e2e/__tests__/requireAfterTeardown.test.ts", + "totalTime": 921, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "suite with invalid assertions in afterAll", + "result": "success", + "time": 827, + }, + ], + }, + ], + "name": "e2e/__tests__/lifecycles.ts", + "totalTime": 861, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "exits the process after test are done but before timers complete", + "result": "success", + "time": 187, + }, + ], + }, + ], + "name": "e2e/__tests__/hasteMapSha1.test.ts", + "totalTime": 298, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "JSON is available in the global scope", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "JSON.parse creates objects from within this context", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "e2e/__tests__/json.test.ts", + "totalTime": 29, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "testNamePattern", + "result": "success", + "time": 859, + }, + ], + }, + ], + "name": "e2e/__tests__/testResultsProcessor.test.ts", + "totalTime": 910, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "jest --debug", + "tests": Array [ + TestCaseResult { + "name": "outputs debugging info before running the test", + "result": "success", + "time": 857, + }, + ], + }, + ], + "name": "e2e/__tests__/debug.test.ts", + "totalTime": 899, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "imported globals", + "result": "success", + "time": 1012, + }, + ], + }, + ], + "name": "e2e/__tests__/importedGlobals.test.ts", + "totalTime": 1043, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "use the custom resolver", + "result": "success", + "time": 749, + }, + ], + }, + ], + "name": "e2e/__tests__/customResolver.test.ts", + "totalTime": 826, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "handles circular inequality properly", + "result": "success", + "time": 1407, + }, + ], + }, + ], + "name": "e2e/__tests__/circularInequality.test.ts", + "totalTime": 1451, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "globals are undefined if passed \`false\` from CLI", + "result": "success", + "time": 876, + }, + TestCaseResult { + "name": "globals are undefined if passed \`false\` from config", + "result": "success", + "time": 918, + }, + ], + }, + ], + "name": "e2e/__tests__/injectGlobals.test.ts", + "totalTime": 1860, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "correctly skip \`beforeAll\`s in skipped tests", + "result": "success", + "time": 998, + }, + ], + }, + ], + "name": "e2e/__tests__/skipBeforeAfterAll.test.ts", + "totalTime": 1061, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works with custom inline snapshot matchers", + "result": "success", + "time": 2145, + }, + ], + }, + ], + "name": "e2e/__tests__/customInlineSnapshotMatchers.test.ts", + "totalTime": 2206, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Regex Char In Path", + "tests": Array [ + TestCaseResult { + "name": "parses paths containing regex chars correctly", + "result": "success", + "time": 873, + }, + ], + }, + ], + "name": "e2e/__tests__/regexCharInPath.test.ts", + "totalTime": 962, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Coverage Report", + "tests": Array [ + TestCaseResult { + "name": "outputs coverage report", + "result": "success", + "time": 551, + }, + ], + }, + TestGroupResult { + "name": "File path not found in mulit-project scenario", + "tests": Array [ + TestCaseResult { + "name": "outputs coverage report", + "result": "success", + "time": 463, + }, + ], + }, + ], + "name": "e2e/__tests__/noTestFound.test.ts", + "totalTime": 1063, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "test config is without transform", + "result": "success", + "time": 133, + }, + ], + }, + TestGroupResult { + "name": "on node ^12.16.0 || >=13.7.0", + "tests": Array [ + TestCaseResult { + "name": "runs test with native ESM", + "result": "success", + "time": 690, + }, + ], + }, + TestGroupResult { + "name": "on node >=14.3.0", + "tests": Array [ + TestCaseResult { + "name": "supports top-level await", + "result": "skipped", + "time": 0, + }, + ], + }, + ], + "name": "e2e/__tests__/nativeEsm.test.ts", + "totalTime": 905, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works with passing tests", + "result": "success", + "time": 777, + }, + TestCaseResult { + "name": "throws error for unknown dashed & camelcase args", + "result": "success", + "time": 119, + }, + ], + }, + ], + "name": "e2e/__tests__/supportsDashedArgs.ts", + "totalTime": 968, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "should transform linked modules", + "result": "success", + "time": 734, + }, + ], + }, + ], + "name": "e2e/__tests__/transformLinkedModules.test.ts", + "totalTime": 783, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "testNamePattern", + "result": "success", + "time": 788, + }, + ], + }, + ], + "name": "e2e/__tests__/testNamePattern.test.ts", + "totalTime": 859, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "mocks async functions", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "e2e/__tests__/nativeAsyncMock.test.ts", + "totalTime": 55, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "reports the correct file size", + "result": "success", + "time": 83, + }, + TestCaseResult { + "name": "updates the file size when a file changes", + "result": "success", + "time": 217, + }, + ], + }, + ], + "name": "e2e/__tests__/hasteMapSize.test.ts", + "totalTime": 397, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "defining tests and hooks asynchronously throws", + "result": "success", + "time": 832, + }, + ], + }, + ], + "name": "e2e/__tests__/circusDeclarationErrors.test.ts", + "totalTime": 869, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "calls testEnvironment handleTestEvent", + "result": "success", + "time": 1456, + }, + ], + }, + ], + "name": "e2e/__tests__/testEnvironmentCircus.test.ts", + "totalTime": 1501, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "\`done()\` should not be called more than once", + "result": "success", + "time": 820, + }, + ], + }, + ], + "name": "e2e/__tests__/callDoneTwice.test.ts", + "totalTime": 882, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "hook in empty describe", + "result": "success", + "time": 829, + }, + TestCaseResult { + "name": "hook in describe with skipped test", + "result": "success", + "time": 614, + }, + TestCaseResult { + "name": "hook in empty nested describe", + "result": "success", + "time": 680, + }, + TestCaseResult { + "name": "multiple hooks in empty describe", + "result": "success", + "time": 726, + }, + ], + }, + ], + "name": "e2e/__tests__/emptyDescribeWithHooks.test.ts", + "totalTime": 2886, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "does not work on jest-circus", + "result": "success", + "time": 4, + }, + TestCaseResult { + "name": "fail.test.js errors in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "jasmine.addMatchers.test.js errors in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "jasmine.any.test.js errors in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "jasmine.anything.test.js errors in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "jasmine.arrayContaining.test.js errors in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "jasmine.createSpy.test.js errors in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "jasmine.objectContaining.test.js errors in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "jasmine.stringMatching.test.js errors in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "pending.test.js errors in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "spyOn.test.js errors in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "spyOnProperty.test.js errors in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "defaultTimeoutInterval.test.js errors in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "fail.test.js errors when not in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "jasmine.addMatchers.test.js passes when not in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "jasmine.any.test.js passes when not in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "jasmine.anything.test.js passes when not in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "jasmine.arrayContaining.test.js passes when not in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "jasmine.createSpy.test.js passes when not in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "jasmine.objectContaining.test.js passes when not in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "jasmine.stringMatching.test.js passes when not in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "pending.test.js passes when not in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "spyOn.test.js passes when not in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "spyOnProperty.test.js errors when not in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + TestCaseResult { + "name": "defaultTimeoutInterval.test.js passes when not in errorOnDeprecated mode", + "result": "skipped", + "time": 0, + }, + ], + }, + ], + "name": "e2e/__tests__/errorOnDeprecated.test.ts", + "totalTime": 56, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Test Retries", + "tests": Array [ + TestCaseResult { + "name": "retries failed tests", + "result": "success", + "time": 859, + }, + TestCaseResult { + "name": "reporter shows more than 1 invocation if test is retried", + "result": "success", + "time": 829, + }, + TestCaseResult { + "name": "reporter shows 1 invocation if tests are not retried", + "result": "success", + "time": 811, + }, + TestCaseResult { + "name": "tests are not retried if beforeAll hook failure occurs", + "result": "success", + "time": 706, + }, + ], + }, + ], + "name": "e2e/__tests__/testRetries.test.ts", + "totalTime": 3277, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works with jest.config.ts", + "result": "success", + "time": 3356, + }, + TestCaseResult { + "name": "works with tsconfig.json", + "result": "success", + "time": 3224, + }, + TestCaseResult { + "name": "traverses directory tree up until it finds jest.config", + "result": "success", + "time": 3116, + }, + TestCaseResult { + "name": "it does type check the config", + "result": "success", + "time": 2278, + }, + TestCaseResult { + "name": "invalid JS in jest.config.ts", + "result": "success", + "time": 2200, + }, + ], + }, + ], + "name": "e2e/__tests__/jest.config.ts.test.ts", + "totalTime": 14322, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "outputs coverage report", + "result": "success", + "time": 2076, + }, + TestCaseResult { + "name": "collects coverage only from specified file", + "result": "success", + "time": 1646, + }, + TestCaseResult { + "name": "collects coverage only from multiple specified files", + "result": "success", + "time": 1587, + }, + TestCaseResult { + "name": "collects coverage only from specified files avoiding dependencies", + "result": "success", + "time": 1173, + }, + TestCaseResult { + "name": "json reporter printing with --coverage", + "result": "success", + "time": 898, + }, + TestCaseResult { + "name": "outputs coverage report as json", + "result": "success", + "time": 1824, + }, + TestCaseResult { + "name": "outputs coverage report when text is requested", + "result": "success", + "time": 1872, + }, + TestCaseResult { + "name": "outputs coverage report when text-summary is requested", + "result": "success", + "time": 1850, + }, + TestCaseResult { + "name": "outputs coverage report when text and text-summary is requested", + "result": "success", + "time": 1827, + }, + TestCaseResult { + "name": "does not output coverage report when html is requested", + "result": "success", + "time": 2021, + }, + TestCaseResult { + "name": "collects coverage from duplicate files avoiding shared cache", + "result": "success", + "time": 2245, + }, + TestCaseResult { + "name": "generates coverage when using the testRegex config param", + "result": "success", + "time": 2300, + }, + ], + }, + ], + "name": "e2e/__tests__/coverageReport.test.ts", + "totalTime": 22264, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "basic support", + "result": "success", + "time": 4442, + }, + TestCaseResult { + "name": "do not indent empty lines", + "result": "success", + "time": 1940, + }, + TestCaseResult { + "name": "handles property matchers", + "result": "success", + "time": 3820, + }, + TestCaseResult { + "name": "removes obsolete external snapshots", + "result": "success", + "time": 3007, + }, + TestCaseResult { + "name": "supports async matchers", + "result": "success", + "time": 895, + }, + TestCaseResult { + "name": "supports async tests", + "result": "success", + "time": 1117, + }, + TestCaseResult { + "name": "writes snapshots with non-literals in expect(...)", + "result": "success", + "time": 897, + }, + TestCaseResult { + "name": "handles mocking native modules prettier relies on", + "result": "success", + "time": 1142, + }, + TestCaseResult { + "name": "supports custom matchers", + "result": "success", + "time": 2263, + }, + TestCaseResult { + "name": "supports custom matchers with property matcher", + "result": "success", + "time": 1950, + }, + TestCaseResult { + "name": "multiple custom matchers and native matchers", + "result": "success", + "time": 1385, + }, + TestCaseResult { + "name": "indentation is correct in the presences of existing snapshots", + "result": "success", + "time": 932, + }, + ], + }, + ], + "name": "e2e/__tests__/toMatchInlineSnapshot.test.ts", + "totalTime": 23917, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "renders correctly", + "result": "success", + "time": 478, + }, + TestCaseResult { + "name": "renders the ActivityIndicator component", + "result": "success", + "time": 106, + }, + TestCaseResult { + "name": "renders the TextInput component", + "result": "success", + "time": 2887, + }, + TestCaseResult { + "name": "renders the FlatList component", + "result": "success", + "time": 791, + }, + ], + }, + ], + "name": "examples/react-native/__tests__/intro.test.js", + "totalTime": 8559, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works with a single snapshot", + "result": "success", + "time": 2009, + }, + TestCaseResult { + "name": "works when a different assertion is failing", + "result": "success", + "time": 600, + }, + TestCaseResult { + "name": "works when multiple tests have snapshots but only one of them failed multiple times", + "result": "success", + "time": 1640, + }, + ], + }, + ], + "name": "e2e/__tests__/toMatchInlineSnapshotWithRetries.test.ts", + "totalTime": 4670, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "exceeds the timeout", + "result": "success", + "time": 782, + }, + TestCaseResult { + "name": "does not exceed the timeout", + "result": "success", + "time": 664, + }, + TestCaseResult { + "name": "exceeds the command line testTimeout", + "result": "success", + "time": 1529, + }, + TestCaseResult { + "name": "does not exceed the command line testTimeout", + "result": "success", + "time": 856, + }, + ], + }, + ], + "name": "e2e/__tests__/timeouts.test.ts", + "totalTime": 4029, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "empty external", + "result": "success", + "time": 1636, + }, + TestCaseResult { + "name": "empty internal ci false", + "result": "success", + "time": 1213, + }, + TestCaseResult { + "name": "undefined internal ci true", + "result": "success", + "time": 598, + }, + ], + }, + ], + "name": "e2e/__tests__/toMatchSnapshotWithStringSerializer.test.ts", + "totalTime": 3544, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "async jasmine", + "tests": Array [ + TestCaseResult { + "name": "works with beforeAll", + "result": "success", + "time": 1317, + }, + TestCaseResult { + "name": "works with beforeEach", + "result": "success", + "time": 673, + }, + TestCaseResult { + "name": "works with afterAll", + "result": "success", + "time": 1151, + }, + TestCaseResult { + "name": "works with afterEach", + "result": "success", + "time": 638, + }, + TestCaseResult { + "name": "works with fit", + "result": "success", + "time": 936, + }, + TestCaseResult { + "name": "works with xit", + "result": "success", + "time": 738, + }, + TestCaseResult { + "name": "throws when not a promise is returned", + "result": "success", + "time": 670, + }, + TestCaseResult { + "name": "tests async promise code", + "result": "success", + "time": 10831, + }, + TestCaseResult { + "name": "works with concurrent", + "result": "success", + "time": 757, + }, + TestCaseResult { + "name": "works with concurrent within a describe block when invoked with testNamePattern", + "result": "success", + "time": 686, + }, + TestCaseResult { + "name": "works with concurrent.each", + "result": "success", + "time": 717, + }, + TestCaseResult { + "name": "works with concurrent.only.each", + "result": "success", + "time": 1171, + }, + TestCaseResult { + "name": "doesn't execute more than 5 tests simultaneously", + "result": "success", + "time": 976, + }, + TestCaseResult { + "name": "async test fails", + "result": "success", + "time": 6223, + }, + TestCaseResult { + "name": "generator test", + "result": "success", + "time": 688, + }, + ], + }, + ], + "name": "e2e/__tests__/jasmineAsync.test.ts", + "totalTime": 28291, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "config as JSON", + "result": "success", + "time": 381, + }, + TestCaseResult { + "name": "works with sane config JSON", + "result": "success", + "time": 621, + }, + TestCaseResult { + "name": "watchman config option is respected over default argv", + "result": "success", + "time": 640, + }, + TestCaseResult { + "name": "config from argv is respected with sane config JSON", + "result": "success", + "time": 530, + }, + TestCaseResult { + "name": "works with jsdom testEnvironmentOptions config JSON", + "result": "success", + "time": 1558, + }, + TestCaseResult { + "name": "negated flags override previous flags", + "result": "success", + "time": 156, + }, + ], + }, + ], + "name": "e2e/__tests__/config.test.ts", + "totalTime": 3945, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "fails a test that terminates the worker with a fatal error", + "result": "success", + "time": 3117, + }, + ], + }, + ], + "name": "e2e/__tests__/fatalWorkerError.test.ts", + "totalTime": 3167, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works with a single snapshot", + "result": "success", + "time": 2153, + }, + TestCaseResult { + "name": "works when multiple tests have snapshots but only one of them failed multiple times", + "result": "success", + "time": 2208, + }, + ], + }, + ], + "name": "e2e/__tests__/toMatchSnapshotWithRetries.test.ts", + "totalTime": 4435, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "can press \\"p\\" to filter by file name", + "result": "success", + "time": 1471, + }, + TestCaseResult { + "name": "can press \\"t\\" to filter by test name", + "result": "success", + "time": 1775, + }, + ], + }, + ], + "name": "e2e/__tests__/watchModePatterns.test.ts", + "totalTime": 3503, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "triggers unexpected token error message for non-JS assets", + "result": "success", + "time": 980, + }, + TestCaseResult { + "name": "triggers unexpected token error message for untranspiled node_modules", + "result": "success", + "time": 794, + }, + TestCaseResult { + "name": "does not trigger unexpected token error message for regular syntax errors", + "result": "success", + "time": 1539, + }, + ], + }, + ], + "name": "e2e/__tests__/unexpectedToken.test.ts", + "totalTime": 3411, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "understands dependencies using jest.requireMock", + "result": "success", + "time": 1909, + }, + ], + }, + ], + "name": "e2e/__tests__/jestRequireMock.test.ts", + "totalTime": 2119, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "instruments and collects coverage for typescript files", + "result": "success", + "time": 2830, + }, + ], + }, + ], + "name": "e2e/__tests__/typescriptCoverage.test.ts", + "totalTime": 2893, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works with jest.config.js", + "result": "success", + "time": 1016, + }, + TestCaseResult { + "name": "traverses directory tree up until it finds jest.config", + "result": "success", + "time": 882, + }, + TestCaseResult { + "name": "invalid JS in jest.config.js", + "result": "success", + "time": 135, + }, + ], + }, + ], + "name": "e2e/__tests__/jest.config.js.test.ts", + "totalTime": 2134, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "\`require.main\` on using \`--resetModules='true'\` should not be undefined", + "result": "success", + "time": 970, + }, + TestCaseResult { + "name": "\`require.main\` on using \`jest.resetModules()\` should not be undefined", + "result": "success", + "time": 915, + }, + ], + }, + ], + "name": "e2e/__tests__/requireMainResetModules.test.ts", + "totalTime": 1961, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "modern implementation of fake timers", + "tests": Array [ + TestCaseResult { + "name": "should be possible to use modern implementation from config", + "result": "success", + "time": 792, + }, + TestCaseResult { + "name": "should be possible to use modern implementation from jest-object", + "result": "success", + "time": 831, + }, + ], + }, + ], + "name": "e2e/__tests__/modernFakeTimers.test.ts", + "totalTime": 1680, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "runs tests by exact path", + "result": "success", + "time": 1938, + }, + ], + }, + ], + "name": "e2e/__tests__/runTestsByPath.test.ts", + "totalTime": 1999, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "respects testEnvironment docblock", + "result": "success", + "time": 1513, + }, + ], + }, + ], + "name": "e2e/__tests__/testEnvironment.test.ts", + "totalTime": 1628, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works with concurrent.each", + "result": "success", + "time": 817, + }, + TestCaseResult { + "name": "works with concurrent.only.each", + "result": "success", + "time": 695, + }, + ], + }, + ], + "name": "e2e/__tests__/circusConcurrentEach.test.ts", + "totalTime": 1591, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "suite with auto-restore", + "result": "success", + "time": 822, + }, + TestCaseResult { + "name": "suite without auto-restore", + "result": "success", + "time": 845, + }, + ], + }, + ], + "name": "e2e/__tests__/autoRestoreMocks.test.ts", + "totalTime": 1797, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "JSON Reporter", + "tests": Array [ + TestCaseResult { + "name": "writes test result to sum.result.json", + "result": "success", + "time": 721, + }, + TestCaseResult { + "name": "outputs coverage report", + "result": "success", + "time": 698, + }, + ], + }, + ], + "name": "e2e/__tests__/jsonReporter.test.ts", + "totalTime": 1514, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "suite with auto-reset", + "result": "success", + "time": 801, + }, + TestCaseResult { + "name": "suite without auto-reset", + "result": "success", + "time": 827, + }, + ], + }, + ], + "name": "e2e/__tests__/autoResetMocks.test.ts", + "totalTime": 1666, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "runs only \\"it.only\\" tests", + "result": "success", + "time": 834, + }, + ], + }, + ], + "name": "e2e/__tests__/focusedTests.test.ts", + "totalTime": 888, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "can press \\"f\\" to run only failed tests", + "result": "success", + "time": 1341, + }, + ], + }, + ], + "name": "e2e/__tests__/watchModeOnlyFailed.test.ts", + "totalTime": 1394, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "does not work on jest-circus", + "result": "success", + "time": 1, + }, + ], + }, + TestGroupResult { + "name": "Correct beforeEach order", + "tests": Array [ + TestCaseResult { + "name": "ensures the correct order for beforeEach", + "result": "skipped", + "time": 0, + }, + ], + }, + ], + "name": "e2e/__tests__/beforeEachQueue.ts", + "totalTime": 55, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works with injected globals", + "result": "success", + "time": 962, + }, + ], + }, + ], + "name": "e2e/__tests__/extraGlobals.test.ts", + "totalTime": 1010.9999999999999, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Snapshot serializers", + "tests": Array [ + TestCaseResult { + "name": "renders snapshot", + "result": "success", + "time": 607, + }, + TestCaseResult { + "name": "compares snapshots correctly", + "result": "success", + "time": 1365, + }, + ], + }, + ], + "name": "e2e/__tests__/snapshotSerializers.test.ts", + "totalTime": 2065, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "defaults to null for location", + "result": "success", + "time": 836, + }, + TestCaseResult { + "name": "adds correct location info when provided with flag", + "result": "success", + "time": 859, + }, + ], + }, + ], + "name": "e2e/__tests__/locationInResults.test.ts", + "totalTime": 1764, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "prints console.logs when run with forceExit", + "result": "success", + "time": 726, + }, + ], + }, + ], + "name": "e2e/__tests__/consoleLogOutputWhenRunInBand.test.ts", + "totalTime": 793, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "does not require project modules from inside node_modules", + "result": "success", + "time": 723, + }, + ], + }, + ], + "name": "e2e/__tests__/dependencyClash.test.ts", + "totalTime": 833, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "produces code coverage for uncovered files without transformer", + "result": "success", + "time": 1020.9999999999999, + }, + ], + }, + ], + "name": "e2e/__tests__/coverageWithoutTransform.test.ts", + "totalTime": 1075, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "CLI accepts exact file names if matchers matched", + "result": "success", + "time": 741, + }, + TestCaseResult { + "name": "CLI skips exact file names if no matchers matched", + "result": "success", + "time": 389, + }, + ], + }, + ], + "name": "e2e/__tests__/cliHandlesExactFilenames.test.ts", + "totalTime": 1230, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "on node >=12.2.0", + "tests": Array [ + TestCaseResult { + "name": "\`require.main\` not undefined after createRequire", + "result": "success", + "time": 891, + }, + ], + }, + ], + "name": "e2e/__tests__/requireMainAfterCreateRequire.test.ts", + "totalTime": 966, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "jest.resetModules should not error when _isMockFunction is defined but not boolean", + "result": "success", + "time": 883, + }, + ], + }, + ], + "name": "e2e/__tests__/resetModules.test.ts", + "totalTime": 926, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "can press \\"u\\" to update snapshots", + "result": "success", + "time": 993, + }, + ], + }, + ], + "name": "e2e/__tests__/watchModeUpdateSnapshot.test.ts", + "totalTime": 1075, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "mock works with generator", + "result": "success", + "time": 974, + }, + ], + }, + ], + "name": "e2e/__tests__/generatorMock.test.ts", + "totalTime": 1027, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "require.resolve.paths", + "result": "success", + "time": 1119, + }, + ], + }, + ], + "name": "e2e/__tests__/resolveGetPaths.test.ts", + "totalTime": 1155, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "prints coverage with missing sourcemaps", + "result": "success", + "time": 1002.9999999999999, + }, + TestCaseResult { + "name": "prints coverage with empty sourcemaps", + "result": "success", + "time": 1338, + }, + ], + }, + ], + "name": "e2e/__tests__/v8Coverage.test.ts", + "totalTime": 2412, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "require.resolve with paths", + "result": "success", + "time": 1117, + }, + ], + }, + ], + "name": "e2e/__tests__/resolveWithPaths.test.ts", + "totalTime": 1170, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "logs memory usage", + "result": "success", + "time": 830, + }, + ], + }, + ], + "name": "e2e/__tests__/logHeapUsage.test.ts", + "totalTime": 884, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "provides \`require.main\` set to test suite module", + "result": "success", + "time": 1008.9999999999999, + }, + ], + }, + ], + "name": "e2e/__tests__/requireMain.test.ts", + "totalTime": 1137, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "store snapshot even if fs is mocked", + "result": "success", + "time": 800, + }, + ], + }, + ], + "name": "e2e/__tests__/snapshotMockFs.test.ts", + "totalTime": 883, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Snapshot serializers", + "tests": Array [ + TestCaseResult { + "name": "renders snapshot", + "result": "success", + "time": 798, + }, + ], + }, + ], + "name": "e2e/__tests__/snapshot-unknown.test.ts", + "totalTime": 838, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "AppComponent", + "tests": Array [ + TestCaseResult { + "name": "should create the app", + "result": "success", + "time": 69, + }, + TestCaseResult { + "name": "should have as title 'angular'", + "result": "success", + "time": 28, + }, + TestCaseResult { + "name": "should render title in a h1 tag", + "result": "success", + "time": 115, + }, + ], + }, + ], + "name": "examples/angular/app.component.spec.ts", + "totalTime": 654, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "prints a usable stack trace even if no Error.captureStackTrace", + "result": "success", + "time": 848, + }, + ], + }, + ], + "name": "e2e/__tests__/stackTraceNoCaptureStackTrace.test.ts", + "totalTime": 899, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "testNamePattern skipped", + "result": "success", + "time": 924, + }, + ], + }, + ], + "name": "e2e/__tests__/testNamePatternSkipped.test.ts", + "totalTime": 991, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "that the failureDetails property is set", + "result": "success", + "time": 856, + }, + ], + }, + ], + "name": "e2e/__tests__/failureDetailsProperty.test.ts", + "totalTime": 907, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Custom snapshot resolver", + "tests": Array [ + TestCaseResult { + "name": "Resolves snapshot files using custom resolver", + "result": "success", + "time": 735, + }, + ], + }, + ], + "name": "e2e/__tests__/snapshotResolver.test.ts", + "totalTime": 823, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "prints stack trace pointing to process.exit call", + "result": "success", + "time": 1012.9999999999999, + }, + ], + }, + ], + "name": "e2e/__tests__/processExit.test.ts", + "totalTime": 1070, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "supports NODE_PATH", + "result": "success", + "time": 833, + }, + ], + }, + ], + "name": "e2e/__tests__/nodePath.test.ts", + "totalTime": 866, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "Verbose Reporter", + "result": "success", + "time": 631, + }, + ], + }, + ], + "name": "e2e/__tests__/verbose.test.ts", + "totalTime": 683, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "--listTests flag", + "tests": Array [ + TestCaseResult { + "name": "causes tests to be printed in different lines", + "result": "success", + "time": 478, + }, + TestCaseResult { + "name": "causes tests to be printed out as JSON when using the --json flag", + "result": "success", + "time": 404, + }, + ], + }, + ], + "name": "e2e/__tests__/listTests.test.ts", + "totalTime": 945, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "allows retrieving the current domain", + "result": "success", + "time": 867, + }, + ], + }, + ], + "name": "e2e/__tests__/createProcessObject.test.ts", + "totalTime": 908, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "CheckboxWithLabel changes the text after click", + "result": "success", + "time": 33, + }, + ], + }, + ], + "name": "examples/react-testing-library/__tests__/CheckboxWithLabel-test.js", + "totalTime": 469, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Service: DataService", + "tests": Array [ + TestCaseResult { + "name": "should create service", + "result": "success", + "time": 20, + }, + TestCaseResult { + "name": "should return the right title", + "result": "success", + "time": 8, + }, + ], + }, + ], + "name": "examples/angular/shared/data.service.spec.ts", + "totalTime": 431, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "prints useful error for environment methods after test is done", + "result": "success", + "time": 846, + }, + ], + }, + ], + "name": "e2e/__tests__/environmentAfterTeardown.test.ts", + "totalTime": 892, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "reads config from cjs file", + "result": "success", + "time": 157, + }, + ], + }, + TestGroupResult { + "name": "on node ^12.17.0 || >=13.2.0", + "tests": Array [ + TestCaseResult { + "name": "reads config from mjs file", + "result": "success", + "time": 202, + }, + TestCaseResult { + "name": "reads config from js file when package.json#type=module", + "result": "success", + "time": 115, + }, + ], + }, + ], + "name": "e2e/__tests__/esmConfigFile.test.ts", + "totalTime": 526, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "CheckboxWithLabel changes the text after click", + "result": "success", + "time": 6, + }, + ], + }, + ], + "name": "examples/enzyme/__tests__/CheckboxWithLabel-test.js", + "totalTime": 434, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "define mock per test", + "tests": Array [ + TestCaseResult { + "name": "uses mocked module", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "uses actual module", + "result": "success", + "time": 10, + }, + ], + }, + ], + "name": "examples/module-mock/__tests__/mock_per_test.js", + "totalTime": 116, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "should aggregate docs from collection", + "result": "success", + "time": 10, + }, + ], + }, + ], + "name": "examples/mongodb/__test__/db.test.js", + "totalTime": 236, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "renders correctly", + "result": "success", + "time": 6, + }, + TestCaseResult { + "name": "renders as an anchor when no page is set", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "properly escapes quotes", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "changes the class when hovered", + "result": "success", + "time": 2, + }, + ], + }, + ], + "name": "examples/snapshot/__tests__/link.react.test.js", + "totalTime": 181, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "CheckboxWithLabel changes the text after click", + "result": "success", + "time": 16, + }, + ], + }, + ], + "name": "examples/typescript/__tests__/CheckboxWithLabel-test.tsx", + "totalTime": 227, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "CheckboxWithLabel changes the text after click", + "result": "success", + "time": 17, + }, + ], + }, + ], + "name": "examples/react/__tests__/CheckboxWithLabel-test.js", + "totalTime": 256, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "--showConfig outputs config info and exits", + "result": "success", + "time": 144, + }, + ], + }, + ], + "name": "e2e/__tests__/showConfig.test.ts", + "totalTime": 195, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "renders correctly", + "result": "success", + "time": 2, + }, + ], + }, + ], + "name": "examples/snapshot/__tests__/clock.react.test.js", + "totalTime": 62, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "schedules a 10-second timer after 1 second", + "result": "success", + "time": 26, + }, + ], + }, + ], + "name": "examples/timer/__tests__/infinite_timer_game.test.js", + "totalTime": 94, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "calls into $.ajax with the correct params", + "result": "success", + "time": 73, + }, + TestCaseResult { + "name": "calls the callback when $.ajax requests are finished", + "result": "success", + "time": 10, + }, + ], + }, + ], + "name": "examples/jquery/__tests__/fetch_current_user.test.js", + "totalTime": 196, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "displays a user after a click", + "result": "success", + "time": 71, + }, + ], + }, + ], + "name": "examples/jquery/__tests__/display_user.test.js", + "totalTime": 196, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "timerGame", + "tests": Array [ + TestCaseResult { + "name": "waits 1 second before ending the game", + "result": "success", + "time": 8, + }, + TestCaseResult { + "name": "calls the callback after 1 second via runAllTimers", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "calls the callback after 1 second via advanceTimersByTime", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "examples/timer/__tests__/timer_game.test.js", + "totalTime": 74, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "works with resolves", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "works with promises", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with async/await", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "works with async/await and resolves", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "tests error with rejects", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "tests error with promises", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "tests error with async/await", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "tests error with async/await and rejects", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "examples/async/__tests__/user.test.js", + "totalTime": 96, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "implementation created by automock", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "implementation created by jest.createMockFromModule", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "examples/automatic-mocks/__tests__/createMockFromModule.test.js", + "totalTime": 115, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "listFilesInDirectorySync", + "tests": Array [ + TestCaseResult { + "name": "includes all files in the directory in the summary", + "result": "success", + "time": 21, + }, + ], + }, + ], + "name": "examples/manual-mocks/__tests__/file_summarizer.test.js", + "totalTime": 87, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "calc - mocks", + "tests": Array [ + TestCaseResult { + "name": "returns result from subtract", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "returns result from sum", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "adds last result to memory", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "subtracts last result to memory", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "clears the memory", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "throws an error when invalid Op is passed", + "result": "success", + "time": 8, + }, + ], + }, + ], + "name": "examples/typescript/__tests__/calc.test.ts", + "totalTime": 276, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "adds 1 + 2 to equal 3", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "examples/getting-started/sum.test.js", + "totalTime": 78, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "Service: SubService", + "tests": Array [ + TestCaseResult { + "name": "should create service", + "result": "success", + "time": 12, + }, + ], + }, + ], + "name": "examples/angular/shared/sub.service.spec.ts", + "totalTime": 109, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "if orginal user model", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "examples/manual-mocks/__tests__/user.test.js", + "totalTime": 41, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "adds 1 + 2 to equal 3 in TScript", + "result": "success", + "time": 8, + }, + TestCaseResult { + "name": "adds 1 + 2 to equal 3 in JavaScript", + "result": "success", + "time": 9, + }, + ], + }, + ], + "name": "examples/typescript/__tests__/sum-test.ts", + "totalTime": 69, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "if utils are mocked", + "result": "success", + "time": 0, + }, + TestCaseResult { + "name": "mocked implementation", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "examples/automatic-mocks/__tests__/automock.test.js", + "totalTime": 74, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "if lodash head is mocked", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "examples/manual-mocks/__tests__/lodashMocking.test.js", + "totalTime": 109, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "if user model is mocked", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "examples/manual-mocks/__tests__/userMocked.test.js", + "totalTime": 105, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "adds 1 + 2 to equal 3 in Typescript", + "result": "success", + "time": 2, + }, + TestCaseResult { + "name": "adds 1 + 2 to equal 3 in JavaScript", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "examples/typescript/__tests__/sum.test.js", + "totalTime": 100, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "b", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "e2e/custom-test-sequencer/b.test.js", + "totalTime": 21, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "subtracts 5 - 1 to equal 4 in TypeScript", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "examples/typescript/__tests__/sub-test.ts", + "totalTime": 43, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "does a full mock", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "examples/module-mock/__tests__/full_mock.js", + "totalTime": 60, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "globals are properly defined", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "e2e/__tests__/global.test.ts", + "totalTime": 31, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "original implementation", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "examples/automatic-mocks/__tests__/disableAutomocking.test.js", + "totalTime": 24, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "timers", + "tests": Array [ + TestCaseResult { + "name": "should work before calling resetAllMocks", + "result": "success", + "time": 1, + }, + TestCaseResult { + "name": "should not break after calling resetAllMocks", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "e2e/timer-reset-mocks/after-reset-all-mocks/timerAndMock.test.js", + "totalTime": 30, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "v8 module", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "e2e/__tests__/requireV8Module.test.ts", + "totalTime": 30, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "timers", + "tests": Array [ + TestCaseResult { + "name": "should work before calling resetAllMocks", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "e2e/timer-reset-mocks/with-reset-mocks/timerWithMock.test.js", + "totalTime": 34, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "does a partial mock", + "result": "success", + "time": 1, + }, + ], + }, + ], + "name": "examples/module-mock/__tests__/partial_mock.js", + "totalTime": 215, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "d", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "e2e/custom-test-sequencer/d.test.js", + "totalTime": 21, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "a", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "e2e/custom-test-sequencer/a.test.js", + "totalTime": 29, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "e", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "e2e/custom-test-sequencer/e.test.js", + "totalTime": 27, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "c", + "result": "success", + "time": 0, + }, + ], + }, + ], + "name": "e2e/custom-test-sequencer/c.test.js", + "totalTime": 42, + }, + TestSuiteResult { + "groups": Array [ + TestGroupResult { + "name": "", + "tests": Array [ + TestCaseResult { + "name": "errors when a test both returns a promise and takes a callback", + "result": "success", + "time": 704, + }, + ], + }, + ], + "name": "e2e/__tests__/asyncAndCallback.test.ts", + "totalTime": 746, + }, + ], + "totalTime": 165872, + }, + ], } `; diff --git a/__tests__/dart-json.test.ts b/__tests__/dart-json.test.ts index 09da075..c19748a 100644 --- a/__tests__/dart-json.test.ts +++ b/__tests__/dart-json.test.ts @@ -3,6 +3,7 @@ import * as path from 'path' import {parseDartJson} from '../src/parsers/dart-json/dart-json-parser' import {ParseOptions} from '../src/parsers/parser-types' +import {getReport} from '../src/report/get-report' import {normalizeFilePath} from '../src/utils/file-utils' const fixturePath = path.join(__dirname, 'fixtures', 'dart-json.json') @@ -15,17 +16,16 @@ const xmlFixture = { describe('dart-json tests', () => { it('matches report snapshot', async () => { const opts: ParseOptions = { - name: 'Dart tests', annotations: true, trackedFiles: ['lib/main.dart', 'test/main_test.dart', 'test/second_test.dart'], workDir: 'C:/Users/Michal/Workspace/dorny/test-check/reports/dart/' } const result = await parseDartJson([xmlFixture], opts) - fs.mkdirSync(path.dirname(outputPath), {recursive: true}) - fs.writeFileSync(outputPath, result?.output?.summary ?? '') + expect(result).toMatchSnapshot() - expect(result.success).toBeFalsy() - expect(result?.output).toMatchSnapshot() + const report = getReport(result.testRuns) + fs.mkdirSync(path.dirname(outputPath), {recursive: true}) + fs.writeFileSync(outputPath, report) }) }) diff --git a/__tests__/dotnet-trx.test.ts b/__tests__/dotnet-trx.test.ts index b18075c..ba2452c 100644 --- a/__tests__/dotnet-trx.test.ts +++ b/__tests__/dotnet-trx.test.ts @@ -3,6 +3,7 @@ import * as path from 'path' import {parseDotnetTrx} from '../src/parsers/dotnet-trx/dotnet-trx-parser' import {ParseOptions} from '../src/parsers/parser-types' +import {getReport} from '../src/report/get-report' import {normalizeFilePath} from '../src/utils/file-utils' const fixturePath = path.join(__dirname, 'fixtures', 'dotnet-trx.trx') @@ -15,17 +16,16 @@ const xmlFixture = { describe('dotnet-trx tests', () => { it('matches report snapshot', async () => { const opts: ParseOptions = { - name: 'Dotnet TRX tests', annotations: true, trackedFiles: ['DotnetTests.Unit/Calculator.cs', 'DotnetTests.XUnitTests/CalculatorTests.cs'], workDir: 'C:/Users/Michal/Workspace/dorny/test-check/reports/dotnet/' } const result = await parseDotnetTrx([xmlFixture], opts) - fs.mkdirSync(path.dirname(outputPath), {recursive: true}) - fs.writeFileSync(outputPath, result?.output?.summary ?? '') + expect(result).toMatchSnapshot() - expect(result.success).toBeFalsy() - expect(result?.output).toMatchSnapshot() + const report = getReport(result.testRuns) + fs.mkdirSync(path.dirname(outputPath), {recursive: true}) + fs.writeFileSync(outputPath, report) }) }) diff --git a/__tests__/jest-junit.test.ts b/__tests__/jest-junit.test.ts index 7d37f11..b7caabb 100644 --- a/__tests__/jest-junit.test.ts +++ b/__tests__/jest-junit.test.ts @@ -3,10 +3,10 @@ import * as path from 'path' import {parseJestJunit} from '../src/parsers/jest-junit/jest-junit-parser' import {ParseOptions} from '../src/parsers/parser-types' +import {getReport} from '../src/report/get-report' import {normalizeFilePath} from '../src/utils/file-utils' describe('jest-junit tests', () => { - it('report from ./reports/jest test results matches snapshot', async () => { const fixturePath = path.join(__dirname, 'fixtures', 'jest-junit.xml') const outputPath = path.join(__dirname, '__outputs__', 'jest-junit.md') @@ -16,18 +16,17 @@ describe('jest-junit tests', () => { } const opts: ParseOptions = { - name: 'jest tests', annotations: true, trackedFiles: ['__tests__/main.test.js', '__tests__/second.test.js', 'lib/main.js'], workDir: 'C:/Users/Michal/Workspace/dorny/test-check/reports/jest/' } const result = await parseJestJunit([xmlFixture], opts) - fs.mkdirSync(path.dirname(outputPath), {recursive: true}) - fs.writeFileSync(outputPath, result?.output?.summary ?? '') + expect(result).toMatchSnapshot() - expect(result.success).toBeFalsy() - expect(result?.output).toMatchSnapshot() + const report = getReport(result.testRuns) + fs.mkdirSync(path.dirname(outputPath), {recursive: true}) + fs.writeFileSync(outputPath, report) }) it('report from facebook/jest test results matches snapshot', async () => { @@ -42,16 +41,15 @@ describe('jest-junit tests', () => { const trackedFiles = fs.readFileSync(filesPath, {encoding: 'utf8'}).split(/\n\r?/g) const opts: ParseOptions = { trackedFiles, - name: 'jest tests', annotations: true, workDir: '/home/dorny/dorny/jest/' } const result = await parseJestJunit([xmlFixture], opts) - fs.mkdirSync(path.dirname(outputPath), {recursive: true}) - fs.writeFileSync(outputPath, result?.output?.summary ?? '') + expect(result).toMatchSnapshot() - expect(result.success).toBeFalsy() - expect(result?.output).toMatchSnapshot() + const report = getReport(result.testRuns, {listTests: 'only-failed'}) + fs.mkdirSync(path.dirname(outputPath), {recursive: true}) + fs.writeFileSync(outputPath, report) }) }) diff --git a/action.yml b/action.yml index 9154c15..d50d0f4 100644 --- a/action.yml +++ b/action.yml @@ -4,16 +4,6 @@ description: | Supports .NET (xUnit, NUnit, MSTest), Dart, Flutter and JavaScript (JEST). author: Michal Dorner inputs: - fail-on-error: - description: Set this action as failed if test report contain any failed test - required: true - default: 'true' - max-annotations: - description: | - Limits number of created annotations with error message and stack trace captured during test execution. - Must be less or equal to 50. - required: true - default: '10' name: description: Name of the check run required: true @@ -31,13 +21,38 @@ inputs: - flutter-machine - jest-junit required: true + list-suites: + description: | + Limits which test suites are listed. Supported options: + - all + - only-failed + required: true + default: 'all' + list-tests: + description: | + Limits which test cases are listed. Supported options: + - all + - only-failed + - none + required: true + default: 'all' + max-annotations: + description: | + Limits number of created annotations with error message and stack trace captured during test execution. + Must be less or equal to 50. + required: true + default: '10' + fail-on-error: + description: Set this action as failed if test report contain any failed test + required: true + default: 'true' + working-directory: + description: Relative path under $GITHUB_WORKSPACE where the repository was checked out + required: false token: description: GitHub Access Token required: false default: ${{ github.token }} - working-directory: - description: Relative path under $GITHUB_WORKSPACE where the repository was checked out - required: false outputs: conclusion: description: | diff --git a/src/main.ts b/src/main.ts index 6cb304a..cd3b28a 100644 --- a/src/main.ts +++ b/src/main.ts @@ -5,10 +5,12 @@ import glob from 'fast-glob' import {parseDartJson} from './parsers/dart-json/dart-json-parser' import {parseDotnetTrx} from './parsers/dotnet-trx/dotnet-trx-parser' import {parseJestJunit} from './parsers/jest-junit/jest-junit-parser' +import {getReport} from './report/get-report' import {FileContent, ParseOptions, ParseTestResult} from './parsers/parser-types' import {normalizeDirPath} from './utils/file-utils' import {listFiles} from './utils/git' import {enforceCheckRunLimits, getCheckRunSha} from './utils/github-utils' +import {Icon} from './utils/markdown-utils' async function run(): Promise { try { @@ -19,13 +21,25 @@ async function run(): Promise { } async function main(): Promise { - const maxAnnotations = parseInt(core.getInput('max-annotations', {required: true})) - const failOnError = core.getInput('fail-on-error', {required: true}) === 'true' const name = core.getInput('name', {required: true}) const path = core.getInput('path', {required: true}) const reporter = core.getInput('reporter', {required: true}) - const token = core.getInput('token', {required: true}) + const listSuites = core.getInput('list-suites', {required: true}) + const listTests = core.getInput('list-tests', {required: true}) + const maxAnnotations = parseInt(core.getInput('max-annotations', {required: true})) + const failOnError = core.getInput('fail-on-error', {required: true}) === 'true' const workDirInput = core.getInput('working-directory', {required: false}) + const token = core.getInput('token', {required: true}) + + if (listSuites !== 'all' && listSuites !== 'only-failed') { + core.setFailed(`Input parameter 'list-suites' has invalid value`) + return + } + + if (listTests !== 'all' && listTests !== 'only-failed' && listTests !== 'none') { + core.setFailed(`Input parameter 'list-tests' has invalid value`) + return + } if (isNaN(maxAnnotations) || maxAnnotations < 0 || maxAnnotations > 50) { core.setFailed(`Input parameter 'max-annotations' has invalid value`) @@ -46,7 +60,6 @@ async function main(): Promise { const trackedFiles = annotations ? await listFiles() : [] const opts: ParseOptions = { - name, trackedFiles, workDir, annotations @@ -62,9 +75,11 @@ async function main(): Promise { core.info(`Using test report parser '${reporter}'`) const result = await parser(files, opts) - const conclusion = result.success ? 'success' : 'failure' enforceCheckRunLimits(result, maxAnnotations) + const isFailed = result.testRuns.some(tr => tr.result === 'failed') + const conclusion = isFailed ? 'failure' : 'success' + const icon = isFailed ? Icon.fail : Icon.success core.info(`Creating check run '${name}' with conclusion '${conclusion}'`) await octokit.checks.create({ @@ -72,12 +87,16 @@ async function main(): Promise { name, conclusion, status: 'completed', - output: result.output, + output: { + title: `${name} ${icon}`, + summary: getReport(result.testRuns, {listSuites, listTests}), + annotations: result.annotations + }, ...github.context.repo }) core.setOutput('conclusion', conclusion) - if (failOnError && !result.success) { + if (failOnError && isFailed) { core.setFailed(`Failed test has been found and 'fail-on-error' option is set to ${failOnError}`) } } diff --git a/src/parsers/dart-json/dart-json-parser.ts b/src/parsers/dart-json/dart-json-parser.ts index 0461629..266d789 100644 --- a/src/parsers/dart-json/dart-json-parser.ts +++ b/src/parsers/dart-json/dart-json-parser.ts @@ -1,9 +1,8 @@ import * as core from '@actions/core' import {Annotation, FileContent, ParseOptions, TestResult} from '../parser-types' -import getReport from '../../report/get-report' import {normalizeFilePath} from '../../utils/file-utils' -import {Icon, fixEol} from '../../utils/markdown-utils' +import {fixEol} from '../../utils/markdown-utils' import { ReportEvent, @@ -72,16 +71,10 @@ class TestCase { export async function parseDartJson(files: FileContent[], options: ParseOptions): Promise { const testRuns = files.map(f => getTestRun(f.path, f.content)) const testRunsResults = testRuns.map(getTestRunResult) - const success = testRuns.every(tr => tr.success) - const icon = success ? Icon.success : Icon.fail return { - success, - output: { - title: `${options.name.trim()} ${icon}`, - summary: getReport(testRunsResults), - annotations: options.annotations ? getAnnotations(testRuns, options.workDir, options.trackedFiles) : undefined - } + testRuns: testRunsResults, + annotations: options.annotations ? getAnnotations(testRuns, options.workDir, options.trackedFiles) : [] } } diff --git a/src/parsers/dotnet-trx/dotnet-trx-parser.ts b/src/parsers/dotnet-trx/dotnet-trx-parser.ts index c26eff1..15841eb 100644 --- a/src/parsers/dotnet-trx/dotnet-trx-parser.ts +++ b/src/parsers/dotnet-trx/dotnet-trx-parser.ts @@ -5,7 +5,7 @@ import {Annotation, FileContent, ParseOptions, TestResult} from '../parser-types import {parseStringPromise} from 'xml2js' import {normalizeFilePath} from '../../utils/file-utils' -import {Icon, fixEol} from '../../utils/markdown-utils' +import {fixEol} from '../../utils/markdown-utils' import {parseIsoDate, parseNetDuration} from '../../utils/parse-utils' import { @@ -15,7 +15,6 @@ import { TestGroupResult, TestCaseResult } from '../../report/test-results' -import getReport from '../../report/get-report' class TestClass { constructor(readonly name: string) {} @@ -54,16 +53,9 @@ export async function parseDotnetTrx(files: FileContent[], options: ParseOptions testClasses.push(...tc) } - const success = testRuns.every(tr => tr.result === 'success') - const icon = success ? Icon.success : Icon.fail - return { - success, - output: { - title: `${options.name.trim()} ${icon}`, - summary: getReport(testRuns), - annotations: options.annotations ? getAnnotations(testClasses, options.workDir, options.trackedFiles) : undefined - } + testRuns, + annotations: options.annotations ? getAnnotations(testClasses, options.workDir, options.trackedFiles) : [] } } diff --git a/src/parsers/jest-junit/jest-junit-parser.ts b/src/parsers/jest-junit/jest-junit-parser.ts index e314563..f32cfe3 100644 --- a/src/parsers/jest-junit/jest-junit-parser.ts +++ b/src/parsers/jest-junit/jest-junit-parser.ts @@ -3,7 +3,7 @@ import {Annotation, FileContent, ParseOptions, TestResult} from '../parser-types import {parseStringPromise} from 'xml2js' import {JunitReport, TestCase, TestSuite} from './jest-junit-types' -import {fixEol, Icon} from '../../utils/markdown-utils' +import {fixEol} from '../../utils/markdown-utils' import {normalizeFilePath} from '../../utils/file-utils' import { @@ -13,7 +13,6 @@ import { TestGroupResult, TestCaseResult } from '../../report/test-results' -import getReport from '../../report/get-report' export async function parseJestJunit(files: FileContent[], options: ParseOptions): Promise { const junit: JunitReport[] = [] @@ -26,16 +25,9 @@ export async function parseJestJunit(files: FileContent[], options: ParseOptions testRuns.push(tr) } - const success = testRuns.every(tr => tr.result === 'success') - const icon = success ? Icon.success : Icon.fail - return { - success, - output: { - title: `${options.name.trim()} ${icon}`, - summary: getReport(testRuns), - annotations: options.annotations ? getAnnotations(junit, options.workDir, options.trackedFiles) : undefined - } + testRuns, + annotations: options.annotations ? getAnnotations(junit, options.workDir, options.trackedFiles) : [] } } diff --git a/src/parsers/parser-types.ts b/src/parsers/parser-types.ts index 9294b39..3ac4e92 100644 --- a/src/parsers/parser-types.ts +++ b/src/parsers/parser-types.ts @@ -1,6 +1,5 @@ -import {Endpoints} from '@octokit/types' +import {TestRunResult} from '../report/test-results' -export type OutputParameters = Endpoints['POST /repos/{owner}/{repo}/check-runs']['parameters']['output'] export type Annotation = { path: string start_line: number @@ -18,13 +17,12 @@ export type ParseTestResult = (files: FileContent[], options: ParseOptions) => P export type FileContent = {path: string; content: string} export interface ParseOptions { - name: string annotations: boolean workDir: string trackedFiles: string[] } export interface TestResult { - success: boolean - output: OutputParameters + testRuns: TestRunResult[] + annotations: Annotation[] } diff --git a/src/report/get-report.ts b/src/report/get-report.ts index f5d2035..cbc2a45 100644 --- a/src/report/get-report.ts +++ b/src/report/get-report.ts @@ -3,16 +3,50 @@ import {TestExecutionResult, TestRunResult, TestSuiteResult} from './test-result import {Align, Icon, link, table} from '../utils/markdown-utils' import {slug} from '../utils/slugger' -export default function getReport(results: TestRunResult[]): string { +export interface ReportOptions { + listSuites?: 'all' | 'only-failed' + listTests?: 'all' | 'only-failed' | 'none' +} + +export function getReport(results: TestRunResult[], options: ReportOptions = {}): string { + const maxReportLength = 65535 + const sections: string[] = [] + const badge = getBadge(results) - const runsSummary = results.map(getRunSummary).join('\n\n') - const suites = results - .flatMap(tr => tr.suites) - .map((ts, i) => getSuiteSummary(ts, i)) - .join('\n') + sections.push(badge) - const suitesSection = `# Test Suites\n\n${suites}` - return [badge, runsSummary, suitesSection].join('\n\n') + const runsSummary = results.map((tr, i) => getRunSummary(tr, i, options)).join('\n\n') + sections.push(runsSummary) + + if (options.listTests !== 'none') { + const suitesSummary = results + .map((tr, runIndex) => { + const suites = options.listSuites === 'only-failed' ? tr.failedSuites : tr.suites + return suites + .map((ts, suiteIndex) => getSuiteSummary(ts, runIndex, suiteIndex, options)) + .filter(str => str !== '') + }) + .flat() + .join('\n') + + const suitesSection = `# Test Suites\n\n${suitesSummary}` + sections.push(suitesSection) + } + + const report = sections.join('\n\n') + if (report.length > maxReportLength) { + let msg = `**Check Run summary limit of ${maxReportLength} chars was exceed**` + if (options.listTests !== 'all') { + msg += '\n- Consider setting `list-tests` option to `only-failed` or `none`' + } + if (options.listSuites !== 'all') { + msg += '\n- Consider setting `list-suites` option to `only-failed`' + } + + return `${badge}\n\n${msg}` + } + + return report } function getBadge(results: TestRunResult[]): string { @@ -36,36 +70,49 @@ function getBadge(results: TestRunResult[]): string { return `![${text}](https://img.shields.io/badge/${uri})` } -function getRunSummary(tr: TestRunResult): string { +function getRunSummary(tr: TestRunResult, runIndex: number, options: ReportOptions): string { core.info('Generating check run summary') const time = `${(tr.time / 1000).toFixed(3)}s` const headingLine1 = `### ${tr.path}` const headingLine2 = `**${tr.tests}** tests were completed in **${time}** with **${tr.passed}** passed, **${tr.skipped}** skipped and **${tr.failed}** failed.` - const suitesSummary = tr.suites.map((s, i) => { + const suites = options.listSuites === 'only-failed' ? tr.failedSuites : tr.suites + const suitesSummary = suites.map((s, suiteIndex) => { const icon = getResultIcon(s.result) const tsTime = `${s.time}ms` const tsName = s.name - const tsAddr = makeSuiteSlug(i, tsName).link + const tsAddr = makeSuiteSlug(runIndex, suiteIndex, tsName).link const tsNameLink = link(tsName, tsAddr) return [icon, tsNameLink, s.tests, tsTime, s.passed, s.skipped, s.failed] }) - const summary = table( - ['Result', 'Suite', 'Tests', 'Time', `Passed ${Icon.success}`, `Skipped ${Icon.skip}`, `Failed ${Icon.fail}`], - [Align.Center, Align.Left, Align.Right, Align.Right, Align.Right, Align.Right, Align.Right], - ...suitesSummary - ) + const summary = + suites.length === 0 + ? '' + : table( + ['Result', 'Suite', 'Tests', 'Time', `Passed ${Icon.success}`, `Skipped ${Icon.skip}`, `Failed ${Icon.fail}`], + [Align.Center, Align.Left, Align.Right, Align.Right, Align.Right, Align.Right, Align.Right], + ...suitesSummary + ) return [headingLine1, headingLine2, summary].join('\n\n') } -function getSuiteSummary(ts: TestSuiteResult, index: number): string { +function getSuiteSummary(ts: TestSuiteResult, runIndex: number, suiteIndex: number, options: ReportOptions): string { + const groups = options.listTests === 'only-failed' ? ts.failedGroups : ts.groups + if (groups.length === 0) { + return '' + } + const icon = getResultIcon(ts.result) - const content = ts.groups + const content = groups .map(grp => { + const tests = options.listTests === 'only-failed' ? grp.failedTests : grp.tests + if (tests.length === 0) { + return '' + } const header = grp.name ? `### ${grp.name}\n\n` : '' - const tests = table( + const testsTable = table( ['Result', 'Test', 'Time'], [Align.Center, Align.Left, Align.Right], ...grp.tests.map(tc => { @@ -76,19 +123,19 @@ function getSuiteSummary(ts: TestSuiteResult, index: number): string { }) ) - return `${header}${tests}\n` + return `${header}${testsTable}\n` }) .join('\n') const tsName = ts.name - const tsSlug = makeSuiteSlug(index, tsName) + const tsSlug = makeSuiteSlug(runIndex, suiteIndex, tsName) const tsNameLink = `${tsName}` return `## ${tsNameLink} ${icon}\n\n${content}` } -function makeSuiteSlug(index: number, name: string): {id: string; link: string} { - // use "ts-$index-" as prefix to avoid slug conflicts after escaping the paths - return slug(`ts-${index}-${name}`) +function makeSuiteSlug(runIndex: number, suiteIndex: number, name: string): {id: string; link: string} { + // use prefix to avoid slug conflicts after escaping the paths + return slug(`r${runIndex}s${suiteIndex}-${name}`) } function getResultIcon(result: TestExecutionResult): string { diff --git a/src/report/test-results.ts b/src/report/test-results.ts index 630f41a..922d9d8 100644 --- a/src/report/test-results.ts +++ b/src/report/test-results.ts @@ -22,6 +22,10 @@ export class TestRunResult { get result(): TestExecutionResult { return this.suites.some(t => t.result === 'failed') ? 'failed' : 'success' } + + get failedSuites(): TestSuiteResult[] { + return this.suites.filter(s => s.result === 'failed') + } } export class TestSuiteResult { @@ -47,6 +51,10 @@ export class TestSuiteResult { get result(): TestExecutionResult { return this.groups.some(t => t.result === 'failed') ? 'failed' : 'success' } + + get failedGroups(): TestGroupResult[] { + return this.groups.filter(grp => grp.result === 'failed') + } } export class TestGroupResult { @@ -68,6 +76,10 @@ export class TestGroupResult { get result(): TestExecutionResult { return this.tests.some(t => t.result === 'failed') ? 'failed' : 'success' } + + get failedTests(): TestCaseResult[] { + return this.tests.filter(tc => tc.result === 'failed') + } } export class TestCaseResult { diff --git a/src/utils/github-utils.ts b/src/utils/github-utils.ts index a691492..0421592 100644 --- a/src/utils/github-utils.ts +++ b/src/utils/github-utils.ts @@ -14,16 +14,11 @@ export function getCheckRunSha(): string { } export function enforceCheckRunLimits(result: TestResult, maxAnnotations: number): void { - const output = result.output - if (!output) { - return - } - // Limit number of created annotations - output.annotations?.splice(maxAnnotations + 1) + result.annotations.splice(maxAnnotations + 1) // Limit number of characters in annotation fields - for (const err of output.annotations ?? []) { + for (const err of result.annotations) { err.title = ellipsis(err.title || '', 255) err.message = ellipsis(err.message, 65535) }