diff --git a/.gitignore b/.gitignore index a704173b..f3c7abee 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,7 @@ .couscous/ .iso-codes-cache/ .phpcs.cache -.phpunit.result.cache +.phpunit.cache/ composer.lock Makefile phpcs.xml diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index ff1b5162..d6f10773 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -132,12 +132,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\HelloWorld - */ +#[Group('rule')] +#[CoversClass(HelloWorld::class)] final class HelloWorldTest extends RuleTestCase { /** diff --git a/composer.json b/composer.json index b87ee069..08418c5f 100644 --- a/composer.json +++ b/composer.json @@ -30,7 +30,7 @@ "phpstan/phpstan": "^1.9", "phpstan/phpstan-deprecation-rules": "^1.1", "phpstan/phpstan-phpunit": "^1.3", - "phpunit/phpunit": "^9.6", + "phpunit/phpunit": "^10.5", "psr/http-message": "^1.0", "respect/coding-standard": "^4.0", "squizlabs/php_codesniffer": "^3.8" diff --git a/phpunit.xml.dist b/phpunit.xml.dist index d0c51721..949e8c27 100644 --- a/phpunit.xml.dist +++ b/phpunit.xml.dist @@ -1,15 +1,12 @@ + cacheDirectory=".phpunit.cache" + backupStaticProperties="false"> tests/unit/ @@ -18,9 +15,9 @@ tests/integration/ - + - library/ + library/ - + diff --git a/tests/library/RuleTestCase.php b/tests/library/RuleTestCase.php index 5802d673..efa3b177 100644 --- a/tests/library/RuleTestCase.php +++ b/tests/library/RuleTestCase.php @@ -9,6 +9,8 @@ declare(strict_types=1); namespace Respect\Validation\Test; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Validatable; use function implode; @@ -17,9 +19,6 @@ use function realpath; use function Respect\Stringifier\stringify; use function sprintf; -/** - * @since 1.0.0 - */ abstract class RuleTestCase extends TestCase { /** @@ -29,7 +28,7 @@ abstract class RuleTestCase extends TestCase * as the first element and an input in which the validation SHOULD pass. * * @api - * @return mixed[][] + * @return array */ abstract public static function providerForValidInput(): array; @@ -40,23 +39,19 @@ abstract class RuleTestCase extends TestCase * as the first element and an input in which the validation SHOULD NOT pass. * * @api - * @return mixed[][] + * @return array */ abstract public static function providerForInvalidInput(): array; - /** - * @test - * @dataProvider providerForValidInput - */ + #[Test] + #[DataProvider('providerForValidInput')] public function shouldValidateValidInput(Validatable $validator, mixed $input): void { self::assertValidInput($validator, $input); } - /** - * @test - * @dataProvider providerForInvalidInput - */ + #[Test] + #[DataProvider('providerForInvalidInput')] public function shouldValidateInvalidInput(Validatable $validator, mixed $input): void { self::assertInvalidInput($validator, $input); diff --git a/tests/unit/Exceptions/CheckExceptionsTest.php b/tests/unit/Exceptions/CheckExceptionsTest.php index 26ab098b..3a52d29c 100644 --- a/tests/unit/Exceptions/CheckExceptionsTest.php +++ b/tests/unit/Exceptions/CheckExceptionsTest.php @@ -10,6 +10,9 @@ declare(strict_types=1); namespace Respect\Validation\Exceptions; use DirectoryIterator; +use PHPUnit\Framework\Attributes\CoversNothing; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Test; use ReflectionClass; use Respect\Validation\Test\TestCase; @@ -17,15 +20,11 @@ use function class_exists; use function mb_substr; use function sprintf; -/** - * @coversNothing - */ +#[CoversNothing] final class CheckExceptionsTest extends TestCase { - /** - * @dataProvider provideListOfRuleNames - * @test - */ + #[Test] + #[DataProvider('provideListOfRuleNames')] public function ruleHasAnExceptionWhichHasValidApi(string $ruleName): void { $exceptionClass = 'Respect\\Validation\\Exceptions\\' . $ruleName . 'Exception'; diff --git a/tests/unit/Exceptions/NestedValidationExceptionTest.php b/tests/unit/Exceptions/NestedValidationExceptionTest.php index 58244974..ca29a003 100644 --- a/tests/unit/Exceptions/NestedValidationExceptionTest.php +++ b/tests/unit/Exceptions/NestedValidationExceptionTest.php @@ -9,18 +9,18 @@ declare(strict_types=1); namespace Respect\Validation\Exceptions; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Message\Formatter; use Respect\Validation\Message\Stringifier\KeepOriginalStringName; use Respect\Validation\Test\TestCase; -/** - * @covers \Respect\Validation\Exceptions\NestedValidationException - */ +#[Group('core')] +#[CoversClass(NestedValidationException::class)] final class NestedValidationExceptionTest extends TestCase { - /** - * @test - */ + #[Test] public function getChildrenShouldReturnExceptionAddedByAddRelated(): void { $composite = new AttributeException('input', 'id', [], new Formatter('strval', new KeepOriginalStringName())); @@ -30,9 +30,7 @@ final class NestedValidationExceptionTest extends TestCase self::assertContainsOnly(IntValException::class, $composite->getChildren()); } - /** - * @test - */ + #[Test] public function addingTheSameInstanceShouldAddJustOneSingleReference(): void { $composite = new AttributeException('input', 'id', [], new Formatter('strval', new KeepOriginalStringName())); diff --git a/tests/unit/Exceptions/ValidationExceptionTest.php b/tests/unit/Exceptions/ValidationExceptionTest.php index 46900518..1d1348f1 100644 --- a/tests/unit/Exceptions/ValidationExceptionTest.php +++ b/tests/unit/Exceptions/ValidationExceptionTest.php @@ -9,21 +9,20 @@ declare(strict_types=1); namespace Respect\Validation\Exceptions; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Message\Formatter; use Respect\Validation\Message\Stringifier\KeepOriginalStringName; use Respect\Validation\Test\TestCase; use function trim; -/** - * @group core - * @covers \Respect\Validation\Exceptions\ValidationException - */ +#[Group('core')] +#[CoversClass(ValidationException::class)] final class ValidationExceptionTest extends TestCase { - /** - * @test - */ + #[Test] public function itShouldImplementException(): void { $sut = new ValidationException('input', 'id', [], $this->createFormatter()); @@ -31,9 +30,7 @@ final class ValidationExceptionTest extends TestCase self::assertInstanceOf(Exception::class, $sut); } - /** - * @test - */ + #[Test] public function itShouldRetrieveId(): void { $id = 'my id'; @@ -42,9 +39,7 @@ final class ValidationExceptionTest extends TestCase self::assertSame($id, $sut->getId()); } - /** - * @test - */ + #[Test] public function itShouldRetrieveParams(): void { $params = ['foo' => true, 'bar' => 23]; @@ -54,9 +49,7 @@ final class ValidationExceptionTest extends TestCase self::assertSame($params, $sut->getParams()); } - /** - * @test - */ + #[Test] public function itShouldRetrieveOneSingleParameter(): void { $name = 'any name'; @@ -67,9 +60,7 @@ final class ValidationExceptionTest extends TestCase self::assertSame($value, $sut->getParam($name)); } - /** - * @test - */ + #[Test] public function itShouldReturnNullWhenParameterCanNotBeFound(): void { $sut = new ValidationException('input', 'id', [], $this->createFormatter()); @@ -77,9 +68,7 @@ final class ValidationExceptionTest extends TestCase self::assertNull($sut->getParam('foo')); } - /** - * @test - */ + #[Test] public function itShouldHaveTemplateByDefault(): void { $sut = new ValidationException('input', 'id', [], $this->createFormatter()); @@ -87,9 +76,7 @@ final class ValidationExceptionTest extends TestCase self::assertSame('"input" must be valid', $sut->getMessage()); } - /** - * @test - */ + #[Test] public function itShouldUpdateMode(): void { $sut = new ValidationException('input', 'id', [], $this->createFormatter()); @@ -98,9 +85,7 @@ final class ValidationExceptionTest extends TestCase self::assertSame('"input" must not be valid', $sut->getMessage()); } - /** - * @test - */ + #[Test] public function itShouldUpdateTemplate(): void { $template = 'This is my new template'; @@ -111,9 +96,7 @@ final class ValidationExceptionTest extends TestCase self::assertEquals($template, $sut->getMessage()); } - /** - * @test - */ + #[Test] public function itShouldTellWhenHasAsCustomUpdateTemplate(): void { $sut = new ValidationException('input', 'id', [], $this->createFormatter()); @@ -125,9 +108,7 @@ final class ValidationExceptionTest extends TestCase self::assertTrue($sut->hasCustomTemplate()); } - /** - * @test - */ + #[Test] public function itShouldUseFormatter(): void { $template = ' This is my new template '; @@ -139,9 +120,7 @@ final class ValidationExceptionTest extends TestCase self::assertEquals($expected, $sut->getMessage()); } - /** - * @test - */ + #[Test] public function itShouldReplacePlaceholders(): void { $sut = new ValidationException('foo', 'id', ['bar' => 1, 'baz' => 2], $this->createFormatter()); @@ -153,9 +132,7 @@ final class ValidationExceptionTest extends TestCase ); } - /** - * @test - */ + #[Test] public function itShouldKeepPlaceholdersThatCanNotReplace(): void { $sut = new ValidationException('foo', 'id', ['foo' => 1], $this->createFormatter()); @@ -167,9 +144,7 @@ final class ValidationExceptionTest extends TestCase ); } - /** - * @test - */ + #[Test] public function itShouldUpdateParams(): void { $sut = new ValidationException('input', 'id', ['foo' => 1], $this->createFormatter()); @@ -179,9 +154,7 @@ final class ValidationExceptionTest extends TestCase self::assertEquals('2', $sut->getMessage()); } - /** - * @test - */ + #[Test] public function itShouldConvertToString(): void { $sut = new ValidationException('input', 'id', [], $this->createFormatter()); diff --git a/tests/unit/FactoryTest.php b/tests/unit/FactoryTest.php index d798a383..d701fc1d 100644 --- a/tests/unit/FactoryTest.php +++ b/tests/unit/FactoryTest.php @@ -9,6 +9,9 @@ declare(strict_types=1); namespace Respect\Validation; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Exceptions\InvalidClassException; use Respect\Validation\Exceptions\ValidationException; @@ -22,17 +25,14 @@ use Respect\Validation\Test\TestCase; use function sprintf; -/** - * @covers \Respect\Validation\Factory - */ +#[Group('core')] +#[CoversClass(Factory::class)] final class FactoryTest extends TestCase { private const TEST_RULES_NAMESPACE = 'Respect\\Validation\\Test\\Rules'; private const TEST_EXCEPTIONS_NAMESPACE = 'Respect\\Validation\\Test\\Exceptions'; - /** - * @test - */ + #[Test] public function shouldCreateRuleByNameBasedOnNamespace(): void { $factory = (new Factory()) @@ -41,9 +41,7 @@ final class FactoryTest extends TestCase self::assertInstanceOf(Valid::class, $factory->rule('valid')); } - /** - * @test - */ + #[Test] public function shouldLookUpToAllNamespacesUntilRuleIsFound(): void { $factory = (new Factory()) @@ -53,9 +51,7 @@ final class FactoryTest extends TestCase self::assertInstanceOf(Valid::class, $factory->rule('valid')); } - /** - * @test - */ + #[Test] public function shouldDefineConstructorArgumentsWhenCreatingRule(): void { $constructorArguments = [true, false, true, false]; @@ -67,9 +63,7 @@ final class FactoryTest extends TestCase self::assertSame($constructorArguments, $rule->validations); } - /** - * @test - */ + #[Test] public function shouldThrowsAnExceptionWhenRuleIsInvalid(): void { $factory = (new Factory())->withRuleNamespace(self::TEST_RULES_NAMESPACE); @@ -80,9 +74,7 @@ final class FactoryTest extends TestCase $factory->rule('invalid'); } - /** - * @test - */ + #[Test] public function shouldThrowsAnExceptionWhenRuleIsNotInstantiable(): void { $factory = (new Factory())->withRuleNamespace(self::TEST_RULES_NAMESPACE); @@ -93,9 +85,7 @@ final class FactoryTest extends TestCase $factory->rule('abstractClass'); } - /** - * @test - */ + #[Test] public function shouldThrowsAnExceptionWhenRuleIsNotFound(): void { $factory = (new Factory())->withRuleNamespace(self::TEST_RULES_NAMESPACE); @@ -106,9 +96,7 @@ final class FactoryTest extends TestCase $factory->rule('notFoundRule'); } - /** - * @test - */ + #[Test] public function shouldCreateExceptionBasedOnRule(): void { $factory = (new Factory())->withExceptionNamespace(self::TEST_EXCEPTIONS_NAMESPACE); @@ -119,9 +107,7 @@ final class FactoryTest extends TestCase self::assertInstanceOf(StubException::class, $factory->exception($rule, $input)); } - /** - * @test - */ + #[Test] public function shouldLookUpToAllNamespacesUntilExceptionIsCreated(): void { $factory = (new Factory()) @@ -134,9 +120,7 @@ final class FactoryTest extends TestCase self::assertInstanceOf(StubException::class, $factory->exception($rule, $input)); } - /** - * @test - */ + #[Test] public function shouldCreateValidationExceptionWhenExceptionIsNotFound(): void { $factory = new Factory(); @@ -146,9 +130,7 @@ final class FactoryTest extends TestCase self::assertInstanceOf(ValidationException::class, $factory->exception($rule, $input)); } - /** - * @test - */ + #[Test] public function shouldSetInputAsParameterOfCreatedException(): void { $factory = (new Factory())->withExceptionNamespace(self::TEST_EXCEPTIONS_NAMESPACE); @@ -161,9 +143,7 @@ final class FactoryTest extends TestCase self::assertSame($input, $exception->getParam('input')); } - /** - * @test - */ + #[Test] public function shouldPassPropertiesToCreatedException(): void { $factory = (new Factory())->withExceptionNamespace(self::TEST_EXCEPTIONS_NAMESPACE); @@ -177,9 +157,7 @@ final class FactoryTest extends TestCase self::assertSame($validations, $exception->getParam('validations')); } - /** - * @test - */ + #[Test] public function shouldSetTemplateWhenTemplateKeyIsDefined(): void { $factory = (new Factory())->withExceptionNamespace(self::TEST_EXCEPTIONS_NAMESPACE); @@ -197,17 +175,13 @@ final class FactoryTest extends TestCase self::assertSame($extraParams['template'], $exception->getMessage()); } - /** - * @test - */ + #[Test] public function shouldAlwaysReturnTheSameDefaultInstance(): void { self::assertSame(Factory::getDefaultInstance(), Factory::getDefaultInstance()); } - /** - * @test - */ + #[Test] public function shouldBeAbleToOverwriteDefaultInstance(): void { $factory = new Factory(); @@ -221,9 +195,7 @@ final class FactoryTest extends TestCase Factory::setDefaultInstance($defaultInstance); } - /** - * @test - */ + #[Test] public function shouldAutoResolveExceptionIfNamespacePatternMatchesAndExceptionClassFound(): void { $this->expectException(StubException::class); @@ -232,9 +204,7 @@ final class FactoryTest extends TestCase $rule->assert('test'); } - /** - * @test - */ + #[Test] public function shouldUseDefaultExceptionIfCustomExceptionNotFound(): void { $this->expectException(ValidationException::class); diff --git a/tests/unit/Helpers/CanValidateDateTimeTest.php b/tests/unit/Helpers/CanValidateDateTimeTest.php index 1a034d79..9857e012 100644 --- a/tests/unit/Helpers/CanValidateDateTimeTest.php +++ b/tests/unit/Helpers/CanValidateDateTimeTest.php @@ -9,29 +9,27 @@ declare(strict_types=1); namespace Respect\Validation\Helpers; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Test\TestCase; -/** - * @group helper - * @covers \Respect\Validation\Helpers\CanValidateDateTime - */ +#[Group('helper')] +#[CoversClass(CanValidateDateTime::class)] final class CanValidateDateTimeTest extends TestCase { use CanValidateDateTime; - /** - * @test - * @dataProvider providerForValidDateTime - */ + #[Test] + #[DataProvider('providerForValidDateTime')] public function shouldFindWhenValueIsDateTime(string $format, string $value): void { self::assertTrue($this->isDateTime($format, $value)); } - /** - * @test - * @dataProvider providerForInvalidDateTime - */ + #[Test] + #[DataProvider('providerForInvalidDateTime')] public function shouldFindWhenValueIsNotDateTime(string $format, string $value): void { self::assertFalse($this->isDateTime($format, $value)); diff --git a/tests/unit/Helpers/CanValidateUndefinedTest.php b/tests/unit/Helpers/CanValidateUndefinedTest.php index fdacfb57..76bfee95 100644 --- a/tests/unit/Helpers/CanValidateUndefinedTest.php +++ b/tests/unit/Helpers/CanValidateUndefinedTest.php @@ -9,31 +9,29 @@ declare(strict_types=1); namespace Respect\Validation\Helpers; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Test\DataProvider\UndefinedProvider; use Respect\Validation\Test\TestCase; -/** - * @group helper - * @covers \Respect\Validation\Helpers\CanValidateUndefined - */ +#[Group('helper')] +#[CoversClass(CanValidateUndefined::class)] final class CanValidateUndefinedTest extends TestCase { use CanValidateUndefined; use UndefinedProvider; - /** - * @test - * @dataProvider providerForUndefined - */ + #[Test] + #[DataProvider('providerForUndefined')] public function shouldFindWhenValueIsUndefined(mixed $value): void { self::assertTrue($this->isUndefined($value)); } - /** - * @test - * @dataProvider providerForNotUndefined - */ + #[Test] + #[DataProvider('providerForNotUndefined')] public function shouldFindWhenValueIsNotUndefined(mixed $value): void { self::assertFalse($this->isUndefined($value)); diff --git a/tests/unit/Rules/AbstractCompositeTest.php b/tests/unit/Rules/AbstractCompositeTest.php index 0460e354..11a6d689 100644 --- a/tests/unit/Rules/AbstractCompositeTest.php +++ b/tests/unit/Rules/AbstractCompositeTest.php @@ -9,6 +9,9 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Test\Exceptions\CompositeStubException; use Respect\Validation\Test\Rules\Stub; use Respect\Validation\Test\Stubs\CompositeSub; @@ -16,15 +19,11 @@ use Respect\Validation\Test\TestCase; use function current; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractComposite - */ +#[Group('rule')] +#[CoversClass(AbstractComposite::class)] final class AbstractCompositeTest extends TestCase { - /** - * @test - */ + #[Test] public function itShouldUpdateTheNameOfTheChildWhenUpdatingItsName(): void { $ruleName = 'something'; @@ -40,9 +39,7 @@ final class AbstractCompositeTest extends TestCase self::assertSame($ruleName, $child->getName()); } - /** - * @test - */ + #[Test] public function itShouldUpdateTheNameOfTheChildWhenAddingIt(): void { $ruleName = 'something'; @@ -59,9 +56,7 @@ final class AbstractCompositeTest extends TestCase self::assertSame($ruleName, $rule->getName()); } - /** - * @test - */ + #[Test] public function itShouldNotUpdateTheNameOfTheChildWhenUpdatingItsNameIfTheChildAlreadyHasSomeName(): void { $ruleName1 = 'something'; @@ -76,9 +71,7 @@ final class AbstractCompositeTest extends TestCase self::assertSame($ruleName1, $rule->getName()); } - /** - * @test - */ + #[Test] public function itNotShouldUpdateTheNameOfTheChildWhenAddingItIfTheChildAlreadyHasSomeName(): void { $ruleName1 = 'something'; @@ -94,9 +87,7 @@ final class AbstractCompositeTest extends TestCase self::assertSame($ruleName1, $rule->getName()); } - /** - * @test - */ + #[Test] public function itShouldReturnItsChildren(): void { $child1 = new Stub(); @@ -112,9 +103,7 @@ final class AbstractCompositeTest extends TestCase self::assertSame($child3, $children[2]); } - /** - * @test - */ + #[Test] public function itShouldAssertWithAllChildrenAndNotThrowAnExceptionWhenThereAreNoIssues(): void { $input = 'something'; @@ -129,9 +118,7 @@ final class AbstractCompositeTest extends TestCase $sut->assert($input); } - /** - * @test - */ + #[Test] public function itShouldAssertWithAllChildrenAndThrowAnExceptionWhenThereAreIssues(): void { $sut = new CompositeSub(new Stub(false), new Stub(false), new Stub(false)); @@ -143,9 +130,7 @@ final class AbstractCompositeTest extends TestCase } } - /** - * @test - */ + #[Test] public function itShouldUpdateTheTemplateOfEveryChildrenWhenAsserting(): void { $template = 'This is my template'; @@ -166,9 +151,7 @@ final class AbstractCompositeTest extends TestCase } } - /** - * @test - */ + #[Test] public function itShouldUpdateTheTemplateOfEveryTheChildrenOfSomeChildWhenAsserting(): void { $template = 'This is my template'; diff --git a/tests/unit/Rules/AbstractEnvelopeTest.php b/tests/unit/Rules/AbstractEnvelopeTest.php index 0b590a72..22e1519b 100644 --- a/tests/unit/Rules/AbstractEnvelopeTest.php +++ b/tests/unit/Rules/AbstractEnvelopeTest.php @@ -9,20 +9,19 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Test\Rules\Envelop; use Respect\Validation\Test\TestCase; use function array_intersect_key; -/** - * @test core - * @covers \Respect\Validation\Rules\AbstractEnvelope - */ +#[Group('core')] +#[CoversClass(AbstractEnvelope::class)] final class AbstractEnvelopeTest extends TestCase { - /** - * @test - */ + #[Test] public function itShouldValidateUsingTheInnerRule(): void { $rule = new Envelop(new AlwaysValid(), []); @@ -30,9 +29,7 @@ final class AbstractEnvelopeTest extends TestCase self::assertTrue($rule->validate('something')); } - /** - * @test - */ + #[Test] public function itShouldInvalidateUsingTheInnerRule(): void { $rule = new Envelop(new AlwaysInvalid(), []); @@ -40,9 +37,7 @@ final class AbstractEnvelopeTest extends TestCase self::assertFalse($rule->validate('something')); } - /** - * @test - */ + #[Test] public function itShouldReportErrorUsingProperties(): void { $input = 'value'; diff --git a/tests/unit/Rules/AbstractRuleTest.php b/tests/unit/Rules/AbstractRuleTest.php index 8599f455..fadd711c 100644 --- a/tests/unit/Rules/AbstractRuleTest.php +++ b/tests/unit/Rules/AbstractRuleTest.php @@ -9,21 +9,20 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ValidationException; use Respect\Validation\Test\Rules\Stub; use Respect\Validation\Test\TestCase; use function random_int; -/** - * @covers \Respect\Validation\Rules\AbstractRule - */ +#[Group('core')] +#[CoversClass(AbstractRule::class)] final class AbstractRuleTest extends TestCase { - /** - * @covers \Respect\Validation\Rules\AbstractRule::__invoke - * @test - */ + #[Test] public function itShouldValidateSomeValidInputUsingTheInvokeMagicMethod(): void { $sut = new Stub(true); @@ -31,10 +30,7 @@ final class AbstractRuleTest extends TestCase self::assertTrue($sut('something')); } - /** - * @covers \Respect\Validation\Rules\AbstractRule::__invoke - * @test - */ + #[Test] public function itShouldValidateSomeInvalidInputUsingTheInvokeMagicMethod(): void { $sut = new Stub(false); @@ -42,10 +38,7 @@ final class AbstractRuleTest extends TestCase self::assertFalse($sut('something')); } - /** - * @covers \Respect\Validation\Rules\AbstractRule::assert - * @test - */ + #[Test] public function itShouldThrowAnExceptionOnAssertingSomeInvalidInput(): void { $input = 'something'; @@ -57,10 +50,7 @@ final class AbstractRuleTest extends TestCase $sut->assert($input); } - /** - * @covers \Respect\Validation\Rules\AbstractRule::assert - * @test - */ + #[Test] public function itShouldNotThrowAnExceptionOnAssertingSomeValidInput(): void { $input = 'something'; @@ -72,10 +62,7 @@ final class AbstractRuleTest extends TestCase $sut->assert($input); } - /** - * @covers \Respect\Validation\Rules\AbstractRule::check - * @test - */ + #[Test] public function itShouldThrowAnExceptionOnCheckingSomeInvalidInput(): void { $input = 'something'; @@ -87,10 +74,7 @@ final class AbstractRuleTest extends TestCase $sut->check($input); } - /** - * @covers \Respect\Validation\Rules\AbstractRule::check - * @test - */ + #[Test] public function itShouldNotThrowAnExceptionOnCheckingSomeValidInput(): void { $input = 'something'; @@ -102,10 +86,7 @@ final class AbstractRuleTest extends TestCase $sut->check($input); } - /** - * @covers \Respect\Validation\Rules\AbstractRule::setTemplate - * @test - */ + #[Test] public function itShouldReturnSelfWhenSettingSomeTemplate(): void { $sut = new Stub(); @@ -113,10 +94,7 @@ final class AbstractRuleTest extends TestCase self::assertSame($sut, $sut->setTemplate('whatever')); } - /** - * @covers \Respect\Validation\Rules\AbstractRule::setName - * @test - */ + #[Test] public function itShouldReturnSelfWhenSettingSomeName(): void { $sut = new Stub(); @@ -124,10 +102,7 @@ final class AbstractRuleTest extends TestCase self::assertSame($sut, $sut->setName('whatever')); } - /** - * @covers \Respect\Validation\Rules\AbstractRule::getName - * @test - */ + #[Test] public function itShouldBeAbleToRetrieveItsName(): void { $name = 'something'; @@ -138,10 +113,7 @@ final class AbstractRuleTest extends TestCase self::assertSame($name, $sut->getName()); } - /** - * @covers \Respect\Validation\Rules\AbstractRule::getName - * @test - */ + #[Test] public function itShouldReportErrorWithExtraParameters(): void { $extraParameterName = 'foo'; diff --git a/tests/unit/Rules/AbstractSearcherTest.php b/tests/unit/Rules/AbstractSearcherTest.php index 80c8fcc0..38ec39a1 100644 --- a/tests/unit/Rules/AbstractSearcherTest.php +++ b/tests/unit/Rules/AbstractSearcherTest.php @@ -9,21 +9,21 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Test\DataProvider\UndefinedProvider; use Respect\Validation\Test\Rules\SearcherStub; use Respect\Validation\Test\TestCase; -/** - * @group core - * @covers \Respect\Validation\Rules\AbstractSearcher - */ +#[Group('core')] +#[CoversClass(AbstractSearcher::class)] final class AbstractSearcherTest extends TestCase { use UndefinedProvider; - /** - * @test - */ + #[Test] public function shouldValidateFromDataSource(): void { $input = 'BAZ'; @@ -33,9 +33,7 @@ final class AbstractSearcherTest extends TestCase self::assertTrue($rule->validate($input)); } - /** - * @test - */ + #[Test] public function shouldNotFindWhenNotIdentical(): void { $input = 2.0; @@ -45,10 +43,8 @@ final class AbstractSearcherTest extends TestCase self::assertFalse($rule->validate($input)); } - /** - * @test - * @dataProvider providerForUndefined - */ + #[Test] + #[DataProvider('providerForUndefined')] public function shouldValidateWhenValueIsUndefinedAndDataSourceIsEmpty(mixed $input): void { $rule = new SearcherStub(static fn() => []); @@ -56,10 +52,8 @@ final class AbstractSearcherTest extends TestCase self::assertTrue($rule->validate($input)); } - /** - * @test - * @dataProvider providerForNotUndefined - */ + #[Test] + #[DataProvider('providerForNotUndefined')] public function shouldNotValidateWhenValueIsNotUndefinedAndDataSourceNotEmpty(mixed $input): void { $rule = new SearcherStub(static fn() => []); diff --git a/tests/unit/Rules/AbstractWrapperTest.php b/tests/unit/Rules/AbstractWrapperTest.php index 5101be7a..60936958 100644 --- a/tests/unit/Rules/AbstractWrapperTest.php +++ b/tests/unit/Rules/AbstractWrapperTest.php @@ -9,20 +9,19 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ValidationException; use Respect\Validation\Test\Rules\Stub; use Respect\Validation\Test\Rules\WrapperStub; use Respect\Validation\Test\TestCase; -/** - * @test core - * @covers \Respect\Validation\Rules\AbstractWrapper - */ +#[Group('core')] +#[CoversClass(AbstractWrapper::class)] final class AbstractWrapperTest extends TestCase { - /** - * @test - */ + #[Test] public function shouldUseWrappedToValidate(): void { $sut = new WrapperStub(new Stub(true)); @@ -30,9 +29,7 @@ final class AbstractWrapperTest extends TestCase self::assertTrue($sut->validate('Whatever')); } - /** - * @test - */ + #[Test] public function shouldUseWrappedToAssert(): void { $sut = new WrapperStub(new Stub(false)); @@ -40,9 +37,7 @@ final class AbstractWrapperTest extends TestCase $sut->assert('Whatever'); } - /** - * @test - */ + #[Test] public function shouldUseWrappedToCheck(): void { $sut = new WrapperStub(new Stub(false)); @@ -50,9 +45,7 @@ final class AbstractWrapperTest extends TestCase $sut->check('Whatever'); } - /** - * @test - */ + #[Test] public function shouldPassNameOnToWrapped(): void { $name = 'Whatever'; diff --git a/tests/unit/Rules/AllOfTest.php b/tests/unit/Rules/AllOfTest.php index 45d3f147..3bae7cd2 100644 --- a/tests/unit/Rules/AllOfTest.php +++ b/tests/unit/Rules/AllOfTest.php @@ -9,22 +9,22 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\AllOfException; use Respect\Validation\Exceptions\CallbackException; use Respect\Validation\Exceptions\ValidationException; use Respect\Validation\Test\TestCase; use Respect\Validation\Validatable; -/** - * @group rule - * @covers \Respect\Validation\Exceptions\AllOfException - * @covers \Respect\Validation\Rules\AllOf - */ +#[Group('rule')] +#[CoversClass(AllOfException::class)] +#[CoversClass(AllOf::class)] final class AllOfTest extends TestCase { - /** - * @test - */ + #[Test] public function validationShouldWorkIfAllRulesReturnTrue(): void { $valid1 = new Callback(static function () { @@ -45,10 +45,8 @@ final class AllOfTest extends TestCase $o->assert(''); } - /** - * @dataProvider providerStaticDummyRules - * @test - */ + #[Test] + #[DataProvider('providerStaticDummyRules')] public function validationAssertShouldFailIfAnyRuleFailsAndReturnAllExceptionsFailed( Validatable $rule1, Validatable $rule2, @@ -61,10 +59,8 @@ final class AllOfTest extends TestCase $o->assert('any'); } - /** - * @dataProvider providerStaticDummyRules - * @test - */ + #[Test] + #[DataProvider('providerStaticDummyRules')] public function validationCheckShouldFailIfAnyRuleFailsAndThrowTheFirstExceptionOnly( Validatable $rule1, Validatable $rule2, @@ -77,11 +73,8 @@ final class AllOfTest extends TestCase $o->check('any'); } - /** - * @dataProvider providerStaticDummyRules - * @expectedException \Respect\Validation\Exceptions\ - * @test - */ + #[Test] + #[DataProvider('providerStaticDummyRules')] public function validationCheckShouldFailOnEmptyInput( Validatable $rule1, Validatable $rule2, @@ -93,10 +86,8 @@ final class AllOfTest extends TestCase $o->check(''); } - /** - * @dataProvider providerStaticDummyRules - * @test - */ + #[Test] + #[DataProvider('providerStaticDummyRules')] public function validationShouldFailIfAnyRuleFails( Validatable $rule1, Validatable $rule2, diff --git a/tests/unit/Rules/AlnumTest.php b/tests/unit/Rules/AlnumTest.php index da3d4ba5..a0524006 100644 --- a/tests/unit/Rules/AlnumTest.php +++ b/tests/unit/Rules/AlnumTest.php @@ -9,14 +9,14 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractFilterRule - * @covers \Respect\Validation\Rules\Alnum - */ +#[Group('rule')] +#[CoversClass(AbstractFilterRule::class)] +#[CoversClass(Alnum::class)] final class AlnumTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/AlphaTest.php b/tests/unit/Rules/AlphaTest.php index 7422c545..cb37a7f4 100644 --- a/tests/unit/Rules/AlphaTest.php +++ b/tests/unit/Rules/AlphaTest.php @@ -9,14 +9,14 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractFilterRule - * @covers \Respect\Validation\Rules\Alpha - */ +#[Group('rule')] +#[CoversClass(AbstractFilterRule::class)] +#[CoversClass(Alpha::class)] final class AlphaTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/AlwaysInvalidTest.php b/tests/unit/Rules/AlwaysInvalidTest.php index d703ac3a..819b97b5 100644 --- a/tests/unit/Rules/AlwaysInvalidTest.php +++ b/tests/unit/Rules/AlwaysInvalidTest.php @@ -9,18 +9,18 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Test\TestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\AlwaysInvalid - */ +#[Group('rule')] +#[CoversClass(AlwaysInvalid::class)] final class AlwaysInvalidTest extends TestCase { - /** - * @test - * @dataProvider providerForInvalidInput - */ + #[Test] + #[DataProvider('providerForInvalidInput')] public function itShouldAlwaysBeInvalid(mixed $input): void { $rule = new AlwaysInvalid(); diff --git a/tests/unit/Rules/AlwaysValidTest.php b/tests/unit/Rules/AlwaysValidTest.php index 3e67fd6a..da385fe7 100644 --- a/tests/unit/Rules/AlwaysValidTest.php +++ b/tests/unit/Rules/AlwaysValidTest.php @@ -9,18 +9,18 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Test\TestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\AlwaysValid - */ +#[Group(' rule')] +#[CoversClass(AlwaysValid::class)] final class AlwaysValidTest extends TestCase { - /** - * @test - * @dataProvider providerForValidInput - */ + #[Test] + #[DataProvider('providerForValidInput')] public function itAlwaysBeValid(mixed $input): void { $rule = new AlwaysValid(); diff --git a/tests/unit/Rules/AnyOfTest.php b/tests/unit/Rules/AnyOfTest.php index f01c6ae5..c891d910 100644 --- a/tests/unit/Rules/AnyOfTest.php +++ b/tests/unit/Rules/AnyOfTest.php @@ -9,20 +9,19 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\AnyOfException; use Respect\Validation\Exceptions\XdigitException; use Respect\Validation\Test\TestCase; -/** - * @group rule - * @covers \Respect\Validation\Exceptions\AnyOfException - * @covers \Respect\Validation\Rules\AnyOf - */ +#[Group('rule')] +#[CoversClass(AnyOfException::class)] +#[CoversClass(AnyOf::class)] final class AnyOfTest extends TestCase { - /** - * @test - */ + #[Test] public function valid(): void { $valid1 = new Callback(static function () { @@ -40,9 +39,7 @@ final class AnyOfTest extends TestCase $o->check('any'); } - /** - * @test - */ + #[Test] public function invalid(): void { $valid1 = new Callback(static function () { @@ -61,9 +58,7 @@ final class AnyOfTest extends TestCase $o->assert('any'); } - /** - * @test - */ + #[Test] public function invalidCheck(): void { $o = new AnyOf(new Xdigit(), new Alnum()); diff --git a/tests/unit/Rules/ArrayTypeTest.php b/tests/unit/Rules/ArrayTypeTest.php index eebdbd58..43c97667 100644 --- a/tests/unit/Rules/ArrayTypeTest.php +++ b/tests/unit/Rules/ArrayTypeTest.php @@ -11,12 +11,12 @@ namespace Respect\Validation\Rules; use ArrayIterator; use ArrayObject; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\ArrayType - */ +#[Group(' rule')] +#[CoversClass(ArrayType::class)] final class ArrayTypeTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/ArrayValTest.php b/tests/unit/Rules/ArrayValTest.php index 6a33e89a..34276cb4 100644 --- a/tests/unit/Rules/ArrayValTest.php +++ b/tests/unit/Rules/ArrayValTest.php @@ -10,14 +10,14 @@ declare(strict_types=1); namespace Respect\Validation\Rules; use ArrayObject; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use SimpleXMLElement; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\ArrayVal - */ +#[Group(' rule')] +#[CoversClass(ArrayVal::class)] final class ArrayValTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/AttributeTest.php b/tests/unit/Rules/AttributeTest.php index 319a26d2..b5bc0ba6 100644 --- a/tests/unit/Rules/AttributeTest.php +++ b/tests/unit/Rules/AttributeTest.php @@ -9,15 +9,15 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use Respect\Validation\Test\Stubs\WithProperties; use Respect\Validation\Test\Stubs\WithUninitialized; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractRelated - * @covers \Respect\Validation\Rules\Attribute - */ +#[Group('rule')] +#[CoversClass(AbstractRelated::class)] +#[CoversClass(Attribute::class)] final class AttributeTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/Base64Test.php b/tests/unit/Rules/Base64Test.php index 740c16dc..49823e40 100644 --- a/tests/unit/Rules/Base64Test.php +++ b/tests/unit/Rules/Base64Test.php @@ -9,14 +9,14 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use function implode; -/** - * @group rule - * @covers \Respect\Validation\Rules\Base64 - */ +#[Group('rule')] +#[CoversClass(Base64::class)] final class Base64Test extends RuleTestCase { /** diff --git a/tests/unit/Rules/BaseTest.php b/tests/unit/Rules/BaseTest.php index 312b8a0f..1af5c121 100644 --- a/tests/unit/Rules/BaseTest.php +++ b/tests/unit/Rules/BaseTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\Base - */ +#[Group('rule')] +#[CoversClass(Base::class)] final class BaseTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/BetweenTest.php b/tests/unit/Rules/BetweenTest.php index 6c20c128..45c61b31 100644 --- a/tests/unit/Rules/BetweenTest.php +++ b/tests/unit/Rules/BetweenTest.php @@ -10,20 +10,19 @@ declare(strict_types=1); namespace Respect\Validation\Rules; use DateTime; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Test\RuleTestCase; use Respect\Validation\Test\Stubs\CountableStub; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractEnvelope - * @covers \Respect\Validation\Rules\Between - */ +#[Group('rule')] +#[CoversClass(AbstractEnvelope::class)] +#[CoversClass(Between::class)] final class BetweenTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function minimumValueShouldNotBeGreaterThanMaximumValue(): void { $this->expectExceptionObject(new ComponentException('Minimum cannot be less than or equals to maximum')); @@ -31,9 +30,7 @@ final class BetweenTest extends RuleTestCase new Between(10, 5); } - /** - * @test - */ + #[Test] public function minimumValueShouldNotBeEqualsToMaximumValue(): void { $this->expectExceptionObject(new ComponentException('Minimum cannot be less than or equals to maximum')); diff --git a/tests/unit/Rules/BoolTypeTest.php b/tests/unit/Rules/BoolTypeTest.php index 72aa4f0a..7a42911b 100644 --- a/tests/unit/Rules/BoolTypeTest.php +++ b/tests/unit/Rules/BoolTypeTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\BoolType - */ +#[Group('rule')] +#[CoversClass(BoolType::class)] final class BoolTypeTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/BoolValTest.php b/tests/unit/Rules/BoolValTest.php index 5e2db501..195fd765 100644 --- a/tests/unit/Rules/BoolValTest.php +++ b/tests/unit/Rules/BoolValTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\BoolVal - */ +#[Group('rule')] +#[CoversClass(BoolVal::class)] final class BoolValTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/BsnTest.php b/tests/unit/Rules/BsnTest.php index 52732f80..2151055c 100644 --- a/tests/unit/Rules/BsnTest.php +++ b/tests/unit/Rules/BsnTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\Bsn - */ +#[Group('rule')] +#[CoversClass(Bsn::class)] final class BsnTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/CallTest.php b/tests/unit/Rules/CallTest.php index af050ef6..20c307da 100644 --- a/tests/unit/Rules/CallTest.php +++ b/tests/unit/Rules/CallTest.php @@ -11,6 +11,9 @@ namespace Respect\Validation\Rules; use ErrorException; use Exception; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\AlwaysInvalidException; use Respect\Validation\Exceptions\CallException; use Respect\Validation\Test\TestCase; @@ -20,17 +23,13 @@ use function restore_error_handler; use function set_error_handler; use function trigger_error; -/** - * @group rule - * @covers \Respect\Validation\Rules\Call - */ +#[Group('rule')] +#[CoversClass(Call::class)] final class CallTest extends TestCase { private readonly ErrorException $errorException; - /** - * @test - */ + #[Test] public function assertShouldExecuteCallable(): void { $input = ' input '; @@ -46,9 +45,7 @@ final class CallTest extends TestCase $sut->assert($input); } - /** - * @test - */ + #[Test] public function assertShouldThrowCallExceptionWhenPhpTriggersAnError(): void { $input = []; @@ -65,9 +62,7 @@ final class CallTest extends TestCase $sut->assert($input); } - /** - * @test - */ + #[Test] public function assertShouldRestorePreviousPhpErrorHandler(): void { $callable = 'trim'; @@ -85,9 +80,7 @@ final class CallTest extends TestCase trigger_error('Forcing PHP to trigger an error'); } - /** - * @test - */ + #[Test] public function assertShouldThrowCallExceptionWhenCallableThrowsAnException(): void { $input = []; @@ -106,9 +99,7 @@ final class CallTest extends TestCase $sut->assert($input); } - /** - * @test - */ + #[Test] public function assertShouldThrowExceptionOfTheDefinedRule(): void { $input = 'something'; @@ -122,9 +113,7 @@ final class CallTest extends TestCase $sut->assert($input); } - /** - * @test - */ + #[Test] public function checkShouldExecuteCallable(): void { $input = ' input '; @@ -140,9 +129,7 @@ final class CallTest extends TestCase $sut->check($input); } - /** - * @test - */ + #[Test] public function checkShouldThrowCallExceptionWhenPhpTriggersAnError(): void { $input = []; @@ -159,9 +146,7 @@ final class CallTest extends TestCase $sut->assert($input); } - /** - * @test - */ + #[Test] public function checkShouldRestorePreviousPhpErrorHandler(): void { $callable = 'trim'; @@ -179,9 +164,7 @@ final class CallTest extends TestCase trigger_error('Forcing PHP to trigger an error'); } - /** - * @test - */ + #[Test] public function checkShouldThrowCallExceptionWhenCallableThrowsAnException(): void { $input = []; @@ -200,9 +183,7 @@ final class CallTest extends TestCase $sut->assert($input); } - /** - * @test - */ + #[Test] public function checkShouldThrowExceptionOfTheDefinedRule(): void { $rule = new AlwaysInvalid(); @@ -213,9 +194,7 @@ final class CallTest extends TestCase $sut->check('something'); } - /** - * @test - */ + #[Test] public function validateShouldExecuteCallable(): void { $input = ' input '; @@ -232,9 +211,7 @@ final class CallTest extends TestCase self::assertTrue($sut->validate($input)); } - /** - * @test - */ + #[Test] public function validateShouldReturnFalseWhenPhpTriggersAnError(): void { $input = []; @@ -250,9 +227,7 @@ final class CallTest extends TestCase self::assertFalse($sut->validate($input)); } - /** - * @test - */ + #[Test] public function validateShouldReturnFalseWhenDefinedRuleFails(): void { $sut = new Call('trim', new AlwaysInvalid()); @@ -260,9 +235,7 @@ final class CallTest extends TestCase self::assertFalse($sut->validate('something')); } - /** - * @test - */ + #[Test] public function validateShouldRestorePreviousPhpErrorHandler(): void { $callable = 'trim'; diff --git a/tests/unit/Rules/CallableTypeTest.php b/tests/unit/Rules/CallableTypeTest.php index a891b333..65d79e40 100644 --- a/tests/unit/Rules/CallableTypeTest.php +++ b/tests/unit/Rules/CallableTypeTest.php @@ -9,16 +9,16 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use Respect\Validation\Test\Stubs\WithMethods; use stdClass; use const INF; -/** - * @group rule - * @covers \Respect\Validation\Rules\CallableType - */ +#[Group('rule')] +#[CoversClass(CallableType::class)] final class CallableTypeTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/CallbackTest.php b/tests/unit/Rules/CallbackTest.php index 51fe0e91..18416a5e 100644 --- a/tests/unit/Rules/CallbackTest.php +++ b/tests/unit/Rules/CallbackTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Callback - */ +#[Group('rule')] +#[CoversClass(Callback::class)] final class CallbackTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/CharsetTest.php b/tests/unit/Rules/CharsetTest.php index 802b69d9..a9b8aed9 100644 --- a/tests/unit/Rules/CharsetTest.php +++ b/tests/unit/Rules/CharsetTest.php @@ -9,20 +9,19 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Test\RuleTestCase; use function mb_convert_encoding; -/** - * @group rule - * @covers \Respect\Validation\Rules\Charset - */ +#[Group('rule')] +#[CoversClass(Charset::class)] final class CharsetTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function itShouldThrowsExceptionWhenCharsetIsNotValid(): void { $this->expectException(ComponentException::class); diff --git a/tests/unit/Rules/CnhTest.php b/tests/unit/Rules/CnhTest.php index cd3384a2..f0e1ee5e 100644 --- a/tests/unit/Rules/CnhTest.php +++ b/tests/unit/Rules/CnhTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Cnh - */ +#[Group('rule')] +#[CoversClass(Cnh::class)] final class CnhTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/CnpjTest.php b/tests/unit/Rules/CnpjTest.php index ed130c06..7b9f668e 100644 --- a/tests/unit/Rules/CnpjTest.php +++ b/tests/unit/Rules/CnpjTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\Cnpj - */ +#[Group('rule')] +#[CoversClass(Cnpj::class)] final class CnpjTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/ConsonantTest.php b/tests/unit/Rules/ConsonantTest.php index 07e56607..d95f66a4 100644 --- a/tests/unit/Rules/ConsonantTest.php +++ b/tests/unit/Rules/ConsonantTest.php @@ -9,14 +9,14 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractFilterRule - * @covers \Respect\Validation\Rules\Consonant - */ +#[Group('rule')] +#[CoversClass(AbstractFilterRule::class)] +#[CoversClass(Consonant::class)] final class ConsonantTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/ContainsAnyTest.php b/tests/unit/Rules/ContainsAnyTest.php index a17657f5..4915a1c6 100644 --- a/tests/unit/Rules/ContainsAnyTest.php +++ b/tests/unit/Rules/ContainsAnyTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\ContainsAny - */ +#[Group('rule')] +#[CoversClass(ContainsAny::class)] final class ContainsAnyTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/ContainsTest.php b/tests/unit/Rules/ContainsTest.php index d6b4b6dc..8f21b5a7 100644 --- a/tests/unit/Rules/ContainsTest.php +++ b/tests/unit/Rules/ContainsTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\Contains - */ +#[Group('rule')] +#[CoversClass(Contains::class)] final class ContainsTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/ControlTest.php b/tests/unit/Rules/ControlTest.php index 5a6b78e4..da4969be 100644 --- a/tests/unit/Rules/ControlTest.php +++ b/tests/unit/Rules/ControlTest.php @@ -9,14 +9,14 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractFilterRule - * @covers \Respect\Validation\Rules\Control - */ +#[Group('rule')] +#[CoversClass(AbstractFilterRule::class)] +#[CoversClass(Control::class)] final class ControlTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/CountableTest.php b/tests/unit/Rules/CountableTest.php index 4dd55bef..6276274e 100644 --- a/tests/unit/Rules/CountableTest.php +++ b/tests/unit/Rules/CountableTest.php @@ -11,15 +11,15 @@ namespace Respect\Validation\Rules; use ArrayIterator; use ArrayObject; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; use const PHP_INT_MAX; -/** - * @group rule - * @covers \Respect\Validation\Rules\Countable - */ +#[Group('rule')] +#[CoversClass(Countable::class)] final class CountableTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/CountryCodeTest.php b/tests/unit/Rules/CountryCodeTest.php index 3b84d37a..4cc9c5f6 100644 --- a/tests/unit/Rules/CountryCodeTest.php +++ b/tests/unit/Rules/CountryCodeTest.php @@ -9,18 +9,17 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\CountryCode - */ +#[Group('rule')] +#[CoversClass(CountryCode::class)] final class CountryCodeTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function itShouldThrowsExceptionWhenInvalidFormat(): void { $this->expectException(ComponentException::class); diff --git a/tests/unit/Rules/CpfTest.php b/tests/unit/Rules/CpfTest.php index 5891c4b3..342f5eeb 100644 --- a/tests/unit/Rules/CpfTest.php +++ b/tests/unit/Rules/CpfTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\Cpf - */ +#[Group('rule')] +#[CoversClass(Cpf::class)] final class CpfTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/CreditCardTest.php b/tests/unit/Rules/CreditCardTest.php index 6b3421fb..5440cf10 100644 --- a/tests/unit/Rules/CreditCardTest.php +++ b/tests/unit/Rules/CreditCardTest.php @@ -9,18 +9,17 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\CreditCard - */ +#[Group('rule')] +#[CoversClass(CreditCard::class)] final class CreditCardTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function itShouldThrowExceptionWhenCreditCardBrandIsNotValid(): void { $message = '"RespectCard" is not a valid credit card brand'; diff --git a/tests/unit/Rules/CurrencyCodeTest.php b/tests/unit/Rules/CurrencyCodeTest.php index 9cab0fee..38fcdef3 100644 --- a/tests/unit/Rules/CurrencyCodeTest.php +++ b/tests/unit/Rules/CurrencyCodeTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\CurrencyCode - */ +#[Group('rule')] +#[CoversClass(CurrencyCode::class)] final class CurrencyCodeTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/DateTest.php b/tests/unit/Rules/DateTest.php index 5e46b1a1..f035190a 100644 --- a/tests/unit/Rules/DateTest.php +++ b/tests/unit/Rules/DateTest.php @@ -11,19 +11,19 @@ namespace Respect\Validation\Rules; use DateTime; use DateTimeImmutable; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\Date - */ +#[Group('rule')] +#[CoversClass(Date::class)] final class DateTest extends RuleTestCase { - /** - * @test - * @dataProvider validFormatsProvider - */ + #[Test] + #[DataProvider('validFormatsProvider')] public function shouldThrowAnExceptionWhenFormatIsNotValid(string $format): void { $this->expectException(ComponentException::class); @@ -31,9 +31,7 @@ final class DateTest extends RuleTestCase new Date($format); } - /** - * @test - */ + #[Test] public function shouldPassFormatToParameterToException(): void { $format = 'F jS, Y'; diff --git a/tests/unit/Rules/DateTimeTest.php b/tests/unit/Rules/DateTimeTest.php index 013a893b..8e4e65e8 100644 --- a/tests/unit/Rules/DateTimeTest.php +++ b/tests/unit/Rules/DateTimeTest.php @@ -11,20 +11,20 @@ namespace Respect\Validation\Rules; use DateTime as DateTimeMutable; use DateTimeImmutable; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Test\RuleTestCase; use function date_default_timezone_get; use function date_default_timezone_set; -/** - * @group rule - * @covers \Respect\Validation\Rules\DateTime - */ +#[Group('rule')] +#[CoversClass(DateTime::class)] final class DateTimeTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function shouldPassFormatToParameterToException(): void { $format = 'F jS, Y'; @@ -34,10 +34,8 @@ final class DateTimeTest extends RuleTestCase self::assertSame($format, $exception->getParam('format')); } - /** - * @test - * @dataProvider providerForDateTimeWithTimezone - */ + #[Test] + #[DataProvider('providerForDateTimeWithTimezone')] public function shouldValidateNoMatterTimezone(string $format, string $input, string $timezone): void { $currentTimezone = date_default_timezone_get(); diff --git a/tests/unit/Rules/DecimalTest.php b/tests/unit/Rules/DecimalTest.php index ddc667f9..aa8a1df7 100644 --- a/tests/unit/Rules/DecimalTest.php +++ b/tests/unit/Rules/DecimalTest.php @@ -9,6 +9,8 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; @@ -17,10 +19,8 @@ use function sqrt; use const NAN; -/** - * @group rule - * @covers \Respect\Validation\Rules\Decimal - */ +#[Group('rule')] +#[CoversClass(Decimal::class)] final class DecimalTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/DigitTest.php b/tests/unit/Rules/DigitTest.php index 835baeff..9604547b 100644 --- a/tests/unit/Rules/DigitTest.php +++ b/tests/unit/Rules/DigitTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractFilterRule - * @covers \Respect\Validation\Rules\Digit - */ +#[Group('rule')] +#[CoversClass(AbstractFilterRule::class)] +#[CoversClass(Digit::class)] final class DigitTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/DirectoryTest.php b/tests/unit/Rules/DirectoryTest.php index d42b691e..1ecfe0a7 100644 --- a/tests/unit/Rules/DirectoryTest.php +++ b/tests/unit/Rules/DirectoryTest.php @@ -9,6 +9,8 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use SplFileInfo; use SplFileObject; @@ -16,10 +18,8 @@ use stdClass; use function dir; -/** - * @group rule - * @covers \Respect\Validation\Rules\Directory - */ +#[Group('rule')] +#[CoversClass(Directory::class)] final class DirectoryTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/DomainTest.php b/tests/unit/Rules/DomainTest.php index 920f9ed2..d191ea10 100644 --- a/tests/unit/Rules/DomainTest.php +++ b/tests/unit/Rules/DomainTest.php @@ -9,14 +9,14 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use Respect\Validation\Test\Stubs\ToStringStub; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Domain - */ +#[Group('rule')] +#[CoversClass(Domain::class)] final class DomainTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/EachTest.php b/tests/unit/Rules/EachTest.php index 14800096..8f1f7242 100644 --- a/tests/unit/Rules/EachTest.php +++ b/tests/unit/Rules/EachTest.php @@ -9,6 +9,9 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\NestedValidationException; use Respect\Validation\Test\RuleTestCase; use Respect\Validation\Validatable; @@ -18,45 +21,35 @@ use Traversable; use function range; -/** - * @group rule - * @covers \Respect\Validation\Rules\Each - */ +#[Group('rule')] +#[CoversClass(Each::class)] final class EachTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function itShouldAssertEachValue(): void { $validatable = $this->createMock(Validatable::class); $validatable ->expects(self::exactly(3)) - ->method('assert') - ->will($this->onConsecutiveCalls([1], [2], [3])); + ->method('assert'); $rule = new Each($validatable); $rule->assert(range(1, 3)); } - /** - * @test - */ + #[Test] public function itShouldCheckEachValue(): void { $validatable = $this->createMock(Validatable::class); $validatable ->expects(self::exactly(3)) - ->method('check') - ->will($this->onConsecutiveCalls([1], [2], [3])); + ->method('check'); $rule = new Each($validatable); $rule->check(range(1, 3)); } - /** - * @test - */ + #[Test] public function itShouldNotOverrideMessages(): void { $rule = new Each(new StringType()); diff --git a/tests/unit/Rules/EmailTest.php b/tests/unit/Rules/EmailTest.php index 798d00b8..df517aeb 100644 --- a/tests/unit/Rules/EmailTest.php +++ b/tests/unit/Rules/EmailTest.php @@ -11,20 +11,19 @@ namespace Respect\Validation\Rules; use Egulias\EmailValidator\EmailValidator; use Egulias\EmailValidator\Validation\RFCValidation; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Test\RuleTestCase; use stdClass; use function tmpfile; -/** - * @group rule - * @covers \Respect\Validation\Rules\Email - */ +#[Group(' rule')] +#[CoversClass(Email::class)] final class EmailTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function shouldUseEmailValidatorToValidate(): void { $input = 'example@example.com'; @@ -36,7 +35,7 @@ final class EmailTest extends RuleTestCase ->expects(self::once()) ->method('isValid') ->with($input, self::isInstanceOf(RFCValidation::class)) - ->will(self::returnValue(true)); + ->willReturn(true); $sut = new Email($emailValidator); diff --git a/tests/unit/Rules/EndsWithTest.php b/tests/unit/Rules/EndsWithTest.php index 0858fa0a..aaeb078a 100644 --- a/tests/unit/Rules/EndsWithTest.php +++ b/tests/unit/Rules/EndsWithTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\EndsWith - */ +#[Group('rule')] +#[CoversClass(EndsWith::class)] final class EndsWithTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/EqualsTest.php b/tests/unit/Rules/EqualsTest.php index 67252dd7..a0ee6cd0 100644 --- a/tests/unit/Rules/EqualsTest.php +++ b/tests/unit/Rules/EqualsTest.php @@ -9,18 +9,17 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Equals - */ +#[Group('rule')] +#[CoversClass(Equals::class)] final class EqualsTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function shouldPassCompareToParameterToException(): void { $compareTo = new stdClass(); diff --git a/tests/unit/Rules/EquivalentTest.php b/tests/unit/Rules/EquivalentTest.php index b042f328..cbf4faa5 100644 --- a/tests/unit/Rules/EquivalentTest.php +++ b/tests/unit/Rules/EquivalentTest.php @@ -10,12 +10,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; use ArrayObject; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\Equivalent - */ +#[Group('rule')] +#[CoversClass(Equivalent::class)] final class EquivalentTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/EvenTest.php b/tests/unit/Rules/EvenTest.php index 60515e06..83d0c705 100644 --- a/tests/unit/Rules/EvenTest.php +++ b/tests/unit/Rules/EvenTest.php @@ -9,14 +9,14 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use const INF; -/** - * @group rule - * @covers \Respect\Validation\Rules\Even - */ +#[Group('rule')] +#[CoversClass(Even::class)] final class EvenTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/ExecutableTest.php b/tests/unit/Rules/ExecutableTest.php index 71b56e9b..97e0e847 100644 --- a/tests/unit/Rules/ExecutableTest.php +++ b/tests/unit/Rules/ExecutableTest.php @@ -9,14 +9,14 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use SplFileInfo; use SplFileObject; -/** - * @group rule - * @covers \Respect\Validation\Rules\Executable - */ +#[Group('rule')] +#[CoversClass(Executable::class)] final class ExecutableTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/ExistsTest.php b/tests/unit/Rules/ExistsTest.php index e01bb2de..8083a0e1 100644 --- a/tests/unit/Rules/ExistsTest.php +++ b/tests/unit/Rules/ExistsTest.php @@ -9,14 +9,14 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use SplFileInfo; use SplFileObject; -/** - * @group rule - * @covers \Respect\Validation\Rules\Exists - */ +#[Group('rule')] +#[CoversClass(Exists::class)] final class ExistsTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/ExtensionTest.php b/tests/unit/Rules/ExtensionTest.php index 4823c2db..adb802de 100644 --- a/tests/unit/Rules/ExtensionTest.php +++ b/tests/unit/Rules/ExtensionTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use SplFileInfo; -/** - * @group rule - * @covers \Respect\Validation\Rules\Extension - */ +#[Group('rule')] +#[CoversClass(Extension::class)] final class ExtensionTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/FactorTest.php b/tests/unit/Rules/FactorTest.php index bfb6d271..e53ccb5b 100644 --- a/tests/unit/Rules/FactorTest.php +++ b/tests/unit/Rules/FactorTest.php @@ -10,6 +10,8 @@ declare(strict_types=1); namespace Respect\Validation\Rules; use DateTime; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; @@ -19,10 +21,8 @@ use function uniqid; use const PHP_INT_MAX; -/** - * @group rule - * @covers \Respect\Validation\Rules\Factor - */ +#[Group('rule')] +#[CoversClass(Factor::class)] final class FactorTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/FalseValTest.php b/tests/unit/Rules/FalseValTest.php index 54469439..c7d6ef2f 100644 --- a/tests/unit/Rules/FalseValTest.php +++ b/tests/unit/Rules/FalseValTest.php @@ -9,6 +9,8 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; @@ -16,10 +18,8 @@ use function random_int; use const PHP_INT_MAX; -/** - * @group rule - * @covers \Respect\Validation\Rules\FalseVal - */ +#[Group('rule')] +#[CoversClass(FalseVal::class)] final class FalseValTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/FibonacciTest.php b/tests/unit/Rules/FibonacciTest.php index 385132a2..74da0b6f 100644 --- a/tests/unit/Rules/FibonacciTest.php +++ b/tests/unit/Rules/FibonacciTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\Fibonacci - */ +#[Group('rule')] +#[CoversClass(Fibonacci::class)] final class FibonacciTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/FileTest.php b/tests/unit/Rules/FileTest.php index 06f67096..e6f001e5 100644 --- a/tests/unit/Rules/FileTest.php +++ b/tests/unit/Rules/FileTest.php @@ -9,6 +9,8 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use SplFileInfo; use SplFileObject; @@ -16,10 +18,8 @@ use stdClass; use const PHP_INT_MAX; -/** - * @group rule - * @covers \Respect\Validation\Rules\File - */ +#[Group('rule')] +#[CoversClass(File::class)] final class FileTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/FilterVarTest.php b/tests/unit/Rules/FilterVarTest.php index 0d9246f4..aed9564c 100644 --- a/tests/unit/Rules/FilterVarTest.php +++ b/tests/unit/Rules/FilterVarTest.php @@ -9,6 +9,9 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Test\RuleTestCase; @@ -22,16 +25,12 @@ use const FILTER_VALIDATE_FLOAT; use const FILTER_VALIDATE_INT; use const FILTER_VALIDATE_URL; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractEnvelope - * @covers \Respect\Validation\Rules\FilterVar - */ +#[Group('rule')] +#[CoversClass(AbstractEnvelope::class)] +#[CoversClass(FilterVar::class)] final class FilterVarTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function itShouldThrowsExceptionWhenFilterIsNotValid(): void { $this->expectException(ComponentException::class); diff --git a/tests/unit/Rules/FiniteTest.php b/tests/unit/Rules/FiniteTest.php index 59873177..c37287b6 100644 --- a/tests/unit/Rules/FiniteTest.php +++ b/tests/unit/Rules/FiniteTest.php @@ -9,6 +9,8 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; @@ -17,10 +19,8 @@ use function acos; use const INF; use const PHP_INT_MAX; -/** - * @group rule - * @covers \Respect\Validation\Rules\Finite - */ +#[Group('rule')] +#[CoversClass(Finite::class)] final class FiniteTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/FloatTypeTest.php b/tests/unit/Rules/FloatTypeTest.php index f548d05a..dc702bca 100644 --- a/tests/unit/Rules/FloatTypeTest.php +++ b/tests/unit/Rules/FloatTypeTest.php @@ -9,14 +9,14 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use const PHP_INT_MAX; -/** - * @group rule - * @covers \Respect\Validation\Rules\FloatType - */ +#[Group('rule')] +#[CoversClass(FloatType::class)] final class FloatTypeTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/FloatValTest.php b/tests/unit/Rules/FloatValTest.php index 1cfd30cb..7a1bf8b1 100644 --- a/tests/unit/Rules/FloatValTest.php +++ b/tests/unit/Rules/FloatValTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\FloatVal - */ +#[Group('rule')] +#[CoversClass(FloatVal::class)] final class FloatValTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/GraphTest.php b/tests/unit/Rules/GraphTest.php index 1561d750..043a45d8 100644 --- a/tests/unit/Rules/GraphTest.php +++ b/tests/unit/Rules/GraphTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractFilterRule - * @covers \Respect\Validation\Rules\Graph - */ +#[Group('rule')] +#[CoversClass(AbstractFilterRule::class)] +#[CoversClass(Graph::class)] final class GraphTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/GreaterThanTest.php b/tests/unit/Rules/GreaterThanTest.php index 6e4274e5..2630a26b 100644 --- a/tests/unit/Rules/GreaterThanTest.php +++ b/tests/unit/Rules/GreaterThanTest.php @@ -9,14 +9,14 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use Respect\Validation\Test\Stubs\CountableStub; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractComparison - * @covers \Respect\Validation\Rules\GreaterThan - */ +#[Group('rule')] +#[CoversClass(AbstractComparison::class)] +#[CoversClass(GreaterThan::class)] final class GreaterThanTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/HexRgbColorTest.php b/tests/unit/Rules/HexRgbColorTest.php index 1feeb7fd..2b25a557 100644 --- a/tests/unit/Rules/HexRgbColorTest.php +++ b/tests/unit/Rules/HexRgbColorTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\HexRgbColor - */ +#[Group('rule')] +#[CoversClass(HexRgbColor::class)] final class HexRgbColorTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/IbanTest.php b/tests/unit/Rules/IbanTest.php index eaf88a4d..9a9e009f 100644 --- a/tests/unit/Rules/IbanTest.php +++ b/tests/unit/Rules/IbanTest.php @@ -9,15 +9,15 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; use function extension_loaded; -/** - * @group rule - * @covers \Respect\Validation\Rules\Iban - */ +#[Group('rule')] +#[CoversClass(Iban::class)] final class IbanTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/IdenticalTest.php b/tests/unit/Rules/IdenticalTest.php index d0ddf267..21fb9349 100644 --- a/tests/unit/Rules/IdenticalTest.php +++ b/tests/unit/Rules/IdenticalTest.php @@ -9,18 +9,17 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Identical - */ +#[Group('rule')] +#[CoversClass(Identical::class)] final class IdenticalTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function shouldPassCompareToParameterToException(): void { $compareTo = new stdClass(); diff --git a/tests/unit/Rules/ImageTest.php b/tests/unit/Rules/ImageTest.php index ae7b7ddd..50bf147e 100644 --- a/tests/unit/Rules/ImageTest.php +++ b/tests/unit/Rules/ImageTest.php @@ -10,19 +10,18 @@ declare(strict_types=1); namespace Respect\Validation\Rules; use finfo; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Test\RuleTestCase; use SplFileInfo; use SplFileObject; -/** - * @group rule - * @covers \Respect\Validation\Rules\Image - */ +#[Group('rule')] +#[CoversClass(Image::class)] final class ImageTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function shouldValidateWithDefinedInstanceOfFileInfo(): void { $input = self::fixture('valid-image.gif'); @@ -32,7 +31,7 @@ final class ImageTest extends RuleTestCase ->expects(self::once()) ->method('file') ->with($input) - ->will(self::returnValue('image/gif')); + ->willReturn('image/gif'); $rule = new Image($finfo); diff --git a/tests/unit/Rules/ImeiTest.php b/tests/unit/Rules/ImeiTest.php index 713dca0a..071065cd 100644 --- a/tests/unit/Rules/ImeiTest.php +++ b/tests/unit/Rules/ImeiTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Imei - */ +#[Group('rule')] +#[CoversClass(Imei::class)] final class ImeiTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/InTest.php b/tests/unit/Rules/InTest.php index a5aead57..fb3e6bee 100644 --- a/tests/unit/Rules/InTest.php +++ b/tests/unit/Rules/InTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\In - */ +#[Group('rule')] +#[CoversClass(In::class)] final class InTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/InfiniteTest.php b/tests/unit/Rules/InfiniteTest.php index 4908609c..87d74161 100644 --- a/tests/unit/Rules/InfiniteTest.php +++ b/tests/unit/Rules/InfiniteTest.php @@ -9,16 +9,16 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; use const INF; use const PHP_INT_MAX; -/** - * @group rule - * @covers \Respect\Validation\Rules\Infinite - */ +#[Group('rule')] +#[CoversClass(Infinite::class)] final class InfiniteTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/InstanceTest.php b/tests/unit/Rules/InstanceTest.php index 3dd5a59e..2b4739e8 100644 --- a/tests/unit/Rules/InstanceTest.php +++ b/tests/unit/Rules/InstanceTest.php @@ -12,15 +12,15 @@ namespace Respect\Validation\Rules; use ArrayIterator; use ArrayObject; use DateTime; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use SplFileInfo; use stdClass; use Traversable; -/** - * @group rule - * @covers \Respect\Validation\Rules\Instance - */ +#[Group('rule')] +#[CoversClass(Instance::class)] final class InstanceTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/IntTypeTest.php b/tests/unit/Rules/IntTypeTest.php index 258ba74f..e3a6ef40 100644 --- a/tests/unit/Rules/IntTypeTest.php +++ b/tests/unit/Rules/IntTypeTest.php @@ -9,14 +9,14 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use const PHP_INT_MAX; -/** - * @group rule - * @covers \Respect\Validation\Rules\IntType - */ +#[Group('rule')] +#[CoversClass(IntType::class)] final class IntTypeTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/IntValTest.php b/tests/unit/Rules/IntValTest.php index dc3d6942..cc4f72a8 100644 --- a/tests/unit/Rules/IntValTest.php +++ b/tests/unit/Rules/IntValTest.php @@ -9,15 +9,15 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; use const PHP_INT_MAX; -/** - * @group rule - * @covers \Respect\Validation\Rules\IntVal - */ +#[Group('rule')] +#[CoversClass(IntVal::class)] final class IntValTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/IpTest.php b/tests/unit/Rules/IpTest.php index 1a5423a7..e0a88493 100644 --- a/tests/unit/Rules/IpTest.php +++ b/tests/unit/Rules/IpTest.php @@ -9,6 +9,10 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Test\RuleTestCase; @@ -17,17 +21,12 @@ use function extension_loaded; use const FILTER_FLAG_IPV6; use const FILTER_FLAG_NO_PRIV_RANGE; -/** - * @group rule - * @covers \Respect\Validation\Rules\Ip - */ +#[Group('rule')] +#[CoversClass(Ip::class)] final class IpTest extends RuleTestCase { - /** - * @test - * @dataProvider providerForInvalidRanges - * @throws ComponentException - */ + #[Test] + #[DataProvider('providerForInvalidRanges')] public function invalidRangeShouldRaiseException(string $range): void { $this->expectException(ComponentException::class); diff --git a/tests/unit/Rules/IsbnTest.php b/tests/unit/Rules/IsbnTest.php index ed17072e..eb924cf3 100644 --- a/tests/unit/Rules/IsbnTest.php +++ b/tests/unit/Rules/IsbnTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\Isbn - */ +#[Group('rule')] +#[CoversClass(Isbn::class)] final class IsbnTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/IterableTypeTest.php b/tests/unit/Rules/IterableTypeTest.php index 055e79fb..65f1e08e 100644 --- a/tests/unit/Rules/IterableTypeTest.php +++ b/tests/unit/Rules/IterableTypeTest.php @@ -10,13 +10,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; use ArrayIterator; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\IterableType - */ +#[Group('rule')] +#[CoversClass(IterableType::class)] final class IterableTypeTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/JsonTest.php b/tests/unit/Rules/JsonTest.php index a1ccb7a7..dc35f1eb 100644 --- a/tests/unit/Rules/JsonTest.php +++ b/tests/unit/Rules/JsonTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Json - */ +#[Group('rule')] +#[CoversClass(Json::class)] final class JsonTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/KeyNestedTest.php b/tests/unit/Rules/KeyNestedTest.php index 106f6765..e5bafc0a 100644 --- a/tests/unit/Rules/KeyNestedTest.php +++ b/tests/unit/Rules/KeyNestedTest.php @@ -10,21 +10,21 @@ declare(strict_types=1); namespace Respect\Validation\Rules; use ArrayObject; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DoesNotPerformAssertions; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\KeyNestedException; use Respect\Validation\Test\TestCase; use Respect\Validation\Validatable; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractRelated - * @covers \Respect\Validation\Rules\KeyNested - */ +#[Group('rule')] +#[CoversClass(AbstractRelated::class)] +#[CoversClass(KeyNested::class)] final class KeyNestedTest extends TestCase { - /** - * @test - */ + #[Test] public function arrayWithPresentKeysWillReturnTrueForFullPathValidator(): void { $array = [ @@ -43,9 +43,7 @@ final class KeyNestedTest extends TestCase self::assertTrue($rule->validate($array)); } - /** - * @test - */ + #[Test] public function arrayWithNumericKeysWillReturnTrueForFullPathValidator(): void { $array = [ @@ -62,9 +60,7 @@ final class KeyNestedTest extends TestCase $rule->check($array); } - /** - * @test - */ + #[Test] public function arrayWithPresentKeysWillReturnTrueForHalfPathValidator(): void { $array = [ @@ -83,9 +79,7 @@ final class KeyNestedTest extends TestCase self::assertTrue($rule->validate($array)); } - /** - * @test - */ + #[Test] public function objectWithPresentPropertiesWillReturnTrueForDirtyPathValidator(): void { $object = (object) [ @@ -104,9 +98,7 @@ final class KeyNestedTest extends TestCase self::assertTrue($rule->validate($object)); } - /** - * @test - */ + #[Test] public function emptyInputMustReturnFalse(): void { $rule = new KeyNested('bar.foo.baz'); @@ -114,9 +106,7 @@ final class KeyNestedTest extends TestCase self::assertFalse($rule->validate('')); } - /** - * @test - */ + #[Test] public function emptyInputMustNotAssert(): void { $rule = new KeyNested('bar.foo.baz'); @@ -124,9 +114,7 @@ final class KeyNestedTest extends TestCase $rule->assert(''); } - /** - * @test - */ + #[Test] public function emptyInputMustNotCheck(): void { $rule = new KeyNested('bar.foo.baz'); @@ -134,9 +122,7 @@ final class KeyNestedTest extends TestCase $rule->check(''); } - /** - * @test - */ + #[Test] public function arrayWithEmptyKeyShouldReturnTrue(): void { $rule = new KeyNested('emptyKey'); @@ -145,9 +131,7 @@ final class KeyNestedTest extends TestCase self::assertTrue($rule->validate($input)); } - /** - * @test - */ + #[Test] public function arrayWithAbsentKeyShouldThrowNestedKeyException(): void { $validator = new KeyNested('bar.bar'); @@ -160,9 +144,7 @@ final class KeyNestedTest extends TestCase $validator->assert($object); } - /** - * @test - */ + #[Test] public function notArrayShouldThrowKeyException(): void { $validator = new KeyNested('baz.bar'); @@ -171,10 +153,8 @@ final class KeyNestedTest extends TestCase $validator->assert($object); } - /** - * @doesNotPerformAssertions - * @test - */ + #[Test] + #[DoesNotPerformAssertions] public function extraValidatorShouldValidateKey(): void { $subValidator = new Length(3, 7); @@ -189,9 +169,7 @@ final class KeyNestedTest extends TestCase $validator->assert($object); } - /** - * @test - */ + #[Test] public function notMandatoryExtraValidatorShouldPassWithAbsentKey(): void { $subValidator = new Length(1, 3); @@ -200,9 +178,7 @@ final class KeyNestedTest extends TestCase self::assertTrue($validator->validate($object)); } - /** - * @test - */ + #[Test] public function arrayAccessWithPresentKeysWillReturnTrue(): void { $arrayAccess = new ArrayObject([ diff --git a/tests/unit/Rules/KeySetTest.php b/tests/unit/Rules/KeySetTest.php index 844ace2c..64948edd 100644 --- a/tests/unit/Rules/KeySetTest.php +++ b/tests/unit/Rules/KeySetTest.php @@ -9,20 +9,20 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Exceptions\KeySetException; use Respect\Validation\Test\TestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\KeySet - */ +#[Group('rule')] +#[CoversClass(KeySet::class)] final class KeySetTest extends TestCase { - /** - * @test - */ + #[Test] public function shouldNotAcceptAllOfWithMoreThanOneKeyRule(): void { $key1 = new Key('foo', new AlwaysValid(), false); @@ -35,9 +35,7 @@ final class KeySetTest extends TestCase new KeySet($allOf); } - /** - * @test - */ + #[Test] public function shouldNotAcceptAllOfWithNonKeyRule(): void { $alwaysValid = new AlwaysValid(); @@ -49,9 +47,7 @@ final class KeySetTest extends TestCase new KeySet($allOf); } - /** - * @test - */ + #[Test] public function shouldNotAcceptNonKeyRule(): void { $alwaysValid = new AlwaysValid(); @@ -62,9 +58,7 @@ final class KeySetTest extends TestCase new KeySet($alwaysValid); } - /** - * @test - */ + #[Test] public function shouldValidateKeysWhenThereAreMissingRequiredKeys(): void { $input = [ @@ -79,9 +73,7 @@ final class KeySetTest extends TestCase self::assertFalse($keySet->validate($input)); } - /** - * @test - */ + #[Test] public function shouldValidateKeysWhenThereAreMissingNonRequiredKeys(): void { $input = [ @@ -96,9 +88,7 @@ final class KeySetTest extends TestCase self::assertTrue($keySet->validate($input)); } - /** - * @test - */ + #[Test] public function shouldValidateKeysWhenThereAreMoreKeys(): void { $input = [ @@ -115,9 +105,7 @@ final class KeySetTest extends TestCase self::assertFalse($keySet->validate($input)); } - /** - * @test - */ + #[Test] public function shouldValidateKeysWhenEmpty(): void { $input = []; @@ -130,9 +118,7 @@ final class KeySetTest extends TestCase self::assertFalse($keySet->validate($input)); } - /** - * @test - */ + #[Test] public function shouldCheckKeys(): void { $input = []; @@ -148,9 +134,7 @@ final class KeySetTest extends TestCase $keySet->check($input); } - /** - * @test - */ + #[Test] public function shouldAssertKeys(): void { $input = []; @@ -166,9 +150,7 @@ final class KeySetTest extends TestCase $keySet->assert($input); } - /** - * @test - */ + #[Test] public function shouldWarnOfExtraKeysWithMessage(): void { $input = ['foo' => 123, 'bar' => 456]; @@ -183,9 +165,7 @@ final class KeySetTest extends TestCase $keySet->assert($input); } - /** - * @test - */ + #[Test] public function cannotBeNegated(): void { $key1 = new Key('foo', new AlwaysValid(), true); @@ -196,10 +176,8 @@ final class KeySetTest extends TestCase new Not(new KeySet($key1)); } - /** - * @test - * @dataProvider providerForInvalidArguments - */ + #[Test] + #[DataProvider('providerForInvalidArguments')] public function shouldThrowExceptionInCaseArgumentIsAnythingOtherThanArray(mixed $input): void { $keySet = new KeySet(new Key('name')); diff --git a/tests/unit/Rules/KeyTest.php b/tests/unit/Rules/KeyTest.php index b964067f..75a39dd6 100644 --- a/tests/unit/Rules/KeyTest.php +++ b/tests/unit/Rules/KeyTest.php @@ -9,21 +9,21 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DoesNotPerformAssertions; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Exceptions\KeyException; use Respect\Validation\Test\TestCase; use Throwable; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractRelated - * @covers \Respect\Validation\Rules\Key - */ +#[Group('rule')] +#[CoversClass(AbstractRelated::class)] +#[CoversClass(Key::class)] final class KeyTest extends TestCase { - /** - * @test - */ + #[Test] public function arrayWithPresentKeyShouldReturnTrue(): void { $validator = new Key('bar'); @@ -32,9 +32,7 @@ final class KeyTest extends TestCase self::assertTrue($validator->validate($someArray)); } - /** - * @test - */ + #[Test] public function arrayWithNumericKeyShouldReturnTrue(): void { $validator = new Key(0); @@ -43,9 +41,7 @@ final class KeyTest extends TestCase self::assertTrue($validator->validate($someArray)); } - /** - * @test - */ + #[Test] public function emptyInputMustReturnFalse(): void { $validator = new Key('someEmptyKey'); @@ -54,9 +50,7 @@ final class KeyTest extends TestCase self::assertFalse($validator->validate($input)); } - /** - * @test - */ + #[Test] public function emptyInputMustNotAssert(): void { $validator = new Key('someEmptyKey'); @@ -66,9 +60,7 @@ final class KeyTest extends TestCase $validator->assert(''); } - /** - * @test - */ + #[Test] public function emptyInputMustNotCheck(): void { $validator = new Key('someEmptyKey'); @@ -78,9 +70,7 @@ final class KeyTest extends TestCase $validator->check(''); } - /** - * @test - */ + #[Test] public function arrayWithEmptyKeyShouldReturnTrue(): void { $validator = new Key('someEmptyKey'); @@ -90,9 +80,7 @@ final class KeyTest extends TestCase self::assertTrue($validator->validate($input)); } - /** - * @test - */ + #[Test] public function shouldHaveTheSameReturnValueForAllValidators(): void { $rule = new Key('key', new NotEmpty()); @@ -113,9 +101,7 @@ final class KeyTest extends TestCase self::assertFalse($rule->validate($input)); } - /** - * @test - */ + #[Test] public function arrayWithAbsentKeyShouldThrowKeyException(): void { $validator = new Key('bar'); @@ -127,9 +113,7 @@ final class KeyTest extends TestCase $validator->assert($someArray); } - /** - * @test - */ + #[Test] public function notArrayShouldThrowKeyException(): void { $validator = new Key('bar'); @@ -140,9 +124,7 @@ final class KeyTest extends TestCase $validator->assert($someArray); } - /** - * @test - */ + #[Test] public function invalidConstructorParametersShouldThrowComponentExceptionUponInstantiation(): void { $this->expectException(ComponentException::class); @@ -150,10 +132,8 @@ final class KeyTest extends TestCase new Key(['invalid']); } - /** - * @doesNotPerformAssertions - * @test - */ + #[Test] + #[DoesNotPerformAssertions] public function extraValidatorShouldValidateKey(): void { $subValidator = new Length(1, 3); @@ -163,9 +143,7 @@ final class KeyTest extends TestCase $validator->assert($someArray); } - /** - * @test - */ + #[Test] public function notMandatoryExtraValidatorShouldPassWithAbsentKey(): void { $subValidator = new Length(1, 3); diff --git a/tests/unit/Rules/KeyValueTest.php b/tests/unit/Rules/KeyValueTest.php index 97a768dd..ae02cdee 100644 --- a/tests/unit/Rules/KeyValueTest.php +++ b/tests/unit/Rules/KeyValueTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\KeyValue - */ +#[Group('rule')] +#[CoversClass(KeyValue::class)] final class KeyValueTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/LanguageCodeTest.php b/tests/unit/Rules/LanguageCodeTest.php index 5cc7ef54..586daaf1 100644 --- a/tests/unit/Rules/LanguageCodeTest.php +++ b/tests/unit/Rules/LanguageCodeTest.php @@ -9,19 +9,18 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractEnvelope - * @covers \Respect\Validation\Rules\LanguageCode - */ +#[Group('rule')] +#[CoversClass(AbstractEnvelope::class)] +#[CoversClass(LanguageCode::class)] final class LanguageCodeTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function itShouldThrowAnExceptionWhenSetIsInvalid(): void { $this->expectExceptionObject(new ComponentException('"foo" is not a valid language set for ISO 639')); diff --git a/tests/unit/Rules/LeapDateTest.php b/tests/unit/Rules/LeapDateTest.php index d89a3bb1..fc5bac5d 100644 --- a/tests/unit/Rules/LeapDateTest.php +++ b/tests/unit/Rules/LeapDateTest.php @@ -10,12 +10,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; use DateTime; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\LeapDate - */ +#[Group('rule')] +#[CoversClass(LeapDate::class)] final class LeapDateTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/LeapYearTest.php b/tests/unit/Rules/LeapYearTest.php index 33118c0e..690723cb 100644 --- a/tests/unit/Rules/LeapYearTest.php +++ b/tests/unit/Rules/LeapYearTest.php @@ -10,12 +10,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; use DateTime; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\LeapYear - */ +#[Group('rule')] +#[CoversClass(LeapYear::class)] final class LeapYearTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/LengthTest.php b/tests/unit/Rules/LengthTest.php index 63601784..d143873d 100644 --- a/tests/unit/Rules/LengthTest.php +++ b/tests/unit/Rules/LengthTest.php @@ -9,6 +9,9 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Test\RuleTestCase; use Respect\Validation\Test\Stubs\CountableStub; @@ -16,15 +19,11 @@ use Respect\Validation\Test\Stubs\CountableStub; use function range; use function tmpfile; -/** - * @group rule - * @covers \Respect\Validation\Rules\Length - */ +#[Group('rule')] +#[CoversClass(Length::class)] final class LengthTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function isShouldNotNotAcceptInvalidLengths(): void { $this->expectException(ComponentException::class); diff --git a/tests/unit/Rules/LessThanTest.php b/tests/unit/Rules/LessThanTest.php index a72563e3..2820c0c3 100644 --- a/tests/unit/Rules/LessThanTest.php +++ b/tests/unit/Rules/LessThanTest.php @@ -9,14 +9,14 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use Respect\Validation\Test\Stubs\CountableStub; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractComparison - * @covers \Respect\Validation\Rules\LessThan - */ +#[Group('rule')] +#[CoversClass(AbstractComparison::class)] +#[CoversClass(LessThan::class)] final class LessThanTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/LowercaseTest.php b/tests/unit/Rules/LowercaseTest.php index 8891ace1..c992d087 100644 --- a/tests/unit/Rules/LowercaseTest.php +++ b/tests/unit/Rules/LowercaseTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Lowercase - */ +#[Group('rule')] +#[CoversClass(Lowercase::class)] final class LowercaseTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/LuhnTest.php b/tests/unit/Rules/LuhnTest.php index a0135f09..135b6990 100644 --- a/tests/unit/Rules/LuhnTest.php +++ b/tests/unit/Rules/LuhnTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Luhn - */ +#[Group('rule')] +#[CoversClass(Luhn::class)] final class LuhnTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/MacAddressTest.php b/tests/unit/Rules/MacAddressTest.php index 8348e6df..fb6c7a7d 100644 --- a/tests/unit/Rules/MacAddressTest.php +++ b/tests/unit/Rules/MacAddressTest.php @@ -9,6 +9,8 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use function random_int; @@ -16,10 +18,8 @@ use function tmpfile; use const PHP_INT_MAX; -/** - * @group rule - * @covers \Respect\Validation\Rules\MacAddress - */ +#[Group('rule')] +#[CoversClass(MacAddress::class)] final class MacAddressTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/MaxAgeTest.php b/tests/unit/Rules/MaxAgeTest.php index a7b60c94..0cfdf957 100644 --- a/tests/unit/Rules/MaxAgeTest.php +++ b/tests/unit/Rules/MaxAgeTest.php @@ -11,17 +11,17 @@ namespace Respect\Validation\Rules; use DateTime; use DateTimeImmutable; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; use function date; use function strtotime; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractAge - * @covers \Respect\Validation\Rules\MaxAge - */ +#[Group('rule')] +#[CoversClass(AbstractAge::class)] +#[CoversClass(MaxAge::class)] final class MaxAgeTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/MaxTest.php b/tests/unit/Rules/MaxTest.php index 0aa981c5..6f375f7d 100644 --- a/tests/unit/Rules/MaxTest.php +++ b/tests/unit/Rules/MaxTest.php @@ -11,14 +11,14 @@ namespace Respect\Validation\Rules; use DateTime; use DateTimeImmutable; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use Respect\Validation\Test\Stubs\CountableStub; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractComparison - * @covers \Respect\Validation\Rules\Max - */ +#[Group('rule')] +#[CoversClass(AbstractComparison::class)] +#[CoversClass(Max::class)] final class MaxTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/MimetypeTest.php b/tests/unit/Rules/MimetypeTest.php index ed9ba9b8..4bb8cdf4 100644 --- a/tests/unit/Rules/MimetypeTest.php +++ b/tests/unit/Rules/MimetypeTest.php @@ -10,6 +10,9 @@ declare(strict_types=1); namespace Respect\Validation\Rules; use finfo; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Test\RuleTestCase; use SplFileInfo; use SplFileObject; @@ -20,15 +23,11 @@ use function tmpfile; use const FILEINFO_MIME_TYPE; use const PHP_INT_MAX; -/** - * @group rule - * @covers \Respect\Validation\Rules\Mimetype - */ +#[Group('rule')] +#[CoversClass(Mimetype::class)] final class MimetypeTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function itShouldValidateWithDefinedFinfoInstance(): void { $mimetype = 'application/octet-stream'; @@ -43,7 +42,7 @@ final class MimetypeTest extends RuleTestCase ->expects(self::once()) ->method('file') ->with($filename, FILEINFO_MIME_TYPE) - ->will(self::returnValue($mimetype)); + ->willReturn($mimetype); $rule = new Mimetype($mimetype, $fileInfoMock); diff --git a/tests/unit/Rules/MinAgeTest.php b/tests/unit/Rules/MinAgeTest.php index 7f6cf30e..219f2f8c 100644 --- a/tests/unit/Rules/MinAgeTest.php +++ b/tests/unit/Rules/MinAgeTest.php @@ -11,17 +11,17 @@ namespace Respect\Validation\Rules; use DateTime; use DateTimeImmutable; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; use function date; use function strtotime; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractAge - * @covers \Respect\Validation\Rules\MinAge - */ +#[Group('rule')] +#[CoversClass(AbstractAge::class)] +#[CoversClass(MinAge::class)] final class MinAgeTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/MinTest.php b/tests/unit/Rules/MinTest.php index 9ef40a91..767823b1 100644 --- a/tests/unit/Rules/MinTest.php +++ b/tests/unit/Rules/MinTest.php @@ -11,14 +11,14 @@ namespace Respect\Validation\Rules; use DateTime; use DateTimeImmutable; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use Respect\Validation\Test\Stubs\CountableStub; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractComparison - * @covers \Respect\Validation\Rules\Min - */ +#[Group('rule')] +#[CoversClass(AbstractComparison::class)] +#[CoversClass(Min::class)] final class MinTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/MultipleTest.php b/tests/unit/Rules/MultipleTest.php index a696a337..d81c1a25 100644 --- a/tests/unit/Rules/MultipleTest.php +++ b/tests/unit/Rules/MultipleTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\Multiple - */ +#[Group('rule')] +#[CoversClass(Multiple::class)] final class MultipleTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/NegativeTest.php b/tests/unit/Rules/NegativeTest.php index ee1f023e..dc29e9d6 100644 --- a/tests/unit/Rules/NegativeTest.php +++ b/tests/unit/Rules/NegativeTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Negative - */ +#[Group('rule')] +#[CoversClass(Negative::class)] final class NegativeTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/NfeAccessKeyTest.php b/tests/unit/Rules/NfeAccessKeyTest.php index 858babe3..f2440b22 100644 --- a/tests/unit/Rules/NfeAccessKeyTest.php +++ b/tests/unit/Rules/NfeAccessKeyTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\NfeAccessKey - */ +#[Group('rule')] +#[CoversClass(NfeAccessKey::class)] final class NfeAccessKeyTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/NifTest.php b/tests/unit/Rules/NifTest.php index 213bd9e9..e044c621 100644 --- a/tests/unit/Rules/NifTest.php +++ b/tests/unit/Rules/NifTest.php @@ -9,15 +9,15 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; use function stream_context_create; -/** - * @group rule - * @covers \Respect\Validation\Rules\Nif - */ +#[Group(' rule')] +#[CoversClass(Nif::class)] final class NifTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/NipTest.php b/tests/unit/Rules/NipTest.php index d7ca518d..4c233320 100644 --- a/tests/unit/Rules/NipTest.php +++ b/tests/unit/Rules/NipTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Nip - */ +#[Group('rule')] +#[CoversClass(Nip::class)] final class NipTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/NoTest.php b/tests/unit/Rules/NoTest.php index 967a15ea..ee56b103 100644 --- a/tests/unit/Rules/NoTest.php +++ b/tests/unit/Rules/NoTest.php @@ -9,6 +9,11 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; +use Respect\Validation\Exceptions\NoException; use Respect\Validation\Test\RuleTestCase; use function setlocale; @@ -16,19 +21,15 @@ use function sprintf; use const LC_ALL; -/** - * @group rule - * @covers \Respect\Validation\Exceptions\NoException - * @covers \Respect\Validation\Rules\No - */ +#[Group('rule')] +#[CoversClass(NoException::class)] +#[CoversClass(No::class)] final class NoTest extends RuleTestCase { private readonly string $locale; - /** - * @test - * @dataProvider providerForValidInputWithLocale - */ + #[Test] + #[DataProvider('providerForValidInputWithLocale')] public function itShouldValidateInputAccordingToTheLocale(string $locale, string $input): void { setlocale(LC_ALL, $locale); @@ -40,10 +41,8 @@ final class NoTest extends RuleTestCase self::assertValidInput(new No(true), $input); } - /** - * @test - * @dataProvider providerForInvalidInputWithLocale - */ + #[Test] + #[DataProvider('providerForInvalidInputWithLocale')] public function itShouldInvalidateInputAccordingToTheLocale(string $locale, string $input): void { setlocale(LC_ALL, $locale); diff --git a/tests/unit/Rules/NoWhitespaceTest.php b/tests/unit/Rules/NoWhitespaceTest.php index bea8b0f7..edb05c83 100644 --- a/tests/unit/Rules/NoWhitespaceTest.php +++ b/tests/unit/Rules/NoWhitespaceTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\NoWhitespace - */ +#[Group('rule')] +#[CoversClass(NoWhitespace::class)] final class NoWhitespaceTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/NoneOfTest.php b/tests/unit/Rules/NoneOfTest.php index 6d6dac0f..0f0f4fb9 100644 --- a/tests/unit/Rules/NoneOfTest.php +++ b/tests/unit/Rules/NoneOfTest.php @@ -9,19 +9,18 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\NoneOfException; use Respect\Validation\Test\TestCase; -/** - * @group rule - * @covers \Respect\Validation\Exceptions\NoneOfException - * @covers \Respect\Validation\Rules\NoneOf - */ +#[Group('rule')] +#[CoversClass(NoneOfException::class)] +#[CoversClass(NoneOf::class)] final class NoneOfTest extends TestCase { - /** - * @test - */ + #[Test] public function valid(): void { $valid1 = new Callback(static function () { @@ -39,9 +38,7 @@ final class NoneOfTest extends TestCase $o->check('any'); } - /** - * @test - */ + #[Test] public function invalid(): void { $valid1 = new Callback(static function () { diff --git a/tests/unit/Rules/NotBlankTest.php b/tests/unit/Rules/NotBlankTest.php index 0999cdc5..5a3e31de 100644 --- a/tests/unit/Rules/NotBlankTest.php +++ b/tests/unit/Rules/NotBlankTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\NotBlank - */ +#[Group('rule')] +#[CoversClass(NotBlank::class)] final class NotBlankTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/NotEmojiTest.php b/tests/unit/Rules/NotEmojiTest.php index addec4a2..d99c71a3 100644 --- a/tests/unit/Rules/NotEmojiTest.php +++ b/tests/unit/Rules/NotEmojiTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\NotEmoji - */ +#[Group('rule')] +#[CoversClass(NotEmoji::class)] final class NotEmojiTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/NotEmptyTest.php b/tests/unit/Rules/NotEmptyTest.php index b9e49c61..69ae0886 100644 --- a/tests/unit/Rules/NotEmptyTest.php +++ b/tests/unit/Rules/NotEmptyTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\NotEmpty - */ +#[Group('rule')] +#[CoversClass(NotEmpty::class)] final class NotEmptyTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/NotOptionalTest.php b/tests/unit/Rules/NotOptionalTest.php index 764f76c4..f0dac6f9 100644 --- a/tests/unit/Rules/NotOptionalTest.php +++ b/tests/unit/Rules/NotOptionalTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\NotOptional - */ +#[Group('rule')] +#[CoversClass(NotOptional::class)] final class NotOptionalTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/NotTest.php b/tests/unit/Rules/NotTest.php index 5dd254fc..f5ac94bb 100644 --- a/tests/unit/Rules/NotTest.php +++ b/tests/unit/Rules/NotTest.php @@ -9,33 +9,33 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; +use Respect\Validation\Exceptions\NotException; use Respect\Validation\Exceptions\ValidationException; use Respect\Validation\Test\TestCase; use Respect\Validation\Validatable; use Respect\Validation\Validator; -/** - * @group rule - * @covers \Respect\Validation\Exceptions\NotException - * @covers \Respect\Validation\Rules\Not - */ +#[Group('rule')] +#[CoversClass(NotException::class)] +#[CoversClass(Not::class)] final class NotTest extends TestCase { - /** - * @doesNotPerformAssertions - * @dataProvider providerForValidNot - * @test - */ + #[Test] + #[DataProvider('providerForValidNot')] public function not(Validatable $rule, mixed $input): void { + $this->expectNotToPerformAssertions(); + $not = new Not($rule); $not->assert($input); } - /** - * @dataProvider providerForInvalidNot - * @test - */ + #[Test] + #[DataProvider('providerForInvalidNot')] public function notNotHaha(Validatable $rule, mixed $input): void { $not = new Not($rule); @@ -45,10 +45,8 @@ final class NotTest extends TestCase $not->assert($input); } - /** - * @dataProvider providerForSetName - * @test - */ + #[Test] + #[DataProvider('providerForSetName')] public function notSetName(Validatable $rule): void { $not = new Not($rule); @@ -59,7 +57,7 @@ final class NotTest extends TestCase } /** - * @return mixed[][] + * @return array */ public static function providerForValidNot(): array { @@ -76,7 +74,7 @@ final class NotTest extends TestCase } /** - * @return mixed[][] + * @return array */ public static function providerForInvalidNot(): array { @@ -89,7 +87,7 @@ final class NotTest extends TestCase } /** - * @return Validatable[][] + * @return array */ public static function providerForSetName(): array { diff --git a/tests/unit/Rules/NullTypeTest.php b/tests/unit/Rules/NullTypeTest.php index 32b5a24e..2e2a9d56 100644 --- a/tests/unit/Rules/NullTypeTest.php +++ b/tests/unit/Rules/NullTypeTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\NullType - */ +#[Group('rule')] +#[CoversClass(NullType::class)] final class NullTypeTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/NullableTest.php b/tests/unit/Rules/NullableTest.php index 014324c0..818bcfcf 100644 --- a/tests/unit/Rules/NullableTest.php +++ b/tests/unit/Rules/NullableTest.php @@ -9,19 +9,19 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Test\TestCase; use Respect\Validation\Validatable; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Nullable - */ +#[Group('rule')] +#[CoversClass(Nullable::class)] final class NullableTest extends TestCase { - /** - * @test - */ + #[Test] public function shouldNotValidateRuleWhenInputIsNull(): void { $validatable = $this->createMock(Validatable::class); @@ -34,10 +34,8 @@ final class NullableTest extends TestCase self::assertTrue($rule->validate(null)); } - /** - * @dataProvider providerForNotNullable - * @test - */ + #[Test] + #[DataProvider('providerForNotNullable')] public function shouldValidateRuleWhenInputIsNotNullable(mixed $input): void { $validatable = $this->createMock(Validatable::class); @@ -45,16 +43,14 @@ final class NullableTest extends TestCase ->expects(self::once()) ->method('validate') ->with($input) - ->will(self::returnValue(true)); + ->willReturn(true); $rule = new Nullable($validatable); self::assertTrue($rule->validate($input)); } - /** - * @test - */ + #[Test] public function shouldNotAssertRuleWhenInputIsNull(): void { $validatable = $this->createMock(Validatable::class); @@ -66,26 +62,21 @@ final class NullableTest extends TestCase $rule->assert(null); } - /** - * @test - * @dataProvider providerForNotNullable - */ + #[Test] + #[DataProvider('providerForNotNullable')] public function shouldAssertRuleWhenInputIsNotNullable(mixed $input): void { $validatable = $this->createMock(Validatable::class); $validatable ->expects(self::once()) ->method('assert') - ->with($input) - ->will(self::returnValue(true)); + ->with($input); $rule = new Nullable($validatable); $rule->assert($input); } - /** - * @test - */ + #[Test] public function shouldNotCheckRuleWhenInputIsNull(): void { $validatable = $this->createMock(Validatable::class); @@ -97,18 +88,15 @@ final class NullableTest extends TestCase $rule->check(null); } - /** - * @test - * @dataProvider providerForNotNullable - */ + #[Test] + #[DataProvider('providerForNotNullable')] public function shouldCheckRuleWhenInputIsNotNullable(mixed $input): void { $validatable = $this->createMock(Validatable::class); $validatable ->expects(self::once()) ->method('check') - ->with($input) - ->will(self::returnValue(true)); + ->with($input); $rule = new Nullable($validatable); $rule->check($input); diff --git a/tests/unit/Rules/NumberTest.php b/tests/unit/Rules/NumberTest.php index fd6ba6c0..123fd94e 100644 --- a/tests/unit/Rules/NumberTest.php +++ b/tests/unit/Rules/NumberTest.php @@ -9,6 +9,8 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; @@ -19,10 +21,8 @@ use const INF; use const NAN; use const PHP_INT_MAX; -/** - * @group rule - * @covers \Respect\Validation\Rules\Number - */ +#[Group('rule')] +#[CoversClass(Number::class)] final class NumberTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/NumericValTest.php b/tests/unit/Rules/NumericValTest.php index b8dcdb7d..08b6dbcc 100644 --- a/tests/unit/Rules/NumericValTest.php +++ b/tests/unit/Rules/NumericValTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\NumericVal - */ +#[Group('rule')] +#[CoversClass(NumericVal::class)] final class NumericValTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/ObjectTypeTest.php b/tests/unit/Rules/ObjectTypeTest.php index b623df45..56b796ed 100644 --- a/tests/unit/Rules/ObjectTypeTest.php +++ b/tests/unit/Rules/ObjectTypeTest.php @@ -10,13 +10,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; use ArrayObject; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\ObjectType - */ +#[Group('rule')] +#[CoversClass(ObjectType::class)] final class ObjectTypeTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/OddTest.php b/tests/unit/Rules/OddTest.php index 9762eec8..6aa480b3 100644 --- a/tests/unit/Rules/OddTest.php +++ b/tests/unit/Rules/OddTest.php @@ -9,15 +9,15 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; use function tmpfile; -/** - * @group rule - * @covers \Respect\Validation\Rules\Odd - */ +#[Group('rule')] +#[CoversClass(Odd::class)] final class OddTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/OneOfTest.php b/tests/unit/Rules/OneOfTest.php index 28da9f9a..f365ac94 100644 --- a/tests/unit/Rules/OneOfTest.php +++ b/tests/unit/Rules/OneOfTest.php @@ -9,21 +9,20 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\CallbackException; use Respect\Validation\Exceptions\OneOfException; use Respect\Validation\Exceptions\XdigitException; use Respect\Validation\Test\TestCase; -/** - * @group rule - * @covers \Respect\Validation\Exceptions\OneOfException - * @covers \Respect\Validation\Rules\OneOf - */ +#[Group('rule')] +#[CoversClass(OneOfException::class)] +#[CoversClass(OneOf::class)] final class OneOfTest extends TestCase { - /** - * @test - */ + #[Test] public function valid(): void { $valid1 = new Callback(static function () { @@ -43,9 +42,7 @@ final class OneOfTest extends TestCase $rule->check('any'); } - /** - * @test - */ + #[Test] public function emptyChain(): void { $rule = new OneOf(); @@ -57,9 +54,7 @@ final class OneOfTest extends TestCase $rule->check('any'); } - /** - * @test - */ + #[Test] public function invalid(): void { $valid1 = new Callback(static function () { @@ -78,9 +73,7 @@ final class OneOfTest extends TestCase $rule->assert('any'); } - /** - * @test - */ + #[Test] public function invalidMultipleAssert(): void { $valid1 = new Callback(static function () { @@ -99,9 +92,7 @@ final class OneOfTest extends TestCase $rule->assert('any'); } - /** - * @test - */ + #[Test] public function invalidMultipleCheck(): void { $valid1 = new Callback(static function () { @@ -121,9 +112,7 @@ final class OneOfTest extends TestCase $rule->check('any'); } - /** - * @test - */ + #[Test] public function invalidMultipleCheckAllValid(): void { $valid1 = new Callback(static function () { @@ -143,9 +132,7 @@ final class OneOfTest extends TestCase $rule->check('any'); } - /** - * @test - */ + #[Test] public function invalidCheck(): void { $rule = new OneOf(new Xdigit(), new Alnum()); diff --git a/tests/unit/Rules/OptionalTest.php b/tests/unit/Rules/OptionalTest.php index 6df1da17..d1445b89 100644 --- a/tests/unit/Rules/OptionalTest.php +++ b/tests/unit/Rules/OptionalTest.php @@ -9,20 +9,20 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Test\TestCase; use Respect\Validation\Validatable; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Optional - */ +#[Group('rule')] +#[CoversClass(Optional::class)] final class OptionalTest extends TestCase { - /** - * @dataProvider providerForOptional - * @test - */ + #[Test] + #[DataProvider('providerForOptional')] public function shouldNotValidateRuleWhenInputIsOptional(mixed $input): void { $validatable = $this->createMock(Validatable::class); @@ -35,10 +35,8 @@ final class OptionalTest extends TestCase self::assertTrue($rule->validate($input)); } - /** - * @dataProvider providerForNotOptional - * @test - */ + #[Test] + #[DataProvider('providerForNotOptional')] public function shouldValidateRuleWhenInputIsNotOptional(mixed $input): void { $validatable = $this->createMock(Validatable::class); @@ -46,16 +44,14 @@ final class OptionalTest extends TestCase ->expects(self::once()) ->method('validate') ->with($input) - ->will(self::returnValue(true)); + ->willReturn(true); $rule = new Optional($validatable); self::assertTrue($rule->validate($input)); } - /** - * @test - */ + #[Test] public function shouldNotAssertRuleWhenInputIsOptional(): void { $validatable = $this->createMock(Validatable::class); @@ -68,9 +64,7 @@ final class OptionalTest extends TestCase $rule->assert(''); } - /** - * @test - */ + #[Test] public function shouldAssertRuleWhenInputIsNotOptional(): void { $input = 'foo'; @@ -79,17 +73,14 @@ final class OptionalTest extends TestCase $validatable ->expects(self::once()) ->method('assert') - ->with($input) - ->will(self::returnValue(true)); + ->with($input); $rule = new Optional($validatable); $rule->assert($input); } - /** - * @test - */ + #[Test] public function shouldNotCheckRuleWhenInputIsOptional(): void { $validatable = $this->createMock(Validatable::class); @@ -102,9 +93,7 @@ final class OptionalTest extends TestCase $rule->check(''); } - /** - * @test - */ + #[Test] public function shouldCheckRuleWhenInputIsNotOptional(): void { $input = 'foo'; @@ -113,8 +102,7 @@ final class OptionalTest extends TestCase $validatable ->expects(self::once()) ->method('check') - ->with($input) - ->will(self::returnValue(true)); + ->with($input); $rule = new Optional($validatable); diff --git a/tests/unit/Rules/PerfectSquareTest.php b/tests/unit/Rules/PerfectSquareTest.php index 5e734c16..ceb415a4 100644 --- a/tests/unit/Rules/PerfectSquareTest.php +++ b/tests/unit/Rules/PerfectSquareTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\PerfectSquare - */ +#[Group('rule')] +#[CoversClass(PerfectSquare::class)] final class PerfectSquareTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/PeselTest.php b/tests/unit/Rules/PeselTest.php index 8b1abfdf..e0ff476c 100644 --- a/tests/unit/Rules/PeselTest.php +++ b/tests/unit/Rules/PeselTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\Pesel - */ +#[Group('rule')] +#[CoversClass(Pesel::class)] final class PeselTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/PhoneTest.php b/tests/unit/Rules/PhoneTest.php index 9de658b2..e69ba5b6 100644 --- a/tests/unit/Rules/PhoneTest.php +++ b/tests/unit/Rules/PhoneTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Exceptions\PhoneException; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\Phone - */ +#[Group('rule')] +#[CoversClass(Phone::class)] final class PhoneTest extends RuleTestCase { public function testThrowsExceptionWithCountryName(): void diff --git a/tests/unit/Rules/PhpLabelTest.php b/tests/unit/Rules/PhpLabelTest.php index dee62a34..66212a01 100644 --- a/tests/unit/Rules/PhpLabelTest.php +++ b/tests/unit/Rules/PhpLabelTest.php @@ -10,6 +10,8 @@ declare(strict_types=1); namespace Respect\Validation\Rules; use DateTime; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; @@ -18,10 +20,8 @@ use function mt_rand; use function random_int; use function uniqid; -/** - * @group rule - * @covers \Respect\Validation\Rules\PhpLabel - */ +#[Group('rule')] +#[CoversClass(PhpLabel::class)] final class PhpLabelTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/PisTest.php b/tests/unit/Rules/PisTest.php index 10981eea..e5b0eccf 100644 --- a/tests/unit/Rules/PisTest.php +++ b/tests/unit/Rules/PisTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Pis - */ +#[Group('rule')] +#[CoversClass(Pis::class)] final class PisTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/PolishIdCardTest.php b/tests/unit/Rules/PolishIdCardTest.php index 208053a8..89c5637c 100644 --- a/tests/unit/Rules/PolishIdCardTest.php +++ b/tests/unit/Rules/PolishIdCardTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\PolishIdCard - */ +#[Group('rule')] +#[CoversClass(PolishIdCard::class)] final class PolishIdCardTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/PositiveTest.php b/tests/unit/Rules/PositiveTest.php index aa600de9..c69b88cb 100644 --- a/tests/unit/Rules/PositiveTest.php +++ b/tests/unit/Rules/PositiveTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Positive - */ +#[Group('rule')] +#[CoversClass(Positive::class)] final class PositiveTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/PostalCodeTest.php b/tests/unit/Rules/PostalCodeTest.php index a7aabad3..8aa922e7 100644 --- a/tests/unit/Rules/PostalCodeTest.php +++ b/tests/unit/Rules/PostalCodeTest.php @@ -9,18 +9,17 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\PostalCode - */ +#[Group('rule')] +#[CoversClass(PostalCode::class)] final class PostalCodeTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function shouldValidateEmptyStringsWhenUsingDefaultPattern(): void { $rule = new PostalCode('ZW'); @@ -28,9 +27,7 @@ final class PostalCodeTest extends RuleTestCase self::assertValidInput($rule, ''); } - /** - * @test - */ + #[Test] public function shouldNotValidateNonEmptyStringsWhenUsingDefaultPattern(): void { $rule = new PostalCode('ZW'); @@ -38,9 +35,7 @@ final class PostalCodeTest extends RuleTestCase self::assertInvalidInput($rule, ' '); } - /** - * @test - */ + #[Test] public function shouldThrowsExceptionWhenCountryCodeIsNotValid(): void { $this->expectException(ComponentException::class); diff --git a/tests/unit/Rules/PrimeNumberTest.php b/tests/unit/Rules/PrimeNumberTest.php index 6ca1f099..36e374af 100644 --- a/tests/unit/Rules/PrimeNumberTest.php +++ b/tests/unit/Rules/PrimeNumberTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\PrimeNumber - */ +#[Group('rule')] +#[CoversClass(PrimeNumber::class)] final class PrimeNumberTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/PrintableTest.php b/tests/unit/Rules/PrintableTest.php index 08bceaa0..6a8b56c4 100644 --- a/tests/unit/Rules/PrintableTest.php +++ b/tests/unit/Rules/PrintableTest.php @@ -9,15 +9,15 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use function chr; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractFilterRule - * @covers \Respect\Validation\Rules\Printable - */ +#[Group('rule')] +#[CoversClass(AbstractFilterRule::class)] +#[CoversClass(Printable::class)] final class PrintableTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/PublicDomainSuffixTest.php b/tests/unit/Rules/PublicDomainSuffixTest.php index 4c129a06..4cef31c3 100644 --- a/tests/unit/Rules/PublicDomainSuffixTest.php +++ b/tests/unit/Rules/PublicDomainSuffixTest.php @@ -9,12 +9,14 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use Respect\Validation\Exceptions\PublicDomainSuffixException; use Respect\Validation\Test\RuleTestCase; -/** - * @covers \Respect\Validation\Exceptions\PublicDomainSuffixException - * @covers \Respect\Validation\Rules\PublicDomainSuffix - */ +#[Group('rule')] +#[CoversClass(PublicDomainSuffixException::class)] +#[CoversClass(PublicDomainSuffix::class)] final class PublicDomainSuffixTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/PunctTest.php b/tests/unit/Rules/PunctTest.php index 48dcd300..9c9feb92 100644 --- a/tests/unit/Rules/PunctTest.php +++ b/tests/unit/Rules/PunctTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractFilterRule - * @covers \Respect\Validation\Rules\Punct - */ +#[Group('rule')] +#[CoversClass(AbstractFilterRule::class)] +#[CoversClass(Punct::class)] final class PunctTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/ReadableTest.php b/tests/unit/Rules/ReadableTest.php index 4a95135e..6ce838ec 100644 --- a/tests/unit/Rules/ReadableTest.php +++ b/tests/unit/Rules/ReadableTest.php @@ -9,15 +9,15 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use Respect\Validation\Test\Stubs\StreamStub; use SplFileInfo; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Readable - */ +#[Group('rule')] +#[CoversClass(Readable::class)] final class ReadableTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/RegexTest.php b/tests/unit/Rules/RegexTest.php index b248ab88..2fff5b3b 100644 --- a/tests/unit/Rules/RegexTest.php +++ b/tests/unit/Rules/RegexTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Regex - */ +#[Group('rule')] +#[CoversClass(Regex::class)] final class RegexTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/ResourceTypeTest.php b/tests/unit/Rules/ResourceTypeTest.php index 579872e3..4cf08a6c 100644 --- a/tests/unit/Rules/ResourceTypeTest.php +++ b/tests/unit/Rules/ResourceTypeTest.php @@ -9,16 +9,16 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; use function stream_context_create; use function tmpfile; -/** - * @group rule - * @covers \Respect\Validation\Rules\ResourceType - */ +#[Group('rule')] +#[CoversClass(ResourceType::class)] final class ResourceTypeTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/RomanTest.php b/tests/unit/Rules/RomanTest.php index 319cec0a..9360baed 100644 --- a/tests/unit/Rules/RomanTest.php +++ b/tests/unit/Rules/RomanTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\Roman - */ +#[Group('rule')] +#[CoversClass(Roman::class)] final class RomanTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/ScalarValTest.php b/tests/unit/Rules/ScalarValTest.php index a0f67604..cd571a3e 100644 --- a/tests/unit/Rules/ScalarValTest.php +++ b/tests/unit/Rules/ScalarValTest.php @@ -9,15 +9,15 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; use function tmpfile; -/** - * @group rule - * @covers \Respect\Validation\Rules\ScalarVal - */ +#[Group('rule')] +#[CoversClass(ScalarVal::class)] final class ScalarValTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/SizeTest.php b/tests/unit/Rules/SizeTest.php index e0cf15e4..4677704e 100644 --- a/tests/unit/Rules/SizeTest.php +++ b/tests/unit/Rules/SizeTest.php @@ -11,21 +11,20 @@ namespace Respect\Validation\Rules; use org\bovigo\vfs\content\LargeFileContent; use org\bovigo\vfs\vfsStream; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Test\RuleTestCase; use Respect\Validation\Test\Stubs\StreamStub; use Respect\Validation\Test\Stubs\UploadedFileStub; use SplFileInfo; -/** - * @group rule - * @covers \Respect\Validation\Rules\Size - */ +#[Group('rule')] +#[CoversClass(Size::class)] final class SizeTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function shouldThrowsAnExceptionWhenSizeIsNotValid(): void { $this->expectException(ComponentException::class); diff --git a/tests/unit/Rules/SlugTest.php b/tests/unit/Rules/SlugTest.php index 6e208f60..80f24d68 100644 --- a/tests/unit/Rules/SlugTest.php +++ b/tests/unit/Rules/SlugTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Slug - */ +#[Group('rule')] +#[CoversClass(Slug::class)] final class SlugTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/SortedTest.php b/tests/unit/Rules/SortedTest.php index 7ac330b6..6fecfc41 100644 --- a/tests/unit/Rules/SortedTest.php +++ b/tests/unit/Rules/SortedTest.php @@ -9,19 +9,18 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rules - * @covers \Respect\Validation\Rules\Sorted - */ +#[Group('rules')] +#[CoversClass(Sorted::class)] final class SortedTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function itShouldNotAcceptWrongSortingDirection(): void { $this->expectExceptionObject(new ComponentException('Direction should be either "ASC" or "DESC"')); diff --git a/tests/unit/Rules/SpaceTest.php b/tests/unit/Rules/SpaceTest.php index 28573ba8..25c80a36 100644 --- a/tests/unit/Rules/SpaceTest.php +++ b/tests/unit/Rules/SpaceTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractFilterRule - * @covers \Respect\Validation\Rules\Space - */ +#[Group('rule')] +#[CoversClass(AbstractFilterRule::class)] +#[CoversClass(Space::class)] final class SpaceTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/StartsWithTest.php b/tests/unit/Rules/StartsWithTest.php index c5d3c1ed..4ce3a7d0 100644 --- a/tests/unit/Rules/StartsWithTest.php +++ b/tests/unit/Rules/StartsWithTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\StartsWith - */ +#[Group('rule')] +#[CoversClass(StartsWith::class)] final class StartsWithTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/StringTypeTest.php b/tests/unit/Rules/StringTypeTest.php index b65d9c78..eb948f2e 100644 --- a/tests/unit/Rules/StringTypeTest.php +++ b/tests/unit/Rules/StringTypeTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\StringType - */ +#[Group('rule')] +#[CoversClass(StringType::class)] final class StringTypeTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/StringValTest.php b/tests/unit/Rules/StringValTest.php index b6951aed..192eacae 100644 --- a/tests/unit/Rules/StringValTest.php +++ b/tests/unit/Rules/StringValTest.php @@ -9,16 +9,16 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use Respect\Validation\Test\Stubs\ToStringStub; use stdClass; use function tmpfile; -/** - * @group rule - * @covers \Respect\Validation\Rules\StringVal - */ +#[Group('rule')] +#[CoversClass(StringVal::class)] final class StringValTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/SubdivisionCodeTest.php b/tests/unit/Rules/SubdivisionCodeTest.php index a5bc843c..9c4d11f2 100644 --- a/tests/unit/Rules/SubdivisionCodeTest.php +++ b/tests/unit/Rules/SubdivisionCodeTest.php @@ -9,21 +9,20 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Exceptions\SubdivisionCodeException; use Respect\Validation\Test\TestCase; -/** - * @covers \Respect\Validation\Exceptions\SubdivisionCodeException - * @covers \Respect\Validation\Rules\SubdivisionCode - */ +#[Group('rule')] +#[CoversClass(SubdivisionCodeException::class)] +#[CoversClass(SubdivisionCode::class)] final class SubdivisionCodeTest extends TestCase { - /** - * @expectedException \Respect\Validation\Exceptions\ComponentException - * @expectedExceptionMessage "whatever" is not a supported country code - * @test - */ + #[Test] public function shouldThrowsExceptionWhenInvalidFormat(): void { $this->expectException(ComponentException::class); @@ -32,9 +31,7 @@ final class SubdivisionCodeTest extends TestCase new SubdivisionCode('whatever'); } - /** - * @test - */ + #[Test] public function shouldNotAcceptWrongNamesOnConstructor(): void { $this->expectException(ComponentException::class); @@ -43,10 +40,8 @@ final class SubdivisionCodeTest extends TestCase new SubdivisionCode('JK'); } - /** - * @dataProvider providerForValidSubdivisionCodeInformation - * @test - */ + #[Test] + #[DataProvider('providerForValidSubdivisionCodeInformation')] public function shouldValidateValidSubdivisionCodeInformation(string $countryCode, ?string $input): void { $countrySubdivision = new SubdivisionCode($countryCode); @@ -54,10 +49,8 @@ final class SubdivisionCodeTest extends TestCase self::assertTrue($countrySubdivision->validate($input)); } - /** - * @dataProvider providerForInvalidSubdivisionCodeInformation - * @test - */ + #[Test] + #[DataProvider('providerForInvalidSubdivisionCodeInformation')] public function shouldNotValidateInvalidSubdivisionCodeInformation(string $countryCode, mixed $input): void { $countrySubdivision = new SubdivisionCode($countryCode); @@ -65,9 +58,7 @@ final class SubdivisionCodeTest extends TestCase self::assertFalse($countrySubdivision->validate($input)); } - /** - * @test - */ + #[Test] public function shouldThrowsSubdivisionCodeException(): void { $countrySubdivision = new SubdivisionCode('BR'); diff --git a/tests/unit/Rules/SubsetTest.php b/tests/unit/Rules/SubsetTest.php index 1157e2f5..46274a6a 100644 --- a/tests/unit/Rules/SubsetTest.php +++ b/tests/unit/Rules/SubsetTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\Subset - */ +#[Group('rule')] +#[CoversClass(Subset::class)] final class SubsetTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/SymbolicLinkTest.php b/tests/unit/Rules/SymbolicLinkTest.php index c11b2edd..9cc86e0f 100644 --- a/tests/unit/Rules/SymbolicLinkTest.php +++ b/tests/unit/Rules/SymbolicLinkTest.php @@ -9,16 +9,16 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use SplFileInfo; use SplFileObject; use function tmpfile; -/** - * @group rule - * @covers \Respect\Validation\Rules\SymbolicLink - */ +#[Group('rule')] +#[CoversClass(SymbolicLink::class)] final class SymbolicLinkTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/TimeTest.php b/tests/unit/Rules/TimeTest.php index ebf0332a..878dbdf8 100644 --- a/tests/unit/Rules/TimeTest.php +++ b/tests/unit/Rules/TimeTest.php @@ -11,19 +11,19 @@ namespace Respect\Validation\Rules; use DateTime; use DateTimeImmutable; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\Time - */ +#[Group('rule')] +#[CoversClass(Time::class)] final class TimeTest extends RuleTestCase { - /** - * @test - * @dataProvider invalidFormatsProvider - */ + #[Test] + #[DataProvider('invalidFormatsProvider')] public function shouldThrowAnExceptionWhenFormatIsNotValid(string $format): void { $this->expectException(ComponentException::class); @@ -31,9 +31,7 @@ final class TimeTest extends RuleTestCase new Time($format); } - /** - * @test - */ + #[Test] public function shouldPassFormatToParameterToException(): void { $format = 'g:i A'; diff --git a/tests/unit/Rules/TldTest.php b/tests/unit/Rules/TldTest.php index dfe08fb9..6582a255 100644 --- a/tests/unit/Rules/TldTest.php +++ b/tests/unit/Rules/TldTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Tld - */ +#[Group('rule')] +#[CoversClass(Tld::class)] final class TldTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/TrueValTest.php b/tests/unit/Rules/TrueValTest.php index c381dcf2..d0b51de9 100644 --- a/tests/unit/Rules/TrueValTest.php +++ b/tests/unit/Rules/TrueValTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\TrueVal - */ +#[Group('rule')] +#[CoversClass(TrueVal::class)] final class TrueValTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/TypeTest.php b/tests/unit/Rules/TypeTest.php index 4ef4cd9c..739ec01a 100644 --- a/tests/unit/Rules/TypeTest.php +++ b/tests/unit/Rules/TypeTest.php @@ -9,21 +9,20 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Test\RuleTestCase; use stdClass; use function tmpfile; -/** - * @group rule - * @covers \Respect\Validation\Rules\Type - */ +#[Group(' rule')] +#[CoversClass(Type::class)] final class TypeTest extends RuleTestCase { - /** - * @test - */ + #[Test] public function shouldThrowExceptionWhenTypeIsNotValid(): void { $this->expectException(ComponentException::class); diff --git a/tests/unit/Rules/UniqueTest.php b/tests/unit/Rules/UniqueTest.php index 197d019a..fcd7b73a 100644 --- a/tests/unit/Rules/UniqueTest.php +++ b/tests/unit/Rules/UniqueTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\Unique - */ +#[Group('rule')] +#[CoversClass(Unique::class)] final class UniqueTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/UploadedTest.php b/tests/unit/Rules/UploadedTest.php index a95e7fb3..411e420a 100644 --- a/tests/unit/Rules/UploadedTest.php +++ b/tests/unit/Rules/UploadedTest.php @@ -9,7 +9,9 @@ declare(strict_types=1); namespace Respect\Validation\Rules; -use PHPUnit\Framework\SkippedTestError; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\SkippedWithMessageException; use Respect\Validation\Test\RuleTestCase; use Respect\Validation\Test\Stubs\UploadedFileStub; use SplFileInfo; @@ -18,10 +20,8 @@ use stdClass; use function extension_loaded; use function uopz_set_return; -/** - * @group rule - * @covers \Respect\Validation\Rules\Uploaded - */ +#[Group('rule')] +#[CoversClass(Uploaded::class)] final class UploadedTest extends RuleTestCase { public const UPLOADED_FILENAME = 'uploaded.ext'; @@ -59,7 +59,7 @@ final class UploadedTest extends RuleTestCase protected function setUp(): void { if (!extension_loaded('uopz')) { - throw new SkippedTestError('Extension "uopz" is required to test "Uploaded" rule'); + throw new SkippedWithMessageException('Extension "uopz" is required to test "Uploaded" rule'); } uopz_set_return( diff --git a/tests/unit/Rules/UppercaseTest.php b/tests/unit/Rules/UppercaseTest.php index 620a0e3b..c5160ce7 100644 --- a/tests/unit/Rules/UppercaseTest.php +++ b/tests/unit/Rules/UppercaseTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use stdClass; -/** - * @group rule - * @covers \Respect\Validation\Rules\Uppercase - */ +#[Group('rule')] +#[CoversClass(Uppercase::class)] final class UppercaseTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/UrlTest.php b/tests/unit/Rules/UrlTest.php index 86a10370..45ca043e 100644 --- a/tests/unit/Rules/UrlTest.php +++ b/tests/unit/Rules/UrlTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractEnvelope - * @covers \Respect\Validation\Rules\Url - */ +#[Group('rule')] +#[CoversClass(AbstractEnvelope::class)] +#[CoversClass(Url::class)] final class UrlTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/UuidTest.php b/tests/unit/Rules/UuidTest.php index a52ab348..dfe3d9fb 100644 --- a/tests/unit/Rules/UuidTest.php +++ b/tests/unit/Rules/UuidTest.php @@ -9,6 +9,9 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Test\RuleTestCase; use stdClass; @@ -18,10 +21,8 @@ use function random_int; use const PHP_INT_MAX; use const PHP_INT_MIN; -/** - * @group rule - * @covers \Respect\Validation\Rules\Uuid - */ +#[Group('rule')] +#[CoversClass(Uuid::class)] final class UuidTest extends RuleTestCase { private const UUID_VERSION_1 = 'e4eaaaf2-d142-11e1-b3e4-080027620cdd'; @@ -29,9 +30,7 @@ final class UuidTest extends RuleTestCase private const UUID_VERSION_4 = '25769c6c-d34d-4bfe-ba98-e0ee856f3e7a'; private const UUID_VERSION_5 = 'c4a760a8-dbcf-5254-a0d9-6a4474bd1b62'; - /** - * @test - */ + #[Test] public function itShouldThrowExceptionWhenVersionIsTwo(): void { self::expectException(ComponentException::class); @@ -40,9 +39,7 @@ final class UuidTest extends RuleTestCase new Uuid(2); } - /** - * @test - */ + #[Test] public function itShouldThrowExceptionWhenVersionIsGreaterThanFive(): void { $version = random_int(6, PHP_INT_MAX); @@ -53,9 +50,7 @@ final class UuidTest extends RuleTestCase new Uuid($version); } - /** - * @test - */ + #[Test] public function itShouldThrowExceptionWhenVersionIsLessThanOne(): void { $version = random_int(PHP_INT_MIN, 0); diff --git a/tests/unit/Rules/VersionTest.php b/tests/unit/Rules/VersionTest.php index 6ad5ef4b..80f7c6eb 100644 --- a/tests/unit/Rules/VersionTest.php +++ b/tests/unit/Rules/VersionTest.php @@ -9,14 +9,14 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use function uniqid; -/** - * @group rule - * @covers \Respect\Validation\Rules\Version - */ +#[Group('rule')] +#[CoversClass(Version::class)] final class VersionTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/VideoUrlTest.php b/tests/unit/Rules/VideoUrlTest.php index 4d568ea7..0b709ac6 100644 --- a/tests/unit/Rules/VideoUrlTest.php +++ b/tests/unit/Rules/VideoUrlTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\VideoUrl - */ +#[Group('rule')] +#[CoversClass(VideoUrl::class)] final class VideoUrlTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/VowelTest.php b/tests/unit/Rules/VowelTest.php index e2ec0f63..7361880f 100644 --- a/tests/unit/Rules/VowelTest.php +++ b/tests/unit/Rules/VowelTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractFilterRule - * @covers \Respect\Validation\Rules\Vowel - */ +#[Group('rule')] +#[CoversClass(AbstractFilterRule::class)] +#[CoversClass(Vowel::class)] final class VowelTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/WhenTest.php b/tests/unit/Rules/WhenTest.php index 5c05ef9d..24999b19 100644 --- a/tests/unit/Rules/WhenTest.php +++ b/tests/unit/Rules/WhenTest.php @@ -9,12 +9,12 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\When - */ +#[Group('rule')] +#[CoversClass(When::class)] final class WhenTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/WritableTest.php b/tests/unit/Rules/WritableTest.php index 57c19b51..4543f63e 100644 --- a/tests/unit/Rules/WritableTest.php +++ b/tests/unit/Rules/WritableTest.php @@ -9,6 +9,8 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; use Respect\Validation\Test\Stubs\StreamStub; use SplFileInfo; @@ -17,10 +19,8 @@ use stdClass; use function chmod; -/** - * @group rule - * @covers \Respect\Validation\Rules\Writable - */ +#[Group('rule')] +#[CoversClass(Writable::class)] final class WritableTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/XdigitTest.php b/tests/unit/Rules/XdigitTest.php index 58c088b9..0fb1aa17 100644 --- a/tests/unit/Rules/XdigitTest.php +++ b/tests/unit/Rules/XdigitTest.php @@ -9,13 +9,13 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Group; use Respect\Validation\Test\RuleTestCase; -/** - * @group rule - * @covers \Respect\Validation\Rules\AbstractFilterRule - * @covers \Respect\Validation\Rules\Xdigit - */ +#[Group('rule')] +#[CoversClass(AbstractFilterRule::class)] +#[CoversClass(Xdigit::class)] final class XdigitTest extends RuleTestCase { /** diff --git a/tests/unit/Rules/YesTest.php b/tests/unit/Rules/YesTest.php index 3a196c61..7523f215 100644 --- a/tests/unit/Rules/YesTest.php +++ b/tests/unit/Rules/YesTest.php @@ -9,6 +9,10 @@ declare(strict_types=1); namespace Respect\Validation\Rules; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\DataProvider; +use PHPUnit\Framework\Attributes\Group; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Test\RuleTestCase; use stdClass; @@ -19,18 +23,14 @@ use function sprintf; use const LC_ALL; use const PHP_INT_MAX; -/** - * @group rule - * @covers \Respect\Validation\Rules\Yes - */ +#[Group('rule')] +#[CoversClass(Yes::class)] final class YesTest extends RuleTestCase { private readonly string $locale; - /** - * @test - * @dataProvider providerForValidInputWithLocale - */ + #[Test] + #[DataProvider('providerForValidInputWithLocale')] public function itShouldValidateValidInputAccordingToTheLocale(string $locale, string $input): void { setlocale(LC_ALL, $locale); @@ -42,10 +42,8 @@ final class YesTest extends RuleTestCase self::assertValidInput(new Yes(true), $input); } - /** - * @test - * @dataProvider providerForInvalidInputWithLocale - */ + #[Test] + #[DataProvider('providerForInvalidInputWithLocale')] public function itShouldValidateInvalidInputAccordingToTheLocale(string $locale, string $input): void { setlocale(LC_ALL, $locale); diff --git a/tests/unit/ValidatorTest.php b/tests/unit/ValidatorTest.php index 26ac46a1..29485d73 100644 --- a/tests/unit/ValidatorTest.php +++ b/tests/unit/ValidatorTest.php @@ -9,34 +9,28 @@ declare(strict_types=1); namespace Respect\Validation; +use PHPUnit\Framework\Attributes\CoversClass; +use PHPUnit\Framework\Attributes\Test; use Respect\Validation\Exceptions\ComponentException; use Respect\Validation\Test\TestCase; -/** - * @covers \Respect\Validation\Validator - */ +#[CoversClass(Validator::class)] final class ValidatorTest extends TestCase { - /** - * @test - */ + #[Test] public function staticCreateShouldReturnNewValidator(): void { self::assertInstanceOf(Validator::class, Validator::create()); } - /** - * @test - */ + #[Test] public function invalidRuleClassShouldThrowComponentException(): void { $this->expectException(ComponentException::class); Validator::iDoNotExistSoIShouldThrowException(); } - /** - * @test - */ + #[Test] public function shouldReturnValidatorInstanceWhenTheNotRuleIsCalledWithArguments(): void { $validator = new Validator();