Nelmio\Alice\Generator\Resolver\Fixture\TemplateFixtureResolver::resolve PHP Method

resolve() public method

Resolves a given fixture. The resolution of a fixture may result in the resolution of several fixtures.
public resolve ( TemplatingFixture $fixture, FixtureBag $unresolvedFixtures, TemplatingFixtureBag $resolvedFixtures, ResolvingContext $context ) : TemplatingFixtureBag
$fixture Nelmio\Alice\Definition\Fixture\TemplatingFixture Fixture to resolve
$unresolvedFixtures Nelmio\Alice\FixtureBag
$resolvedFixtures TemplatingFixtureBag
$context Nelmio\Alice\Generator\Resolver\ResolvingContext
return TemplatingFixtureBag
    public function resolve(TemplatingFixture $fixture, FixtureBag $unresolvedFixtures, TemplatingFixtureBag $resolvedFixtures, ResolvingContext $context) : TemplatingFixtureBag
    {
        $context->checkForCircularReference($fixture->getId());
        if (false === $fixture->extendsFixtures()) {
            return $resolvedFixtures->with($fixture);
        }
        /**
         * @var FixtureBag           $extendedFixtures
         * @var TemplatingFixtureBag $resolvedFixtures
         */
        list($extendedFixtures, $resolvedFixtures) = $this->resolveExtendedFixtures($fixture, $fixture->getExtendedFixturesReferences(), $unresolvedFixtures, $resolvedFixtures, $context);
        $fixture = $this->getExtendedFixture($fixture, $extendedFixtures);
        return $resolvedFixtures->with($fixture);
    }