// Code generated by mockery v1.0.0. DO NOT EDIT.

package mocks

import (
	net "net"

	mock "github.com/stretchr/testify/mock"

	netlink "github.com/vishvananda/netlink"

	ns "github.com/containernetworking/plugins/pkg/ns"
)

// CNIPluginLibOps is an autogenerated mock type for the CNIPluginLibOps type
type CNIPluginLibOps struct {
	mock.Mock
}

// AddRoute provides a mock function with given fields: ipn, gw, dev
func (_m *CNIPluginLibOps) AddRoute(ipn *net.IPNet, gw net.IP, dev netlink.Link) error {
	ret := _m.Called(ipn, gw, dev)

	var r0 error
	if rf, ok := ret.Get(0).(func(*net.IPNet, net.IP, netlink.Link) error); ok {
		r0 = rf(ipn, gw, dev)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// SetupVeth provides a mock function with given fields: contVethName, mtu, hostNS
func (_m *CNIPluginLibOps) SetupVeth(contVethName string, mtu int, hostNS ns.NetNS) (net.Interface, net.Interface, error) {
	ret := _m.Called(contVethName, mtu, hostNS)

	var r0 net.Interface
	if rf, ok := ret.Get(0).(func(string, int, ns.NetNS) net.Interface); ok {
		r0 = rf(contVethName, mtu, hostNS)
	} else {
		r0 = ret.Get(0).(net.Interface)
	}

	var r1 net.Interface
	if rf, ok := ret.Get(1).(func(string, int, ns.NetNS) net.Interface); ok {
		r1 = rf(contVethName, mtu, hostNS)
	} else {
		r1 = ret.Get(1).(net.Interface)
	}

	var r2 error
	if rf, ok := ret.Get(2).(func(string, int, ns.NetNS) error); ok {
		r2 = rf(contVethName, mtu, hostNS)
	} else {
		r2 = ret.Error(2)
	}

	return r0, r1, r2
}
