use Kahlan\Plugin\Monkey; describe("Checker", function () { afterEach(function () { Checker::reset(); }); describe("::set()", function () { it("adds some local handlers", function () { Checker::set('zeroToNine', '/^[0-9]$/'); Checker::set('tenToNineteen', '/^1[0-9]$/'); expect(Checker::handlers())->toContainKeys('zeroToNine', 'tenToNineteen'); }); it("sets validation handlers", function () { Checker::set('zeroToNine', '/^[0-9]$/'); Checker::set('tenToNineteen', '/^1[0-9]$/'); expect(Checker::has('zeroToNine'))->toBe(true); expect(Checker::has('tenToNineteen'))->toBe(true); expect(Checker::get('zeroToNine'))->toBe('/^[0-9]$/'); expect(Checker::get('tenToNineteen'))->toBe('/^1[0-9]$/'); }); }); describe("::get()", function () { it("throws an exceptions for unexisting validation handler", function () { $closure = function () { Checker::get('abc'); }; expect($closure)->toThrow(new InvalidArgumentException("Unexisting `abc` as validation handler.")); }); }); describe("::handlers()", function () { beforeEach(function () { Checker::reset(true);