Example #1
0
 protected function setUpDatabase(Application $application)
 {
     $connManager = $application->getService('defaultConnectionManager');
     $connName = 'test';
     if ($connManager->connectionExists($connName)) {
         $connManager->setDefaultConnection($connName);
         $adapter = $connManager->getAdapter($connName);
         if ($adapter instanceof MongoConnection) {
             $adapter->database()->drop();
         } else {
             $params = $adapter->getDriver()->getConnection()->getConnectionParameters();
             $filesDir = $application->config()['paths']['root']->expand('db');
             $schema = new Schema($adapter);
             $schema->dropDatabase($params['database']);
             $schema->createDatabase($params['database']);
             # Reset connection.
             $connManager->removeAdapter($connName);
             $adapter = $connManager->getAdapter($connName);
             $migrator = new Migrator($adapter, $filesDir);
             $migrator->run();
             # Clear table data.
             ActiveRecordBase::clearMetadatas();
             ActiveRecordBase::clearModelSchemas();
             SchemaMigration::setAdapter($adapter);
         }
     }
 }
Example #2
0
 protected function getPendingMigrations()
 {
     $ranVersions = STable::all()->getAttributes('version');
     $availableVersions = $this->getAvailableMigrations();
     return array_diff($availableVersions, $ranVersions);
 }
Example #3
0
 protected function getPendingMigrations()
 {
     $ranVersions = Schema\SchemaMigration::all()->pluck('version');
     $availableVersions = $this->getAvailableMigrations();
     return array_diff($availableVersions, $ranVersions);
 }