mini_logger 0.5.4 → 0.6.1

Sign up to get free protection for your applications and to get access to all the features.
data/lib/mini_logger.rb CHANGED
@@ -3,8 +3,10 @@ require 'yaml'
3
3
  require 'forwardable'
4
4
 
5
5
 
6
- module MiniLogger
7
- extend self
6
+ class MiniLogger
7
+ extend Forwardable
8
+
9
+ def_delegators :@logger, :debug, :info, :warn, :error, :fatal, :debug?, :info?, :warn?, :error?, :fatal?
8
10
 
9
11
  DEBUG = :debug
10
12
  INFO = :info
@@ -28,93 +30,71 @@ module MiniLogger
28
30
  ::Logger::FATAL => FATAL
29
31
  }
30
32
 
31
- @logger = nil
32
-
33
- def self.standarize_log_level(ll)
33
+ private
34
+ def self.standarize_log_level(level)
34
35
 
35
- case ll
36
- when String then LLM[ll.downcase.to_sym]
37
- when Symbol then LLM[ll.to_s.downcase.to_sym]
36
+ case level
37
+ when String then LLM[level.downcase.to_sym]
38
+ when Symbol then LLM[level.to_s.downcase.to_sym]
38
39
  end
39
40
  end
40
41
 
41
42
 
42
- def self.validate_log_level?(ll)
43
+ public
44
+ def self.validate_log_level?(level)
43
45
 
44
- case ll
45
- when String then LLM.has_key?(ll.downcase.to_sym)
46
- when Symbol then LLM.has_key?(ll.to_s.downcase.to_sym)
46
+ case level
47
+ when String then LLM.has_key?(level.downcase.to_sym)
48
+ when Symbol then LLM.has_key?(level.to_s.downcase.to_sym)
47
49
  else false
48
50
  end
49
51
  end
50
52
 
51
53
 
52
- def configure(*arguments)
54
+ def self.configure(*arguments)
53
55
 
54
- configuration = {}
56
+ configuration = Hash.new
55
57
 
56
58
  case arguments[0]
57
- when String
58
- configuration.merge!(YAML.load_file(arguments[0]))
59
- when Hash
60
- configuration.merge!(arguments[0])
61
- else
62
- configuration = { :dev=>STDERR, :level=>:debug }
59
+ when String then configuration.merge!(YAML.load_file(arguments[0]))
60
+ when Hash then configuration.merge!(arguments[0])
61
+ else configuration = { :dev=>STDERR, :level=>:debug }
63
62
  end
64
63
 
65
64
  configuration = { :log_channel=>STDERR, :log_level=>:info }.merge(configuration)
66
65
 
67
- configuration[:dev] = configuration[:log_channel] unless configuration[:dev]
68
- configuration[:level] = configuration[:log_level] unless configuration[:level]
66
+ configuration[:dev] ||= configuration[:log_channel]
67
+ configuration[:level] ||= configuration[:log_level]
69
68
 
70
69
  raise ArgumentError.new("Invalid log level") unless validate_log_level?(configuration[:level])
71
70
 
72
- configuration[:dev] = case configuration[:dev]
73
- when /(STDOUT|stdout)/ then STDOUT
74
- when /(STDERR|stderr)/ then STDERR
75
- when :stdout then STDOUT
76
- when :stderr then STDERR
71
+ configuration[:dev] = case configuration[:dev].to_s.downcase
72
+ when /stdout/ then STDOUT
73
+ when /stderr/ then STDERR
77
74
  else configuration[:dev]
78
75
  end
79
76
 
80
- @logger = ::Logger.new(configuration[:dev])
81
- @logger.level = standarize_log_level(configuration[:level])
82
-
83
- self
77
+ self.new(configuration)
84
78
  end
85
79
 
86
- def level=(nll)
80
+ def initialize(options)
87
81
 
88
- if @logger
82
+ @logger = ::Logger.new(options[:dev])
83
+ @logger.level = MiniLogger.standarize_log_level(options[:level])
89
84
 
