unitarias tutorial pruebas example ejemplos descargar automatizadas php doctrine phpunit

tutorial - Prueba unitaria de objetos Doctrine con PHPUnit



pruebas unitarias codeigniter (3)

Estoy empezando a probar y probar mis objetos de Doctrine con PHPUnit, y me gustaría volver a cargar la base de datos de mis objetos de modelo cada vez.

Mi primer intento se ve así:

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(); } }

El problema es que cuando se llama de nuevo a setUp () para la segunda prueba, createTablesFromModels () falla, por lo que aparece un error porque ninguna de las tablas está presente.

Realmente agradecería un ejemplo de cómo alguien más ha reiniciado una conexión de Doctrine para PHPUnit u otras pruebas de unidades.


Entonces, createTablesFromModels incluye los archivos y luego compara las listas de clases definidas antes y después, razón por la cual no funciona dos veces.

Una secuencia como la siguiente funciona cuando se repite:

Doctrine::loadModels($path); Doctrine::createTablesFromArray(Doctrine::getLoadedModels());