Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BaseInjector ¶
type BaseInjector struct {
// contains filtered or unexported fields
}
BaseInjector holds instances registered with the injector.
func (*BaseInjector) Register ¶
func (i *BaseInjector) Register(name string, instance interface{})
Register registers an instance with the injector.
func (*BaseInjector) Resolve ¶
func (i *BaseInjector) Resolve(name string) interface{}
Resolve resolves an instance from the injector.
func (*BaseInjector) ResolveAll ¶
func (i *BaseInjector) ResolveAll(targetType interface{}) ([]interface{}, error)
ResolveAll resolves all instances that match the given interface.
type Injector ¶
type Injector interface { Register(name string, instance interface{}) Resolve(name string) interface{} ResolveAll(targetType interface{}) ([]interface{}, error) }
Injector defines the methods for the injector.
type MockInjector ¶
type MockInjector struct { *BaseInjector // contains filtered or unexported fields }
MockInjector extends the RealInjector with additional testing functionality
func NewMockInjector ¶
func NewMockInjector() *MockInjector
NewMockInjector creates a new mock DI injector
func (*MockInjector) Resolve ¶
func (m *MockInjector) Resolve(name string) interface{}
Resolve overrides the RealInjector's Resolve method to add error simulation
func (*MockInjector) ResolveAll ¶
func (m *MockInjector) ResolveAll(targetType interface{}) ([]interface{}, error)
ResolveAll overrides the RealInjector's ResolveAll method to add error simulation
func (*MockInjector) SetResolveAllError ¶
func (m *MockInjector) SetResolveAllError(targetType interface{}, err error)
SetResolveAllError sets a specific error to be returned when resolving all instances of a specific type