Eris\Generator\IntegerGeneratorTest::testShrinksLinearlyTowardsZero PHP Метод

testShrinksLinearlyTowardsZero() публичный Метод

    public function testShrinksLinearlyTowardsZero()
    {
        /* Not a good shrinking policy, it should start to shrink from 0 and move
         * towards the upper size limit.
         * To be fixed in the next weeks.
         */
        $generator = new IntegerGenerator();
        $value = $generator($this->size, $this->rand);
        for ($i = 0; $i < 20; $i++) {
            $newValue = $generator->shrink($value);
            $this->assertTrue(in_array(abs($value->unbox() - $newValue->unbox()), [0, 1]));
            $value = $newValue;
        }
        $this->assertSame(0, $value->unbox());
    }