From c946f16f6052996a06320bc6182a71c37f68c200 Mon Sep 17 00:00:00 2001 From: Henrique Moody Date: Sun, 3 Mar 2024 16:42:36 +0100 Subject: [PATCH] Move mixin classes to the "Mixin" namespace Just to make the root directory cleaner. Signed-off-by: Henrique Moody --- library/{ => Mixins}/ChainedValidator.php | 3 ++- library/{ => Mixins}/StaticValidator.php | 3 ++- library/Validator.php | 3 +++ phpstan.neon.dist | 10 ---------- tests/unit/ValidatorTest.php | 3 +++ 5 files changed, 10 insertions(+), 12 deletions(-) rename library/{ => Mixins}/ChainedValidator.php (99%) rename library/{ => Mixins}/StaticValidator.php (99%) diff --git a/library/ChainedValidator.php b/library/Mixins/ChainedValidator.php similarity index 99% rename from library/ChainedValidator.php rename to library/Mixins/ChainedValidator.php index ab94717a..cf691ad6 100644 --- a/library/ChainedValidator.php +++ b/library/Mixins/ChainedValidator.php @@ -7,9 +7,10 @@ declare(strict_types=1); -namespace Respect\Validation; +namespace Respect\Validation\Mixins; use finfo; +use Respect\Validation\Validatable; interface ChainedValidator extends Validatable { diff --git a/library/StaticValidator.php b/library/Mixins/StaticValidator.php similarity index 99% rename from library/StaticValidator.php rename to library/Mixins/StaticValidator.php index e2e21ec0..a4b6ec0a 100644 --- a/library/StaticValidator.php +++ b/library/Mixins/StaticValidator.php @@ -7,9 +7,10 @@ declare(strict_types=1); -namespace Respect\Validation; +namespace Respect\Validation\Mixins; use finfo; +use Respect\Validation\Validatable; interface StaticValidator { diff --git a/library/Validator.php b/library/Validator.php index 5c273a8d..037f1267 100644 --- a/library/Validator.php +++ b/library/Validator.php @@ -17,6 +17,8 @@ use Respect\Validation\Message\Formatter; use Respect\Validation\Message\StandardFormatter; use Respect\Validation\Message\StandardRenderer; use Respect\Validation\Message\Template; +use Respect\Validation\Mixins\ChainedValidator; +use Respect\Validation\Mixins\StaticValidator; use Respect\Validation\Rules\AbstractRule; use Respect\Validation\Rules\AllOf; @@ -25,6 +27,7 @@ use function current; /** * @mixin StaticValidator + * @mixin ChainedValidator */ #[ExceptionClass(NestedValidationException::class)] #[Template( diff --git a/phpstan.neon.dist b/phpstan.neon.dist index 1450f20e..015a6fa2 100644 --- a/phpstan.neon.dist +++ b/phpstan.neon.dist @@ -12,16 +12,6 @@ parameters: message: '/Instanceof between mixed and SimpleXMLElement will always evaluate to false\./' path: library/Rules/ArrayVal.php - - - # Why: This error is intentional, so PHPunit can test an invalid __callStatic call - message: '/Call to an undefined static method Respect\\Validation\\Validator::iDoNotExistSoIShouldThrowException/' - path: tests/unit/ValidatorTest.php - - - - # Why: StaticValidator is a stub interface that types __callStatic - message: '/Call to static method PHPUnit\\Framework\\Assert::assertSame\(\) with Respect\\Validation\\Validator and Respect\\Validation\\ChainedValidator will always evaluate to false./' - path: tests/unit/ValidatorTest.php - - # Why: I don't want to make changes to the code just to make phpstan happy message: '/Parameter #2 \$values of function vsprintf expects array, array\|bool\|float\|int\|string> given./' diff --git a/tests/unit/ValidatorTest.php b/tests/unit/ValidatorTest.php index 3db8b68f..711425a1 100644 --- a/tests/unit/ValidatorTest.php +++ b/tests/unit/ValidatorTest.php @@ -27,6 +27,8 @@ final class ValidatorTest extends TestCase public function invalidRuleClassShouldThrowComponentException(): void { $this->expectException(ComponentException::class); + + // @phpstan-ignore-next-line Validator::iDoNotExistSoIShouldThrowException(); } @@ -35,6 +37,7 @@ final class ValidatorTest extends TestCase { $validator = Validator::create(); + // @phpstan-ignore-next-line self::assertSame($validator, $validator->not($validator->notEmpty())); } }