3 declare(strict_types=1);
17 $this->assertInstanceOf(Range::class,
$range);
26 $this->assertEquals(1, $range->
getStart());
27 $this->assertEquals(2, $range->
getLength());
35 $this->assertEquals(3, $range->
getEnd());
44 $this->assertEquals(1, $range->
getStart());
45 $this->assertEquals(3, $range->
getLength());
46 $this->assertEquals(4, $range->
getEnd());
56 $this->assertEquals(3, $range->
getStart());
57 $this->assertEquals(3, $range->
getLength());
58 $this->assertEquals(6, $range->
getEnd());
78 $this->expectException(InvalidArgumentException::class);
87 $this->expectException(InvalidArgumentException::class);
93 $this->expectException(InvalidArgumentException::class);
100 $this->expectException(InvalidArgumentException::class);
111 $range =
$f->range($start, $length);
115 $this->assertEquals(
$range, $cropped);
117 $this->assertEquals(min($max, $start), $cropped->getStart());
118 $this->assertEquals($max, $cropped->getEnd());
125 [0, 100, 1000,
false],
126 [0, 1000, 100,
true],
128 [50, 100, 200,
false],
testNegativeStart(Range $range)
testFactory
testConstructionWrongStart()
testNegativeLength(Range $range)
testFactory
testEndCalculation(Range $range)
testFactory
testConstructionWrongLength()
getEnd()
getEnd will return the (excluded) endpoint.
testWithStart(Range $range)
testWithLength
croppedTo(int $max)
This will create a range that is guaranteed to not exceed $max.
testWithLength(Range $range)
testFactory
testCroppedTo($start, $length, $max, $has_changed)
cropCases
A simple class to express a range of whole positive numbers.
testValues(Range $range)
testFactory
testUnpack(Range $range)
testWithStart