package mocks import ( "fmt" "github.com/vishvananda/netlink" ) type MockNetLink struct { Devices map[string]string } func (n *MockNetLink) GetFromHardwareAddr(hardwareAddr string) (netlink.Link, error) { val, ok := n.Devices[hardwareAddr] if !ok { return netlink.NewLinkBond(netlink.LinkAttrs{}), fmt.Errorf("no device with provided MAC address was found") } return netlink.NewLinkBond(netlink.LinkAttrs{Name: val, HardwareAddr: []byte(hardwareAddr)}), nil } func (n *MockNetLink) GetAllNetworkDeviceLinks() ([]netlink.Link, error) { return []netlink.Link{}, nil } func (n *MockNetLink) GetByName(_ string) (netlink.Link, error) { return netlink.NewLinkBond(netlink.LinkAttrs{}), nil } func (n *MockNetLink) Ensure(_ netlink.Link) (netlink.Link, error) { return netlink.NewLinkBond(netlink.LinkAttrs{}), nil } func (n *MockNetLink) Delete(_ string) error { return nil } func (n *MockNetLink) NewIfb(_ string, _ int) netlink.Link { return netlink.NewLinkBond(netlink.LinkAttrs{}) }