UNPKG

vanilla-validation

Version:

Vanilla JavaScript validation rules

50 lines (34 loc) 1.81 kB
const jsdom = require("jsdom"); const { JSDOM } = jsdom; describe("vrule_btn_required", function() { var vRules = require('../src/utilities/form-validation'); console.log("testing: vrule_btn_required") it("should return error message (radio buttons)", function() { const dom = new JSDOM( `<!DOCTYPE html><fieldset id="fieldset"><input type="radio"><input type="radio"></fieldset>` ); let dummyInput = dom.window.document.getElementById("fieldset") expect(vRules.vrule_btn_required(dummyInput).message).toBe("Please select an option") }); it("should return error message (checkbox buttons)", function() { const dom = new JSDOM( `<!DOCTYPE html><fieldset id="fieldset"><input type="checkbox"><input type="checkbox"></fieldset>` ); let dummyInput = dom.window.document.getElementById("fieldset") expect(vRules.vrule_btn_required(dummyInput).message).toBe("Please select an option") }); it("should pass validation (radio buttons)", function() { const dom = new JSDOM( `<!DOCTYPE html><fieldset id="fieldset"><input type="radio"><input type="radio" checked="checked"></fieldset>` ); let dummyInput = dom.window.document.getElementById("fieldset") expect(vRules.vrule_btn_required(dummyInput).message).not.toBeDefined(); }); it("should pass validation (checkbox buttons)", function() { const dom = new JSDOM( `<!DOCTYPE html><fieldset id="fieldset"><input type="checkbox"><input type="checkbox" checked="checked"></fieldset>` ); let dummyInput = dom.window.document.getElementById("fieldset") expect(vRules.vrule_btn_required(dummyInput).message).not.toBeDefined(); }); });