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

ruby-changes:67931

From: Nobuyoshi <ko1@a...>
Date: Sat, 11 Sep 2021 17:17:35 +0900 (JST)
Subject: [ruby-changes:67931] 46bde60df3 (master): Remove method filter hack for minitest

https://git.ruby-lang.org/ruby.git/commit/?id=46bde60df3

From 46bde60df31790d1618eabaf3dc5f36931c2acaf Mon Sep 17 00:00:00 2001
From: Nobuyoshi Nakada <nobu@r...>
Date: Sat, 11 Sep 2021 16:43:02 +0900
Subject: Remove method filter hack for minitest

---
 tool/lib/test/unit.rb | 20 ++++++--------------
 1 file changed, 6 insertions(+), 14 deletions(-)

diff --git a/tool/lib/test/unit.rb b/tool/lib/test/unit.rb
index a8c4a93..94867ac 100644
--- a/tool/lib/test/unit.rb
+++ b/tool/lib/test/unit.rb
@@ -172,13 +172,6 @@ module Test https://github.com/ruby/ruby/blob/trunk/tool/lib/test/unit.rb#L172
             negative = Regexp.union(*negative.map! {|s| Regexp.new(s[neg_pat, 1])})
             filter = /\A(?=.*#{filter})(?!.*#{negative})/
           end
-          if Regexp === filter
-            filter = filter.dup
-            # bypass conversion in minitest
-            def filter.=~(other)    # :nodoc:
-              super unless Regexp === other
-            end
-          end
           options[:filter] = filter
         end
         true
@@ -1371,22 +1364,21 @@ module Test https://github.com/ruby/ruby/blob/trunk/tool/lib/test/unit.rb#L1364
         header = "#{type}_suite_header"
         puts send(header, suite) if respond_to? header
 
-        filter = options[:filter] || '/./'
-        filter = Regexp.new $1 if filter =~ /\/(.*)\//
+        filter = options[:filter]
 
         all_test_methods = suite.send "#{type}_methods"
 
-        filtered_test_methods = all_test_methods.find_all { |m|
-          filter === m || filter === "#{suite}##{m}"
-        }
-
         leakchecker = LeakChecker.new
         if ENV["LEAK_CHECKER_TRACE_OBJECT_ALLOCATION"]
           require "objspace"
           trace = true
         end
 
-        assertions = filtered_test_methods.map { |method|
+        assertions = all_test_methods.filter_map { |method|
+          if filter
+            next unless filter === method || filter === "#{suite}##{method}"
+          end
+
           inst = suite.new method
           inst._assertions = 0
 
-- 
cgit v1.1


--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

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