90
- raise ArgumentError.new("Invalid log level #{nll.class.name}:'#{nll}'") unless validate_log_level?(nll)
91
- @logger.level = standarize_log_level(nll)
92
-
93
- self
94
- end
85
+ self
95
86
  end
96
87
 
97
- def level!(nll)
88
+ def level=(level)
98
89
 
99
- if @logger
100
-
101
- raise ArgumentError.new("Invalid log level #{nll.class.name}:'#{nll}'") unless validate_log_level?(nll)
102
- @logger.level = standarize_log_level(nll)
103
-
104
- self
105
- end
90
+ raise ArgumentError.new("Invalid log level #{level.class.name}:'#{level}'") unless MiniLogger.validate_log_level?(level)
91
+ @logger.level = MiniLogger.standarize_log_level(level)
92
+
93
+ self
106
94
  end
107
95
 
108
96
  def level
109
97
 
110
- RLLM[@logger.level] if @logger
98
+ RLLM[@logger.level]
111
99
  end
112
-
113
- def method_missing(method, *arguments, &block)
114
-
115
- if @logger && [:debug, :info, :warn, :error, :fatal, :debug?, :info?, :warn?, :error?, :fatal?].include?(method)
116
-
117
- @logger.send(method, *arguments, &block)
118
- end
119
- end
120
100
  end
data/lib/version.rb CHANGED
@@ -3,8 +3,8 @@ module MiniLogger
3
3
 
4
4
  INFO = {
5
5
  :major =>0,
6
- :minor =>5,
7
- :patch =>4
6
+ :minor =>6,
7
+ :patch =>1
8
8
  }
9
9
 
10
10
  def self.number(version_info=INFO)
@@ -1,7 +1,6 @@
1
1
  $:.unshift(File.join(File.dirname(__FILE__), '..'))
2
2
  $:.unshift(File.join(File.dirname(__FILE__), %w[.. lib]))
3
3
 
4
-
5
4
  require 'rubygems'
6
5
  require 'tmpdir'
7
6
  require 'delorean'
@@ -61,13 +60,8 @@ class TestMiniLogger < Test::Unit::TestCase
61
60
  assert(test_logger.info?, "Log level:'#{test_logger.level}'")
62
61
 
63
62
  ##
64
- # Mix configuration interface
65
- test_logger = MiniLogger.configure(:log_channel=>STDERR, :level=>:warn)
66
- assert(test_logger.warn?, "Log level:'#{test_logger.level}")
67
-
68
- ##
69
- # Mix configuration interface
70
- test_logger = MiniLogger.configure(:dev=>STDERR, :log_level=>:error)
63
+ # New configuration interface
64
+ test_logger = MiniLogger.configure(:dev=>STDERR, :level=>:error)
71
65
  assert(test_logger.error?, "Log level:'#{test_logger.level}")
72
66
  end
73
67
 
@@ -122,13 +116,21 @@ class TestMiniLogger < Test::Unit::TestCase
122
116
 
123
117
  test_logger.level = MiniLogger::ERROR
124
118
  assert test_logger.error?
125
- assert_equal(test_logger.level, MiniLogger::ERROR)
126
119
 
127
- assert test_logger.level!(MiniLogger::DEBUG).debug?
128
- assert test_logger.level!(MiniLogger::INFO).info?
129
- assert test_logger.level!(MiniLogger::WARN).warn?
130
- assert test_logger.level!(MiniLogger::ERROR).error?
131
- assert test_logger.level!(MiniLogger::FATAL).fatal?
120
+ test_logger.level=MiniLogger::DEBUG
121
+ assert test_logger.debug?
122
+
123
+ test_logger.level=MiniLogger::INFO
124
+ assert test_logger.info?
125
+
126
+ test_logger.level=MiniLogger::WARN
127
+ assert test_logger.warn?
128
+
129
+ test_logger.level=MiniLogger::ERROR
130
+ assert test_logger.error?
131
+
132
+ test_logger.level=MiniLogger::FATAL
133
+ assert test_logger.fatal?
132
134
  end
