logging 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,4 +1,4 @@
1
- # $Id: console.rb 17 2007-01-20 18:47:43Z tim_pease $
1
+ # $Id: console.rb 26 2007-01-31 23:19:40Z tim_pease $
2
2
 
3
3
  require 'logging/appenders/io'
4
4
 
@@ -12,10 +12,10 @@ module Appenders
12
12
 
13
13
  #
14
14
  # call-seq:
15
- # StdOut.new
16
- # StdOut.new( :layout => layout )
15
+ # Stdout.new
16
+ # Stdout.new( :layout => layout )
17
17
  #
18
- # Creates a new StdOut Appender. The name 'stdout' will always be used for
18
+ # Creates a new Stdout Appender. The name 'stdout' will always be used for
19
19
  # this appender.
20
20
  #
21
21
  def initialize( name = nil, opts = {} )
@@ -32,10 +32,10 @@ module Appenders
32
32
 
33
33
  #
34
34
  # call-seq:
35
- # StdErr.new
36
- # StdErr.new( :layout => layout )
35
+ # Stderr.new
36
+ # Stderr.new( :layout => layout )
37
37
  #
38
- # Creates a new StdErr Appender. The name 'stderr' will always be used for
38
+ # Creates a new Stderr Appender. The name 'stderr' will always be used for
39
39
  # this appender.
40
40
  #
41
41
  def initialize( name = nil, opts = {} )
@@ -1,4 +1,4 @@
1
- # $Id: file.rb 22 2007-01-29 16:20:54Z tim_pease $
1
+ # $Id: file.rb 27 2007-02-01 16:58:11Z tim_pease $
2
2
 
3
3
  require 'logging/appenders/io'
4
4
 
@@ -30,12 +30,12 @@ module Logging::Appenders
30
30
 
31
31
  if ::File.exist?(@fn)
32
32
  if not ::File.file?(@fn)
33
- raise StandardError, "#{@fn} is not a regular file"
33
+ raise ArgumentError, "#{@fn} is not a regular file"
34
34
  elsif not ::File.writable?(@fn)
35
- raise StandardError, "#{@fn} is not writeable"
35
+ raise ArgumentError, "#{@fn} is not writeable"
36
36
  end
37
37
  elsif not ::File.writable?(::File.dirname(@fn))
38
- raise StandardError, "#{::File.dirname(@fn)} is not writable"
38
+ raise ArgumentError, "#{::File.dirname(@fn)} is not writable"
39
39
  end
40
40
 
41
41
  super(name, ::File.new(@fn, mode), opts)
@@ -1,4 +1,4 @@
1
- # $Id: rolling_file.rb 22 2007-01-29 16:20:54Z tim_pease $
1
+ # $Id: rolling_file.rb 27 2007-02-01 16:58:11Z tim_pease $
2
2
 
3
3
  require 'logging/appenders/file'
4
4
 
@@ -21,10 +21,10 @@ module Logging::Appenders
21
21
  # /var/log/ruby.log => /var/log/ruby.1.log
22
22
  #
23
23
  # New log messages will be appended to a newly opened log file of the same
24
- # name (<tt>/var/log/ruby.log</tt> in our example above). The age number for
25
- # all older log files is incremented when the log file is rolled. The number
26
- # of older log files to keep can be given, otherwise all the log files are
27
- # kept.
24
+ # name (<tt>/var/log/ruby.log</tt> in our example above). The age number
25
+ # for all older log files is incremented when the log file is rolled. The
26
+ # number of older log files to keep can be given, otherwise all the log
27
+ # files are kept.
28
28
  #
29
29
  # The actual process of rolling all the log file names can be expensive if
30
30
  # there are many, many older log files to process.
@@ -1,4 +1,4 @@
1
- # $Id: static_appender.rb 12 2007-01-14 20:03:40Z tim_pease $
1
+ # $Id: static_appender.rb 26 2007-01-31 23:19:40Z tim_pease $
2
2
 
