feat(mocks): added support for reusing mocks any times #154
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.
Summary
The PR adds support for reusing mocks any number of times by introducing a new
AnyTimes
method. This method allows a mock to be invoked multiple times without failing the test if it is not used the expected number of times.Motivation
This feature is very useful in scenarios where the exact number of invocations is not known or not important.
Changes
apitest.go
:assertMocks
method to check foranyTimesSet
before failing the test if the mock was not invoked the expected number of times.Mocks
method to handle mocks withanyTimesSet
.apitest_test.go
:TestApiTest_MatchesAnyTimes
to verify the functionality of theAnyTimes
method.mocks.go
:anyTimesSet
to theMock
struct.matches
function to skip used mocks ifanyTimesSet
is true.AnyTimes
to theMockResponse
struct to set theanyTimesSet
field.README.md
:AnyTimes
method.