У меня есть следующее:
$kernel = new AppKernel('test', true);
$kernel->boot();
$container = $kernel->getContainer();
$em = $container->get('doctrine.orm.default_entity_manager');
$application = new \Symfony\Component\Console\Application($kernel);
$application->setAutoExit(false);
$command = $application->find('doctrine:database:import');
$arguments = array(
'command' => 'doctrine:database:import',
'file' => __DIR__ . '/../data/cruitcasttest.sql',
'--env' => 'dev',
);
$output = new \Symfony\Component\Console\Output\BufferedOutput();
$input = new \Symfony\Component\Console\Input\ArrayInput($arguments);
$returnCode = $command->run($input, $output);
Обратите внимание, что $em
работает, поэтому что-то работает и использует правильную базу данных для теста env.
Но Comman приводит к
В пространстве имен «doctrine: database» не определены команды.
Команда работает, как и ожидалось, из командной строки, как и ожидалось.