generate() public method

public generate ( FixtureSet $fixtureSet ) : ObjectSet
$fixtureSet Nelmio\Alice\FixtureSet
return Nelmio\Alice\ObjectSet
 public function testGenerateObjects()
 {
     $loadedParameters = new ParameterBag(['loaded' => true]);
     $injectedParameters = new ParameterBag(['injected' => true]);
     $fixture = new DummyFixture('dummy');
     $fixtures = (new FixtureBag())->with($fixture);
     $objects = new ObjectBag(['std' => new \stdClass()]);
     $set = new FixtureSet($loadedParameters, $injectedParameters, $fixtures, $objects);
     $resolvedParameters = $injectedParameters->with(new Parameter('loaded', true));
     $resolvedSet = new ResolvedFixtureSet($resolvedParameters, $fixtures, $objects);
     $resolverProphecy = $this->prophesize(FixtureSetResolverInterface::class);
     $resolverProphecy->resolve($set)->willReturn($resolvedSet);
     /** @var FixtureSetResolverInterface $resolver */
     $resolver = $resolverProphecy->reveal();
     $context = new GenerationContext();
     $objectGeneratorProphecy = $this->prophesize(ObjectGeneratorInterface::class);
     $objectGeneratorProphecy->generate($fixture, $resolvedSet, $context)->willReturn($objectsAfterFirstPass = $objects->with(new SimpleObject('foo', StdClassFactory::create(['pass' => 'first']))));
     $contextAfterFirstPass = clone $context;
     $contextAfterFirstPass->setToSecondPass();
     $objectGeneratorProphecy->generate($fixture, new ResolvedFixtureSet($resolvedSet->getParameters(), $resolvedSet->getFixtures(), $objectsAfterFirstPass), $contextAfterFirstPass)->willReturn($objectsAfterFirstPass = $objects->with(new SimpleObject('foo', StdClassFactory::create(['pass' => 'second']))));
     /** @var ObjectGeneratorInterface $objectGenerator */
     $objectGenerator = $objectGeneratorProphecy->reveal();
     $expected = new ObjectSet($resolvedParameters, $objects->with(new SimpleObject('foo', StdClassFactory::create(['pass' => 'second']))));
     $generator = new DoublePassGenerator($resolver, $objectGenerator);
     $actual = $generator->generate($set);
     $this->assertEquals($expected, $actual);
     $resolverProphecy->resolve(Argument::any())->shouldHaveBeenCalledTimes(1);
     $objectGeneratorProphecy->generate(Argument::cetera())->shouldHaveBeenCalledTimes(2);
 }