예제 #1
0
 protected function getMigrationsDirectory(AbstractModule $module)
 {
     $dir = $module->getDirectory() . 'Migrations/';
     if (!is_dir($dir)) {
         throw new MigrationNotFoundException($dir . ' does not exist');
     }
     return $dir;
 }
 protected function getModuleFixtures(AbstractModule $module)
 {
     $namespace = $module->getNamespace() . '\\Fixtures\\';
     $directory = $module->getDirectory() . 'Fixtures/';
     if (!is_dir($directory)) {
         return [];
     }
     $fixtures = [];
     $files = new \DirectoryIterator($directory);
     foreach ($files as $file) {
         if (!$file->isFile() || substr($file->getFilename(), -4) !== '.php') {
             continue;
         }
         $class = $namespace . $file->getBasename('.php');
         $r = new \ReflectionClass($class);
         if (!$r->isSubclassOf('ActiveDoctrine\\Fixture\\FixtureInterface') || $r->isAbstract()) {
             continue;
         }
         $fixtures[] = $r->newInstance();
     }
     return $fixtures;
 }