micrologger 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a7f36acc51fecb2796f86400c5358e6325ffe487
4
- data.tar.gz: f775d5803b48e4ca0a0f2beb36d34b8ca4ddda9e
3
+ metadata.gz: 728c345857be92e1e9d3ab6047c9577449a33f07
4
+ data.tar.gz: e8ae2bc302965bfdbb588f0fb06c871214548217
5
5
  SHA512:
6
- metadata.gz: 4fbbc44f38a544ceeb9e886add442c35ec406d89963454c3afc8f341243c0ef2b2051adf3b5ebab2bedf21e3bd07801acd7991d063be672db58809e6e609e727
7
- data.tar.gz: a69ea0864cfb03173eb6dcbfe489272be3be7aa4fca2c5c4e98757af7194ce1c8f702b88616f3ab29c46e6104efe9c152601c195d64600e6e6b60ad284db2b76
6
+ metadata.gz: 312b05c71b98d102c6b30b90999671d44c6a06fadbeff6df78396f04306f0b53711861af3a6c3b4d7b63aa1cd3fe741d413b2857f314d100bdb12a0f95834d70
7
+ data.tar.gz: c8dbaef0c32ddc5f4fb479e815f026eed17fcd0365645eca043b2f29eec755812e468103b31549a7a35896b3771f56dc182305780ce023002bfa4d8db952323d
data/.travis.yml CHANGED
@@ -1,17 +1,15 @@
1
+ sudo: false
2
+
1
3
  language: ruby
2
4
 
