I am starting to try and validate Doctrine objects using PHPUnit and would like to reload the database from the model objects each time.
My first attempt looks something like this:
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(); } }
The problem is that when setUp () is called again for the second test, createTablesFromModels () fails, so I get an error because none of the tables are present.
I would really like the example of someone else re-initializing the Doctrine connection for PHPUnit or other testing purposes.
source share