Doctrine\DBAL\Migrations\Configuration\Configuration::registerMigration PHP Method

registerMigration() public method

Register a single migration version to be executed by a AbstractMigration class.
public registerMigration ( string $version, string $class ) : Version
$version string The version of the migration in the format YYYYMMDDHHMMSS.
$class string The migration class to execute for the version.
return Doctrine\DBAL\Migrations\Version
    public function registerMigration($version, $class)
    {
        $this->ensureMigrationClassExists($class);
        $version = (string) $version;
        $class = (string) $class;
        if (isset($this->migrations[$version])) {
            throw MigrationException::duplicateMigrationVersion($version, get_class($this->migrations[$version]));
        }
        $version = new Version($this, $version, $class);
        $this->migrations[$version->getVersion()] = $version;
        ksort($this->migrations, SORT_STRING);
        return $version;
    }

Usage Example

Example #1
0
 /**
  * @see https://github.com/doctrine/migrations/issues/61
  * @group regresion
  * @dataProvider provideTestMigrationNames
  */
 public function testMigrateExecutesOlderVersionsThatHaveNetYetBeenMigrated(array $migrations)
 {
     foreach ($migrations as $key => $class) {
         $migration = new \Doctrine\DBAL\Migrations\Migration($this->config);
         $this->config->registerMigration($key, $class);
         $sql = $migration->migrate();
         $this->assertCount(1, $sql, 'should have executed one migration');
     }
 }
All Usage Examples Of Doctrine\DBAL\Migrations\Configuration\Configuration::registerMigration