-
-
Notifications
You must be signed in to change notification settings - Fork 765
Omit redandunt execution with rspec --bisect #3100
Omit redandunt execution with rspec --bisect #3100
Conversation
ef995c7
to
e2e1a1f
Compare
Since bisect is a command that finds minimum repro that fails depending on the order, examples after the last failure example doesn't need to be executed.
I'm sorry, I made a PR without realizing that the cucumber tests failed. I'll fix it 🙏 |
e2e1a1f
to
9660048
Compare
When I run `rspec --seed 1234` | ||
Then the output should contain "10 examples, 1 failure" | ||
When I run `rspec --seed 1234 --bisect` | ||
When I run `rspec --seed 9876` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I changed seed number because when seed is 1234 calculator_1_spec is executed before calculator_20_spec
@@ -28,8 +28,8 @@ Feature: Bisect | |||
end | |||
end | |||
""" | |||
And files "spec/calculator_2_spec.rb" through "spec/calculator_9_spec.rb" with an unrelated passing spec in each file | |||
And a file named "spec/calculator_10_spec.rb" with: | |||
And files "spec/calculator_2_spec.rb" through "spec/calculator_19_spec.rb" with an unrelated passing spec in each file |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I increased the number of files to 20, because with 10 the bisect would complete before abort with Ctr-C.
I think this behaviour should be at best opt-in because even if we have encountered all the original failures, there might be more failures that occur that would technically make a run a different set of results and thus be an unstable bisect... |
Thank you, I'll try it. |
I'm closing this because its still a draft, and we're migrating to the monorepo, if someone manages to pick this up please reopen it there. |
Since bisect is a command that finds minimum repro that fails depending on the order, examples after the last failure example doesn't need to be executed.