import {Valid} from "../../../../application/source/constraints/valid.mjs"; import {Invalid} from "../../../../application/source/constraints/invalid.mjs"; import {AndOperator} from "../../../../application/source/constraints/andoperator.mjs"; describe('AndOperator', function () { describe('.isValid()', function () { [ [new Valid(), new Valid(), true], [new Valid(), new Invalid(), false], [new Invalid(), new Valid(), false], [new Invalid(), new Invalid(), false] ].forEach(function (data) { let a = data.shift() let b = data.shift() let c = data.shift() it('constraint.isValid() should return ' + c, function (done) { let constraint = new AndOperator(a, b); constraint.isValid().then(() => { c === true ? done() : done(new Error()); }).catch(() => { c === true ? done(new Error()) : done(); }) }); }); }); });