ruby-changes:70292
From: Baron <ko1@a...>
Date: Sat, 18 Dec 2021 09:31:05 +0900 (JST)
Subject: [ruby-changes:70292] 4375546810 (master): [ruby/logger] Test cases
https://git.ruby-lang.org/ruby.git/commit/?id=4375546810 From 43755468102e3d62830d076d1fae0d6beba2b25b Mon Sep 17 00:00:00 2001 From: Baron Bloomer <baronbloomer@g...> Date: Tue, 17 Aug 2021 11:57:45 +0100 Subject: [ruby/logger] Test cases https://github.com/ruby/logger/commit/40adb645e2 --- test/logger/test_formatter.rb | 35 +++++++++++++++++++++++++++++++++++ test/logger/test_logger.rb | 6 +++--- 2 files changed, 38 insertions(+), 3 deletions(-) create mode 100644 test/logger/test_formatter.rb diff --git a/test/logger/test_formatter.rb b/test/logger/test_formatter.rb new file mode 100644 index 00000000000..03a66ca796b --- /dev/null +++ b/test/logger/test_formatter.rb @@ -0,0 +1,35 @@ https://github.com/ruby/ruby/blob/trunk/test/logger/test_formatter.rb#L1 +# coding: US-ASCII +# frozen_string_literal: false +require_relative 'helper' + +class TestFormatter < Test::Unit::TestCase + def test_call + severity = 'INFO' + time = Time.now + progname = 'ruby' + msg = 'This is a test' + formatter = Logger::Formatter.new + + result = formatter.call(severity, time, progname, msg) + time_matcher = /\d{4}\-\d{2}\-\d{2}T\d{2}:\d{2}:\d{2}\.\d{6}/ + matcher = /#{severity[0..0]}, \[#{time_matcher} #\d+\] #{severity} -- #{progname}: #{msg}\n/ + + assert_match(matcher, result) + end + + class CustomFormatter < Logger::Formatter + def call(time) + format_datetime(time) + end + end + + def test_format_datetime + time = Time.now + formatter = CustomFormatter.new + + result = formatter.call(time) + matcher = /^\d{4}\-\d{2}\-\d{2}T\d{2}:\d{2}:\d{2}\.\d{6}$/ + + assert_match(matcher, result) + end +end diff --git a/test/logger/test_logger.rb b/test/logger/test_logger.rb index 3281d17c7bb..37d0f5862ab 100644 --- a/test/logger/test_logger.rb +++ b/test/logger/test_logger.rb @@ -13,7 +13,7 @@ class TestLogger < Test::Unit::TestCase https://github.com/ruby/ruby/blob/trunk/test/logger/test_logger.rb#L13 class Log attr_reader :label, :datetime, :pid, :severity, :progname, :msg def initialize(line) - /\A(\w+), \[([^#]*)#(\d+)\]\s+(\w+) -- (\w*): ([\x0-\xff]*)/ =~ line + /\A(\w+), \[([^#]*) #(\d+)\]\s+(\w+) -- (\w*): ([\x0-\xff]*)/ =~ line @label, @datetime, @pid, @severity, @progname, @msg = $1, $2, $3, $4, $5, $6 end end @@ -124,7 +124,7 @@ class TestLogger < Test::Unit::TestCase https://github.com/ruby/ruby/blob/trunk/test/logger/test_logger.rb#L124 dummy = STDERR logger = Logger.new(dummy) log = log_add(logger, INFO, "foo") - assert_match(/^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\s*\d+ $/, log.datetime) + assert_match(/^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\s*\d+$/, log.datetime) logger.datetime_format = "%d%b%Y@%H:%M:%S" log = log_add(logger, INFO, "foo") assert_match(/^\d\d\w\w\w\d\d\d\d@\d\d:\d\d:\d\d$/, log.datetime) @@ -203,7 +203,7 @@ class TestLogger < Test::Unit::TestCase https://github.com/ruby/ruby/blob/trunk/test/logger/test_logger.rb#L203 # default logger = Logger.new(STDERR) log = log_add(logger, INFO, "foo") - assert_match(/^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\s*\d+ $/, log.datetime) + assert_match(/^\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d.\s*\d+$/, log.datetime) # config logger = Logger.new(STDERR, datetime_format: "%d%b%Y@%H:%M:%S") log = log_add(logger, INFO, "foo") -- cgit v1.2.1 -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/