spec/loggability/logger_spec.rb in loggability-0.3.0 vs spec/loggability/logger_spec.rb in loggability-0.4.0

- old
+ new

@@ -33,10 +33,21 @@ it "has a less-verbose inspection format than that of its parent" do @logger.inspect.should =~ /severity: \S+ formatter: \S+ outputting to: \S+/ end + + it "provides an upgrade constructor for regular Logger objects" do + logger = ::Logger.new( $stderr ) + newlogger = described_class.from_std_logger( logger ) + newlogger.should be_a( Loggability::Logger ) + newlogger.logdev.dev.should be( logger.instance_variable_get(:@logdev).dev ) + Loggability::LOG_LEVELS[ newlogger.level ].should == logger.level + newlogger.formatter.should be_a( Loggability::Formatter::Default ) + end + + describe "severity level API" do it "defaults to :warn level" do @logger.level.should == :warn end @@ -124,9 +135,18 @@ end it "can be told to use the HTML formatter" do @logger.format_as( :html ) @logger.formatter.should be_a( Loggability::Formatter::HTML ) + end + + it "supports formatting with ::Logger::Formatter, too" do + output = [] + @logger.output_to( output ) + @logger.level = :debug + @logger.formatter = ::Logger::Formatter.new + @logger.debug "This should work." + output.first.should =~ /D, \[\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d.\d+ #\d+\] DEBUG -- : This should work.\n/ end end