Nelmio\Alice\FixtureBuilder\Denormalizer\SimpleDenormalizerTest::testReturnsADenormalizedSet PHP Method

testReturnsADenormalizedSet() public method

    public function testReturnsADenormalizedSet()
    {
        $data = ['parameters' => ['foo' => 'bar'], 'Nelmio\\Alice\\Entity\\User' => ['user1' => []], 'Nelmio\\Alice\\Entity\\Group' => ['group1' => []]];
        $fixturesData = ['Nelmio\\Alice\\Entity\\User' => ['user1' => []], 'Nelmio\\Alice\\Entity\\Group' => ['group1' => []]];
        $parameterDenormalizerProphecy = $this->prophesize(ParameterBagDenormalizerInterface::class);
        $parameterDenormalizerProphecy->denormalize($data)->willReturn($parameters = new ParameterBag(['foo' => 'bar']));
        /** @var ParameterBagDenormalizerInterface $parameterDenormalizer */
        $parameterDenormalizer = $parameterDenormalizerProphecy->reveal();
        $fixturesDenormalizerProphecy = $this->prophesize(FixtureBagDenormalizerInterface::class);
        $fixturesDenormalizerProphecy->denormalize($fixturesData)->willReturn($fixtures = (new FixtureBag())->with(new DummyFixture('foo')));
        /** @var FixtureBagDenormalizerInterface $fixturesDenormalizer */
        $fixturesDenormalizer = $fixturesDenormalizerProphecy->reveal();
        $expected = new BareFixtureSet($parameters, $fixtures);
        $denormalizer = new SimpleDenormalizer($parameterDenormalizer, $fixturesDenormalizer);
        $actual = $denormalizer->denormalize($data);
        $this->assertEquals($expected, $actual);
        $parameterDenormalizerProphecy->denormalize(Argument::any())->shouldHaveBeenCalledTimes(1);
        $fixturesDenormalizerProphecy->denormalize(Argument::any())->shouldHaveBeenCalledTimes(1);
    }