diff --git a/Rakefile b/Rakefile index cf0e10f..99d9307 100644 --- a/Rakefile +++ b/Rakefile @@ -1,18 +1,18 @@ -require 'rake' -require 'rubygems/package_task' -require 'rdoc/task' -require 'yaml' -require 'rspec/core/rake_task' -require 'cucumber/rake/task' +require "rake" +require "rubygems/package_task" +require "rdoc/task" +require "yaml" +require "rspec/core/rake_task" +require "cucumber/rake/task" -gemspec = eval(IO.read('mixlib-log.gemspec')) +gemspec = eval(IO.read("mixlib-log.gemspec")) Gem::PackageTask.new(gemspec) do |pkg| pkg.gem_spec = gemspec end RSpec::Core::RakeTask.new(:spec) do |spec| - spec.pattern = 'spec/**/*_spec.rb' + spec.pattern = "spec/**/*_spec.rb" end task :default => :spec @@ -21,13 +21,12 @@ task :default => :spec task :test => :spec RDoc::Task.new do |rdoc| - rdoc.rdoc_dir = 'rdoc' + rdoc.rdoc_dir = "rdoc" rdoc.title = "mixlib-log #{Mixlib::Log::VERSION}" - rdoc.rdoc_files.include('README*') - rdoc.rdoc_files.include('lib/**/*.rb') + rdoc.rdoc_files.include("README*") + rdoc.rdoc_files.include("lib/**/*.rb") end Cucumber::Rake::Task.new(:features) do |t| t.cucumber_opts = "--format pretty" end - diff --git a/features/steps/log.rb b/features/steps/log.rb index 3ae3a53..e16c2d3 100644 --- a/features/steps/log.rb +++ b/features/steps/log.rb @@ -6,9 +6,9 @@ # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at -# +# # http://www.apache.org/licenses/LICENSE-2.0 -# +# # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -37,12 +37,11 @@ end end -Then /^the regex '(.+)' should be logged$/ do |regex_string| +Then /^the regex '(.+)' should be logged$/ do |regex_string| regex = Regexp.new(regex_string, Regexp::MULTILINE) regex.match(@output).should_not == nil end -Then /^nothing should be logged$/ do +Then /^nothing should be logged$/ do @output.should == "" end - diff --git a/features/support/env.rb b/features/support/env.rb index 05cdef8..e0d2bad 100644 --- a/features/support/env.rb +++ b/features/support/env.rb @@ -6,9 +6,9 @@ # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at -# +# # http://www.apache.org/licenses/LICENSE-2.0 -# +# # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -16,17 +16,17 @@ # limitations under the License. # -$: << File.join(File.dirname(__FILE__), '..', '..', 'lib') +$: << File.join(File.dirname(__FILE__), "..", "..", "lib") -require 'rspec/expectations' -require 'mixlib/log' -require 'tmpdir' -require 'stringio' +require "rspec/expectations" +require "mixlib/log" +require "tmpdir" +require "stringio" class MyWorld def initialize @tmpdir = File.join(Dir.tmpdir, "mixlib_log") - @output = '' + @output = "" @output_io = StringIO.new(@output) Logit.init(@output_io) end @@ -43,4 +43,3 @@ def initialize After do system("rm -rf #{@tmpdir}") end - diff --git a/features/support/logit.rb b/features/support/logit.rb index 5a5cb45..71b12c6 100644 --- a/features/support/logit.rb +++ b/features/support/logit.rb @@ -6,9 +6,9 @@ # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at -# +# # http://www.apache.org/licenses/LICENSE-2.0 -# +# # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -18,4 +18,4 @@ class Logit extend Mixlib::Log -end \ No newline at end of file +end diff --git a/lib/mixlib/log.rb b/lib/mixlib/log.rb index b22387e..5f216f9 100644 --- a/lib/mixlib/log.rb +++ b/lib/mixlib/log.rb @@ -16,19 +16,18 @@ # See the License for the specific language governing permissions and # limitations under the License. -require 'logger' -require 'mixlib/log/version' -require 'mixlib/log/formatter' +require "logger" +require "mixlib/log/version" +require "mixlib/log/formatter" module Mixlib module Log @logger, @loggers = nil - LEVELS = { :debug=>Logger::DEBUG, :info=>Logger::INFO, :warn=>Logger::WARN, :error=>Logger::ERROR, :fatal=>Logger::FATAL}.freeze + LEVELS = { :debug => Logger::DEBUG, :info => Logger::INFO, :warn => Logger::WARN, :error => Logger::ERROR, :fatal => Logger::FATAL }.freeze LEVEL_NAMES = LEVELS.invert.freeze - def reset! @logger, @loggers = nil, nil end @@ -51,7 +50,7 @@ def logger # that had been added to the +loggers+ array will be cleared. def logger=(new_log_device) reset! - @logger=new_log_device + @logger = new_log_device end def use_log_devices(other) @@ -63,7 +62,7 @@ def use_log_devices(other) @logger = other.first else msg = "#use_log_devices takes a Mixlib::Log object or array of log devices. " << - "You gave: #{other.inspect}" + "You gave: #{other.inspect}" raise ArgumentError, msg end end @@ -95,14 +94,14 @@ def init(*opts) def level=(new_level) level_int = LEVEL_NAMES.key?(new_level) ? new_level : LEVELS[new_level] raise ArgumentError, "Log level must be one of :debug, :info, :warn, :error, or :fatal" if level_int.nil? - loggers.each {|l| l.level = level_int } + loggers.each { |l| l.level = level_int } end - def level(new_level=nil) + def level(new_level = nil) if new_level.nil? LEVEL_NAMES[logger.level] else - self.level=(new_level) + self.level = (new_level) end end @@ -129,11 +128,11 @@ def #{method_name} end def <<(msg) - loggers.each {|l| l << msg } + loggers.each { |l| l << msg } end def add(severity, message = nil, progname = nil, &block) - loggers.each {|l| l.add(severity, message, progname, &block) } + loggers.each { |l| l.add(severity, message, progname, &block) } end alias :log :add @@ -142,7 +141,7 @@ def add(severity, message = nil, progname = nil, &block) # this method gets hit before a call to Mixlib::Logger.init has been made, it will call # Mixlib::Logger.init() with no arguments. def method_missing(method_symbol, *args, &block) - loggers.each {|l| l.send(method_symbol, *args, &block) } + loggers.each { |l| l.send(method_symbol, *args, &block) } end private @@ -150,7 +149,7 @@ def method_missing(method_symbol, *args, &block) def logger_for(*opts) if opts.empty? Logger.new(STDOUT) - elsif LEVELS.keys.inject(true) {|quacks, level| quacks && opts.first.respond_to?(level)} + elsif LEVELS.keys.inject(true) { |quacks, level| quacks && opts.first.respond_to?(level) } opts.first else Logger.new(*opts) diff --git a/lib/mixlib/log/formatter.rb b/lib/mixlib/log/formatter.rb index 2dbd90e..c1eda6d 100644 --- a/lib/mixlib/log/formatter.rb +++ b/lib/mixlib/log/formatter.rb @@ -6,27 +6,27 @@ # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at -# +# # http://www.apache.org/licenses/LICENSE-2.0 -# +# # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. -require 'logger' -require 'time' +require "logger" +require "time" module Mixlib module Log class Formatter < Logger::Formatter @@show_time = true - - def self.show_time=(show=false) + + def self.show_time=(show = false) @@show_time = show end - + # Prints a log message as '[time] severity: message' if Chef::Log::Formatter.show_time == true. # Otherwise, doesn't print the time. def call(severity, time, progname, msg) @@ -36,9 +36,9 @@ def call(severity, time, progname, msg) sprintf("%s: %s\n", severity, msg2str(msg)) end end - + # Converts some argument to a Logger.severity() call to a string. Regular strings pass through like - # normal, Exceptions get formatted as "message (class)\nbacktrace", and other random stuff gets + # normal, Exceptions get formatted as "message (class)\nbacktrace", and other random stuff gets # put through "object.inspect" def msg2str(msg) case msg diff --git a/mixlib-log.gemspec b/mixlib-log.gemspec index d2d51cd..e9c8ef2 100644 --- a/mixlib-log.gemspec +++ b/mixlib-log.gemspec @@ -1,5 +1,5 @@ -$:.unshift File.expand_path('../lib', __FILE__) -require 'mixlib/log/version' +$:.unshift File.expand_path("../lib", __FILE__) +require "mixlib/log/version" Gem::Specification.new do |gem| gem.name = "mixlib-log" @@ -11,9 +11,9 @@ Gem::Specification.new do |gem| gem.license = "Apache-2.0" gem.authors = ["Chef Software, Inc."] gem.has_rdoc = true - gem.extra_rdoc_files = ["README.md", "LICENSE", 'NOTICE'] - gem.files = Dir['lib/**/*'] + Dir['spec/**/*'] + ["Gemfile", "Rakefile", ".gemtest", "mixlib-log.gemspec"] - gem.add_development_dependency 'rake' - gem.add_development_dependency 'rspec', '~> 2.10' - gem.add_development_dependency 'cucumber' + gem.extra_rdoc_files = ["README.md", "LICENSE", "NOTICE"] + gem.files = Dir["lib/**/*"] + Dir["spec/**/*"] + ["Gemfile", "Rakefile", ".gemtest", "mixlib-log.gemspec"] + gem.add_development_dependency "rake" + gem.add_development_dependency "rspec", "~> 2.10" + gem.add_development_dependency "cucumber" end diff --git a/spec/mixlib/log/formatter_spec.rb b/spec/mixlib/log/formatter_spec.rb index c911639..5cb6d39 100644 --- a/spec/mixlib/log/formatter_spec.rb +++ b/spec/mixlib/log/formatter_spec.rb @@ -6,9 +6,9 @@ # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at -# +# # http://www.apache.org/licenses/LICENSE-2.0 -# +# # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -16,36 +16,36 @@ # limitations under the License. # -require 'time' +require "time" require File.expand_path(File.join(File.dirname(__FILE__), "..", "..", "spec_helper")) describe Mixlib::Log::Formatter do before(:each) do @formatter = Mixlib::Log::Formatter.new end - + it "should print raw strings with msg2str(string)" do @formatter.msg2str("nuthin new").should == "nuthin new" end - + it "should format exceptions properly with msg2str(e)" do e = IOError.new("legendary roots crew") @formatter.msg2str(e).should == "legendary roots crew (IOError)\n" end - + it "should format random objects via inspect with msg2str(Object)" do @formatter.msg2str([ "black thought", "?uestlove" ]).should == '["black thought", "?uestlove"]' end - + it "should return a formatted string with call" do time = Time.new Mixlib::Log::Formatter.show_time = true @formatter.call("monkey", time, "test", "mos def").should == "[#{time.iso8601}] monkey: mos def\n" end - + it "should allow you to turn the time on and off in the output" do Mixlib::Log::Formatter.show_time = false @formatter.call("monkey", Time.new, "test", "mos def").should == "monkey: mos def\n" end - + end diff --git a/spec/mixlib/log_spec.rb b/spec/mixlib/log_spec.rb index 25c97b2..984aee0 100644 --- a/spec/mixlib/log_spec.rb +++ b/spec/mixlib/log_spec.rb @@ -17,8 +17,8 @@ # limitations under the License. # -require 'tempfile' -require 'stringio' +require "tempfile" +require "stringio" require File.expand_path(File.join(File.dirname(__FILE__), "..", "spec_helper")) class LoggerLike @@ -101,7 +101,6 @@ def #{method_name}(message) logdev.string.should match(/the_message/) end - it "should set the log level using the method form, with :debug, :info, :warn, :error, or :fatal" do levels = { :debug => Logger::DEBUG, diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index f539f8b..1789614 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -7,9 +7,9 @@ # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at -# +# # http://www.apache.org/licenses/LICENSE-2.0 -# +# # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -17,12 +17,12 @@ # limitations under the License. # -$TESTING=true -$:.push File.join(File.dirname(__FILE__), '..', 'lib') +$TESTING = true +$:.push File.join(File.dirname(__FILE__), "..", "lib") -require 'rspec' -require 'mixlib/log' -require 'mixlib/log/formatter' +require "rspec" +require "mixlib/log" +require "mixlib/log/formatter" class Logit extend Mixlib::Log