logging 0.5.3 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- # $Id: test_syslog.rb 53 2007-11-28 00:21:33Z tim_pease $
1
+ # $Id: test_syslog.rb 72 2007-12-26 21:59:58Z tim_pease $
2
2
 
3
3
  require 'test/setup.rb'
4
4
 
@@ -17,10 +17,6 @@ module TestAppenders
17
17
  @levels = ::Logging::LEVELS
18
18
  end
19
19
 
20
- def teardown
21
- ::Syslog.close if ::Syslog.opened?
22
- end
23
-
24
20
  def test_append
25
21
  return if RUBY_PLATFORM =~ %r/cygwin/
26
22
 
@@ -63,7 +59,7 @@ module TestAppenders
63
59
 
64
60
  def test_append_error
65
61
  appender = create_syslog
66
- appender.close
62
+ appender.close false
67
63
 
68
64
  event = ::Logging::LogEvent.new('TestLogger', @levels['warn'],
69
65
  [1, 2, 3, 4], false)
@@ -75,7 +71,7 @@ module TestAppenders
75
71
  appender = create_syslog
76
72
  assert_equal false, appender.closed?
77
73
 
78
- appender.close
74
+ appender.close false
79
75
  assert_equal true, appender.closed?
80
76
  end
81
77
 
@@ -107,7 +103,7 @@ module TestAppenders
107
103
 
108
104
  def test_concat_error
109
105
  appender = create_syslog
110
- appender.close
106
+ appender.close false
111
107
 
112
108
  assert_raise(RuntimeError) {appender << 'oopsy'}
113
109
  assert_equal true, appender.closed?
@@ -1,4 +1,4 @@
1
- # $Id: test_yaml_configurator.rb 38 2007-10-26 20:05:51Z tim_pease $
1
+ # $Id: test_yaml_configurator.rb 72 2007-12-26 21:59:58Z tim_pease $
2
2
 
3
3
  require 'stringio'
4
4
  require 'yaml'
@@ -10,10 +10,6 @@ module TestConfig
10
10
  class TestYamlConfigurator < Test::Unit::TestCase
11
11
  include LoggingTestCase
12
12
 
13
- def setup
14
- super
15
- end
16
-
17
13
  def test_class_load
