Sha256: 0a67add783ac8c08735d8aa8f8a9e5406feb6bc1cfc7af33009a58337aa55bc8
Contents?: true
Size: 1.31 KB
Versions: 68
Compression:
Stored size: 1.31 KB
Contents
# encoding: utf-8 require "spec_helper" class TestLogger def log(message) message end alias_method :debug, :log alias_method :info, :log alias_method :error, :log alias_method :fatal, :log end class LoggingTestClass attr_accessor :logging def client OpenStruct.new(:logger => TestLogger.new) end include AMQ::Client::Logging end describe AMQ::Client::Logging do # We have to use Kernel#load so extensions to the # Logging module from client.rb will be overridden. before(:all) do load "amq/client/logging.rb" AMQ::Client::Logging.logging = true end after(:all) do AMQ::Client::Logging.logging = false end context "including to an incompatible class" do it "should raise an NotImplementedError if the class doesn't define method client" do lambda { Class.new { include AMQ::Client::Logging } }.should raise_error(NotImplementedError) end end context "including to a compatible class" do subject { LoggingTestClass.new } it "should be able to log via #client#logger of given class" do subject.logging = true subject.debug("message").should eql("message") end it "should not log anything if subject#logging is false" do subject.logging = false subject.debug("message").should be_nil end end end
Version data entries
68 entries across 68 versions & 1 rubygems