Comencé a fabricar un motor Rails 3.1 y estoy teniendo dificultades para probarlo con rspec.Testing Rails 3.1 motor montable con Rspec
En primer lugar, si me quedo rails g integration_test whatever
crea una prueba de integración regular en ensayos/integración en lugar de spec/solicitudes (el rspec-carriles joya está instalado y requiere como una dependencia de desarrollo en el archivo gemspec)
Además, cuando ejecuto una prueba de especificación, aparece un error que dice que la tabla correspondiente al modelo que estoy probando no se ha creado. Intenté rake engine_name:install:migrations
y ejecuté rake db:migrate
desde el interior de la aplicación ficticia, y aparece el error "la tabla ya existe".
Todo parece desconectado, siento que me falta algo aquí para hacer que la gema rspec funcione sin problemas, como suele ocurrir con las aplicaciones de rieles completos.
He seguido todos los cambios desde aquí http://rubyx.com/2011/03/01/start-your-engines y puedo probar el motor manualmente al iniciar la aplicación ficticia a través de la consola como se muestra aquí http://railscasts.com/episodes/277-mountable-engines.
¿Hay alguna manera de hacer que rspec sea el valor predeterminado para probar un motor Rails 3.1?
En rieles 3.2 algo de esto se ha resuelto, pero siempre olvido cómo migrar la base de datos de prueba. Para ejecutar migraciones en la base de datos de prueba, ejecute 'rake app: db: test: prepare' en el directorio de su gema. – Andrew
Acabo de implementar el método en este artículo sin problemas. http://viget.com/extend/rails-engine-testing-with-rspec-capybara-and-factorygirl – jspooner