Research
Security News
Threat Actor Exposes Playbook for Exploiting npm to Build Blockchain-Powered Botnets
A threat actor's playbook for exploiting the npm ecosystem was exposed on the dark web, detailing how to build a blockchain-powered botnet.
@jest/reporters
Advanced tools
The @jest/reporters package provides utilities for handling and customizing the output of test results when using Jest, a popular JavaScript testing framework. It allows developers to create custom reporters to modify how test results are reported, making it easier to integrate with various CI tools, generate reports in different formats, or enhance the testing experience with additional logging and notifications.
Custom Test Reporter
This feature allows developers to create a custom test reporter by implementing methods that Jest calls at different stages of the test run. The example shows a basic custom reporter that logs messages at the start and end of the test suite, as well as after each test result.
class MyCustomReporter {
onRunStart(results, options) {
console.log('Test suite started');
}
onTestResult(test, testResult, aggregatedResult) {
console.log(`Test ${test.path} finished with ${testResult.numFailingTests} failures`);
}
onRunComplete(contexts, results) {
console.log('All tests completed');
}
}
module.exports = MyCustomReporter;
Similar to @jest/reporters, mocha-reporter is used with the Mocha testing framework to customize the output of test results. While @jest/reporters is specific to Jest, mocha-reporter offers similar customization capabilities for those using Mocha, allowing for a tailored reporting experience depending on the user's needs.
This package is a plugin for the Karma test runner that provides detailed HTML reporting for tests written with Jasmine. It's similar to @jest/reporters in that it enhances the reporting capabilities of test results, but it is specifically designed for use with Karma and Jasmine, showcasing a more visual and interactive report compared to the typically console-based reports of @jest/reporters.
27.0.0
[babel-jest]
Add async transformation (#11192)[jest-changed-files]
Use '--' to separate paths from revisions (#11160)[jest-circus]
[BREAKING] Fail tests when multiple done()
calls are made (#10624)[jest-circus, jest-jasmine2]
[BREAKING] Fail the test instead of just warning when describe returns a value (#10947)[jest-config]
[BREAKING] Default to Node testing environment instead of browser (JSDOM) (#9874)[jest-config]
[BREAKING] Use jest-circus
as default test runner (#10686)[jest-config]
Add support for preset
written in ESM (#11200)[jest-config, jest-runtime]
Support ESM for files other than .js
and .mjs
(#10823)[jest-config, jest-runtime]
[BREAKING] Use "modern" implementation as default for fake timers (#10874 & #11197)[jest-config
Allow passing forceNodeFilesystemAPI
through to jest-haste-map
(#11264)[jest-config, jest-haste-map, jest-resolve, jest-runner, jest-runtime, jest-test-sequencer, jest-transform, jest-types]
[BREAKING] Add custom HasteMap class implementation config option (#11107)[jest-core]
make TestWatcher
extend emittery
(#10324)[jest-core]
Run failed tests interactively the same way we do with snapshots (#10858)[jest-core]
more TestSequencer
methods can be async (#10980)[jest-core]
Add support for testSequencer
written in ESM (#11207)[jest-core]
Add support for globalSetup
and globalTeardown
written in ESM (#11267)[jest-core]
Add support for watchPlugins
written in ESM (#11315)[jest-core]
Add support for runner
written in ESM (#11232)[jest-core]
Add support for reporters
written in ESM (#11427)[jest-each]
Add support for interpolation with object properties (#11388)[jest-environment-node]
Add AbortController to globals (#11182)[@jest/fake-timers]
Update to @sinonjs/fake-timers
to v7 (#11198)[jest-haste-map]
Handle injected scm clocks (#10966)[jest-haste-map]
Add enableSymlinks
configuration option to follow symlinks for test files (#9351)[jest-repl, jest-runner]
[BREAKING] Run transforms over environment (#8751)[jest-repl]
Add support for testEnvironment
written in ESM (#11232)[jest-reporters]
Add static filepath property to all reporters (#11015)[jest-runner]
[BREAKING] set exit code to 1 if test logs after teardown (#10728)[jest-runner]
[BREAKING] Run transforms over runner
(#8823)[jest-runner]
[BREAKING] Run transforms over testRunner
(#8823)[jest-runner]
Possibility to use ESM for test environment (11033)[jest-runner]
Add support for testRunner
written in ESM (#11232)[jest-runtime]
Detect reexports from CJS as named exports in ESM (#10988)[jest-runtime]
Support for async code transformations (#11191 & #11220)[jest-snapshot]
[BREAKING] Make prettier optional for inline snapshots - fall back to string replacement (#7792 & #11192)[jest-snapshot]
[BREAKING] Run transforms over snapshotResolver
(#8829)[jest-transform]
Pass config options defined in Jest's config to transformer's process
and getCacheKey
functions (#10926)[jest-transform]
Add support for transformers written in ESM (#11163)[jest-transform]
[BREAKING] Do not export ScriptTransformer
class, instead export the async function createScriptTransformer
(#11163)[jest-transform]
Async code transformations (#9889)[jest-transform]
Support transpiled transformers (#11193)[jest-transform]
[BREAKING] requireAndTranspileModule
always return a Promise
, and the third parameter type is changed to RequireAndTranspileModuleOptions
which accept applyInteropRequireDefault
option (#11232)[jest-transform]
[BREAKING] createTranspilingRequire
return function which return a Promise
now (#11232)[jest-util]
add requireOrImportModule for importing CJS or ESM (#11199)[jest-util]
add applyInteropRequireDefault
option on requireOrImportModule
(#11232)[jest-watcher]
Added support for clearing the line when <C-u>
is pressed in a watch mode pattern prompt (#11358)[jest-worker]
Add support for custom task queues and adds a PriorityQueue
implementation. (#10921)[jest-worker]
Add in-order scheduling policy to jest worker (10902)[pretty-format]
Better print for sparse arrays (11326)[pretty-print]
Add option printBasicPrototype
which determines whether or not the prototype should be printed for raw objects or arrays (#11441)[babel-plugin-jest-hoist]
Add __dirname
and __filename
to whitelisted globals (#10903)[expect]
[BREAKING] Revise expect.not.objectContaining()
to be the inverse of expect.objectContaining()
, as documented. (#10708)[expect]
[BREAKING] Make toContain
more strict with the received type (#10119 & #10929)[expect]
[BREAKING] matcherResult
on JestAssertionError
are now strings rather than functions (#10989)[jest-circus]
Fixed the issue of beforeAll & afterAll hooks getting executed even if it is inside a skipped describe
block (#10806)[jest-circus]
Fix testLocation
on Windows when using test.each
(#10871)[jest-cli]
Use testFailureExitCode when bailing from a failed test (#10958)[jest-cli]
Print custom error if error thrown from global hooks is not an error already (#11003)[jest-cli]
Allow running multiple "projects" from programmatic API (#11307)[jest-cli]
Fix missing collectCoverage after init (#11353)[jest-cli, jest-config, jest-types]
Move all default values into jest-config
(#9924)[jest-config]
[BREAKING] Change default file extension order by moving json behind ts and tsx (10572)[jest-console]
console.dir
now respects the second argument correctly (#10638)[jest-core]
Don't report PerformanceObserver as open handle (#11123)[jest-core]
Use WeakRef
to hold timers when detecting open handles (#11277)[jest-core]
Correctly detect open handles that were created in test functions using done
callbacks (#11382)[jest-core]
Do not collect RANDOMBYTESREQUEST
as open handles (#11278)[jest-core]
Wait briefly for open handles to close before flagging them when using --detectOpenHandles
(#11429)[jest-diff]
[BREAKING] Use only named exports (#11371)[jest-each]
[BREAKING] Ignore excess words in headings (#8766)[jest-each]
Support array index with template strings (#10763)[jest-each]
Interpolate %%
correctly (#11364)[jest-each]
Fix wrong interpolation when the value of array contains multiple %
(#11364)[jest-environment]
[BREAKING] Drop support for runScript
for test environments (#11155)[jest-environment-jsdom]
Use inner realm’s ArrayBuffer
constructor (#10885)[jest-environment-jsdom]
[BREAKING] Remove Node globals setImmediate
and clearImmediate
(#11222)[jest-get-type]
[BREAKING] Convert to ES Module (#11359)[jest-globals]
[BREAKING] Disallow return values other than a Promise
from hooks and tests (#10512)[jest-globals]
[BREAKING] Disallow mixing a done callback and returning a Promise
from hooks and tests (#10512)[jest-haste-map]
Vendor NodeWatcher
from sane
(#10919)[jest-jasmine2]
Fixed the issue of beforeAll
& afterAll
hooks getting executed even if it is inside a skipped describe
block when it has child tests
marked as either only
or todo
(#10806)[jest-jasmine2]
Fixed the issues of child tests
marked with only
or todo
getting executed even if it is inside a skipped parent describe
block (#10806)[jest-jasmine2]
Wrap all test functions so they open handles that were created in test functions using done
callbacks can be detected (#11382)[jest-reporter]
Handle empty files when reporting code coverage with V8 (#10819)[jest-resolve]
Replace read-pkg-up with escalade package (#10781)[jest-resolve]
Disable jest-pnp-resolver
for Yarn 2 (#10847)[jest-runtime]
[BREAKING] Do not inject global
variable into module wrapper (#10644)[jest-runtime]
[BREAKING] remove long-deprecated jest.addMatchers
, jest.resetModuleRegistry
, and jest.runTimersToTime
(#9853)[jest-runtime]
Fix stack overflow and promise deadlock when importing mutual dependant ES module (#10892)[jest-runtime]
Prevent global module registry from leaking into isolateModules
registry (#10963)[jest-runtime]
Refactor to prevent race condition when linking and evaluating ES Modules (#11150)[jest-runtime]
Throw correct error when attempting to load ESM via require
(#11260)[jest-runtime]
Do not cache modules that throw during evaluation (#11263)[jest-transform]
Show enhanced SyntaxError
message for all SyntaxError
s (#10749)[jest-transform]
[BREAKING] Refactor API to pass an options bag around rather than multiple boolean options (#10753)[jest-transform]
[BREAKING] Refactor API of transformers to pass an options bag rather than separate config
and other options (#10834)[jest-types]
Fix Config.ts
projects
types (#11285)[jest-util]
Replace micromatch with picomatch to fix issues with negated globs (#11287)[jest-validate]
Use en-US
locale to avoid case conversion problems while validating CLI options on machines with some certain locales(e.g. Turkish) set as default locale. (#11412)[jest-worker]
[BREAKING] Use named exports (#10623)[jest-worker]
Do not swallow errors during serialization (#10984)[jest-worker]
Handle ERR_IPC_CHANNEL_CLOSED
errors properly (#11143)[pretty-format]
[BREAKING] Convert to ES Modules (#10515)[pretty-format]
Only call hasAttribute
if it's a function (#11000)[pretty-format]
Handle jsdom attributes properly (#11189)[pretty-format]
Import pretty-format using named imports (#11360)[*]
[BREAKING] Only support Node LTS releases and Node 15 (#10685)[*]
[BREAKING] Add exports
field to all package.json
s (#9921)[*]
Make it easier for Jest's packages to use the VM escape hatch (#10824)[*]
[BREAKING] Remove deprecated mapCoverage
(#9968)[babel-jest]
[BREAKING] Migrate to ESM (#11193)[docs]
Correct example using browser-resolve
(#11140)[docs]
Clarify timers
configuration property (#11376)[jest, jest-core]
[BREAKING] Replace TestScheduler
export with createTestScheduler
(#11427)[jest-config]
[BREAKING] Remove enabledTestsMap
config, use filter
instead (#10787)[jest-console]
[BREAKING] Move root
into config
and take GlobalConfig
as mandatory parameter for getConsoleOutput
(#10126)[jest-console]
Export LogEntry (#11017)[jest-fake-timers]
Clarify global behavior of jest.useFakeTimers
and jest.useRealTimers
(#10867)[jest-haste-map]
[BREAKING] Migrate to ESM (#10875)[jest-haste-map]
[BREAKING] Remove support for deprecated option ignorePattern
as function (#10348)[jest-jasmine2]
[BREAKING] Migrate to ESM (#10906)[jest-jasmine2]
[BREAKING] Remove unused options argument from Env
constructor (#10240)[jest-repl, jest-runtime]
[BREAKING] Move the jest-runtime
CLI into jest-repl
(#10016 & #10925)[jest-resolve]
[BREAKING] Migrate to ESM (#10688)[jest-resolve-dependencies]
[BREAKING] Migrate to ESM (#10876)[jest-mock]
[BREAKING] Migrate to ESM (#10887)[jest-reporters]
[BREAKING] Make node-notifier
a peer dependency (#10977)[jest-resolve, jest-runtime]
[BREAKING] Use Map
s instead of objects for all cached resources (#10968)[jest-runner]
[BREAKING] Migrate to ESM (#10900)[jest-runtime]
[BREAKING] Remove deprecated and unused getSourceMapInfo
from Runtime (#9969)[jest-transformer]
[BREAKING] Remove unused isCoreModule
option (#11166)[jest-util]
No longer checking enumerable
when adding process.domain
(#10862)[jest-validate]
[BREAKING] Remove recursiveBlacklist
option in favor of previously introduced recursiveDenylist
(#10650)[website]
Replace 'Github' with 'GitHub' (#11279)[website]
Remove a language code from the link to the Node.js website (#11282)[website]
Remove a duplicated word (#11281)[website]
Add french to website (#11361)[jest-resolve]
Cache reading and parsing of package.json
s (#11076)[jest-runtime, jest-transform]
share cacheFS
between runtime and transformer (#10901)[jest-runtime]
Load chalk
only once per worker (#10864)[jest-worker]
Fix memory leak of previous task arguments while no new task is scheduled (#11187)FAQs
Jest's reporters
The npm package @jest/reporters receives a total of 17,289,307 weekly downloads. As such, @jest/reporters popularity was classified as popular.
We found that @jest/reporters demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
A threat actor's playbook for exploiting the npm ecosystem was exposed on the dark web, detailing how to build a blockchain-powered botnet.
Security News
NVD’s backlog surpasses 20,000 CVEs as analysis slows and NIST announces new system updates to address ongoing delays.
Security News
Research
A malicious npm package disguised as a WhatsApp client is exploiting authentication flows with a remote kill switch to exfiltrate data and destroy files.