Segunda vez que me topo este error al intentar correr tests dentro de una extensión de Spree:

~/.rvm/gems/ruby-1.9.3-p392/gems/database_cleaner-1.1.1/lib/database_cleaner/active_record/truncation.rb:123:
in `db_version': undefined local variable or method `postgresql_version'
for #<ActiveRecord::ConnectionAdapters::SQLite3Adapter:0x0000000386b2f0> (NameError)

Como se vé, es un bug de la gema database_cleaner (que ofrece varias estrategias para limpiar y recrear la base de datos entre cada test). La vez anterior perdí tiempo intentando cambiar la estrategia, etc. Pero, mientras no esté arreglado (el thread está aquí) lo más fácil es revertir a una versión anterior de la gema.

Esto se puede hacer en el gemspec, con algo así

Gem::Specification.new do |s|
# ...
s.add_development_dependency 'database_cleaner', ['>= 1.0.1', '< 1.1.0']
# ...
end

 

Este sitio utiliza cookies.    Leer más