rspec / rspec-core

RSpec runner and formatters
http://rspec.info
MIT License
1.21k stars 756 forks source link

Use stronger path-matching for simplecov filters #3084

Closed nevinera closed 3 weeks ago

nevinera commented 3 weeks ago

(Resolves #3083)

The simplecov filter for "spec/" was actually matching basically everything in the gem (and discarding it), because it's all in lib/rspec/, and simplecov is doing a string-based infix match. I'm not certain when that changed, but my guess is 2018, in this PR.

Switching from strings to regex-based rules suffices, but to keep the regexes from matching other parts of the path (like if a file were later named lib/rspec/core/grouped_spec/foo.rb, or if Benjamin Spec had his files at /Users/spec/src/rspec-core/) we also need to specify the SimpleCov.root; then the regexes get applied to the project-relative paths instead of the full paths, so we can match against the path-beginnings.

I also adjusted the minimum_coverage down to 99, since we're currently at 99.26, and not 100%. I'll get on that shortly.

pirj commented 3 weeks ago

Thank you!