Estoy tratando de tener un gancho pre-commit de git realizar una verificación de sintaxis en todo el código de Ruby; hay uno en GitHub al https://github.com/cypher/git-ruby-syntax-check.¿Cómo puedo verificar la sintaxis (no procesar) un archivo de plantilla ERB de Rails 3?
Intenta comprobar los archivos .erb por erb -x
para traducirlos al código de Ruby y luego pasa la salida a ruby -c
para verificar la sintaxis. Desafortunadamente, Rails 3 introdujo un analizador ERB personalizado que es incompatible con ERB estándar de Ruby, por lo que el enlace de precompilación encuentra errores cuando no los hay.
¿Hay algún equivalente a erb -x
que genere el código de Ruby de un archivo ERB de Rails 3?
Si prueba toda su vista, no necesita esta validación de verificación. – shingara
@shingara No estoy de acuerdo. Esta * es * una forma de probar su vista, de una manera que otras pruebas no pueden. El marcado inválido puede pasar sus pruebas funcionales porque el navegador lo "arregla" por usted, pero aún deja errores sutiles, o causa problemas en el futuro, ya que ninguna prueba es 100% exhaustiva. – antinome
@shingara ¿O tal vez estaba diciendo "validar después de la representación, no antes" en lugar de "no validar nada"? En ese caso veo tu punto (y podría ver una discusión de cualquier manera :-) – antinome