3
3
  require 'logging/appenders/console'
4
4
 
@@ -31,25 +31,25 @@ class Appender
31
31
  # call-seq:
32
32
  # Appender.stdout
33
33
  #
34
- # Returns an instance of the StdOut Appender. Unless the user explicitly
35
- # creates a new StdOut Appender, the instance returned by this method
34
+ # Returns an instance of the Stdout Appender. Unless the user explicitly
35
+ # creates a new Stdout Appender, the instance returned by this method
36
36
  # will always be the same:
37
37
  #
38
38
  # Appender.stdout.object_id == Appender.stdout.object_id #=> true
39
39
  #
40
- def stdout( ) self['stdout'] || ::Logging::Appenders::StdOut.new end
40
+ def stdout( ) self['stdout'] || ::Logging::Appenders::Stdout.new end
41
41
 
42
42
  #
43
43
  # call-seq:
44
44
  # Appender.stderr
45
45
  #
46
- # Returns an instance of the StdErr Appender. Unless the user explicitly
47
- # creates a new StdErr Appender, the instance returned by this method
46
+ # Returns an instance of the Stderr Appender. Unless the user explicitly
47
+ # creates a new Stderr Appender, the instance returned by this method
48
48
  # will always be the same:
49
49
  #
50
50
  # Appender.stderr.object_id == Appender.stderr.object_id #=> true
51
51
  #
52
- def stderr( ) self['stderr'] || ::Logging::Appenders::StdErr.new end
52
+ def stderr( ) self['stderr'] || ::Logging::Appenders::Stderr.new end
53
53
 
54
54
  end # class << self
55
55
  end # class Appender
@@ -1,4 +1,4 @@
1
- # $Id: basic.rb 15 2007-01-15 19:03:45Z tim_pease $
1
+ # $Id: basic.rb 25 2007-01-30 20:19:12Z tim_pease $
2
2
 
3
3
  require 'logging'
4
4
  require 'logging/layout'
@@ -29,16 +29,9 @@ module Layouts
29
29
  # class documentation for details about the formatting used.
30
30
  #
31
31
  def format( event )
32
- start = sprintf("%*s %s : ", ::Logging::MAX_LEVEL_LENGTH,
33
- ::Logging::LNAMES[event.level], event.logger)
34
- buf = ''
35
- event.data.each do |obj|
36
- buf << start
37
- buf << format_obj(obj)
38
- buf << "\n"
39
- end
40
-
41
- return buf
32
+ obj = format_obj(event.data)
33
+ sprintf("%*s %s : %s\n", ::Logging::MAX_LEVEL_LENGTH,
34
+ ::Logging::LNAMES[event.level], event.logger, obj)
42
35
  end
43
36
 
44
37
  end # class Basic
@@ -1,4 +1,4 @@
1
- # $Id: pattern.rb 17 2007-01-20 18:47:43Z tim_pease $
1
+ # $Id: pattern.rb 25 2007-01-30 20:19:12Z tim_pease $
2
2
 
3
3
  require 'logging'
4
4
  require 'logging/layout'
@@ -125,7 +125,7 @@ module Layouts
125
125
  'F' => 'event.file',
126
126
  'l' => '::Logging::LNAMES[event.level]',
127
127
  'L' => 'event.line',
128
- 'm' => :placeholder,
128
+ 'm' => 'format_obj(event.data)',
129
129
  'M' => 'event.method',
130
130
  'p' => 'Process.pid',
131
131
  'r' => 'Integer((Time.now-@created_at)*1000).to_s',
@@ -164,21 +164,17 @@ module Layouts
164
164
 
165
165
  #
166
166
  # call-seq:
167
- # Pattern.create_format_methods( pf )
167
+ # Pattern.create_format_method( pf )
168
168
  #
169
- # This method will create the +format+ and +format_str+ methods in the
170
- # given Pattern Layout _pf_ based on the configured format pattern
171
- # specified by the user.
169
+ # This method will create the +format+ method in the given Pattern
170
+ # Layout _pf_ based on the configured format pattern specified by the
171
+ # user.
172
172
  #
