Skip to content

Commit be257f9

Browse files
michaelnyuyfang-figma
authored andcommitted
add option to load globs if provided in minitest queue runner
1 parent 32639e4 commit be257f9

File tree

1 file changed

+20
-1
lines changed

1 file changed

+20
-1
lines changed

ruby/lib/minitest/queue/runner.rb

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -315,7 +315,7 @@ def report_grind_command
315315

316316
attr_reader :queue_config, :options, :command, :argv
317317
attr_writer :queue_url
318-
attr_accessor :queue, :grind_list, :grind_count, :load_paths, :verbose
318+
attr_accessor :queue, :grind_list, :grind_count, :load_paths, :verbose, :test_globs
319319

320320
def require_worker_id!
321321
if queue.distributed?
@@ -361,7 +361,19 @@ def set_load_path
361361
end
362362
end
363363

364+
def load_test_globs
365+
return unless test_globs
366+
367+
files_to_load = test_globs.reduce([]) do |files, pattern|
368+
files + Dir.glob(pattern)
369+
end
370+
files_to_load.sort.each do |f|
371+
require File.expand_path(f)
372+
end
373+
end
374+
364375
def load_tests
376+
load_test_globs
365377
argv.sort.each do |f|
366378
require File.expand_path(f)
367379
end
@@ -619,6 +631,13 @@ def parser
619631
queue_config.max_missed_heartbeat_seconds = time || 30
620632
end
621633

634+
help = <<~EOS
635+
Defines a list of globs to load
636+
EOS
637+
opts.on('--load-globs TEST_GLOBS', Array, help) do |test_globs|
638+
self.test_globs = test_globs
639+
end
640+
622641

623642
opts.on("-v", "--verbose", "Verbose. Show progress processing files.") do
624643
self.verbose = true

0 commit comments

Comments
 (0)