4.5
Version:
Monadic test assertions
23 lines • 726 B
JavaScript
import { curry } from '@typed/curry';
export var chain = curry(function chain(f, assertion) {
return new ChainAssertion(f, assertion);
});
var ChainAssertion = (function () {
function ChainAssertion(f, assertion) {
this.f = f;
this.assertion = assertion;
}
ChainAssertion.prototype.verify = function (verification) {
var _a = this, f = _a.f, assertion = _a.assertion;
assertion.verify({
success: function (value) {
f(value).verify(verification);
},
failure: function (message) {
verification.failure(message);
},
});
};
return ChainAssertion;
}());
//# sourceMappingURL=chain.js.map