Was ist die beste Möglichkeit, Resque-bezogene Spezifikationen in RSpec without stubbing the former zu schreiben?Was ist der beste Weg, Resque-bezogene Spezifikationen in RSpec zu schreiben?
Wir verwenden derzeit die folgenden Helfer:
@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
Stark aus Resque eigenem Test Helfer leihen, das funktioniert gut, aber ein lästiges zsh: killed rake
spuckt, wenn die gesamte spec Suite durch Rechen ausgeführt wird.
Das Resque Stümpfe, die für Unit-Tests in Ordnung ist nehme ich an, aber ich ziehe es eine tatsächliche Instanz von Resque laufen zu schreibe komplexere Integrationstests. Scheint, wir werden mit dem oben genannten für jetzt zu tun haben. –
@HakanEnsari, hast du jemals etwas anderes für deine Brille gemacht? Ich bin dabei, einen Test zu schreiben, der die Integration von resque erfordert (mit resque_mailer) und ich bin ratlos. – Tass