18
14
  assert_raise(::Logging::Config::YamlConfigurator::Error) {
19
15
  ::Logging::Config::YamlConfigurator.load(Object.new)
@@ -1,4 +1,4 @@
1
- # $Id: setup.rb 53 2007-11-28 00:21:33Z tim_pease $
1
+ # $Id: setup.rb 72 2007-12-26 21:59:58Z tim_pease $
2
2
 
3
3
  require 'test/unit'
4
4
 
@@ -8,6 +8,7 @@ require 'test/unit'
8
8
  KeyError = IndexError if not defined? KeyError
9
9
 
10
10
  begin
11
+ require 'rubygems'
11
12
  require 'logging'
12
13
  rescue LoadError
13
14
  path = File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib'))
@@ -27,9 +28,14 @@ end
27
28
  module TestLogging
28
29
  module LoggingTestCase
29
30
 
31
+ TMP = 'tmp'
32
+
30
33
  def setup
31
34
  super
32
35
 
36
+ FileUtils.rm_rf TMP
37
+ FileUtils.mkdir TMP
38
+
33
39
  ::Logging.module_eval do
34
40
  ::Logging::LEVELS.clear
35
41
  ::Logging::LNAMES.clear
@@ -48,8 +54,14 @@ module LoggingTestCase
48
54
  end
49
55
  end
50
56
  end
57
+ end
51
58
 
52
- ::Logging::Appender.instance_variable_get(:@appenders).clear
59
+ def teardown
60
+ super
61
+ h = ::Logging::Appender.instance_variable_get(:@appenders)
62
+ h.each_value {|a| a.close(false) unless a.nil? || a.closed?}
63
+ h.clear
64
+ FileUtils.rm_rf TMP
53
65
  end
54
66
 
55
67
  end # module LoggingTestCase
@@ -1,4 +1,4 @@
1
- # $Id: test_appender.rb 26 2007-01-31 23:19:40Z tim_pease $
1
+ # $Id: test_appender.rb 67 2007-12-26 16:27:06Z tim_pease $
2
2
 
3
3
  require 'test/setup.rb'
4
4
 
@@ -20,7 +20,10 @@ module TestLogging
20
20
  def test_append
21
21
  ary = []
22
22
  @appender.instance_variable_set :@ary, ary
23
- def @appender.write( str ) @ary << str end
23
+ def @appender.write( event, do_layout = true )
24
+ str = do_layout ? @layout.format(event) : event.to_s
25
+ @ary << str
26
+ end
24
27
 
25
28
  assert_nothing_raised {@appender.append @event}
26
29
  assert_equal "DEBUG logger : message\n", ary.pop
@@ -68,14 +71,17 @@ module TestLogging
68
71
  def test_concat
69
72
  ary = []
70
73
  @appender.instance_variable_set :@ary, ary
71
- def @appender.write( str ) @ary << str end
74
+ def @appender.write( event, do_layout = true )
75
+ str = do_layout ? @layout.format(event) : event.to_s
76
+ @ary << str
77
+ end
72
78
 
73
79
  assert_nothing_raised {@appender << 'log message'}
74
80
  assert_equal 'log message', ary.pop
75
81
 
76
82
  @appender.level = :off
77
83
  @appender << 'another log message'
78
- assert_equal 'another log message', ary.pop
84
+ assert_nil ary.pop
79
85
 
80
86
  layout = @appender.layout
81
87
  def layout.footer() 'this is the footer' end
@@ -85,6 +91,10 @@ module TestLogging
85
91
  assert_equal 'this is the footer', ary.pop
86
92
  end
87
93
 
94
+ def test_flush
95
+ assert_same @appender, @appender.flush
96
+ end
97
+
88
98
  def test_initialize
89
99
  assert_raise(TypeError) {::Logging::Appender.new 'test', :layout => []}
90
100
 
@@ -1,4 +1,4 @@
1
- # $Id: test_logging.rb 38 2007-10-26 20:05:51Z tim_pease $
1
+ # $Id: test_logging.rb 72 2007-12-26 21:59:58Z tim_pease $
2
2
 
3
3
  require 'test/setup.rb'
4
4
  require 'fileutils'
@@ -8,25 +8,15 @@ module TestLogging
8
8
  class TestLogging < Test::Unit::TestCase
9
9
  include LoggingTestCase
10
10
 
11
- TMP = 'tmp'
12
-
13
11
  def setup
14
12
  super
15
13
  @levels = ::Logging::LEVELS
16
14
  @lnames = ::Logging::LNAMES
17
15
 
18
- FileUtils.rm_rf TMP
19
- FileUtils.mkdir(TMP)
20
16
  @fn = File.join(TMP, 'test.log')
21
17
  @glob = File.join(TMP, '*.log')
22
18
  end
23
19
 
24
- def teardown
25
- h = ::Logging::Repository.instance.instance_variable_get :@h
26
- h.values.each {|l| l.close if l.respond_to? :close}
27
- FileUtils.rm_rf TMP
28
- end
29
-
30
20
  def test_configure
31
21
  assert_raise(ArgumentError) {::Logging.configure 'blah.txt'}
32
22
 
@@ -48,7 +38,7 @@ module TestLogging
48
38
  logfile = ::Logging::Appender['logfile']
49
39
  assert_instance_of ::Logging::Appenders::File, logfile
50
40
  assert_equal 0, logfile.level
51
- assert_equal 'temp.log', logfile.instance_variable_get(:@fn)
41
+ assert_equal 'tmp/temp.log', logfile.instance_variable_get(:@fn)
52
42
 
53
43
  layout = logfile.layout
54
44
  assert_instance_of ::Logging::Layouts::Pattern, layout
@@ -87,9 +77,6 @@ module TestLogging
87
77
  appenders = yourlogger.instance_variable_get :@appenders
88
78
  assert_equal 2, appenders.length
89
79
  assert_equal ['logfile', 'stderr'], appenders.map {|a| a.name}.sort
90
-
91
- # cleanup
92
- File.delete('temp.log') if File.exist?('temp.log')
93
80
  end
94
81
 
95
82
  def test_logger
@@ -0,0 +1,49 @@
1
+ # $Id: test_utils.rb 65 2007-12-23 04:48:55Z tim_pease $
2
+
3
+ require 'test/setup.rb'
4
+ require 'stringio'
5
+
6
+ module TestLogging
7
+
8
+ class TestUtils < Test::Unit::TestCase
9
+
10
+ def test_getopt
11
+ opts = {
12
+ :foo => 'foo_value',
13
+ 'bar' => 'bar_value',
14
+ 'one' => '1',
15
+ :two => '2',
16
+ :three => 3.0
17
+ }
18
+
19
+ assert_equal('foo_value', opts.getopt(:foo))
20
+ assert_equal('foo_value', opts.getopt('foo'))
21
+ assert_equal(:foo_value, opts.getopt(:foo, :as => Symbol))
22
+
23
+ assert_equal('bar_value', opts.getopt(:bar))
24
+ assert_equal('bar_value', opts.getopt('bar'))
25
+
26
+ assert_equal('1', opts.getopt(:one))
27
+ assert_equal(1, opts.getopt('one', :as => Integer))
28
+ assert_instance_of(Float, opts.getopt('one', :as => Float))
29
+
30
+ assert_equal('2', opts.getopt(:two))
31
+ assert_equal(['2'], opts.getopt(:two, :as => Array))
32
+
33
+ assert_equal(3.0, opts.getopt(:three))
34
+ assert_equal('3.0', opts.getopt('three', :as => String))
35
+
36
+ assert_equal(nil, opts.getopt(:baz))
37
+ assert_equal('default', opts.getopt('baz', 'default'))
38
+ assert_equal(:default, opts.getopt(:key, 'default', :as => Symbol))
39
+ assert_equal(['default'], opts.getopt('key', 'default', :as => Array))
40
+
41
+ assert_equal(3.0, opts.getopt(:three, :as => Object))
42
+
43
+ assert_nil opts.getopt(:key, :as => Symbol)
44
+ end
45
+
46
+ end # class TestUtils
47
+ end # module TestLogging
48
+
49
+ # EOF
metadata CHANGED
@@ -1,33 +1,53 @@
1
1
  --- !ruby/object:Gem::Specification
2
- rubygems_version: 0.9.4
3
- specification_version: 1
4
2
  name: logging
5
3
  version: !ruby/object:Gem::Version
6
- version: 0.5.3
7
- date: 2007-12-08 00:00:00 -07:00
8
- summary: A flexible and extendable logging library for Ruby
9
- require_paths:
10
- - lib
11
- email: tim.pease@gmail.com
12
- homepage: http://logging.rubyforge.org/
13
- rubyforge_project: logging
14
- description: Logging is a flexible logging library for use in Ruby programs based on the design of Java's log4j library. It features a hierarchical logging system, custom level names, multiple output destinations per log event, custom formatting, and more.
15
- autorequire:
16
- default_executable:
17
- bindir: bin
18
- has_rdoc: true
19
- required_ruby_version: !ruby/object:Gem::Version::Requirement
20
- requirements:
21
- - - ">"
22
- - !ruby/object:Gem::Version
23
- version: 0.0.0
24
- version:
4
+ version: 0.6.0
25
5
  platform: ruby
26
- signing_key:
27
- cert_chain:
28
- post_install_message:
29
6
  authors:
30
7
  - Tim Pease
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2007-12-26 00:00:00 -07:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: flexmock
17
+ version_requirement:
18
+ version_requirements: !ruby/object:Gem::Requirement
19
+ requirements:
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 0.8.0
23
+ version:
24
+ - !ruby/object:Gem::Dependency
25
+ name: lockfile
26
+ version_requirement:
27
+ version_requirements: !ruby/object:Gem::Requirement
28
+ requirements:
29
+ - - ">="
30
+ - !ruby/object:Gem::Version
31
+ version: 1.4.3
32
+ version:
33
+ - !ruby/object:Gem::Dependency
34
+ name: rake
35
+ version_requirement:
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: 0.8.1
41
+ version:
42
+ description: Logging is a flexible logging library for use in Ruby programs based on the design of Java's log4j library. It features a hierarchical logging system, custom level names, multiple output destinations per log event, custom formatting, and more.
43
+ email: tim.pease@gmail.com
44
+ executables: []
45
+
46
+ extensions: []
47
+
48
+ extra_rdoc_files:
49
+ - History.txt
50
+ - README.txt
31
51
  files:
32
52
  - History.txt
33
53
  - Manifest.txt
@@ -37,6 +57,7 @@ files:
37
57
  - lib/logging.rb
38
58
  - lib/logging/appender.rb
39
59
  - lib/logging/appenders/console.rb
60
+ - lib/logging/appenders/email.rb
40
61
  - lib/logging/appenders/file.rb
41
62
  - lib/logging/appenders/growl.rb
42
63
  - lib/logging/appenders/io.rb
@@ -51,15 +72,18 @@ files:
51
72
  - lib/logging/logger.rb
52
73
  - lib/logging/repository.rb
53
74
  - lib/logging/root_logger.rb
54
- - tasks/doc.rake
55
- - tasks/gem.rake
56
- - tasks/manifest.rake
57
- - tasks/rubyforge.rake
58
- - tasks/setup.rb
59
- - tasks/test.rake
60
- - tasks/website.rake
75
+ - lib/logging/utils.rb
76
+ - rakelib/doc.rake
77
+ - rakelib/gem.rake
78
+ - rakelib/manifest.rake
79
+ - rakelib/rubyforge.rake
80
+ - rakelib/setup.rb
81
+ - rakelib/test.rake
82
+ - rakelib/website.rake
61
83
  - test/appenders/test_console.rb
84
+ - test/appenders/test_email.rb
62
85
  - test/appenders/test_file.rb
86
+ - test/appenders/test_growl.rb
63
87
  - test/appenders/test_io.rb
64
88
  - test/appenders/test_rolling_file.rb
65
89
  - test/appenders/test_syslog.rb
@@ -75,9 +99,39 @@ files:
75
99
  - test/test_logging.rb
76
100
  - test/test_repository.rb
77
101
  - test/test_root_logger.rb
102
+ - test/test_utils.rb
103
+ has_rdoc: true
104
+ homepage: http://logging.rubyforge.org/
105
+ post_install_message:
106
+ rdoc_options:
107
+ - --main
108
+ - README.txt
109
+ require_paths:
110
+ - lib
111
+ required_ruby_version: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - ">="
114
+ - !ruby/object:Gem::Version
115
+ version: "0"
116
+ version:
117
+ required_rubygems_version: !ruby/object:Gem::Requirement
118
+ requirements:
119
+ - - ">="
120
+ - !ruby/object:Gem::Version
121
+ version: "0"
122
+ version:
123
+ requirements: []
124
+
125
+ rubyforge_project: logging
126
+ rubygems_version: 1.0.1
127
+ signing_key:
128
+ specification_version: 2
129
+ summary: A flexible and extendable logging library for Ruby
78
130
  test_files:
79
131
  - test/appenders/test_console.rb
132
+ - test/appenders/test_email.rb
80
133
  - test/appenders/test_file.rb
134
+ - test/appenders/test_growl.rb
81
135
  - test/appenders/test_io.rb
82
136
  - test/appenders/test_rolling_file.rb
83
137
  - test/appenders/test_syslog.rb
@@ -91,25 +145,4 @@ test_files:
91
145
  - test/test_logging.rb
92
146
  - test/test_repository.rb
93
147
  - test/test_root_logger.rb
94
- rdoc_options:
95
- - --main
96
- - README.txt
97
- extra_rdoc_files:
98
- - History.txt
99
- - README.txt
100
- executables: []
101
-
102
- extensions: []
103
-
104
- requirements: []
105
-
106
- dependencies:
107
- - !ruby/object:Gem::Dependency
108
- name: rake
109
- version_requirement:
110
- version_requirements: !ruby/object:Gem::Version::Requirement
111
- requirements:
112
- - - ">="
113
- - !ruby/object:Gem::Version
114
- version: 0.7.3
115
- version:
148
+ - test/test_utils.rb