Reliable way to check a path with Capybara #2696
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I just saw a random failure at
./spec/features/products_index_spec.rb:22
. It's a JS-enabled example with an expectation oncurrent_path
. This is one of those cases where the previous action (in this case clicking on a link) does not necessarily happen immediately, requiring a slight wait, and therefore failing randomly.I have changed all instances of this type of expectation to use
have_current_path
, which is provided by Capybara and applies its waiting behaviour where appropriate.Note that not all cases actually need it, as this is only a problem in JS-enabled examples, but it's good to be consistent so I changed all.