Я начинаю пытаться тестировать свои объекты Doctrine с помощью PHPUnit и хотел бы каждый раз заново загружать БД из объектов моей модели.
Моя первая попытка выглядит примерно так:
class Tests_User extends PHPUnit_Framework_TestCase
{
public function setUp()
{
Doctrine_Manager::connection('mysql://user:pass@localhost/testdb');
Doctrine::createDatabases();
Doctrine::createTablesFromModels('../../application/models');
}
public function testSavingWorks()
{
$user = new User();
$user->save();
}
public function testSavingWorksAgain()
{
$user = new User();
$user->save();
}
public function tearDown()
{
Doctrine::dropDatabases();
}
}
Проблема заключается в том, что при повторном вызове setUp () для второго теста createTablesFromModels () завершается ошибкой, поэтому я получаю сообщение об ошибке, поскольку ни одна из таблиц отсутствует.
Я был бы очень признателен за пример того, как кто-то еще повторно инициализировал соединение Doctrine для PHPUnit или других целей модульного тестирования.