
Company News
Socket Named Top Sales Organization by RepVue
Socket won two 2026 Reppy Awards from RepVue, ranking in the top 5% of all sales orgs. AE Alexandra Lister shares what it's like to grow a sales career here.
@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).
The npm package @kamiazya/jest-dynamic receives a total of 12 weekly downloads. As such, @kamiazya/jest-dynamic popularity was classified as not popular.
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.

Company News
Socket won two 2026 Reppy Awards from RepVue, ranking in the top 5% of all sales orgs. AE Alexandra Lister shares what it's like to grow a sales career here.

Security News
NIST will stop enriching most CVEs under a new risk-based model, narrowing the NVD's scope as vulnerability submissions continue to surge.

Company News
/Security News
Socket is an initial recipient of OpenAI's Cybersecurity Grant Program, which commits $10M in API credits to defenders securing open source software.