From 1eb17ea99c7b0c240b6db55e87e6cd20311015b5 Mon Sep 17 00:00:00 2001 From: rubiii Date: Thu, 7 Jun 2012 16:43:29 +0200 Subject: [PATCH] another fix for #292 --- lib/savon/config.rb | 2 +- spec/savon/config_spec.rb | 34 ++++++++++++++++++++++++++-------- 2 files changed, 27 insertions(+), 9 deletions(-) diff --git a/lib/savon/config.rb b/lib/savon/config.rb index b102f61e..2c700d6f 100644 --- a/lib/savon/config.rb +++ b/lib/savon/config.rb @@ -21,7 +21,7 @@ def logger=(logger) end def log_level=(level) - _logger.level = log_level + _logger.level = level end def log=(log) diff --git a/spec/savon/config_spec.rb b/spec/savon/config_spec.rb index 04a44050..8a545cc6 100644 --- a/spec/savon/config_spec.rb +++ b/spec/savon/config_spec.rb @@ -2,19 +2,37 @@ describe Savon::Config do - describe "#clone" do - subject do - config = Savon::Config.new - config._logger = Savon::Logger.new - config - end + let(:config) { + config = Savon::Config.new + config._logger = Savon::Logger.new + config + } + describe "#clone" do it "clones the logger" do - logger = subject.logger - clone = subject.clone + logger = config.logger + clone = config.clone logger.should_not equal(clone.logger) end end + it "allows to change the logger" do + logger = Logger.new("/dev/null") + config.logger = logger + config._logger.subject.should equal(logger) + end + + it "allows to change the log level" do + config.log_level = :info + config._logger.level.should == :info + end + + it "allows to enable/disable logging" do + config.log = false + config._logger.should be_a(Savon::NullLogger) + config.log = true + config._logger.should be_a(Savon::Logger) + end + end