vanilla-validation
Version:
Vanilla JavaScript validation rules
48 lines (34 loc) • 1.67 kB
JavaScript
const jsdom = require("jsdom");
const { JSDOM } = jsdom;
describe("vrule_date", function() {
var vRules = require('../src/utilities/form-validation');
console.log("testing: vrule_date")
it("should return error message - not a date", function() {
const dom = new JSDOM(
`<input id="test" value="abc">`
);
let dummyInput = dom.window.document.getElementById("test")
expect(vRules.vrule_date(dummyInput.value).message).toBe("Please enter a valid date")
});
it("should return error message - invalid day", function() {
const dom = new JSDOM(
`<input id="test" value="40/12/1989">`
);
let dummyInput = dom.window.document.getElementById("test")
expect(vRules.vrule_date(dummyInput.value).message).toBe("Please enter a valid date <br/>The <strong>day</strong> you entered is invalid")
});
it("should return error message - invalid month", function() {
const dom = new JSDOM(
`<input id="test" value="12/13/1989">`
);
let dummyInput = dom.window.document.getElementById("test")
expect(vRules.vrule_date(dummyInput.value).message).toBe("Please enter a valid date <br/>The <strong>month</strong> you entered is invalid")
});
it("should pass validation", function() {
const dom = new JSDOM(
`<input id="test" value="12/12/1980"></fieldset>`
);
let dummyInput = dom.window.document.getElementById("test")
expect(vRules.vrule_date(dummyInput.value, 18).message).not.toBeDefined();
});
});