133
135
 
134
136
 
metadata CHANGED
@@ -1,45 +1,59 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: mini_logger
3
- version: !ruby/object:Gem::Version
4
- version: 0.5.4
3
+ version: !ruby/object:Gem::Version
4
+ hash: 5
5
5
  prerelease:
6
+ segments:
7
+ - 0
8
+ - 6
9
+ - 1
10
+ version: 0.6.1
6
11
  platform: ruby
7
- authors:
12
+ authors:
8
13
  - Javier Juarez
9
14
  autorequire:
10
15
  bindir: bin
11
16
  cert_chain: []
12
- date: 2011-07-07 00:00:00.000000000Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
15
- name: jeweler
16
- requirement: &2156654140 !ruby/object:Gem::Requirement
17
+
18
+ date: 2011-07-07 00:00:00 Z
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
21
+ requirement: &id001 !ruby/object:Gem::Requirement
17
22
  none: false
18
- requirements:
19
- - - ! '>='
20
- - !ruby/object:Gem::Version
21
- version: '0'
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ hash: 3
27
+ segments:
28
+ - 0
29
+ version: "0"
30
+ version_requirements: *id001
22
31
  type: :development
32
+ name: jeweler
23
33
  prerelease: false
24
- version_requirements: *2156654140
25
- - !ruby/object:Gem::Dependency
26
- name: rcov
27
- requirement: &2156648060 !ruby/object:Gem::Requirement
34
+ - !ruby/object:Gem::Dependency
35
+ requirement: &id002 !ruby/object:Gem::Requirement
28
36
  none: false
29
- requirements:
30
- - - ! '>='
31
- - !ruby/object:Gem::Version
32
- version: '0'
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ hash: 3
41
+ segments:
42
+ - 0
43
+ version: "0"
44
+ version_requirements: *id002
33
45
  type: :development
46
+ name: rcov
34
47
  prerelease: false
35
- version_requirements: *2156648060
36
48
  description: A minimal standard Logger wrapper perfect for CLI applications
37
49
  email: javier.juarez@gmail.com
38
50
  executables: []
51
+
39
52
  extensions: []
40
- extra_rdoc_files:
53
+
54
+ extra_rdoc_files:
41
55
  - README.rdoc
42
- files:
56
+ files:
43
57
  - lib/mini_logger.rb
44
58
  - lib/version.rb
45
59
  - test/helpers/tail_file_helper.rb
@@ -47,28 +61,37 @@ files:
47
61
  - test/unit_extensions.rb
48
62
  - README.rdoc
49
63
  homepage: http://github.com/jjuarez/mini_logger
50
- licenses:
64
+ licenses:
51
65
  - MIT
52
66
  post_install_message:
53
67
  rdoc_options: []
54
- require_paths:
68
+
69
+ require_paths:
55
70
  - lib
56
- required_ruby_version: !ruby/object:Gem::Requirement
71
+ required_ruby_version: !ruby/object:Gem::Requirement
57
72
  none: false
58
- requirements:
59
- - - ! '>='
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- required_rubygems_version: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ hash: 3
77
+ segments:
78
+ - 0
79
+ version: "0"
80
+ required_rubygems_version: !ruby/object:Gem::Requirement
63
81
  none: false
64
- requirements:
65
- - - ! '>='
66
- - !ruby/object:Gem::Version
67
- version: '0'
82
+ requirements:
83
+ - - ">="
84
+ - !ruby/object:Gem::Version
85
+ hash: 3
86
+ segments:
87
+ - 0
88
+ version: "0"
68
89
  requirements: []
90
+
69
91
  rubyforge_project: http://github.com/jjuarez/mini_logger
70
92
  rubygems_version: 1.8.5
71
93
  signing_key:
72
94
  specification_version: 3
73
95
  summary: A tiny logger utility for small applications
74
96
  test_files: []
97
+