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);
}