Quelle est la meilleure façon d'écrire les spécifications liées à Resque dans RSpec?
-
28-09-2019 - |
Question
Quelle est la meilleure façon d'écrire les spécifications liées à Resque dans RSpec sans stubbing l'ancien ?
Nous utilisons actuellement l'aide suivante:
@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
emprunt très propre de test aide de Resque, cela fonctionne très bien, mais vomit un zsh: killed rake
gênant lorsque l'ensemble de la suite spec est géré par râteau.
La solution
Recommandation d'ici la resque pour la meilleure façon d'exécuter des processus Redis dans vos spécifications:
Autres conseils
Vous pouvez utiliser la gemme resque_spec http://github.com/leshill/resque_spec . Un groupe de matcher à Resque de test.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow