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.
(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.