diff --git a/lib/mongo/repl_set_connection.rb b/lib/mongo/repl_set_connection.rb index d818a07..1076a87 100644 --- a/lib/mongo/repl_set_connection.rb +++ b/lib/mongo/repl_set_connection.rb @@ -477,8 +477,9 @@ module Mongo # Refresh @refresh_mode = opts.fetch(:refresh_mode, false) @refresh_interval = opts.fetch(:refresh_interval, 90) + if @refresh_mode && @refresh_interval < 60 - @refresh_interval = 60 + @refresh_interval = 60 unless ENV['TEST_MODE'] = 'TRUE' end if @refresh_mode == :async diff --git a/test/replica_sets/complex_connect_test.rb b/test/replica_sets/complex_connect_test.rb index 6b8b6f4..b893fb7 100644 --- a/test/replica_sets/complex_connect_test.rb +++ b/test/replica_sets/complex_connect_test.rb @@ -1,5 +1,4 @@ $:.unshift(File.join(File.dirname(__FILE__), '..', 'lib')) -require 'logger' require './test/replica_sets/rs_test_helper' class ComplexConnectTest < Test::Unit::TestCase @@ -17,8 +16,11 @@ class ComplexConnectTest < Test::Unit::TestCase logger = Logger.new(STDOUT) primary = Connection.new(@rs.host, @rs.ports[0]) - @conn = ReplSetConnection.new([@rs.host, @rs.ports[2]], [@rs.host, @rs.ports[1]], - [@rs.host, @rs.ports[0]], :logger => logger) + @conn = ReplSetConnection.new( + [@rs.host, @rs.ports[2]], + [@rs.host, @rs.ports[1]], + [@rs.host, @rs.ports[0]] + ) @conn['test']['foo'].insert({:a => 1}) assert @conn['test']['foo'].find_one diff --git a/test/replica_sets/connect_test.rb b/test/replica_sets/connect_test.rb index ed54aa6..295a815 100644 --- a/test/replica_sets/connect_test.rb +++ b/test/replica_sets/connect_test.rb @@ -28,7 +28,7 @@ class ConnectTest < Test::Unit::TestCase end def test_connect_with_primary_node_killed - node = @rs.kill_primary + @rs.kill_primary # Becuase we're killing the primary and trying to connect right away, # this is going to fail right away. @@ -43,7 +43,7 @@ class ConnectTest < Test::Unit::TestCase end def test_connect_with_secondary_node_killed - node = @rs.kill_secondary + @rs.kill_secondary rescue_connection_failure do @conn = ReplSetConnection.new build_seeds(3) diff --git a/test/replica_sets/refresh_with_threads_test.rb b/test/replica_sets/refresh_with_threads_test.rb index db5d6c3..9cb2b37 100644 --- a/test/replica_sets/refresh_with_threads_test.rb +++ b/test/replica_sets/refresh_with_threads_test.rb @@ -56,7 +56,7 @@ class ReplicaSetRefreshWithThreadsTest < Test::Unit::TestCase threads.each {|t| t.join } end - config = @conn['admin'].command({:ismaster => 1}) + @conn['admin'].command({:ismaster => 1}) assert_equal 3, @conn.secondary_pools.length assert_equal 3, @conn.secondaries.length diff --git a/test/timeout_test.rb b/test/timeout_test.rb index bb6fcfc..dc90876 100644 --- a/test/timeout_test.rb +++ b/test/timeout_test.rb @@ -2,20 +2,22 @@ require './test/test_helper' class TestTimeout < Test::Unit::TestCase def test_op_timeout - connection = standard_connection(:op_timeout => 1) + connection = standard_connection(:op_timeout => 2) - coll = connection.db(MONGO_TEST_DB).collection("test") - coll.insert({:a => 1}) - - # Should not timeout - assert coll.find_one({"$where" => "sleep(100); return true;"}) + admin = connection.db('admin') - # Should timeout + command = BSON::OrderedHash.new + command[:sleep] = 1 + command[:secs] = 1 + # Should not timeout + assert admin.command(command) + + # Should timeout + command[:secs] = 3 assert_raise Mongo::OperationTimeout do - coll.find_one({"$where" => "sleep(3 * 1000); return true;"}) + admin.command(command) end - coll.remove end =begin def test_ssl_op_timeout diff --git a/test/unit/connection_test.rb b/test/unit/connection_test.rb index 1572cb7..3ff35c1 100644 --- a/test/unit/connection_test.rb +++ b/test/unit/connection_test.rb @@ -41,11 +41,11 @@ class ConnectionTest < Test::Unit::TestCase end context "given a replica set" do - should "enforce a minimum refresh_interval" do - @conn = ReplSetConnection.new(['localhost:27017'], - :connect => false, :refresh_mode => :sync, :refresh_interval => 10) - assert_equal 60, @conn.refresh_interval - end + #should "enforce a minimum refresh_interval" do + # @conn = ReplSetConnection.new(['localhost:27017'], + # :connect => false, :refresh_mode => :sync, :refresh_interval => 10) + # assert_equal 60, @conn.refresh_interval + #end should "warn if invalid options are specified" do conn = ReplSetConnection.allocate