Author: Kévin Dunglas (dunglas@gmail.com)
Inheritance: implements ApiPlatform\Core\Metadata\Property\Factory\PropertyMetadataFactoryInterface
 public function testCreateClassMetadata()
 {
     $propertyMetadata = new PropertyMetadata();
     $propertyMetadata = $propertyMetadata->withWritable(true);
     $propertyMetadataFactory = $this->prophesize(PropertyMetadataFactoryInterface::class);
     $propertyMetadataFactory->create(Dummy::class, 'id', [])->shouldBeCalled()->willReturn($propertyMetadata);
     $classMetadata = $this->prophesize(ClassMetadata::class);
     $classMetadata->getIdentifier()->shouldBeCalled()->willReturn(['id']);
     $objectManager = $this->prophesize(ObjectManager::class);
     $objectManager->getClassMetadata(Dummy::class)->shouldBeCalled()->willReturn($classMetadata->reveal());
     $managerRegistry = $this->prophesize(ManagerRegistry::class);
     $managerRegistry->getManagerForClass(Dummy::class)->shouldBeCalled()->willReturn($objectManager->reveal());
     $doctrineOrmPropertyMetadataFactory = new DoctrineOrmPropertyMetadataFactory($managerRegistry->reveal(), $propertyMetadataFactory->reveal());
     $doctrinePropertyMetadata = $doctrineOrmPropertyMetadataFactory->create(Dummy::class, 'id', []);
     $this->assertEquals($doctrinePropertyMetadata->isIdentifier(), true);
     $this->assertEquals($doctrinePropertyMetadata->isWritable(), false);
 }