diff --git a/Command/DoctrineCommand.php b/Command/DoctrineCommand.php index 659d132..5a9a6be 100644 --- a/Command/DoctrineCommand.php +++ b/Command/DoctrineCommand.php @@ -56,7 +56,7 @@ public static function configureMigrations(ContainerInterface $container, Config $configuration->registerMigrationsFromDirectory($configuration->getMigrationsDirectory()); } - if (!$configuration->getCustomTemplate()) { + if (method_exists($configuration, 'getCustomTemplate') && !$configuration->getCustomTemplate()) { $configuration->setCustomTemplate($container->getParameter('doctrine_migrations.custom_template')); } diff --git a/Tests/Command/DoctrineCommandTest.php b/Tests/Command/DoctrineCommandTest.php new file mode 100644 index 0000000..3400243 --- /dev/null +++ b/Tests/Command/DoctrineCommandTest.php @@ -0,0 +1,34 @@ +getMockBuilder('Doctrine\DBAL\Migrations\Configuration\Configuration') + ->disableOriginalConstructor() + ->getMock(); + + $configurationMock->method('getMigrations') + ->willReturn(array()); + + DoctrineCommand::configureMigrations($this->getContainer(), $configurationMock); + } + + private function getContainer() + { + return new ContainerBuilder(new ParameterBag(array( + 'doctrine_migrations.dir_name' => __DIR__.'/../../', + 'doctrine_migrations.namespace' => 'test', + 'doctrine_migrations.name' => 'test', + 'doctrine_migrations.table_name' => 'test', + 'doctrine_migrations.organize_migrations' => Configuration::VERSIONS_ORGANIZATION_BY_YEAR, + ))); + } +} diff --git a/composer.json b/composer.json index ade136e..713cda3 100644 --- a/composer.json +++ b/composer.json @@ -26,7 +26,7 @@ "doctrine/migrations": "^1.1" }, "require-dev": { - "phpunit/phpunit": "~4.8" + "phpunit/phpunit": "^4.8.36" }, "autoload": { "psr-4": { "Doctrine\\Bundle\\MigrationsBundle\\": "" }