-
-
Notifications
You must be signed in to change notification settings - Fork 56
refactor: modernise the validation in active code and the associated tests for dealing with integer arrays #308
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…tests for dealing with integer arrays
WalkthroughThis pull request introduces several changes to the handling of integer arrays within the Doctrine DBAL types. Method signatures for minimum and maximum value getters are updated to return integers instead of strings. The validation logic now leverages a new regex constant and a dedicated private method to throw specific exceptions for various error scenarios. New exception classes are added for both database and PHP conversion errors, and test cases have been updated to cover valid, invalid, and out-of-range scenarios. Changes
Sequence Diagram(s)sequenceDiagram
participant Client
participant IntegerArrayHandler
participant Validator
participant ExceptionHandler
Client->>IntegerArrayHandler: transformArrayItemForPHP(value)
IntegerArrayHandler->>Validator: validate value (regex & range)
alt Value is valid
Validator-->>IntegerArrayHandler: Return validated integer
IntegerArrayHandler-->>Client: Return integer
else Value is invalid
Validator-->>IntegerArrayHandler: Signal validation failure
IntegerArrayHandler->>ExceptionHandler: Throw specific exception
ExceptionHandler-->>Client: Error response
end
Possibly related PRs
Poem
📜 Recent review detailsConfiguration used: .coderabbit.yaml 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
⏰ Context from checks skipped due to timeout of 90000ms (4)
🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
Documentation and Community
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 4
🧹 Nitpick comments (1)
src/MartinGeorgiev/Doctrine/DBAL/Types/BaseIntegerArray.php (1)
47-49: Consider adding a comment explaining the integer validation logic.The string comparison technique used here (
$stringValue !== (string) (int) $stringValue) is clever but not immediately obvious. A brief comment explaining this approach would improve code maintainability.$doesNotFitIntoPHPInteger = $stringValue !== (string) (int) $stringValue; +// If casting to int and back to string doesn't match the original string, +// then the value is outside PHP's integer range if ($doesNotFitIntoPHPInteger) { throw InvalidIntegerArrayItemForDatabaseException::isOutOfRange($item); }
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (11)
src/MartinGeorgiev/Doctrine/DBAL/Types/BaseIntegerArray.php(2 hunks)src/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArray.php(1 hunks)src/MartinGeorgiev/Doctrine/DBAL/Types/Exceptions/InvalidIntegerArrayItemForDatabaseException.php(1 hunks)src/MartinGeorgiev/Doctrine/DBAL/Types/Exceptions/InvalidIntegerArrayItemForPHPException.php(1 hunks)src/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArray.php(1 hunks)src/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArray.php(1 hunks)tests/MartinGeorgiev/Doctrine/DBAL/Types/BaseIntegerArrayTestCase.php(3 hunks)tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php(2 hunks)tests/MartinGeorgiev/Doctrine/DBAL/Types/DoublePrecisionArrayTest.php(0 hunks)tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php(2 hunks)tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php(2 hunks)
💤 Files with no reviewable changes (1)
- tests/MartinGeorgiev/Doctrine/DBAL/Types/DoublePrecisionArrayTest.php
🧰 Additional context used
🧬 Code Definitions (8)
src/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArray.php (3)
src/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArray.php (2)
getMinValue(22-25)getMaxValue(27-30)src/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArray.php (2)
getMinValue(22-25)getMaxValue(27-30)src/MartinGeorgiev/Doctrine/DBAL/Types/BaseIntegerArray.php (2)
getMinValue(20-20)getMaxValue(22-22)
src/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArray.php (3)
src/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArray.php (2)
getMinValue(22-25)getMaxValue(27-30)src/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArray.php (2)
getMinValue(22-25)getMaxValue(27-30)src/MartinGeorgiev/Doctrine/DBAL/Types/BaseIntegerArray.php (2)
getMinValue(20-20)getMaxValue(22-22)
src/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArray.php (3)
src/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArray.php (2)
getMinValue(22-25)getMaxValue(27-30)src/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArray.php (2)
getMinValue(22-25)getMaxValue(27-30)src/MartinGeorgiev/Doctrine/DBAL/Types/BaseIntegerArray.php (2)
getMinValue(20-20)getMaxValue(22-22)
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php (2)
src/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArray.php (1)
SmallIntArray(15-31)tests/MartinGeorgiev/Doctrine/DBAL/Types/BaseIntegerArrayTestCase.php (2)
provideInvalidTransformations(28-42)provideOutOfRangeValues(88-88)
src/MartinGeorgiev/Doctrine/DBAL/Types/Exceptions/InvalidIntegerArrayItemForPHPException.php (1)
src/MartinGeorgiev/Doctrine/DBAL/Types/Exceptions/InvalidIntegerArrayItemForDatabaseException.php (1)
create(16-19)
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php (3)
src/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArray.php (1)
IntegerArray(15-31)tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php (3)
provideInvalidTransformations(24-32)provideValidTransformations(37-65)provideOutOfRangeValues(70-76)tests/MartinGeorgiev/Doctrine/DBAL/Types/BaseIntegerArrayTestCase.php (3)
provideInvalidTransformations(28-42)provideValidTransformations(70-70)provideOutOfRangeValues(88-88)
src/MartinGeorgiev/Doctrine/DBAL/Types/BaseIntegerArray.php (5)
src/MartinGeorgiev/Doctrine/DBAL/Types/Exceptions/InvalidIntegerArrayItemForDatabaseException.php (6)
InvalidIntegerArrayItemForDatabaseException(14-45)isNotANumber(21-24)doesNotMatchRegex(26-29)isOutOfRange(41-44)isBelowMinValue(31-34)isAboveMaxValue(36-39)src/MartinGeorgiev/Doctrine/DBAL/Types/Exceptions/InvalidIntegerArrayItemForPHPException.php (4)
InvalidIntegerArrayItemForPHPException(14-35)forValueThatIsNotAValidPHPInteger(21-24)forValueOutOfRangeInPHP(26-29)forValueOutOfRangeInDatabaseType(31-34)src/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArray.php (2)
getMinValue(22-25)getMaxValue(27-30)src/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArray.php (2)
getMinValue(22-25)getMaxValue(27-30)src/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArray.php (2)
getMinValue(22-25)getMaxValue(27-30)
src/MartinGeorgiev/Doctrine/DBAL/Types/Exceptions/InvalidIntegerArrayItemForDatabaseException.php (1)
src/MartinGeorgiev/Doctrine/DBAL/Types/Exceptions/InvalidIntegerArrayItemForPHPException.php (1)
create(16-19)
🪛 GitHub Check: PHP 8.1 + Doctrine ORM 2.14 + Doctrine Lexer 1.2
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.4 + Doctrine ORM 2.14 + Doctrine Lexer latest
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.4 + Doctrine ORM 2.18 + Doctrine Lexer latest
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.4 + Doctrine ORM 3.0 + Doctrine Lexer 3.0
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.4 + Doctrine ORM 2.14 + Doctrine Lexer 2.1
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.4 + Doctrine ORM latest + Doctrine Lexer latest
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.3 + Doctrine ORM 2.18 + Doctrine Lexer latest
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.4 + Doctrine ORM 2.18 + Doctrine Lexer 3.0
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.4 + Doctrine ORM latest + Doctrine Lexer 3.0
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.4 + Doctrine ORM 3.0 + Doctrine Lexer latest
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.3 + Doctrine ORM 2.14 + Doctrine Lexer 2.1
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.3 + Doctrine ORM 3.0 + Doctrine Lexer latest
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.2 + Doctrine ORM 3.0 + Doctrine Lexer latest
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.4 + Doctrine ORM latest + Doctrine Lexer 2.1
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.4 + Doctrine ORM 2.18 + Doctrine Lexer 2.1
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.3 + Doctrine ORM 2.14 + Doctrine Lexer latest
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.3 + Doctrine ORM latest + Doctrine Lexer latest
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.3 + Doctrine ORM 2.18 + Doctrine Lexer 3.0
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.3 + Doctrine ORM 2.18 + Doctrine Lexer 2.1
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.3 + Doctrine ORM latest + Doctrine Lexer 3.0
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.2 + Doctrine ORM 2.18 + Doctrine Lexer 2.1
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.2 + Doctrine ORM 3.0 + Doctrine Lexer 3.0
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.3 + Doctrine ORM 3.0 + Doctrine Lexer 3.0
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.3 + Doctrine ORM latest + Doctrine Lexer 2.1
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.2 + Doctrine ORM latest + Doctrine Lexer latest
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.2 + Doctrine ORM 2.14 + Doctrine Lexer latest
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.2 + Doctrine ORM 2.18 + Doctrine Lexer latest
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.2 + Doctrine ORM latest + Doctrine Lexer 3.0
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.1 + Doctrine ORM 2.18 + Doctrine Lexer latest
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.2 + Doctrine ORM 2.18 + Doctrine Lexer 3.0
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.1 + Doctrine ORM 3.0 + Doctrine Lexer latest
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.1 + Doctrine ORM latest + Doctrine Lexer latest
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.2 + Doctrine ORM latest + Doctrine Lexer 2.1
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.2 + Doctrine ORM 2.14 + Doctrine Lexer 2.1
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.1 + Doctrine ORM 2.14 + Doctrine Lexer latest
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.1 + Doctrine ORM latest + Doctrine Lexer 3.0
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.1 + Doctrine ORM 2.18 + Doctrine Lexer 2.1
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.1 + Doctrine ORM latest + Doctrine Lexer 2.1
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.1 + Doctrine ORM 2.18 + Doctrine Lexer 3.0
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.1 + Doctrine ORM 2.14 + Doctrine Lexer 2.1
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🪛 GitHub Check: PHP 8.1 + Doctrine ORM 3.0 + Doctrine Lexer 3.0
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\SmallIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php
[failure] 84-84:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BigIntArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php
[failure] 70-70:
Return type (array<array{string}>) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\IntegerArrayTest::provideOutOfRangeValues() should be compatible with return type (list) of method Tests\MartinGeorgiev\Doctrine\DBAL\Types\BaseIntegerArrayTestCase::provideOutOfRangeValues()
🔇 Additional comments (28)
src/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArray.php (2)
22-25: Improved type safety with int return type.The method now correctly returns a proper integer value instead of a string representation. This aligns with modern PHP type safety practices and makes the API more consistent.
27-30: Improved type safety with int return type.The method now correctly returns a proper integer value instead of a string representation. This aligns with modern PHP type safety practices and makes the API more consistent.
src/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArray.php (2)
22-25: Improved type safety using PHP's built-in constants.Good change to return
PHP_INT_MINas an integer instead of a hardcoded string. This is more maintainable and automatically adapts to the platform's integer limits.
27-30: Improved type safety using PHP's built-in constants.Good change to return
PHP_INT_MAXas an integer instead of a hardcoded string. This is more maintainable and automatically adapts to the platform's integer limits.src/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArray.php (2)
22-25: Improved type safety with int return type.The method now correctly returns a proper integer value instead of a string representation. This aligns with modern PHP type safety practices and makes the API more consistent.
27-30: Improved type safety with int return type.The method now correctly returns a proper integer value instead of a string representation. This aligns with modern PHP type safety practices and makes the API more consistent.
tests/MartinGeorgiev/Doctrine/DBAL/Types/SmallIntArrayTest.php (3)
24-32: Good test coverage for edge cases.The additional test cases for invalid transformations are excellent. Testing values just outside the smallint range, scientific notation, and decimal numbers ensures proper validation of the input.
34-65: Improved test data structure with named keys.The restructured test data with named keys ('phpValue' and 'postgresValue') improves readability and maintainability. The additional test cases for common values (0, 1, -1, 9999) provide better coverage.
11-14:✅ Verification successful
Missing parent::setUp() call.
The setUp method doesn't call parent::setUp(). While this might be intentional, it's worth checking if any necessary initialization in the parent class is being skipped.
🏁 Script executed:
#!/bin/bash # Check if the parent class's setUp method contains important initialization ast-grep --pattern $'class BaseIntegerArrayTestCase extends \$_ { $$$ protected function setUp(): void { $$$ } $$$ }'Length of output: 130
I'll run a new script to locate the parent class file and inspect its
setUp()method, so we can determine whether skippingparent::setUp()is safe or not.
🏁 Script executed:
#!/bin/bash # Locate the file where BaseIntegerArrayTestCase is defined and display its setUp method parent_file=$(rg --files-with-matches "class BaseIntegerArrayTestCase" | head -n 1) echo "Parent File: $parent_file" if [ -n "$parent_file" ]; then rg -A 20 "protected function setUp" "$parent_file" else echo "Parent class file not found." fiLength of output: 522
I'll now run a script to display the first 50 lines of the parent class file so we can inspect whether its
setUp()method is defined and contains any important initialization.
🏁 Script executed:
#!/bin/bash # Display the first 50 lines of the parent class file to inspect the setUp method. cat tests/MartinGeorgiev/Doctrine/DBAL/Types/BaseIntegerArrayTestCase.php | head -n 50Length of output: 1295
Verification Outcome: Parent setUp Unnecessary
After reviewing the parent class in
tests/MartinGeorgiev/Doctrine/DBAL/Types/BaseIntegerArrayTestCase.php, we found that it does not override thesetUp()method. This means no additional initialization is being skipped by omitting a call toparent::setUp()in yourSmallIntArrayTestclass. While it’s generally good practice to includeparent::setUp()to safeguard against future updates, it isn’t strictly required in this case.tests/MartinGeorgiev/Doctrine/DBAL/Types/IntegerArrayTest.php (3)
13-13: Simplified setUp method looks good.The removal of the parent::setUp() call makes the code cleaner while maintaining the necessary initialization.
26-31: Well-structured test cases for invalid transformations.Good addition of edge cases that test integer boundary conditions and non-integer formats. This helps ensure robust validation.
35-65: Improved test coverage with structured data.The updated valid transformations with named keys improve code readability and test more cases including boundary values and common integers. The improved return type annotation also enhances type safety.
tests/MartinGeorgiev/Doctrine/DBAL/Types/BaseIntegerArrayTestCase.php (4)
8-8: Good addition of exception import.Adding the InvalidIntegerArrayItemForPHPException import supports the new test method that verifies exception throwing behavior.
36-40: Enhanced invalid test cases.The additional test cases for invalid transformations provide more comprehensive coverage of edge cases, including decimal strings, scientific notation, and non-numeric values.
65-69: Improved return type annotation.The updated annotation with specific array structure improves type safety and makes the expected data format clearer.
72-88: Good validation test for out-of-range values.The new test method and abstract provider method properly verify that out-of-range values throw the expected exception, enhancing error handling and validation coverage.
tests/MartinGeorgiev/Doctrine/DBAL/Types/BigIntArrayTest.php (4)
14-14: Simplified setUp method looks good.The removal of the parent::setUp() call makes the code cleaner while maintaining the necessary initialization.
27-32: Well-structured test cases for invalid BigInt transformations.Good addition of edge cases specific to BigInt boundaries, testing values that exceed PHP_INT_MAX/MIN and non-integer formats.
36-66: Improved test coverage for BigInt values.The updated valid transformations use PHP constants appropriately for boundary cases and include common integers like 0, 1, and -1. The named keys and improved return type annotation enhance readability and type safety.
68-79: Good test for validating PHP integer range exceptions.This test properly verifies that values valid for PostgreSQL but out of range for PHP throw the expected exception with the right message.
src/MartinGeorgiev/Doctrine/DBAL/Types/Exceptions/InvalidIntegerArrayItemForPHPException.php (2)
14-19: Well-designed exception class with helper method.The exception extends ConversionException appropriately, and the private create method establishes a consistent pattern for exception creation.
21-34: Excellent factory methods for specific error scenarios.The three factory methods provide clear, descriptive error messages for different validation failure scenarios:
- Values that can't be transformed to valid PHP integers
- Values out of range for PHP but valid for PostgreSQL
- Values out of range for the PostgreSQL type
This design improves error handling and enables more specific exception testing.
src/MartinGeorgiev/Doctrine/DBAL/Types/Exceptions/InvalidIntegerArrayItemForDatabaseException.php (1)
1-45: Well-structured exception class with clear error handling.This is a clean implementation of a specialized exception class for handling integer array validation errors. The static factory methods provide specific error context, making debugging easier.
src/MartinGeorgiev/Doctrine/DBAL/Types/BaseIntegerArray.php (5)
18-18: Good use of a constant for regex pattern.Using a constant for the integer regex pattern improves maintainability and readability.
20-22: Improved type safety with return type change.Changing method signatures to return
intinstead ofstringprovides better type safety and more accurately represents the intention of these methods.
24-33: Good refactoring of validation logic.The validation approach has been improved by using a try-catch pattern, which simplifies the control flow and makes the code more readable.
35-60: Well-structured validation with specific exceptions.The new private method provides clear separation of concerns and throws specific exceptions for different validation failures, making error handling more robust.
62-86: Comprehensive validation in transformation logic.The updated transformation method includes thorough validation checks and uses appropriate specialized exceptions, which improves error handling and debugging.
Summary by CodeRabbit
Refactor
New Features
Tests