UNPKG

redux-form-validators

Version:

Simple validations with redux-form / react-final-form

99 lines (71 loc) 3.12 kB
"use strict"; var _assert = _interopRequireDefault(require("assert")); var _index = _interopRequireWildcard(require("../index")); var _helper = _interopRequireDefault(require("./helper")); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj["default"] = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } var ERROR_ID = 'form.errors.acceptance'; function test(value, params) { return (0, _helper["default"])((0, _index.acceptance)(params)(value)); } describe('Validator: acceptance', function () { it('should be invalid when `value` is not included in default values', function () { _assert["default"].strictEqual(ERROR_ID, test()); _assert["default"].strictEqual(ERROR_ID, test(false)); _assert["default"].strictEqual(ERROR_ID, test('')); _assert["default"].strictEqual(ERROR_ID, test('foo')); _assert["default"].strictEqual(ERROR_ID, test('false')); }); it('should be valid when `value` is included in default values', function () { _assert["default"].ok(!test(1)); _assert["default"].ok(!test('1')); _assert["default"].ok(!test('true')); _assert["default"].ok(!test(true)); }); it('should be valid when `value` is included in custom values', function () { _assert["default"].ok(!test(1, { accept: '1' })); _assert["default"].ok(!test('1', { accept: 1 })); _assert["default"].ok(!test('foo', { accept: 'foo' })); _assert["default"].ok(!test(2, { accept: ['2'] })); _assert["default"].ok(!test('2', { accept: ['foo', 2] })); }); it('should be invalid when `value` is not included in custom values', function () { _assert["default"].strictEqual(ERROR_ID, test(null, { accept: '1' })); _assert["default"].strictEqual(ERROR_ID, test('2', { accept: '1' })); _assert["default"].strictEqual(ERROR_ID, test('2', { accept: ['foo', 3] })); }); it('should use default accept option', function () { var defaultValue = _index["default"].defaultOptions.accept; _index["default"].defaultOptions.accept = 'foo'; _assert["default"].ok(!test('foo')); _index["default"].defaultOptions.accept = ['foo', 2]; _assert["default"].ok(!test(2)); _index["default"].defaultOptions.accept = defaultValue; }); it('should use formatMessage', function () { var defaultValue = _index["default"].formatMessage; _index["default"].formatMessage = function (msg) { return Object.assign({}, msg, { id: msg.id + '2' }); }; _assert["default"].strictEqual(ERROR_ID + '2', test()); _index["default"].formatMessage = defaultValue; }); });