Skip to content

Commit f044fe9

Browse files
authored
Merge pull request #153 from voku/int_range_fix
fix for zero `IntRange`
2 parents 93ebd00 + ed7b864 commit f044fe9

File tree

2 files changed

+3
-1
lines changed

2 files changed

+3
-1
lines changed

src/TypeResolver.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -550,7 +550,7 @@ private function resolveIntRange(ArrayIterator $tokens): Type
550550
);
551551
}
552552

553-
if (!$minValue || !$maxValue || $tokenCounter > 4) {
553+
if ($minValue === null || $maxValue === null || $tokenCounter > 4) {
554554
throw new RuntimeException(
555555
'int<min,max> has not the correct format'
556556
);

tests/unit/PseudoTypes/IntRangeTest.php

+2
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@ public function provideArrays(): array
3636
{
3737
return [
3838
'simple int range' => [new IntegerRange('-5', '5'), 'int<-5, 5>'],
39+
'zero int range v1' => [new IntegerRange('0', '1'), 'int<0, 1>'],
40+
'zero int range v2' => [new IntegerRange('-5', '0'), 'int<-5, 0>'],
3941
'mixed int range' => [new IntegerRange('min', '5'), 'int<min, 5>'],
4042
'keyword int range' => [new IntegerRange('min', 'max'), 'int<min, max>'],
4143
];

0 commit comments

Comments
 (0)