diff --git a/CHANGELOG.md b/CHANGELOG.md index 0594cbbc..5ba412c1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ ### Added +- Support for RSpec turnip feature files. + ## 4.2.2 - 2023-09-05 ### Breaking Changes diff --git a/lib/parallel_tests/rspec/runner.rb b/lib/parallel_tests/rspec/runner.rb index 617d5f42..016751f2 100644 --- a/lib/parallel_tests/rspec/runner.rb +++ b/lib/parallel_tests/rspec/runner.rb @@ -33,8 +33,10 @@ def test_file_name "spec" end + # used to find all _spec.rb files + # supports also feature files used by rspec turnip extension def test_suffix - /_spec\.rb$/ + /(_spec\.rb|\.feature)$/ end def line_is_result?(line) diff --git a/spec/parallel_tests/rspec/runner_spec.rb b/spec/parallel_tests/rspec/runner_spec.rb index bec9f695..540a4e43 100644 --- a/spec/parallel_tests/rspec/runner_spec.rb +++ b/spec/parallel_tests/rspec/runner_spec.rb @@ -119,6 +119,12 @@ def call(*args) ParallelTests::RSpec::Runner.send(:find_tests, *args) end + it "finds turnip feature files" do + with_files(['a/test.feature']) do |root| + expect(call(["#{root}/"])).to eq(["#{root}/a/test.feature"]) + end + end + it "doesn't find backup files with the same name as test files" do with_files(['a/x_spec.rb', 'a/x_spec.rb.bak']) do |root| expect(call(["#{root}/"])).to eq(["#{root}/a/x_spec.rb"])