/** * Test rule. * * @param string $name Rule name. * @param array $parameters Rule parameters. * @param mixed $input Rule input. * @param string $expectedMessage Rule result expected message. * @param null $expectedData Rule result expected data. */ public function testRule($name, $parameters, $input, $expectedMessage, $expectedData) { $fieldRule = new ValidationFieldRule($name, $parameters); $validation = $fieldRule->validate($input); static::assertInstanceOf(Result::class, $validation); static::assertSame($expectedMessage === 'success', $validation->isSuccess()); static::assertSame($expectedMessage, $validation->getMessage()); static::assertSame($expectedData ?: [], $validation->getData()); }
/** * Test validate method. * @covers Rentalhost\VanillaValidation\ValidationFieldRule::validate */ public function testValidate() { $fieldRule = new ValidationFieldRule('required'); static::assertTrue($fieldRule->validate('hello')->isSuccess()); static::assertFalse($fieldRule->validate('')->isSuccess()); }
/** * Test action. * * @param string $name Action name. * @param array $parameters Action parameters. * @param mixed $input Action input. * @param mixed $expectedReturn Action return value. */ public function testAction($name, $parameters, $input, $expectedReturn) { $fieldRule = new ValidationFieldRule($name, $parameters); static::assertSame($expectedReturn, $fieldRule->validate($input)); }