public function setup()
 {
     $this->metadata = new ClassMetadata(Mapped::class);
     $reflService = new RuntimeReflectionService();
     $this->metadata->initializeReflection($reflService);
     $this->metadata->mapRid('rid');
     $this->metadata->mapField(['fieldName' => 'field', 'name' => 'field', 'type' => 'string']);
     $this->metadata->mapLink(['fieldName' => 'assoc', 'name' => 'assoc']);
     $this->metadata->mapLinkSet(['fieldName' => 'multiassoc', 'name' => 'multiassoc']);
     $this->metadata->wakeupReflection($reflService);
 }
 public function testColumnWithMissingTypeDefaultsToString()
 {
     $cm = new ClassMetadata(ColumnWithoutType::class);
     $cm->initializeReflection(new \Doctrine\Common\Persistence\Mapping\RuntimeReflectionService());
     $annotationDriver = $this->_loadDriver();
     $annotationDriver->loadMetadataForClass('Doctrine\\Tests\\ORM\\Mapping\\InvalidColumn', $cm);
     $this->assertEquals('string', $cm->fieldMappings['id']['type']);
 }
 public function createClassMetadata($entityClassName)
 {
     $mappingDriver = $this->_loadDriver();
     $class = new ClassMetadata($entityClassName);
     $class->initializeReflection(new \Doctrine\Common\Persistence\Mapping\RuntimeReflectionService());
     $mappingDriver->loadMetadataForClass($entityClassName, $class);
     return $class;
 }