¿Cuál es la mejor manera de escribir las especificaciones relacionadas con el Resque en RSpec?
-
28-09-2019 - |
Pregunta
¿Cuál es la mejor manera de escribir las especificaciones relacionadas con el Resque en RSpec sin golpearse la antigua ?
Actualmente utilice el siguiente helper:
@dir = File.dirname(File.expand_path(__FILE__))
def start_redis
`redis-server #{@dir}/redis-test.conf`
Resque.redis = "localhost:9736"
end
def stop_redis
`rm -f #{@dir}/dump.rdb`
pid = `ps -A -o pid,command | grep [r]edis-test`.split(" ")[0]
Process.kill("KILL", pid.to_i)
end
Rspec.configure do |config|
config.before(:suite) do
start_redis
end
config.after(:suite) do
stop_redis
end
config.before(:each) do
Resque.redis.flushall
end
end
préstamos en gran medida de la propia ayudante de la prueba de Resque, esto funciona bien, pero arroja una zsh: killed rake
molesto cuando todo el conjunto de especificaciones que se ejecuta a través de rastrillo.
Solución
A continuación, la recomendación de la resque de la mejor manera de ejecutar los procesos Redis en sus especificaciones:
Otros consejos
Se puede usar la gema resque_spec http://github.com/leshill/resque_spec . Un montón de coincidencias de resque a prueba.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow