logging 0.5.3 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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