Allow createPartialMock()
to not mock any methods.
#2270
Closed
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.
Right now,
createPartialMock($class, [])
does the same thing ascreateMock($class)
; it mocks all methods. This is somewhat counter-intuitive and caused by the API of the mock builder, where callingsetMethods(null)
has the expected effect.As a first idea, I allowed passing
null
as a parameter value for consistency. But there is no need forcreatePartialMock
to return a complete one -createMock
already does that.[]
also expresses the meaning better thannull
(“exactly these methods”). As a bonus, the method signature doesn’t change.Test included.