mirror of
https://github.com/jimeh/amqp-failover.git
synced 2026-02-19 10:56:44 +00:00
renamed integration specs, and updated failover
and specs a bit
This commit is contained in:
@@ -24,9 +24,12 @@ module AMQP
|
||||
@options = default_options.merge(opts)
|
||||
end
|
||||
|
||||
# pluggable logger specifically for tracking failover and fallbacks
|
||||
def self.logger
|
||||
@logger ||= Logger.new
|
||||
class << self
|
||||
# pluggable logger specifically for tracking failover and fallbacks
|
||||
def logger
|
||||
@logger ||= Logger.new
|
||||
end
|
||||
attr_writer :logger
|
||||
end
|
||||
|
||||
def default_options
|
||||
|
||||
@@ -7,7 +7,7 @@ require 'amqp'
|
||||
require 'amqp/server'
|
||||
require 'server_helper'
|
||||
|
||||
describe "A simple AMQP connection with FailoverClient loaded" do
|
||||
describe "Basic AMQP connection with FailoverClient loaded" do
|
||||
|
||||
after(:all) do
|
||||
ServerHelper.clear_logs
|
||||
@@ -4,11 +4,18 @@ $LOAD_PATH.unshift File.expand_path(File.dirname(__FILE__))
|
||||
require 'spec_helper'
|
||||
require 'amqp/server'
|
||||
require 'server_helper'
|
||||
require 'logger_helper'
|
||||
|
||||
describe "Full Failover support of AMQP gem" do
|
||||
|
||||
before(:all) do
|
||||
@flog = LoggerHelper.new
|
||||
AMQP::Failover.logger = @flog
|
||||
end
|
||||
|
||||
after(:all) do
|
||||
ServerHelper.clear_logs
|
||||
AMQP::Failover.logger = nil
|
||||
end
|
||||
|
||||
it "should be able to connect" do
|
||||
@@ -41,9 +48,14 @@ describe "Full Failover support of AMQP gem" do
|
||||
serv1.stop
|
||||
EM.add_timer(0.1) {
|
||||
conn.should be_connected
|
||||
[:error, :info].each do |i|
|
||||
@flog.send("#{i}_log").should have(1).item
|
||||
@flog.send("#{i}_log")[0][0].should match(/connect to or lost connection.+25672.+attempting connection.+35672/i)
|
||||
end
|
||||
conn.settings[:port].should == 35672
|
||||
serv1.log.should have(3).items
|
||||
serv2.log.should have(3).items
|
||||
conn.close
|
||||
EM.add_timer(0.1) {
|
||||
serv2.stop
|
||||
EM.stop
|
||||
18
spec/logger_helper.rb
Normal file
18
spec/logger_helper.rb
Normal file
@@ -0,0 +1,18 @@
|
||||
# encoding: utf-8
|
||||
|
||||
class LoggerHelper
|
||||
|
||||
attr_accessor :error_log
|
||||
attr_accessor :info_log
|
||||
|
||||
def info(*args)
|
||||
@info_log ||= []
|
||||
@info_log << args
|
||||
end
|
||||
|
||||
def error(*args)
|
||||
@error_log ||= []
|
||||
@error_log << args
|
||||
end
|
||||
|
||||
end
|
||||
Reference in New Issue
Block a user