Eris\Generator\SubsetGeneratorTest::testScalesGenerationSizeToTouchAllPossibleSubsets PHP Method

testScalesGenerationSizeToTouchAllPossibleSubsets() public method

    public function testScalesGenerationSizeToTouchAllPossibleSubsets()
    {
        $maxSize = ForAll::DEFAULT_MAX_SIZE;
        $subsetSizes = [];
        for ($size = 0; $size < $maxSize; $size++) {
            $subsetSizes[] = count($this->generator->__invoke($size, $this->rand)->unbox());
        }
        $subsetSizeFrequencies = array_count_values($subsetSizes);
        // notice the full universe is very rarely generated
        // hence its presence is not asserted here
        for ($subsetSize = 0; $subsetSize < count($this->universe); $subsetSize++) {
            $this->assertGreaterThan(0, $subsetSizeFrequencies[$subsetSize], "There were no subsets generated of size {$subsetSize}");
        }
    }