-
-
Notifications
You must be signed in to change notification settings - Fork 395
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
It would be nice to add .to receive(...).with_block
#1065
Comments
Hello @ioquatix This is probably not what you are asking but have you seen? https://github.com/rspec/rspec-expectations/blob/v3.7.0/features/custom_matchers/define_block_matcher.feature Also, it's funny because factory_bot have a matcher for block with the name you mentioned. Used like this: Bye |
@benoittgt I think @ioquatix is talking about expect(thing).to receive(:method) do |&block|
expect(block).not_to be_nil
end If we wanted to add more explicit support for this, I'd rather not add a new expect(thing).to receive(:method).with(a_block) Where @ioquatix does the approach I suggested above work for you? |
Thanks, @myronmarston for clarification. I agree with your proposal. |
Yep it would be fine. Does it work with arguments too? |
I'm not sure what you mean by "work with arguments". Can you provide an example of what you mean? |
|
it's actually not that important to my use case, just thought it might be useful in the general case. |
Hopefully, yes, we could make that work. Do you want to take a stab at adding it. Improving RSpec is largely a self-service operation unless one of the core team members wants to take this work on (which often doesn't happen; we all have lives and jobs!). |
Sure, that makes sense. If I have time, I will mention here I am starting work. Otherwise, this is free for anyone who is interested to implement it. If someone else picks it up, please mention it here so we don't duplicate effort :) |
@myronmarston I've tried taking a stab at this in kaiwren/1065-with-a-block - am able to get this working at the cucumber feature level, but I'm missing something on the sad path spec which I'm unable to get to pass (even though it works fine in the cuke). I'm unable to figure out why I'm not able to catch the exception; probably missing something really obvious... Would be grateful if I could get a quick review and some feedback. If my approach isn't flawed, will complete this and raise a PR. |
Maybe @ioquatix can provide a review too? |
It looks pretty good. |
I've expanded on @kaiwren's work over on rspec/rspec-mocks#1237, it's worth noting we already had the |
Did this ever get merged in? Looking at it 4 years later, and still think it would be useful. |
I don't think so! |
There is no easy way to verify a method would be called with a block.
It would be nice to have
The text was updated successfully, but these errors were encountered: