Nelmio\Alice\Loader\LoaderIntegrationTest::testUniqueValueGenerationInAFunctionCall PHP Method

testUniqueValueGenerationInAFunctionCall() public method

    public function testUniqueValueGenerationInAFunctionCall()
    {
        $data = [DummyWithRequiredParameterInConstructor::class => ['dummy{1..10}' => ['__construct' => ['0 (unique)' => '<numberBetween(1, 10)>']]]];
        $result = $this->loader->loadData($data);
        $this->assertEquals(0, count($result->getParameters()));
        $this->assertEquals(10, count($result->getObjects()));
        $objects = $result->getObjects();
        $value = [];
        foreach ($objects as $object) {
            $this->assertTrue(1 <= $object->requiredParam);
            $this->assertTrue(10 >= $object->requiredParam);
            $value[$object->requiredParam] = true;
        }
        $this->assertCount(10, $value);
        try {
            $this->loader->loadData([DummyWithRequiredParameterInConstructor::class => ['dummy{1..10}' => ['__construct' => ['0 (unique)' => '<numberBetween(1, 2)>']]]]);
            $this->fail('Expected exception to be thrown.');
        } catch (UnresolvableValueDuringGenerationException $exception) {
            $this->assertInstanceOf(UniqueValueGenerationLimitReachedException::class, $exception->getPrevious());
        }
    }