mirror of https://github.com/rails/rails
Merge pull request #23456 from kaspth/line-filter-triggers-one-runnable
Fix line filters running tests from multiple runnables.
This commit is contained in:
commit
13b918d1e9
|
@ -26,7 +26,7 @@ module Rails
|
|||
private
|
||||
def derive_regexp(filter)
|
||||
# Regexp filtering copied from Minitest.
|
||||
filter =~ %r%/(.*)/% ? Regexp.new($1) : filter
|
||||
Regexp.new $1 if filter =~ %r%/(.*)/%
|
||||
end
|
||||
|
||||
def derive_line_filters(patterns)
|
||||
|
|
|
@ -363,7 +363,7 @@ module ApplicationTests
|
|||
end
|
||||
RUBY
|
||||
|
||||
run_test_command('test/models/account_test.rb:4:9 test/models/post_test:4:9').tap do |output|
|
||||
run_test_command('test/models/account_test.rb:4:9 test/models/post_test.rb:4:9').tap do |output|
|
||||
assert_match 'AccountTest:FirstFilter', output
|
||||
assert_match 'AccountTest:SecondFilter', output
|
||||
assert_match 'PostTest:FirstFilter', output
|
||||
|
@ -382,6 +382,30 @@ module ApplicationTests
|
|||
end
|
||||
end
|
||||
|
||||
def test_line_filters_trigger_only_one_runnable
|
||||
app_file 'test/models/post_test.rb', <<-RUBY
|
||||
require 'test_helper'
|
||||
|
||||
class PostTest < ActiveSupport::TestCase
|
||||
test 'truth' do
|
||||
assert true
|
||||
end
|
||||
end
|
||||
|
||||
class SecondPostTest < ActiveSupport::TestCase
|
||||
test 'truth' do
|
||||
assert false, 'ran second runnable'
|
||||
end
|
||||
end
|
||||
RUBY
|
||||
|
||||
# Pass seed guaranteeing failure.
|
||||
run_test_command('test/models/post_test.rb:4 --seed 30410').tap do |output|
|
||||
assert_no_match 'ran second runnable', output
|
||||
assert_match '1 runs, 1 assertions', output
|
||||
end
|
||||
end
|
||||
|
||||
def test_shows_filtered_backtrace_by_default
|
||||
create_backtrace_test
|
||||
|
||||
|
|
Loading…
Reference in New Issue