/** * Test basic methods. * @covers Rentalhost\VanillaValidation\ValidationChain::__construct * @covers Rentalhost\VanillaValidation\ValidationChain::__call * @covers Rentalhost\VanillaValidation\ValidationChain::validate */ public function testBasic() { static::assertClassHasAttribute('rules', ValidationChain::class); $chain = new ValidationChain(); static::assertTrue($chain->notEmpty()->trim()->validate(' ')->isSuccess()); $chain = new ValidationChain(); static::assertFalse($chain->required()->validate(' ')->isSuccess()); $chain = new ValidationChain(); static::assertTrue($chain->required()->string()->validate('hello')->isSuccess()); static::assertFalse($chain->required()->string()->validate(123)->isSuccess()); static::assertFalse($chain->required()->string()->validate(null)->isSuccess()); }
/** * Create a chain instance. * * @param string $function First chain function. * @param mixed $args First chain parameters. * * @return ValidationChain */ public static function __callStatic($function, $args) { $chain = new ValidationChain(); /** @noinspection ImplicitMagicMethodCallInspection */ $chain->__call($function, $args); return $chain; }