173
- def self.create_format_methods( pf )
174
- # Create the format_str(event) method. This method will return format
175
- # string that can be used with +sprintf+ to format the data objects in
176
- # the given _event_.
177
- code = "undef :format_str if method_defined? :format_str\n"
178
- code << "def format_str( event )\nsprintf(\""
173
+ def self.create_format_method( pf )
174
+ # Create the format(event) method
175
+ code = "undef :format if method_defined? :format\n"
176
+ code << "def format( event )\nsprintf(\""
179
177
  pattern = pf.pattern.dup
180
- have_m_directive = false
181
- have_percent = false
182
178
  args = []
183
179
 
184
180
  while true
@@ -186,12 +182,7 @@ module Layouts
186
182
  code << m[1] unless m[1].empty?
187
183
 
188
184
  case m[3]
189
- when '%'
190
- code << '%%%%' # this results in a %% in the format string
191
- have_percent = true
192
- when 'm'
193
- code << '%' + m[2] + 's'
194
- have_m_directive = true
185
+ when '%': code << '%%'
195
186
  when *DIRECTIVE_TABLE.keys
196
187
  code << m[2] + 's'
197
188
  args << DIRECTIVE_TABLE[m[3]]
@@ -209,23 +200,6 @@ module Layouts
209
200
  code << ")\n"
210
201
  code << "end\n"
211
202
 
212
- code.gsub!('%%', '%') if have_percent and not have_m_directive
213
- pf.meta_eval code
214
-
215
- # Create the format(event) method
216
- code = "undef :format if method_defined? :format\n"
217
- if have_m_directive
218
- code << <<-CODE
219
- def format( event )
220
- fmt = format_str(event)
221
- buf = ''
222
- event.data.each {|obj| buf << sprintf(fmt, format_obj(obj))}
223
- buf
224
- end
225
- CODE
226
- else
227
- code << "alias :format :format_str\n"
228
- end
229
203
  pf.meta_eval code
230
204
  end
231
205
  # :startdoc:
@@ -254,7 +228,7 @@ module Layouts
254
228
  @date_pattern = ISO8601 if @date_pattern.nil? and @date_method.nil?
255
229
 
256
230
  Pattern.create_date_format_methods(self)
257
- Pattern.create_format_methods(self)
231
+ Pattern.create_format_method(self)
258
232
  end
259
233
 
260
234
  attr_reader :pattern, :date_pattern, :date_method
@@ -267,7 +241,7 @@ module Layouts
267
241
  #
268
242
  def pattern=( var )
269
243
  @pattern = var
270
- Pattern.create_format_methods(self)
244
+ Pattern.create_format_method(self)
271
245
  end
272
246
 
273
247
  #
@@ -1,4 +1,4 @@
1
- # $Id: logger.rb 22 2007-01-29 16:20:54Z tim_pease $
1
+ # $Id: logger.rb 25 2007-01-30 20:19:12Z tim_pease $
2
2
 
3
3
  require 'thread'
4
4
  require 'logging'
@@ -100,14 +100,14 @@ module Logging
100
100
  if logger.level > num
101
101
  code << <<-CODE
102
102
  def #{name}?( ) false end
103
- def #{name}( *args ) false end
103
+ def #{name}( data = nil ) false end
104
104
  CODE
105
105
  else
106
106
  code << <<-CODE
107
107
  def #{name}?( ) true end
