babel-jest
Advanced tools
Changelog
29.0.0
[expect]
[BREAKING] Differentiate between MatcherContext
MatcherUtils
and MatcherState
types (#13141)[jest-circus]
Add support for test.failing.each
(#13142)[jest-config]
[BREAKING] Make snapshotFormat
default to escapeString: false
and printBasicPrototype: false
(#13036)[jest-config]
[BREAKING] Remove undocumented collectCoverageOnlyFrom
option (#13156)[jest-environment-jsdom]
[BREAKING] Upgrade to jsdom@20
(#13037, #13058)[@jest/globals]
Add jest.Mocked
, jest.MockedClass
, jest.MockedFunction
and jest.MockedObject
utility types (#12727)[jest-mock]
[BREAKING] Refactor Mocked*
utility types. MaybeMockedDeep
and MaybeMocked
became Mocked
and MockedShallow
respectively; only deep mocked variants of MockedClass
, MockedFunction
and MockedObject
are exported (#13123, #13124)[jest-mock]
[BREAKING] Change the default jest.mocked
helper’s behavior to deep mocked (#13125)[jest-snapshot]
[BREAKING] Let babel
find config when updating inline snapshots (#13150)[@jest/test-result, @jest/types]
[BREAKING] Replace Bytes
and Milliseconds
types with number
(#13155)[jest-worker]
Adds workerIdleMemoryLimit
option which is used as a check for worker memory leaks >= Node 16.11.0 and recycles child workers as required (#13056, #13105, #13106, #13107)[pretty-format]
[BREAKING] Remove ConvertAnsi
plugin in favour of jest-serializer-ansi-escapes
(#13040)[pretty-format]
Allow to opt out from sorting object keys with compareKeys: null
(#12443)[jest-config]
Fix testing multiple projects with TypeScript config files (#13099)[@jest/expect-utils]
Fix deep equality of ImmutableJS Record (#13055)[jest-haste-map]
Increase the maximum possible file size that jest-haste-map can handle (#13094)[jest-runtime]
Properly support CJS re-exports from dual packages (#13170)[jest-snapshot]
Make prettierPath
optional in SnapshotState
(#13149)[jest-snapshot]
Fix parsing error from inline snapshot files with JSX
(#12760)[jest-worker]
When a process runs out of memory worker exits correctly and doesn't spin indefinitely (#13054)[*]
[BREAKING] Drop support for Node v12 and v17 (#13033)[docs]
Fix webpack name (#13049)[docs]
Explicit how to set n
for --bail
(#13128)[docs]
Update Enzyme URL (#13166)[jest-leak-detector]
Remove support for weak-napi
(#13035)[jest-snapshot]
[BREAKING] Require rootDir
as argument to SnapshotState
(#13150)Changelog
26.0.1
[jest-circus]
Backward compatibility for deprecated DescribeBlock.tests
to not break e.g. Detox reporterChangelog
26.0.0
[jest-environment-jsdom]
[BREAKING] Upgrade jsdom
to v16 (#9606)[@jest/fake-timers]
Add possibility to use a modern implementation of fake timers, backed by @sinonjs/fake-timers
(#7776)[jest-runtime]
Add createMockFromModule
as an alias for genMockFromModule
(#9962)[babel-jest]
Handle null
being passed to createTransformer
(#9955)[jest-circus, jest-console, jest-jasmine2, jest-reporters, jest-util, pretty-format]
Fix time durating formatting and consolidate time formatting code (#9765)[jest-circus]
[BREAKING] Fail tests if a test takes a done callback and have return values (#9129)[jest-circus]
[BREAKING] Throw a proper error if a test / hook is defined asynchronously (#8096)[jest-circus]
Throw more descriptive error if hook is defined inside test (#9957)[jest-circus]
[BREAKING] Align execution order of tests to match jasmine
's top to bottom order (#9965)[jest-config, jest-resolve]
[BREAKING] Remove support for browser
field (#9943)[jest-haste-map]
Stop reporting files as changed when they are only accessed (#7347)[jest-resolve]
Show relative path from root dir for module not found
errors (#9963)[jest-runtime]
Fix absolute path moduleNameMapper + jest.mock bug (#8727)[*]
[BREAKING] TypeScript definitions requires a minimum of TypeScript v3.8 (#9823)[*]
[BREAKING] Drop support for Node 8 (#9423)[*]
Upgrade to chalk@4 (#9752)[*]
Remove usage of realpath-native
(#9952)[docs]
Fix example reference implementation to use Jest with Phabricator (#8662)[docs]
Added default compiler to transform (#8583)[docs]
Updated Testing Frameworks guide with React; make it generic (#9106)[expect, jest-mock, pretty-format]
[BREAKING] Remove build-es5
from package (#9945)[@jest/fake-timers, @jest/environment]
[BREAKING] Rename LolexFakeTimers
to ModernFakeTimers
(#9960)[jest-haste-map]
[BREAKING] removed providesModuleNodeModules
(#8535)[jest-runtime]
[BREAKING] Remove long-deprecated require.requireActual
and require.requireMock
methods (#9854)Changelog
25.3.0
[babel-jest]
Support passing supportsDynamicImport
and supportsStaticESM
(#9766)[babel-preset-jest]
Enable all syntax plugins not enabled by default that works on current version of Node (#9774)[jest-circus]
Enable writing async test event handlers (#9397)[jest-runtime, @jest/transformer]
Support passing supportsDynamicImport
and supportsStaticESM
(#9597)Changelog
25.2.0
[jest-config]
Support ESM config files with .js
extension (#9573).[jest-runtime]
Override module.createRequire
to return a Jest-compatible require
function (#9469)[jest-haste-map]
[BREAKING] Remove mapper
option (#9581)[*]
Support array of paths for moduleNameMapper
aliases (#9465)[jest-reporters]
Adds ability to pass options to the istanbul-reporter through coverageReporters
(#9572)[jest-runtime]
Require stack when a module cannot be resolved (#9681)[jest-transform]
writeCacheFile
no longer calls fsync
(#9695)[expect]
Handle readonly properties correctly (#9575)[jest-cli]
Set coverageProvider
correctly when provided in config (#9562)[jest-cli]
Allow specifying .cjs
and .mjs
config files by --config
CLI option (#9578)[jest-cli]
Update yargs to fix CLI flag overriding (#9519)[jest-config]
Treat setupFilesAfterEnv
like setupFiles
when normalizing configs against presets (#9495)[jest-config]
Support .mjs
config files on Windows as well (#9558)[jest-config]
Verify rootDir
and all roots
are directories (#9569)[jest-config]
Ensure pattern of replacePosixSep
is a string (#9546)[jest-haste-map]
Fix crash on unix based systems without find (#9579)[jest-jasmine2]
Fix --testNamePattern
matching with concurrent
tests (#9090)[jest-matcher-utils]
Fix diff highlight of symbol-keyed object. (#9499)[@jest/reporters]
Notifications should be fire&forget rather than having a timeout (#9567)[jest-resolve]
Fix module identity preservation with symlinks and browser field resolution (#9511)[jest-resolve]
Do not confuse directories with files (#8912)[jest-resolve]
moduleNameMapper
should take precedence over Node core modules (#9563)[jest-runtime]
Reset isolateModules
if it fails (#9541)[jest-runtime]
Yarn PnP errors displayed to the user (#9681)[jest-snapshot]
Downgrade semver to v6 to support node 8 (#9451)[jest-snapshot]
Properly indent new snapshots in the presences of existing ones (#9523)[jest-transform]
Correct sourcemap behavior for transformed and instrumented code (#9460)[jest-transform]
Allow instrumentation of transformed files with weird file extensions (#9589)[@jest/types]
Make ConfigGlobals
an interface to allow for declaration merging. (#9570)[pretty-format]
Export OldPlugin
type (#9491)[docs]
Warn about unexpected behavior / bug of node-notifier when using the notify
options.[docs]
Grammatical corrections to Async docs page. (#9679)[jest-resolver]
Use resolve
package to implement custom module resolution (#9520)[jest-runtime]
Move execution of setupFiles
to jest-runner
(#9596)[jest-runtime]
Update anchor link in helpers
(#9616)[@jest/reporters]
Remove unused dependencies and type exports (#9462)[website]
Update pictures of reports when matchers fail (#9214)[jest-haste-map]
Reduce number of lstat
calls in node crawler (#9514)Changelog
jest 15.0.1
--bail
option.Changelog
jest 15.0.0
.spec.js
and .test.js
as test files.--env
option to override the default test environment.--watchAll
, made --watch
interactive and added the ability to update snapshots and select test patterns in watch mode.testEnvironment
resolution to prefer jest-environment-{name}
instead of {name}
only. This prevents a module collision when using jsdom
as test environment.moduleNameMapper
now uses a resolution algorithm.global.global
to the node environment.mock
.collectCoverageFrom
to collect code coverage from untested files.Changelog
24.0.0
[jest-each]
[BREAKING] Add primitive pretty printing for interpolated titles (#7694)[jest-runtime]
Add jest.isolateModules
for scoped module initialization (#6701)[jest-diff]
[BREAKING] Support diffing numbers and booleans instead of returning null for different ones (#7605)[jest-diff]
[BREAKING] Replace diff
with diff-sequences
package (#6961)[jest-cli]
[BREAKING] Only set error process error codes when they are non-zero (#7363)[jest-config]
[BREAKING] Deprecate setupTestFrameworkScriptFile
in favor of new setupFilesAfterEnv
(#7119)[jest-worker]
[BREAKING] Add functionality to call a setup
method in the worker before the first call and a teardown
method when ending the farm (#7014)[jest-config]
[BREAKING] Set default notifyMode
to failure-change
(#7024)[jest-haste-map]
[BREAKING] Remove support for @providesModule
(#6104)[jest-haste-map]
[BREAKING] Replace internal data structures to improve performance (#6960)[jest-haste-map]
[BREAKING] Use relative paths to allow remote caching (#7020)[jest-haste-map]
[BREAKING] Remove name from hash in HasteMap.getCacheFilePath
(#7218)[babel-preset-jest]
[BREAKING] Export a function instead of an object for Babel 7 compatibility (#7203)[jest-haste-map]
[BREAKING] Expose relative paths when getting the file iterator (#7321)[jest-cli]
[BREAKING] Run code transforms over global{Setup,Teardown}
(#7562)[jest-haste-map]
Add hasteFS.getSize(path)
(#7580)[jest-cli]
Print version ending in -dev
when running a local Jest clone (#7582)[jest-cli]
Add Support for globalSetup
and globalTeardown
in projects (#6865)[jest-runtime]
Add extraGlobals
to config to load extra global variables into the execution vm (#7454)[jest-util]
Export specialChars
containing Unicode characters and ANSI escapes for console output (#7532)[jest-config]
Handle typescript (ts
and tsx
) by default (#7533)[jest-validate]
Add support for comments in package.json
using a "//"
key (#7295)[jest-config]
Add shorthand for watch plugins and runners (#7213)[jest-jasmine2/jest-circus/jest-cli]
Add test.todo (#6996)[pretty-format]
Option to not escape strings in diff messages (#5661)[jest-haste-map]
Add getFileIterator
to HasteFS
for faster file iteration (#7010)[jest-config]
Add readConfigs
function, previously in jest-cli
(#7096)[jest-snapshot]
Enable configurable snapshot paths (#6143)[pretty-format]
Support HTMLCollection and NodeList in DOMCollection plugin (#7125)[jest-runtime]
Pass the normalized configuration to script transformers (#7148)[expect]
Improve report when assertion fails, part 3 (#7152)[jest-runtime]
If require
fails without a file extension, print all files that match with one (#7160)[jest-haste-map]
Make ignorePattern
optional (#7166)[jest-haste-map]
Add getCacheFilePath
to get the path to the cache file for a HasteMap
instance (#7217)[jest-runtime]
Remove cacheDirectory
from ignorePattern
for HasteMap
if not necessary (#7166)[jest-validate]
Add syntax to validate multiple permitted types (#7207)[jest-config]
Accept an array as as well as a string for testRegex
(#7209)[expect/jest-matcher-utils]
Improve report when assertion fails, part 4 (#7241)[expect/jest-matcher-utils]
Improve report when assertion fails, part 5 (#7557)[expect]
Check constructor equality in .toStrictEqual() (#7005)[jest-util]
Add jest.getTimerCount()
to get the count of scheduled fake timers (#7285)[jest-config]
Add dependencyExtractor
option to use a custom module to extract dependencies from files (#7313, #7349, #7350, #7362)[jest-haste-map]
Accept a getCacheKey
method in hasteImplModulePath
modules to reset the cache when the logic changes (#7350)[jest-config]
Add haste.computeSha1
option to compute the sha-1 of the files in the haste map (#7345)[expect]
expect(Infinity).toBeCloseTo(Infinity)
Treats Infinity
as equal in toBeCloseTo matcher (#7405)[jest-worker]
Add node worker-thread support to jest-worker (#7408)[jest-config]
Allow bail
setting to be configured with a number allowing tests to abort after n
of failures (#7335)[jest-config]
Allow % based configuration of --max-workers
(#7494)[jest-runner]
Instantiate the test environment class with the current testPath
(#7442)[jest-config]
Always resolve jest-environment-jsdom from jest-config (#7476)[expect]
Improve report when assertion fails, part 6 (#7621)[jest-worker]
Add enableWorkerThreads
option to explicitly opt-in to worker_threads
if available (#7681)[expect]
Accept inherited properties in toHaveProperty
matcher (#7686)[jest-diff]
Do not claim that -0
and 0
have no visual difference (#7605)[jest-mock]
Fix automock for numeric function names (#7653)[jest-config]
Ensure existsSync
is only called with a string parameter (#7607)[expect]
toStrictEqual
considers sparseness of arrays. (#7591)[jest-cli]
Fix empty coverage data for untested files (#7388)[jest-cli]
[BREAKING] Do not use text-summary
coverage reporter by default if other reporters are configured (#7058)[jest-mock]
[BREAKING] Fix bugs with mock/spy result tracking of recursive functions (#6381)[jest-haste-map]
[BREAKING] Recover files correctly after haste name collisions are fixed (#7329)[pretty-format]
[BREAKING] Omit non-enumerable symbol properties (#7448)[*]
[BREAKING] Upgrade to Babel 7, dropping support for Babel 6 (#7016)[jest-cli]
Avoid watch mode causing bad terminal behavior in some cases (#7523)[jest-runner/jest-worker]
Fix missing console output in verbose mode (#6871)[expect]
Standardize file naming in expect
(#7306)[jest-each]
Add empty array validation check (#7249)[jest-cli]
Interrupt tests if interactive watch plugin key is pressed (#7222)[jest-each]
Add each array validation check (#7033)[jest-haste-map]
Do not visit again files with the same sha-1 (#6990)[jest-jasmine2]
Fix memory leak in Error objects hold by the framework (#6965)[jest-haste-map]
Fixed Haste whitelist generation for scoped modules on Windows (#6980)[jest-mock]
Fix inheritance of static properties and methods in mocks (#7003)[jest-mock]
Fix mocking objects without Object.prototype
in their prototype chain (#7003)[jest-mock]
Check _isMockFunction
is true rather than truthy on potential mocks (#7017)[jest-cli]
Update jest-cli to show git ref in message when using changedSince
(#7028)[jest-jasmine2
] Fix crash when test return Promise rejected with null (#7049)[jest-runtime]
Check _isMockFunction
is true rather than truthy on potential global mocks (#7017)[jest-jasmine]
Show proper error message from async assert
errors (#6821)[jest-jasmine2]
Better error message when a describe block is empty (#6372)[jest-jasmine2]
Pending calls inside async tests are reported as pending not failed (#6782)[jest-circus]
Better error message when a describe block is empty (#6372)[jest-jasmine2]
Add missing testLocationResults for xit
and fit
(#6482)[expect]
Return false from asymmetric matchers if received value isn’t string (#7107)[jest-cli]
Fix unhandled error when a bad revision is provided to changedSince
(#7115)[jest-config]
Moved dynamically assigned cwd
from jest-cli
to default configuration in jest-config
(#7146)[jest-config]
Fix getMaxWorkers
on termux (#7154)[jest-runtime]
Throw an explicit error if js
is missing from moduleFileExtensions
(#7160)[jest-runtime]
Fix missing coverage when using negative glob pattern in testMatch
(#7170)[*]
Ensure maxWorkers
is at least 1 (was 0 in some cases where there was only 1 CPU) (#7182)[jest-runtime]
Fix transform cache invalidation when requiring a test file from multiple projects (#7186)[jest-changed-files]
Return correctly the changed files when using lastCommit=true
on Mercurial repositories (#7228)[babel-jest]
Cache includes babel environment variables (#7239)[jest-config]
Use strings instead of RegExp
instances in normalized configuration (#7251)[jest-circus]
Make sure to display real duration even if time is mocked (#7264)[expect]
Improves the failing message for toStrictEqual
matcher. (#7224)[expect]
Improves the failing message for toEqual
matcher. (#7325)[jest-resolve]
Fix not being able to resolve path to mapped file with custom platform (#7312)[jest-message-util]
Improve parsing of error messages for unusually formatted stack traces (#7319)[jest-runtime]
Ensure error message text is not lost on errors with code frames (#7319)[jest-haste-map]
Fix to resolve path that is start with words same as rootDir (#7324)[expect]
Fix toMatchObject matcher when used with Object.create(null)
(#7334)[jest-haste-map]
Remove legacy condition for duplicate module detection (#7333)[jest-haste-map]
Fix require
detection with trailing commas and ignore import typeof
modules (#7385)[jest-cli]
Fix to set prettierPath via config file (#7412)[expect]
Test more precisely for class instance getters (#7477)[jest-cli]
Support dashed args (#7497)[jest-cli]
Fix to run in band tests if watch mode enable when runInBand arg used (#7518)[jest-runtime]
Fix mistake as test files when run coverage issue. (#7506)[jest-cli]
print info about passWithNoTests flag (#7309)[pretty-format]
Omit unnecessary symbol filter for object keys (#7457)[jest-runtime]
Fix requireActual
on node_modules with mock present (#7404)[jest-resolve]
Fix isBuiltinModule
to support versions of node without module.builtinModules
(#7565)[babel-jest]
Set cwd
to be resilient to it changing during the runtime of the tests (#7574)[jest-snapshot]
Write and read snapshots from disk even if fs
is mocked (#7080)[jest-config]
Normalize config.cwd
and config.rootDir
using `realpath (#7598)[jest-environment-node]
Fix buffer property is not ArrayBuffer issue. (#7626)[babel-plugin-jest-hoist]
Ignore TS type annotations when looking for out-of-scope references (#7641)[jest-config]
Add name to project if one does not exist to pick correct resolver (#5862)[jest-runtime]
Pass watchPathIgnorePatterns
to Haste instance (#7585)[jest-runtime]
Resolve mock files via Haste when using require.resolve
(#7687)[*]
[BREAKING] Require Node.js 6+ for all packages (#7258)[jest-util]
[BREAKING] Remove long-deprecated globals for fake timers (#7285)[*]
[BREAKING] Upgrade to Micromatch 3 (#6650)[*]
[BREAKING] Remove regenerator-runtime injection (#7595)[jest-worker]
Disable worker_threads
to avoid issues with libraries to ready for it (#7681)[docs]
Fix message property in custom matcher example to return a function instead of a constant. (#7426)[jest-circus]
Standardize file naming in jest-circus
(#7301)[docs]
Add synchronous test.each setup (#7150)[docs]
Add this.extend
to the Custom Matchers API reference (#7130)[docs]
Fix default value for coverageReporters
value in configuration docs (#7126)[docs]
Add link for jest-extended in expect docs (#7078)[jest-util]
Add ErrorWithStack class (#7067)[docs]
Document --runTestsByPath
CLI parameter (#7046)[docs]
Fix babel-core installation instructions (#6745)[docs]
Explain how to rewrite assertions to avoid large irrelevant diff (#6971)[examples]
add example using Babel 7 (#6983)[docs]
Replace shallow equality with referential identity in ExpectAPI.md
(#6991)[jest-changed-files]
Refactor to use execa
over child_process
(#6987)[*]
Bump dated dependencies (#6978)[scripts]
Don’t make empty sub-folders for ignored files in build folder (#7001)[docs]
Add missing export statement in puppeteer_environment.js
under docs/Puppeteer.md
(#7127)[docs]
Removed useless expect.assertions in TestingAsyncCode.md
(#7131)[docs]
Remove references to @providesModule
which isn't supported anymore (#7147)[docs]
Update setupFiles
documentation for clarity (#7187)[docs]
Change require.require*
to jest.require*
(#7210)[jest-circus]
Add readme.md (#7198)[jest-editor-support]
Remove from the repository (#7232)[jest-test-typescript-parser]
Remove from the repository (#7232)[tests]
Free tests from the dependency on value of FORCE_COLOR (#6585)[*]
Add babel plugin to make sure Jest is unaffected by fake Promise implementations (#7225)[docs]
Add correct default value for testUrl
config option (#7277)[docs]
Remove duplicate code in MockFunctions
(#7297)[*]
Add check for Facebook copyright headers on CI (#7370)[*]
Update Facebook copyright headers (#7589)[jest-haste-map]
Refactor dependencyExtractor
and tests (#7385)[docs]
Clearify conditional setting of NODE_ENV
(#7369)[docs]
Clarify conditional setting of NODE_ENV
(#7369)[*]
Standardize file names (#7316, #7266, #7238, #7314, #7467, #7464), #7471)[docs]
Add testPathIgnorePatterns
in CLI documentation (#7440)[docs]
Removed misleading text about describe()
grouping together tests into a test suite (#7434)[diff-sequences]
Add performance benchmark to package (#7603)[*]
Replace as many Object.assign
with object spread as possible (#7627)[ci]
Initial support for Azure Pipelines (#7556)[jest-mock]
Improve getType
function performance. (#7159)