Sha256: a38ffcc3f7e345043fe4ff7b153865464cdb72b70880796591d88089d81ffeb0
Contents?: true
Size: 1.02 KB
Versions: 53
Compression:
Stored size: 1.02 KB
Contents
$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib')) require './test/test_helper' require './test/tools/repl_set_manager' class Test::Unit::TestCase # Ensure replica set is available as an instance variable and that # a new set is spun up for each TestCase class def ensure_rs unless defined?(@@current_class) and @@current_class == self.class @@current_class = self.class @@rs = ReplSetManager.new @@rs.start_set end @rs = @@rs end # Generic code for rescuing connection failures and retrying operations. # This could be combined with some timeout functionality. def rescue_connection_failure(max_retries=30) retries = 0 begin yield rescue Mongo::ConnectionFailure => ex puts "Rescue attempt #{retries}: from #{ex}" retries += 1 raise ex if retries > max_retries sleep(2) retry end end def build_seeds(num_hosts) seeds = [] num_hosts.times do |n| seeds << "#{@rs.host}:#{@rs.ports[n]}" end seeds end end
Version data entries
53 entries across 53 versions & 3 rubygems