redux-form-validators
Version:
Simple validations with redux-form / react-final-form
58 lines (48 loc) • 1.56 kB
JavaScript
var _assert = _interopRequireDefault(require("assert"));
var _index = require("../index");
var _helper = _interopRequireDefault(require("./helper"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var ERROR_PRESENCE = 'form.errors.presence';
var ERROR_EMAIL = 'form.errors.email';
var ERROR_LENGTH = 'form.errors.tooShort';
var VALIDATIONS = {
name: (0, _index.required)(),
empty: null,
// Ensure it doesn't throw an error
email: [(0, _index.required)(), (0, _index.email)()],
pass: {
password: [(0, _index.required)(), (0, _index.length)({
min: 8
})]
},
foo: {
bar: {
stuff: (0, _index.required)(),
thing: [(0, _index.required)(), (0, _index.email)()]
}
}
};
var VALUES = {
name: '',
email: 'foo',
pass: {
password: 'abc'
},
foo: {
bar: {
stuff: '',
thing: 'foo'
}
}
};
describe('validate-form', function () {
it('should return errors', function () {
var errors = (0, _index.validateForm)(VALIDATIONS)(VALUES);
_assert["default"].strictEqual(ERROR_PRESENCE, (0, _helper["default"])(errors.name));
_assert["default"].strictEqual(ERROR_EMAIL, (0, _helper["default"])(errors.email));
_assert["default"].strictEqual(ERROR_LENGTH, (0, _helper["default"])(errors.pass.password));
_assert["default"].strictEqual(ERROR_PRESENCE, (0, _helper["default"])(errors.foo.bar.stuff));
_assert["default"].strictEqual(ERROR_EMAIL, (0, _helper["default"])(errors.foo.bar.thing));
});
});
;