UNPKG

jest-test-each

Version:

run parametrised tests easily [typesafe] without text tables or arrays of arrays.

53 lines (52 loc) 1.51 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.TestEachEnv = exports.testEnvDefault = exports.userEnv = exports.TestEachSetup = exports.testConfig = exports.testConfigDefault = void 0; exports.testConfigDefault = { numericCases: true, groupBySuites: true, groupParentBySuite: true, concurrent: false, testSuiteName: { maxLength: 200, failOnReached: true, }, }; exports.testConfig = { config: exports.testConfigDefault, }; const TestEachSetup = (config) => { exports.testConfig.config = Object.assign(Object.assign({}, exports.testConfig.config), config); }; exports.TestEachSetup = TestEachSetup; exports.userEnv = {}; const envHasPending = () => { try { // test-runner jest-jasmine2 has 'pending', jest-circus doesn't have return !!pending; } catch (err) { return String(err).indexOf('pending is not defined') === -1; } }; const envPending = envHasPending(); const testEnvDefault = () => ({ env: { beforeEach, beforeAll, afterAll, afterEach, it, describe, envHasPending: envPending, pending: (reason) => { if (envPending) { return pending(reason); } }, }, }); exports.testEnvDefault = testEnvDefault; const TestEachEnv = (env) => { exports.userEnv.env = Object.assign(Object.assign({}, exports.testEnvDefault().env), env); }; exports.TestEachEnv = TestEachEnv;