2011-07-01 10 views
7

Me acaban de pasar por el proceso de actualización de una aplicación Rails 2.3.11 que utiliza la unidad de prueba a Rails 3.1.rc4 y ahora han establecido rspec-carriles 2.6.1.Después de Rails 3 upgrade rake db: test: prepare not working?

También cambio la conexión de prueba en database.yml para usar sqlite en lugar de postgres.

Puedo ejecutar rake db:migrate y db:test:prepare todo el día, pero en las pruebas de mi modelo me sale "No se pudo encontrar la tabla 'model_name'".

alguien más ha topó con esto?

+4

try bundle exec rake db: setup? –

+0

@CountCet: Tengo el mismo problema aquí, pero cuando ejecuto 'guard'. 'bundle install',' rake db: reset' y 'rake db: test: prepare' lo arreglaron aquí, pero todavía no sé por qué sucedió en primer lugar. – l0b0

Respuesta

0

¿Qué le muestra seleccionar * de schema_migrations? Verifique que las migraciones que espera hayan sido realmente almacenadas. Si sabe qué migración falló, puede usar rake db:migrate:redo VERSION=<VERSION>

Disculpa las molestias por no ser un comentario. Stackoverflow de "no se puede comentar hasta 50" La política parece un poco hacia atrás :)

4

me encontré con esto antes. Intente reconstruirlo desde cero:

rake db:drop RAILS_ENV=test 
rake db:create RAILS_ENV=test 
rake db:migrate RAILS_ENV=test