108
- def #{name}( *args )
109
- args.push yield if block_given?
110
- log_event(::Logging::LogEvent.new(@name, #{num}, args, @trace)) unless args.empty?
108
+ def #{name}( data = nil )
109
+ data = yield if block_given?
110
+ log_event(::Logging::LogEvent.new(@name, #{num}, data, @trace)) unless data.nil?
111
111
  true
112
112
  end
113
113
  CODE
@@ -1,4 +1,4 @@
1
- # $Id: test_file.rb 17 2007-01-20 18:47:43Z tim_pease $
1
+ # $Id: test_file.rb 27 2007-02-01 16:58:11Z tim_pease $
2
2
 
3
3
  require 'test/setup.rb'
4
4
  require 'fileutils'
@@ -10,6 +10,7 @@ module TestAppenders
10
10
  include LoggingTestCase
11
11
 
12
12
  TMP = 'tmp'
13
+ NAME = 'logfile'
13
14
 
14
15
  def setup
15
16
  super
@@ -22,27 +23,28 @@ module TestAppenders
22
23
  end
23
24
 
24
25
  def teardown
26
+ cleanup
25
27
  FileUtils.rm_rf TMP
26
28
  end
27
29
 
28
30
  def test_initialize
29
31
  log = File.join(TMP, 'uw_dir', 'file.log')
30
- assert_raise(StandardError) do
31
- ::Logging::Appenders::File.new(nil, :filename => log)
32
+ assert_raise(ArgumentError) do
33
+ ::Logging::Appenders::File.new(NAME, :filename => log)
32
34
  end
33
35
 
34
36
  log = File.join(TMP, 'dir')
35
- assert_raise(StandardError) do
36
- ::Logging::Appenders::File.new(nil, :filename => log)
37
+ assert_raise(ArgumentError) do
38
+ ::Logging::Appenders::File.new(NAME, :filename => log)
37
39
  end
38
40
 
39
41
  log = File.join(TMP, 'uw_file')
40
- assert_raise(StandardError) do
41
- ::Logging::Appenders::File.new(nil, :filename => log)
42
+ assert_raise(ArgumentError) do
43
+ ::Logging::Appenders::File.new(NAME, :filename => log)
42
44
  end
43
45
 
44
46
  log = File.join(TMP, 'file.log')
45
- appender = ::Logging::Appenders::File.new 'logfile', 'filename' => log
47
+ appender = ::Logging::Appenders::File.new NAME, 'filename' => log
46
48
  assert_equal 'logfile', appender.name
47
49
  appender << "This will be the first line\n"
48
50
  appender << "This will be the second line\n"
@@ -52,9 +54,9 @@ module TestAppenders
52
54
  assert_equal "This will be the second line\n", file.readline
53
55
  assert_raise(EOFError) {file.readline}
54
56
  end
55
- appender.close
57
+ cleanup
56
58
 
57
- appender = ::Logging::Appenders::File.new 'logfile', :filename => log
59
+ appender = ::Logging::Appenders::File.new NAME, :filename => log
58
60
  assert_equal 'logfile', appender.name
59
61
  appender << "This will be the third line\n"
60
62
  appender.flush
@@ -64,10 +66,10 @@ module TestAppenders
64
66
  assert_equal "This will be the third line\n", file.readline
65
67
  assert_raise(EOFError) {file.readline}
66
68
  end
67
- appender.close
69
+ cleanup
68
70
 
69
- appender = ::Logging::Appenders::File.new 'logfile', :filename => log,
70
- :truncate => true
71
+ appender = ::Logging::Appenders::File.new NAME, :filename => log,
72
+ :truncate => true
71
73
  assert_equal 'logfile', appender.name
72
74
  appender << "The file was truncated\n"
73
75
  appender.flush
@@ -75,7 +77,15 @@ module TestAppenders
75
77
  assert_equal "The file was truncated\n", file.readline
76
78
  assert_raise(EOFError) {file.readline}
77
79
  end
78
- appender.close
80
+ cleanup
81
+ end
82
+
83
+ private
84
+ def cleanup
85
+ unless ::Logging::Appender[NAME].nil?
86
+ ::Logging::Appender[NAME].close false
87
+ ::Logging::Appender[NAME] = nil
88
+ end
79
89
  end
80
90
 
81
91
  end # class TestFile
@@ -1,4 +1,4 @@
1
- # $Id: test_io.rb 15 2007-01-15 19:03:45Z tim_pease $
1
+ # $Id: test_io.rb 25 2007-01-30 20:19:12Z tim_pease $
2
2
 
3
3
  require 'test/setup.rb'
4
4
  require 'stringio'
@@ -21,16 +21,15 @@ module TestAppenders
21
21
 
22
22
  def test_append
23
23
  event = ::Logging::LogEvent.new('TestLogger', @levels['warn'],
24
- [[1, 2, 3, 4]], false)
24
+ [1, 2, 3, 4], false)
25
25
  @appender.append event
26
26
  assert_equal " WARN TestLogger : <Array> 1234\n", readline
27
27
  assert_raise(EOFError) {readline}
28
28
 
29
29
  event.level = @levels['debug']
30
- event.data = ['the big log message', [1, 2, 3, 4]]
30
+ event.data = 'the big log message'
31
31
  @appender.append event
32
32
  assert_equal "DEBUG TestLogger : the big log message\n", readline
33
- assert_equal "DEBUG TestLogger : <Array> 1234\n", readline
34
33
  assert_raise(EOFError) {readline}
35
34
 
36
35
  @appender.close
@@ -40,7 +39,7 @@ module TestAppenders
40
39
  def test_append_error
41
40
  @sio.close
42
41
  event = ::Logging::LogEvent.new('TestLogger', @levels['warn'],
43
- [[1, 2, 3, 4]], false)
42
+ [1, 2, 3, 4], false)
44
43
  assert_raise(IOError) {@appender.append event}
45
44
  assert_equal true, @appender.closed?
46
45
  end
@@ -1,4 +1,4 @@
1
- # $Id: test_rolling_file.rb 22 2007-01-29 16:20:54Z tim_pease $
1
+ # $Id: test_rolling_file.rb 27 2007-02-01 16:58:11Z tim_pease $
2
2
 
3
3
  require 'test/setup.rb'
4
4
  require 'fileutils'
@@ -10,6 +10,7 @@ module TestAppenders
10
10
  include LoggingTestCase
11
11
 
12
12
  TMP = 'tmp'
13
+ NAME = 'roller'
13
14
 
14
15
  def setup
15
16
  super
@@ -21,6 +22,7 @@ module TestAppenders
21
22
  end
22
23
 
23
24
  def teardown
25
+ cleanup
24
26
  FileUtils.rm_rf TMP
25
27
  end
26
28
 
@@ -28,28 +30,28 @@ module TestAppenders
28
30
  assert_equal [], Dir.glob(@glob)
29
31
 
30
32
  # create a new appender
31
- ap = ::Logging::Appenders::RollingFile.new('test', :filename => @fn)
33
+ ap = ::Logging::Appenders::RollingFile.new(NAME, :filename => @fn)
32
34
  assert File.exist?(@fn)
33
35
  assert_equal 0, File.size(@fn)
34
36
 
35
37
  ap << "Just a line of text\n" # 20 bytes
36
38
  ap.flush
37
39
  assert_equal 20, File.size(@fn)
38
- ap.close
40
+ cleanup
39
41
 
40
42
  # make sure we append to the current file (not truncate)
41
- ap = ::Logging::Appenders::RollingFile.new('test', :filename => @fn)
43
+ ap = ::Logging::Appenders::RollingFile.new(NAME, :filename => @fn)
42
44
  assert_equal [@fn], Dir.glob(@glob)
43
45
  assert_equal 20, File.size(@fn)
44
46
 
45
47
  ap << "Just another line of text\n" # 26 bytes
46
48
  ap.flush
47
49
  assert_equal 46, File.size(@fn)
48
- ap.close
50
+ cleanup
49
51
 
50
52
  # setting the truncate option to true should roll the current log file
51
53
  # and create a new one
52
- ap = ::Logging::Appenders::RollingFile.new('test',
54
+ ap = ::Logging::Appenders::RollingFile.new(NAME,
53
55
  :filename => @fn, :truncate => true)
54
56
 
55
57
  log1 = sprintf(@fn_fmt, 1)
@@ -60,7 +62,7 @@ module TestAppenders
60
62
  ap << "Some more text in the new file\n" # 31 bytes
61
63
  ap.flush
62
64
  assert_equal 31, File.size(@fn)
63
- ap.close
65
+ cleanup
64
66
  end
65
67
 
66
68
  def test_keep
@@ -73,7 +75,7 @@ module TestAppenders
73
75
  FileUtils.touch(@fn)
74
76
 
75
77
  # keep only five files
76
- ap = ::Logging::Appenders::RollingFile.new('test',
78
+ ap = ::Logging::Appenders::RollingFile.new(NAME,
77
79
  :filename => @fn, :keep => 5)
78
80
 
79
81
  # we still have 13 files because we did not truncate the log file,
@@ -88,29 +90,29 @@ module TestAppenders
88
90
  name = sprintf(@fn_fmt, cnt)
89
91
  assert_equal cnt-1, File.size(name)
90
92
  end
91
- ap.close
93
+ cleanup
92
94
  end
93
95
 
94
96
  def test_max_age
95
97
  assert_equal [], Dir.glob(@glob)
96
98
 
97
- ap = ::Logging::Appenders::RollingFile.new('test',
99
+ ap = ::Logging::Appenders::RollingFile.new(NAME,
98
100
  :filename => @fn, :max_age => 1)
99
101
 
100
102
  ap << "random message\n"
101
103
  assert_equal 1, Dir.glob(@glob).length
102
104
 
103
- sleep 1
105
+ sleep 1.250
104
106
  ap << "another random message\n"
105
107
  assert_equal 2, Dir.glob(@glob).length
106
108
 
107
- ap.close
109
+ cleanup
108
110
  end
109
111
 
110
112
  def test_max_size
111
113
  assert_equal [], Dir.glob(@glob)
112
114
 
113
- ap = ::Logging::Appenders::RollingFile.new('test',
115
+ ap = ::Logging::Appenders::RollingFile.new(NAME,
114
116
  :filename => @fn, :max_size => 100)
115
117
 
116
118
  ap << 'X' * 100; ap.flush
@@ -131,7 +133,15 @@ module TestAppenders
131
133
  assert_equal 3, Dir.glob(@glob).length
132
134
  assert_equal 0, File.size(@fn)
133
135
 
134
- ap.close
136
+ cleanup
137
+ end
138
+
139
+ private
140
+ def cleanup
141
+ unless ::Logging::Appender[NAME].nil?
142
+ ::Logging::Appender[NAME].close false
143
+ ::Logging::Appender[NAME] = nil
144
+ end
135
145
  end
136
146
 
137
147
  end # class TestRollingFile
@@ -1,4 +1,4 @@
1
- # $Id: test_basic.rb 15 2007-01-15 19:03:45Z tim_pease $
1
+ # $Id: test_basic.rb 25 2007-01-30 20:19:12Z tim_pease $
2
2
 
3
3
  require 'test/setup.rb'
4
4
 
@@ -17,24 +17,21 @@ module TestLayouts
17
17
 
18
18
  def test_format
19
19
  event = ::Logging::LogEvent.new( 'ArrayLogger', @levels['info'],
20
- ['log message'], false)
20
+ 'log message', false)
21
21
  assert_equal " INFO ArrayLogger : log message\n", @layout.format(event)
22
22
 
23
- event.data = [[1, 2, 3, 4]]
23
+ event.data = [1, 2, 3, 4]
24
24
  assert_equal " INFO ArrayLogger : <Array> 1234\n", @layout.format(event)
25
25
 
26
26
  event.level = @levels['debug']
27
- event.data = [[1, 2, 3, 4], 'and some message']
28
- log = "DEBUG ArrayLogger : <Array> 1234\n"
29
- log << "DEBUG ArrayLogger : and some message\n"
27
+ event.data = 'and another message'
28
+ log = "DEBUG ArrayLogger : and another message\n"
30
29
  assert_equal log, @layout.format(event)
31
30
 
32
31
  event.logger = 'Test'
33
32
  event.level = @levels['fatal']
34
- event.data = [[1, 2, 3, 4], 'and some message', Exception.new]
35
- log = "FATAL Test : <Array> 1234\n"
36
- log << "FATAL Test : and some message\n"
37
- log << "FATAL Test : <Exception> Exception\n"
33
+ event.data = Exception.new
34
+ log = "FATAL Test : <Exception> Exception\n"
38
35
  assert_equal log, @layout.format(event)
39
36
  end
40
37
 
@@ -1,4 +1,4 @@
1
- # $Id: test_pattern.rb 17 2007-01-20 18:47:43Z tim_pease $
1
+ # $Id: test_pattern.rb 25 2007-01-30 20:19:12Z tim_pease $
2
2
 
3
3
  require 'test/setup.rb'
4
4
 
@@ -60,27 +60,24 @@ module TestLayouts
60
60
  fmt = '\[' + @date_fmt + '\] %s -- %s : %s\n'
61
61
 
62
62
  event = ::Logging::LogEvent.new('ArrayLogger', @levels['info'],
63
- ['log message'], false)
63
+ 'log message', false)
64
64
  rgxp = Regexp.new(sprintf(fmt, 'INFO ', 'ArrayLogger', 'log message'))
65
65
  assert_match rgxp, @layout.format(event)
66
66
 
67
- event.data = [[1, 2, 3, 4]]
67
+ event.data = [1, 2, 3, 4]
68
68
  rgxp = Regexp.new(sprintf(fmt, 'INFO ', 'ArrayLogger', '<Array> 1234'))
69
69
  assert_match rgxp, @layout.format(event)
70
70
 
71
71
  event.level = @levels['debug']
72
- event.data = [[1, 2, 3, 4], 'and some message']
72
+ event.data = 'and another message'
73
73
  rgxp = Regexp.new(
74
- sprintf(fmt, 'DEBUG', 'ArrayLogger', '<Array> 1234') +
75
- sprintf(fmt, 'DEBUG', 'ArrayLogger', 'and some message'))
74
+ sprintf(fmt, 'DEBUG', 'ArrayLogger', 'and another message'))
76
75
  assert_match rgxp, @layout.format(event)
77
76
 
78
77
  event.logger = 'Test'
79
78
  event.level = @levels['fatal']
80
- event.data = [[1, 2, 3, 4], 'and some message', Exception.new]
79
+ event.data = Exception.new
81
80
  rgxp = Regexp.new(
82
- sprintf(fmt, 'FATAL', 'Test', '<Array> 1234') +
83
- sprintf(fmt, 'FATAL', 'Test', 'and some message') +
84
81
  sprintf(fmt, 'FATAL', 'Test', '<Exception> Exception'))
85
82
  assert_match rgxp, @layout.format(event)
86
83
  end
@@ -105,7 +102,7 @@ module TestLayouts
105
102
 
106
103
  def test_pattern_all
107
104
  event = ::Logging::LogEvent.new('TestLogger', @levels['info'],
108
- ['log message'], false)
105
+ 'log message', false)
109
106
  event.instance_variable_set :@file, 'test_file.rb'
110
107
  event.instance_variable_set :@line, '123'
111
108
  event.instance_variable_set :@method, 'method_name'
@@ -161,7 +158,7 @@ module TestLayouts
161
158
  @layout.pattern = '%7.7m'
162
159
  assert_equal 'log mes', @layout.format(event)
163
160
 
164
- event.data = ['tim']
161
+ event.data = 'tim'
165
162
  assert_equal ' tim', @layout.format(event)
166
163
 
167
164
  @layout.pattern = '%-7.7m'
@@ -1,4 +1,4 @@
1
- # $Id: test_appender.rb 15 2007-01-15 19:03:45Z tim_pease $
1
+ # $Id: test_appender.rb 26 2007-01-31 23:19:40Z tim_pease $
2
2
 
3
3
  require 'test/setup.rb'
4
4
 
@@ -13,7 +13,7 @@ module TestLogging
13
13
  ::Logging.define_levels %w(debug info warn error fatal)
14
14
  @levels = ::Logging::LEVELS
15
15
  @event = ::Logging::LogEvent.new('logger', @levels['debug'],
16
- ['message'], false)
16
+ 'message', false)
17
17
  @appender = ::Logging::Appender.new 'test_appender'
18
18
  end
19
19
 
@@ -37,6 +37,20 @@ module TestLogging
37
37
  assert_raise(RuntimeError) {@appender.append @event}
38
38
  end
39
39
 
40
+ def test_class_stderr
41
+ stderr = ::Logging::Appender.stderr
42
+ assert_instance_of ::Logging::Appenders::Stderr, stderr
43
+ assert_equal 'stderr', stderr.name
44
+ assert_same stderr, ::Logging::Appender.stderr
45
+ end
46
+
47
+ def test_class_stdout
48
+ stdout = ::Logging::Appender.stdout
49
+ assert_instance_of ::Logging::Appenders::Stdout, stdout
50
+ assert_equal 'stdout', stdout.name
51
+ assert_same stdout, ::Logging::Appender.stdout
52
+ end
53
+
40
54
  def test_close
41
55
  assert_equal false, @appender.closed?
42
56
 
@@ -1,4 +1,4 @@
1
- # $Id: test_log_event.rb 22 2007-01-29 16:20:54Z tim_pease $
1
+ # $Id: test_log_event.rb 25 2007-01-30 20:19:12Z tim_pease $
2
2
 
3
3
  require 'test/setup.rb'
4
4
 
@@ -14,17 +14,17 @@ module TestLogging
14
14
  @logger = ::Logging::Logger['TestLogger']
15
15
  @logger.add @appender
16
16
 
17
- @logger.info 'message 1', %w(a b c)
17
+ @logger.info 'message 1'
18
18
  @event = @appender.event
19
19
  end
20
20
 
21
21
  def test_data
22
- assert_equal ['message 1', %w(a b c)], @event.data
22
+ assert_equal 'message 1', @event.data
23
23
  end
24
24
 
25
25
  def test_data_eq
26
- @event.data = ['message 2']
27
- assert_equal ['message 2'], @event.data
26
+ @event.data = 'message 2'
27
+ assert_equal 'message 2', @event.data
28
28
  end
29
29
 
30
30
  def test_file
@@ -1,4 +1,4 @@
1
- # $Id: test_logger.rb 22 2007-01-29 16:20:54Z tim_pease $
1
+ # $Id: test_logger.rb 25 2007-01-30 20:19:12Z tim_pease $
2
2
 
3
3
  require 'test/setup.rb'
4
4
  require 'stringio'
@@ -286,8 +286,7 @@ module TestLogging
286
286
  assert_nil a1.readline
287
287
  assert_nil a2.readline
288
288
 
289
- log.warn 'this is a warning', [1,2,3,4]
290
- assert_equal " WARN A Logger : this is a warning\n", a1.readline
289
+ log.warn [1,2,3,4]
291
290
  assert_equal " WARN A Logger : <Array> 1234\n", a1.readline
292
291
  assert_nil a1.readline
293
292
  assert_nil a2.readline
metadata CHANGED
@@ -1,10 +1,10 @@
1
1
  --- !ruby/object:Gem::Specification
2
- rubygems_version: 0.9.0
2
+ rubygems_version: 0.9.1
3
3
  specification_version: 1
4
4
  name: logging
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.2.0
7
- date: 2007-01-29 00:00:00 -07:00
6
+ version: 0.3.0
7
+ date: 2007-02-01 00:00:00 -07:00
8
8
  summary: A flexible and extendable logging library for Ruby.
9
9
  require_paths:
10
10
  - lib