[前][次][番号順一覧][スレッド一覧]

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/

[前][次][番号順一覧][スレッド一覧]