Frage

Was ist der beste Weg, Resque bezogenen Spezifikationen in RSpec ohne Anstoßen den ehemaligen zu schreiben?

Wir verwenden zur Zeit 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 von Resque eigenen Test Helfer leihen, das funktioniert gut, aber spuckt eine lästige zsh: killed rake, wenn die gesamte spec Suite wird durch Rechen ausgeführt werden.

War es hilfreich?

Lösung

Hier ist resque Empfehlung für wie man am besten Redis Prozesse in Ihren Angaben ausgeführt werden:

https://github.com/resque/resque/wiki/RSpec -and-Resque

Andere Tipps

Sie können die resque_spec gem verwenden http://github.com/leshill/resque_spec . Ein Bündel von Matcher Test resque.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top