Make assert_enqueued_with and assert_performed_with returns the matched job #21010
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.
Sometimes job properties can't be asserted with pure equality. It might be because part of it is time sensitive and you need an
assert_delta
equivalent, or it might contain part of randomness.Or it might even be that you only want to assert one of the passed arguments.
This PR makes
assert_enqueued_with
andassert_performed_with
returns the matched job if any.Example:
I know an assertion method returning a meaningful value might seems weird, but there is precedent for this. For example if you want to assert an exception message, the way do to with minitest is:
@rafaelfranca thoughts?
cc @etiennebarrie