spec/spec_helper.rb in redis-objects-0.5.1 vs spec/spec_helper.rb in redis-objects-0.5.2

- old
+ new

@@ -4,19 +4,35 @@ $LOAD_PATH.unshift File.expand_path(File.dirname(__FILE__) + '/../lib') require 'bacon' Bacon.summary_at_exit -$redis = Redis.new(:host => ENV['REDIS_HOST'], :port => ENV['REDIS_PORT']) - UNIONSTORE_KEY = 'test:unionstore' INTERSTORE_KEY = 'test:interstore' DIFFSTORE_KEY = 'test:diffstore' +# Start our own redis-server to avoid corrupting any others +REDIS_BIN = 'redis-server' +REDIS_PORT = ENV['REDIS_PORT'] || 9212 +REDIS_HOST = ENV['REDIS_HOST'] || 'localhost' +REDIS_PID = File.expand_path 'redis.pid', File.dirname(__FILE__) +REDIS_DUMP = File.expand_path 'redis.rdb', File.dirname(__FILE__) +puts "=> Starting redis-server on #{REDIS_HOST}:#{REDIS_PORT}" +fork_pid = fork do + system "(echo port #{REDIS_PORT}; echo logfile /dev/null; echo daemonize yes; echo pidfile #{REDIS_PID}; echo dbfilename #{REDIS_DUMP}) | #{REDIS_BIN} -" +end +at_exit do + pid = File.read(REDIS_PID).to_i + puts "=> Killing #{REDIS_BIN} with pid #{pid}" + Process.kill "TERM", pid + Process.kill "KILL", pid + File.unlink REDIS_PID, REDIS_DUMP +end +# Grab a global handle +$redis = Redis.new(:host => REDIS_HOST, :port => REDIS_PORT) + SORT_ORDER = {:order => 'desc alpha'} SORT_LIMIT = {:limit => [2, 2]} SORT_BY = {:by => 'm_*'} SORT_GET = {:get => 'spec/*/sorted'}.merge!(SORT_LIMIT) SORT_STORE = {:store => "spec/aftersort"}.merge!(SORT_GET) - -