2011-09-29 10 views
6

Estoy probando un bundle que creé. Todo el código está totalmente probado, pero ahora quiero probar si puedo solicitar mis servicios symfony2 sin ningún problema.Caso de prueba PHPUnit consciente del contenedor de inyección de dependencia Symfony2

Para eso, necesito el contenedor de inyección de dependencia symfony2 en mi caso de prueba. Cómo puedo hacer eso ?

+2

¿Por qué no burlarse de él. Ese es el objetivo de las pruebas unitarias y la inyección de dependencia: aislar el código probado. –

+0

Entiendo su punto de vista, pero mi interés en esta prueba es verificar que mi [configuración de servicios] (https://github.com/egeloen/IvoryGoogleMapBundle/blob/master/Resources/config/services.xml) esté configurada correctamente . Entonces, creo que burlarse de él no resuelve mi problema. (Corrígeme si estoy equivocado :)). En este momento, la única solución que imagino es inyectar el contenedor de inyección de dependencia de seymfony 2 en mi prueba y verificar que llamar a mis servicios no arroje una excepción y darme los objetos apropiados, pero no sé cómo puedo hacerlo. – egeloen

+0

¿Está probando su configuración? Eso suena extraño. –

Respuesta

5

Hace poco hice una pregunta similar a esta en el sentido de que solo necesitaba el validador, sin embargo, la persona que respondió mi pregunta primero tenía una solución que daba acceso a todo el contenedor.

Básicamente puedes elegir WebTestCase para ver cómo construye el entorno Symfony2 y crear tu propia clase base que es consciente de Symfony por así decirlo.

Aquí está la respuesta, espero que ayude: Symfony2: Testing entity validation constraints

Cuestiones relacionadas