Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
babel-jest
Advanced tools
The babel-jest package is a Jest plugin that makes it easy to use Babel to transform your JavaScript tests. It automatically hooks Babel into Jest and compiles files before running them, allowing you to use the latest JavaScript features and syntax in your test files.
Transforming test files with Babel
This configuration in Jest's setup file tells Jest to use babel-jest for transforming any files that match the regex pattern (in this case, any JavaScript files) before running the tests.
module.exports = {
transform: {
'^.+\\.js$': 'babel-jest'
}
};
Using modern JavaScript syntax in tests
With babel-jest, you can write tests using modern JavaScript features like async/await without worrying about compatibility issues.
test('async/await works', async () => {
const data = await fetchData();
expect(data).toBe('expected data');
});
Custom Babel configuration
babel-jest allows you to specify a custom Babel configuration to tailor the transformation process to your project's needs.
{
'presets': [['@babel/preset-env', { 'targets': { 'node': 'current' } }]],
'plugins': ['@babel/plugin-proposal-class-properties']
}
ts-jest is a TypeScript preprocessor with source map support for Jest. It allows you to use Jest to test projects written in TypeScript. It is similar to babel-jest but specifically tailored for TypeScript rather than general Babel transformations.
jest-transform-stub is a package that allows you to stub out resources, like images or styles, during testing with Jest. It is similar to babel-jest in that it transforms assets, but it focuses on non-JavaScript assets instead of JavaScript code.
jest-vue-preprocessor is a preprocessor for Jest to handle .vue files, allowing you to test Vue components. It is similar to babel-jest in the sense that it preprocesses files for testing, but it is specifically designed for Vue components.
If you are already using jest-cli
, add babel-jest
and it will automatically compile JavaScript code using Babel.
yarn add --dev babel-jest @babel/core
If you would like to write your own preprocessor, uninstall and delete babel-jest and set the config.transform option to your preprocessor.
Note: this step is only required if you are using babel-jest
with additional code preprocessors.
To explicitly define babel-jest
as a transformer for your JavaScript code, map .js files to the babel-jest
module. Typescript files are also supported.
"transform": {
"\\.[jt]sx?$": "babel-jest"
},
29.7.0
[create-jest]
Add npm init
/ yarn create
initialiser for Jest projects (#14465)[jest-validate]
Allow deprecation warnings for unknown options (#14499)[jest-resolver]
Replace unmatched capture groups in moduleNameMapper
with empty string instead of undefined
(#14507)[jest-snapshot]
Allow for strings as well as template literals in inline snapshots (#14465)[@jest/test-sequencer]
Calculate test runtime if perStats.duration
is missing (#14473)[@jest/create-cache-key-function]
Cache access of NODE_ENV
and BABEL_ENV
(#14455)[jest-cli]
Move internal config initialisation logic to the create-jest
package (#14465)FAQs
Jest plugin to use babel for transformation.
The npm package babel-jest receives a total of 29,175,436 weekly downloads. As such, babel-jest popularity was classified as popular.
We found that babel-jest 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
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.