public static function compare($version) { $currentVersion = str_replace(' ', '', strtolower(self::VERSION)); $version = str_replace(' ', '', $version); return version_compare($version, $currentVersion); }
private function prepare() { $cmf = $this->em->getMetadataFactory(); $metadata = new ClassMetadata('Mapping\\Fixture\\Unmapped\\Timestampable'); $id = array(); $id['fieldName'] = 'id'; $id['type'] = 'integer'; $id['nullable'] = false; $id['columnName'] = 'id'; $id['id'] = true; $metadata->mapField($id); $created = array(); $created['fieldName'] = 'created'; $created['type'] = 'datetime'; $created['nullable'] = false; $created['columnName'] = 'created'; $metadata->mapField($created); $metadata->setIdGeneratorType(ClassMetadata::GENERATOR_TYPE_IDENTITY); $metadata->setIdGenerator(new \Doctrine\ORM\Id\IdentityGenerator(null)); $metadata->setPrimaryTable(array('name' => 'temp_test')); $cmf->setMetadataFor('Mapping\\Fixture\\Unmapped\\Timestampable', $metadata); // trigger loadClassMetadata event $evm = $this->em->getEventManager(); $eventArgs = new \Doctrine\ORM\Event\LoadClassMetadataEventArgs($metadata, $this->em); $evm->dispatchEvent(\Doctrine\ORM\Events::loadClassMetadata, $eventArgs); if (Version::compare('2.3.0-dev') <= 0) { $metadata->wakeupReflection($cmf->getReflectionService()); } $schemaTool = new \Doctrine\ORM\Tools\SchemaTool($this->em); $schemaTool->dropSchema(array()); $schemaTool->createSchema(array($this->em->getClassMetadata('Mapping\\Fixture\\Unmapped\\Timestampable'))); }