
Security News
Package Maintainers Call for Improvements to GitHub’s New npm Security Plan
Maintainers back GitHub’s npm security overhaul but raise concerns about CI/CD workflows, enterprise support, and token management.
@kamiazya/jest-dynamic
Advanced tools
An extension to dynamically switch the Jest test suite according to the environment (such as platform).
An extension to dynamically switch the Jest test suite according to the environment (such as platform).
When writing a platform-dependent test like this issue, it provides an option to flexibly change the test configuration.
This jest plugin can then be installed using npm:
# yarn
yarn add -D @kamiazya/jest-dynamic
# or npm
npm install --save-dev @kamiazya/jest-dynamic
import { onlyIf, onlyOn, skipIf, skipOn } from '@kamiazya/jest-dynamic';
skipOn(...platforms: NodeJS.Platform)
Using skipOn
will skip the test on the specified platform.
Example
skipOn('darwin')
.describe('Tests not run on Mac', () => {
it('is sample test', () => {
expect(true).toBe(true);
});
});
skipIf(condition: boolean | (() => boolean))
Using skipIf
will skip the test on condition.
Example
skipIf(process.env.NODE_ENV === 'CI')
.describe('This run on local test', () => {
expect(true).toBe(true);
});
onlyOn(...platforms: NodeJS.Platform)
Use onlyOn
to run one test of the block targeted for the specified platform.
Example
onlyOn('darwin', 'linux')
.describe('Run on Mac or Linux', () => {
test('sample', () => {
expect(true).toBe(true);
});
});
onlyOn('win32')
.describe('Run on Windows', () => {
test('sample', () => {
expect(false).toBe(false);
});
});
onlyIf(condition: boolean | (() => boolean))
Use onlyIf
to run one test of the block targeted on condition.
Example
describe('Tests', () => {
onlyIf(process.platform === 'win32')
.it('should be run on Windows', () => {
expect(false).toBe(false);
});
onlyIf(() => process.platform === 'linux')
.test('Run on Linux', () => {
expect(1).toBe(1);
});
});
Example
Conditions can also be set on variables to increase reusability.
const onlyOnLinuxAndMac = onlyOn('linux', 'darwin');
const skipOnLinux = skipOn('linux');
const skipOnMac = skipOn('darwin');
onlyOnLinuxAndMac
.describe('Tests', () => {
skipOnLinux
.test('sample', () => {
expect(false).toBe(false);
});
skipOnMac
.test('sample', () => {
expect(false).toBe(false);
});
});
This software is released under the MIT License, see LICENSE.
FAQs
An extension to dynamically switch the Jest test suite according to the environment (such as platform).
We found that @kamiazya/jest-dynamic demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer 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.
Security News
Maintainers back GitHub’s npm security overhaul but raise concerns about CI/CD workflows, enterprise support, and token management.
Product
Socket Firewall is a free tool that blocks malicious packages at install time, giving developers proactive protection against rising supply chain attacks.
Research
Socket uncovers malicious Rust crates impersonating fast_log to steal Solana and Ethereum wallet keys from source code.