UNPKG

reducer-tester

Version:
36 lines 1.69 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); /* eslint @typescript-eslint/no-explicit-any: 0 */ var snapshot_diff_1 = __importDefault(require("snapshot-diff")); var invariant_1 = __importDefault(require("invariant")); expect.addSnapshotSerializer(snapshot_diff_1.default.getSnapshotDiffSerializer()); function reducerTester(_a) { var tests = _a.tests, reducer = _a.reducer, state = _a.state, _b = _a.initialTest, initialTest = _b === void 0 ? true : _b, _c = _a.titlePrefix, titlePrefix = _c === void 0 ? '' : _c; if (initialTest) { it('handle initial state', function () { expect(snapshot_diff_1.default(state, reducer(undefined, { type: '@@INIT' }))).toMatchSnapshot(); }); } invariant_1.default(state, 'required `state` property.'); invariant_1.default(tests, 'required `tests` property.'); invariant_1.default(Array.isArray(tests), 'tests must be a Array.'); var _loop_1 = function (t) { invariant_1.default(t.type, JSON.stringify(t) + " Action required `type` property."); it("" + titlePrefix + t.type, function () { expect(snapshot_diff_1.default(state, reducer(state, t), { expand: true, aAnnotation: 'Before', bAnnotation: 'After', })).toMatchSnapshot(); }); }; for (var _i = 0, tests_1 = tests; _i < tests_1.length; _i++) { var t = tests_1[_i]; _loop_1(t); } } exports.default = reducerTester; //# sourceMappingURL=index.js.map