public function testNormalize() { $collection = new ResourceNameCollection([Dummy::class]); $entrypoint = new Entrypoint($collection); $factoryProphecy = $this->prophesize(ResourceMetadataFactoryInterface::class); $factoryProphecy->create(Dummy::class)->willReturn(new ResourceMetadata('Dummy', null, null, null, ['get']))->shouldBeCalled(); $iriConverterProphecy = $this->prophesize(IriConverterInterface::class); $iriConverterProphecy->getIriFromResourceClass(Dummy::class)->willReturn('/api/dummies')->shouldBeCalled(); $urlGeneratorProphecy = $this->prophesize(UrlGeneratorInterface::class); $urlGeneratorProphecy->generate('api_entrypoint')->willReturn('/api')->shouldBeCalled(); $urlGeneratorProphecy->generate('api_jsonld_context', ['shortName' => 'Entrypoint'])->willReturn('/context/Entrypoint')->shouldBeCalled(); $normalizer = new EntrypointNormalizer($factoryProphecy->reveal(), $iriConverterProphecy->reveal(), $urlGeneratorProphecy->reveal()); $expected = ['@context' => '/context/Entrypoint', '@id' => '/api', '@type' => 'Entrypoint', 'dummy' => '/api/dummies']; $this->assertEquals($expected, $normalizer->normalize($entrypoint, EntrypointNormalizer::FORMAT)); }