From ff4c98f1251574e32a950f5793fba3afbc0838a7 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Wed, 18 Oct 2023 12:19:52 +0900 Subject: [PATCH] Fix total count when filters given --- tool/lib/test/unit.rb | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/tool/lib/test/unit.rb b/tool/lib/test/unit.rb index 539ba1073c..ecb7edd29f 100644 --- a/tool/lib/test/unit.rb +++ b/tool/lib/test/unit.rb @@ -964,11 +964,14 @@ module Test @output = Output.new(self) unless @options[:testing] filter = options[:filter] type = "#{type}_methods" - total = if filter - suites.inject(0) {|n, suite| n + suite.send(type).grep(filter).size} - else - suites.inject(0) {|n, suite| n + suite.send(type).size} - end + total = suites.sum {|suite| + methods = suite.send(type) + if filter + methods.count {|method| filter === "#{suite}##{method}"} + else + methods.size + end + } @test_count = 0 @total_tests = total.to_s(10) end