Ver índice de contenidos del libro

19.3. Probando la cultura

Ha llegado la hora de probar lo que hemos añadido a la aplicación. Pero antes de añadir más pruebas, vamos a arreglar las que ya tenemos. Como hemos modificado las URL, tenemos que modificar los archivos con pruebas funcionales que se encuentran en el directorio test/functional/frontend/ y tenemos que añadir /en al principio de todas las URL. No te olvides de cambiar también las URL del archivo lib/test/JobeetTestFunctional.class.php. Después de realizar los cambios, ejecuta todas las pruebas para asegurarte de que has hecho bien las modificaciones:

$ php symfony test:functional frontend

El tester de los usuarios incluye un método llamado isCulture() que permite probar la cultura del usuario. Abre el archivo jobActionsTest y añade las siguientes pruebas:

// test/functional/frontend/jobActionsTest.php
$browser->setHttpHeader('ACCEPT_LANGUAGE', 'fr_FR,fr,en;q=0.7');
$browser->
  info('6 - User culture')->
 
  restart()->
 
  info('  6.1 - For the first request, symfony guesses the best culture')->
  get('/')->
  isRedirected()->followRedirect()->
  with('user')->isCulture('fr')->
 
  info('  6.2 - Available cultures are en and fr')->
  get('/it/')->
  with('response')->isStatusCode(404)
;
 
$browser->setHttpHeader('ACCEPT_LANGUAGE', 'en,fr;q=0.7');
$browser->
  info('  6.3 - The culture guessing is only for the first request')->
 
  get('/')->
  isRedirected()->followRedirect()->
  with('user')->isCulture('fr')
;