Update k8s client and the dependencies ACI client change for Mocking Add ACI Provider Mock Tests Add the Windows development environment Add UT for Default Resource Requests Enable the make test in Docker file Update the vendors
45 lines
1.6 KiB
Go
45 lines
1.6 KiB
Go
// Package mock provides a system by which it is possible to mock your objects
|
|
// and verify calls are happening as expected.
|
|
//
|
|
// Example Usage
|
|
//
|
|
// The mock package provides an object, Mock, that tracks activity on another object. It is usually
|
|
// embedded into a test object as shown below:
|
|
//
|
|
// type MyTestObject struct {
|
|
// // add a Mock object instance
|
|
// mock.Mock
|
|
//
|
|
// // other fields go here as normal
|
|
// }
|
|
//
|
|
// When implementing the methods of an interface, you wire your functions up
|
|
// to call the Mock.Called(args...) method, and return the appropriate values.
|
|
//
|
|
// For example, to mock a method that saves the name and age of a person and returns
|
|
// the year of their birth or an error, you might write this:
|
|
//
|
|
// func (o *MyTestObject) SavePersonDetails(firstname, lastname string, age int) (int, error) {
|
|
// args := o.Called(firstname, lastname, age)
|
|
// return args.Int(0), args.Error(1)
|
|
// }
|
|
//
|
|
// The Int, Error and Bool methods are examples of strongly typed getters that take the argument
|
|
// index position. Given this argument list:
|
|
//
|
|
// (12, true, "Something")
|
|
//
|
|
// You could read them out strongly typed like this:
|
|
//
|
|
// args.Int(0)
|
|
// args.Bool(1)
|
|
// args.String(2)
|
|
//
|
|
// For objects of your own type, use the generic Arguments.Get(index) method and make a type assertion:
|
|
//
|
|
// return args.Get(0).(*MyObject), args.Get(1).(*AnotherObjectOfMine)
|
|
//
|
|
// This may cause a panic if the object you are getting is nil (the type assertion will fail), in those
|
|
// cases you should check for nil first.
|
|
package mock
|