Extend support for batch operation mocking / assertions #151
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.
Description
This PR extends the support for batch operation mocking and assertions in the
pgxmock
package. It addresses issue #149 by modifying theSendBatch
method, adding a new typeExpectedBatch
, and introducing a new methodExpectBatch
to thepgxmock
type. Additionally, theExpectationsWereMet
method is updated to check if all expected batch operations were met.Summary of Changes
SendBatch
method inpgxmock.go
to return mock batch results based on the queued expectations.ExpectedBatch
inpgxmock.go
to represent an expected batch operation, including the expected SQL statements and their arguments, as well as methods to set the expected results or errors.ExpectBatch
inpgxmock.go
to queue an expected batch operation. This method returns anExpectedBatch
instance that can be configured in tests.ExpectationsWereMet
method inpgxmock.go
to also check if all expected batch operations were met.pgxmock_test.go
to cover the newExpectBatch
method and the modifiedSendBatch
method. These tests cover various scenarios, including successful batch operations, batch operations that result in errors, and batch operations that do not meet the expectations.Fixes #149.
To checkout this PR branch, run the following command in your terminal:
To get Sweep to edit this pull request, leave a comment below or in the code. Leaving a comment in the code will only modify the file but commenting below can change the entire PR.