3
- script: ruby spec/*
5
+ script: bundle exec ruby spec/*
4
6
 
5
7
  rvm:
6
- - 2.2.1
7
- - 2.2.0
8
- - 2.1.5
9
- - 2.1.4
10
- - 2.1.3
11
- - 2.1.2
12
- - 2.1.1
13
- - 2.1.0
14
- - 2.0.0
8
+ - 2.2
9
+ - 2.1
10
+ - 2.0
15
11
  - rbx-2
16
12
  - jruby-head
17
13
 
14
+ cache:
15
+ - bundler
data/CHANGELOG.md CHANGED
@@ -1,4 +1,10 @@
1
- ### 0.1.0
1
+ # Changelog
2
+
3
+ ## 0.1.1
4
+
5
+ * Loosen paint dep
6
+
7
+ ## 0.1.0
2
8
 
3
9
  * Release
4
10
 
data/Gemfile CHANGED
@@ -1,3 +1,7 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
3
  gemspec
4
+
5
+ group :development do
6
+ gem 'minitest'
7
+ end
data/Rakefile ADDED
@@ -0,0 +1,17 @@
1
+ # # #
2
+ # Gem build and install task
3
+ gemspec_file = Dir['*.gemspec'].first
4
+ gemspec = eval File.read(gemspec_file), binding, gemspec_file
5
+ info = "#{gemspec.name} | #{gemspec.version} | " \
6
+ "#{gemspec.runtime_dependencies.size} dependencies | " \
7
+ "#{gemspec.files.size} files"
8
+
9
+ desc info
10
+ task :gem do
11
+ puts info + "\n\n"
12
+ print " "; sh "gem build #{gemspec_file}"
13
+ FileUtils.mkdir_p 'pkg'
14
+ FileUtils.mv "#{gemspec.name}-#{gemspec.version}.gem", 'pkg'
15
+ puts; sh %{gem install --no-document pkg/#{gemspec.name}-#{gemspec.version}.gem}
16
+ end
17
+
data/lib/micrologger.rb CHANGED
@@ -1,10 +1,11 @@
1
+ require_relative 'micrologger/version'
2
+
1
3
  require 'microevent'
2
4
  require 'paint'
3
5
 
4
6
  class MicroLogger
5
7
  include MicroEvent
6
8
 
7
- VERSION = "0.1.0".freeze
8
9
  DEFAULT_HANDLERS = {
9
10
  stdout: lambda{ |message, extra|
10
11
  STDOUT.puts formatter(message, extra)
@@ -0,0 +1,3 @@
1
+ class MicroLogger
2
+ VERSION = '0.1.1'.freeze
3
+ end
data/micrologger.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  # -*- encoding: utf-8 -*-
2
2
 
3
- require File.expand_path('../lib/micrologger', __FILE__)
3
+ require File.expand_path('../lib/micrologger/version', __FILE__)
4
4
 
5
5
  Gem::Specification.new do |gem|
6
6
  gem.name = "micrologger"
@@ -17,6 +17,6 @@ Gem::Specification.new do |gem|
17
17
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
18
18
  gem.require_paths = ['lib']
19
19
 
20
- gem.add_dependency 'microevent', '~> 1.0'
21
- gem.add_dependency 'paint', '~> 0.9'
20
+ gem.add_dependency 'microevent', '>= 0.9', '< 2.0'
21
+ gem.add_dependency 'paint', '~> 1.0'
22
22
  end
Binary file
@@ -0,0 +1,155 @@
1
+ require_relative '../lib/micrologger'
2
+ require 'minitest/autorun'
3
+
4
+ describe MicroLogger do
5
+ let :logger do
6
+ MicroLogger.new
7
+ end
8
+
9
+ describe '#log' do
10
+ it 'calls registered handler for called log level' do
11
+ result = []
12
+
13
+ logger.register :debug, proc{ result << 42 }
14
+ logger.log "msg", :debug
15
+
16
+ assert_equal [42], result
17
+ end
18
+
19
+ it 'it passes the message to the handler' do
20
+ result = []
21
+
22
+ logger.register :debug, proc{ |message| result << message }
23
+ logger.log "msg", :debug
24
+
25
+ assert_equal ["msg"], result
26
+ end
27
+
28
+ it 'passes an "extra" meta info hash to the handler' do
29
+ result = nil
30
+
31
+ logger.register :debug, proc{ |message, extra| result = extra }
32
+ logger.log "msg", :debug
33
+
34
+ assert_equal Hash, result.class
35
+ end
36
+
37
+ it 'contains the current time in extra hash' do
38
+ result = nil
39
+
40
+ logger.register :debug, proc{ |message, extra| result = extra }
41
+ logger.log "msg", :debug
42
+
43
+ assert_equal Time, result[:time].class
44
+ end
45
+
46
+ it 'contains the log level in extra hash' do
47
+ result = nil
48
+
49
+ logger.register :debug, proc{ |message, extra| result = extra }
50
+ logger.log "msg", :debug
51
+
52
+ assert_equal :debug, result[:level]
53
+ end
54
+
55
+ it 'works with multiple handlers' do
56
+ result = []
57
+
58
+ logger.register :debug, proc{ result << 42 }
59
+ logger.register :debug, proc{ result << 23 }
60
+ logger.log "msg", :debug
61
+
62
+ assert_equal [42, 23], result
63
+ end
64
+
65
+ it 'will use the :info log level if none is given' do
66
+ result = []
67
+
68
+ logger.register :info, proc{ result << 42 }
69
+ logger.log "msg"
70
+
71
+ assert_equal [42], result
72
+ end
73
+ end
74
+
75
+ describe '#register' do
76
+ it 'will bind a new proc handler for a log level' do
77
+ result = []
78
+ fn = proc{ result << 42 }
79
+
80
+ logger.register :debug, fn
81
+ logger.log "msg", :debug
82
+
83
+ assert_equal [42], result
84
+ end
85
+
86
+ it 'also takes a block as handler' do
87
+ result = []
88
+
89
+ logger.register(:debug){ result << 42 }
90
+ logger.log "msg", :debug
91
+
92
+ assert_equal [42], result
93
+ end
94
+
95
+ it 'will raise an ArgumentError if no handler given' do
96
+ result = nil
97
+
98
+ begin
99
+ logger.register :debug
100
+ rescue => result
101
+ end
102
+
103
+ assert_equal ArgumentError, result.class
104
+ end
105
+
106
+ it 'will use the :info log level if is none is given' do
107
+ result = []
108
+
109
+ logger.register{ result << 42 }
110
+ logger.log "msg"
111
+
112
+ assert_equal [42], result
113
+ end
114
+ end
115
+
116
+ describe '#unregister' do
117
+ it 'will unregister a handler for a log level' do
118
+ result = []
119
+ fn = proc{ result << 42 }
120
+
121
+ logger.register :debug, fn
122
+ logger.unregister :debug, fn
123
+ logger.log "msg", :debug
124
+
125
+ assert_equal [], result
126
+ end
127
+
128
+ it 'will unregister all handlers if none is given' do
129
+ result = []
130
+ fn = proc{ result << 42 }
131
+
132
+ logger.register :debug, fn
133
+ logger.unbind :debug
134
+ logger.log "msg", :debug
135
+
136
+ assert_equal [], result
137
+ end
138
+ end
139
+
140
+ describe 'DEFAULT_HANDLERS' do
141
+ it 'contains a :stdout handler' do
142
+ # assert_output "msg", "" do
143
+ # logger.register :debug, :stdout
144
+ # logger.log "msg", :debug
145
+ # end
146
+ end
147
+
148
+ it 'contains a :stderr handler' do
149
+ # assert_output "", "msg" do
150
+ # logger.register :debug, :stderr
151
+ # logger.log "msg", :debug
152
+ # end
153
+ end
154
+ end
155
+ end
metadata CHANGED
@@ -1,43 +1,49 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: micrologger
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Lelis
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-03-12 00:00:00.000000000 Z
11
+ date: 2015-06-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: microevent
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '1.0'
19
+ version: '0.9'
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '2.0'
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
- - - "~>"
27
+ - - ">="
25
28
  - !ruby/object:Gem::Version
26
- version: '1.0'
29
+ version: '0.9'
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '2.0'
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: paint
29
35
  requirement: !ruby/object:Gem::Requirement
30
36
  requirements:
31
37
  - - "~>"
32
38
  - !ruby/object:Gem::Version
33
- version: '0.9'
39
+ version: '1.0'
34
40
  type: :runtime
35
41
  prerelease: false
36
42
  version_requirements: !ruby/object:Gem::Requirement
37
43
  requirements:
38
44
  - - "~>"
39
45
  - !ruby/object:Gem::Version
40
- version: '0.9'
46
+ version: '1.0'
41
47
  description: A minimal logger based on MicroEvent.rb
42
48
  email: mail@janlelis.de
43
49
  executables: []
@@ -51,9 +57,12 @@ files:
51
57
  - Gemfile.lock
52
58
  - MIT-LICENSE.txt
53
59
  - README.md
54
- - lib/.micrologger.rb.swp
60
+ - Rakefile
55
61
  - lib/micrologger.rb
62
+ - lib/micrologger/version.rb
56
63
  - micrologger.gemspec
64
+ - pkg/micrologger-0.1.0.gem
65
+ - spec/micrologger_spec.rb
57
66
  homepage: https://github.com/janlelis/micrologger
58
67
  licenses:
59
68
  - MIT
@@ -74,9 +83,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
74
83
  version: '0'
75
84
  requirements: []
76
85
  rubyforge_project:
77
- rubygems_version: 2.4.5
86
+ rubygems_version: 2.4.6
78
87
  signing_key:
79
88
  specification_version: 4
80
89
  summary: A minimal logger.
81
- test_files: []
90
+ test_files:
91
+ - spec/micrologger_spec.rb
82
92
  has_rdoc:
Binary file