/** * @inheritdoc */ public function instantiate(FixtureInterface $fixture, ResolvedFixtureSet $fixtureSet, GenerationContext $context) : ResolvedFixtureSet { if ($fixtureSet->getObjects()->has($fixture)) { return $fixtureSet; } return $this->instantiator->instantiate($fixture, $fixtureSet, $context); }
/** * @inheritdoc */ public function generate(FixtureInterface $fixture, ResolvedFixtureSet $fixtureSet, GenerationContext $context) : ObjectBag { if ($context->isFirstPass()) { $fixtureSet = $this->instantiator->instantiate($fixture, $fixtureSet, $context)->getObjects(); if (false === $context->needsCompleteGeneration()) { return $fixtureSet; } } $fixtureSet = $this->completeObject($fixture, $fixtureSet, $context); return $fixtureSet->getObjects(); }
/** * Resolves the fixture constructor arguments before instantiating it. * * {@inheritdoc} * * @throws UnresolvableValueDuringGenerationException */ public function instantiate(FixtureInterface $fixture, ResolvedFixtureSet $fixtureSet, GenerationContext $context) : ResolvedFixtureSet { list($fixture, $fixtureSet) = $this->resolveFixtureConstructor($fixture, $fixtureSet, $context); return $this->instantiator->instantiate($fixture, $fixtureSet, $context); }