matryer
matryer
mocks are derived from the project at https://github.com/matryer/moq. These mocks create a struct that has a function field for each method, which you can declare in your test code.
Description¶
Go
// Code generated by mockery; DO NOT EDIT.
// github.com/vektra/mockery
package test
import (
"sync"
)
// Ensure, that MoqRequester does implement Requester.
// If this is not the case, regenerate this file with moq.
var _ Requester = &MoqRequester{}
// MoqRequester is a mock implementation of Requester.
//
// func TestSomethingThatUsesRequester(t *testing.T) {
//
// // make and configure a mocked Requester
// mockedRequester := &MoqRequester{
// GetFunc: func(path string) (string, error) {
// panic("mock out the Get method")
// },
// }
//
// // use mockedRequester in code that requires Requester
// // and then make assertions.
//
// }
type MoqRequester struct {
// GetFunc mocks the Get method.
GetFunc func(path string) (string, error)
// calls tracks calls to the methods.
calls struct {
// Get holds details about calls to the Get method.
Get []struct {
// Path is the path argument value.
Path string
}
}
lockGet sync.RWMutex
}
// Get calls GetFunc.
func (mock *MoqRequester) Get(path string) (string, error) {
// ...
}
// GetCalls gets all the calls that were made to Get.
// Check the length with:
//
// len(mockedRequester.GetCalls())
func (mock *MoqRequester) GetCalls() []struct {
Path string
} {
// ...
}
matryer-style mocks are far simpler, and probably more intuitive, than testify-style mocks. All that's needed is to define the function that will be run when the mock's method is called.
template-data
¶
moq
accepts the following template-data:
keys:
key | type | description |
---|---|---|
boilerplate-file |
string |
Specify a path to a file that contains comments you want displayed at the top of all generated mock files. This is commonly used to display license headers at the top of your source code. |
mock-build-tags |
string |
Set the build tags of the generated mocks. Read more about the format. |
skip-ensure |
bool |
Suppress mock implementation check, avoid import cycle if mocks generated outside of the tested package. |
stub-impl |
bool |
Return zero values when no mock implementation is provided, do not panic. |
with-resets |
bool |
Generates methods that allow resetting calls made to the mocks. |
Schema¶
JSON
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "vektra/mockery matryer mock",
"type": "object",
"additionalProperties": false,
"properties": {
"boilerplate-file": {
"type": "string"
},
"mock-build-tags": {
"type": "string"
},
"skip-ensure": {
"type": "boolean"
},
"stub-impl": {
"type": "boolean"
},
"with-resets": {
"type": "boolean"
}
},
"required": []
}