// Code generated by MockGen. DO NOT EDIT.
// Source: network.go

// Package mocks is a generated GoMock package.
package mocks

import (
	net "net"
	reflect "reflect"
	time "time"

	gomock "github.com/golang/mock/gomock"
	netlink "github.com/vishvananda/netlink"
)

// MockNetworkAPIs is a mock of NetworkAPIs interface.
type MockNetworkAPIs struct {
	ctrl     *gomock.Controller
	recorder *MockNetworkAPIsMockRecorder
}

// MockNetworkAPIsMockRecorder is the mock recorder for MockNetworkAPIs.
type MockNetworkAPIsMockRecorder struct {
	mock *MockNetworkAPIs
}

// NewMockNetworkAPIs creates a new mock instance.
func NewMockNetworkAPIs(ctrl *gomock.Controller) *MockNetworkAPIs {
	mock := &MockNetworkAPIs{ctrl: ctrl}
	mock.recorder = &MockNetworkAPIsMockRecorder{mock}
	return mock
}

// EXPECT returns an object that allows the caller to indicate expected use.
func (m *MockNetworkAPIs) EXPECT() *MockNetworkAPIsMockRecorder {
	return m.recorder
}

// CleanUpStaleAWSChains mocks base method.
func (m *MockNetworkAPIs) CleanUpStaleAWSChains(v4Enabled, v6Enabled bool) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CleanUpStaleAWSChains", v4Enabled, v6Enabled)
	ret0, _ := ret[0].(error)
	return ret0
}

// CleanUpStaleAWSChains indicates an expected call of CleanUpStaleAWSChains.
func (mr *MockNetworkAPIsMockRecorder) CleanUpStaleAWSChains(v4Enabled, v6Enabled interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CleanUpStaleAWSChains", reflect.TypeOf((*MockNetworkAPIs)(nil).CleanUpStaleAWSChains), v4Enabled, v6Enabled)
}

// DeleteRulesBySrc mocks base method.
func (m *MockNetworkAPIs) DeleteRulesBySrc(eniIP string, v6enabled bool) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteRulesBySrc", eniIP, v6enabled)
	ret0, _ := ret[0].(error)
	return ret0
}

// DeleteRulesBySrc indicates an expected call of DeleteRulesBySrc.
func (mr *MockNetworkAPIsMockRecorder) DeleteRulesBySrc(eniIP, v6enabled interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteRulesBySrc", reflect.TypeOf((*MockNetworkAPIs)(nil).DeleteRulesBySrc), eniIP, v6enabled)
}

// GetExcludeSNATCIDRs mocks base method.
func (m *MockNetworkAPIs) GetExcludeSNATCIDRs() []string {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetExcludeSNATCIDRs")
	ret0, _ := ret[0].([]string)
	return ret0
}

// GetExcludeSNATCIDRs indicates an expected call of GetExcludeSNATCIDRs.
func (mr *MockNetworkAPIsMockRecorder) GetExcludeSNATCIDRs() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetExcludeSNATCIDRs", reflect.TypeOf((*MockNetworkAPIs)(nil).GetExcludeSNATCIDRs))
}

// GetExternalServiceCIDRs mocks base method.
func (m *MockNetworkAPIs) GetExternalServiceCIDRs() []string {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetExternalServiceCIDRs")
	ret0, _ := ret[0].([]string)
	return ret0
}

// GetExternalServiceCIDRs indicates an expected call of GetExternalServiceCIDRs.
func (mr *MockNetworkAPIsMockRecorder) GetExternalServiceCIDRs() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetExternalServiceCIDRs", reflect.TypeOf((*MockNetworkAPIs)(nil).GetExternalServiceCIDRs))
}

// GetLinkByMac mocks base method.
func (m *MockNetworkAPIs) GetLinkByMac(mac string, retryInterval time.Duration) (netlink.Link, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetLinkByMac", mac, retryInterval)
	ret0, _ := ret[0].(netlink.Link)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetLinkByMac indicates an expected call of GetLinkByMac.
func (mr *MockNetworkAPIsMockRecorder) GetLinkByMac(mac, retryInterval interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetLinkByMac", reflect.TypeOf((*MockNetworkAPIs)(nil).GetLinkByMac), mac, retryInterval)
}

// GetRouteTableNumberForENI mocks base method.
func (m *MockNetworkAPIs) GetRouteTableNumberForENI(networkCard int, eniIP string, deviceNumber, maxENIsPerNetworkCard int, isV6 bool) (int, bool, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetRouteTableNumberForENI", networkCard, eniIP, deviceNumber, maxENIsPerNetworkCard, isV6)
	ret0, _ := ret[0].(int)
	ret1, _ := ret[1].(bool)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// GetRouteTableNumberForENI indicates an expected call of GetRouteTableNumberForENI.
func (mr *MockNetworkAPIsMockRecorder) GetRouteTableNumberForENI(networkCard, eniIP, deviceNumber, maxENIsPerNetworkCard, isV6 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetRouteTableNumberForENI", reflect.TypeOf((*MockNetworkAPIs)(nil).GetRouteTableNumberForENI), networkCard, eniIP, deviceNumber, maxENIsPerNetworkCard, isV6)
}

// GetRuleList mocks base method.
func (m *MockNetworkAPIs) GetRuleList(v6enabled bool) ([]netlink.Rule, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetRuleList", v6enabled)
	ret0, _ := ret[0].([]netlink.Rule)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetRuleList indicates an expected call of GetRuleList.
func (mr *MockNetworkAPIsMockRecorder) GetRuleList(v6enabled interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetRuleList", reflect.TypeOf((*MockNetworkAPIs)(nil).GetRuleList), v6enabled)
}

// GetRuleListBySrc mocks base method.
func (m *MockNetworkAPIs) GetRuleListBySrc(ruleList []netlink.Rule, src net.IPNet) ([]netlink.Rule, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetRuleListBySrc", ruleList, src)
	ret0, _ := ret[0].([]netlink.Rule)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetRuleListBySrc indicates an expected call of GetRuleListBySrc.
func (mr *MockNetworkAPIsMockRecorder) GetRuleListBySrc(ruleList, src interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetRuleListBySrc", reflect.TypeOf((*MockNetworkAPIs)(nil).GetRuleListBySrc), ruleList, src)
}

// SetupENINetwork mocks base method.
func (m *MockNetworkAPIs) SetupENINetwork(eniIP, eniMAC string, networkCard int, eniSubnetCIDR string, maxENIPerNIC int, isTrunkENI bool, routeTableID int, isRuleConfigured bool) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "SetupENINetwork", eniIP, eniMAC, networkCard, eniSubnetCIDR, maxENIPerNIC, isTrunkENI, routeTableID, isRuleConfigured)
	ret0, _ := ret[0].(error)
	return ret0
}

// SetupENINetwork indicates an expected call of SetupENINetwork.
func (mr *MockNetworkAPIsMockRecorder) SetupENINetwork(eniIP, eniMAC, networkCard, eniSubnetCIDR, maxENIPerNIC, isTrunkENI, routeTableID, isRuleConfigured interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetupENINetwork", reflect.TypeOf((*MockNetworkAPIs)(nil).SetupENINetwork), eniIP, eniMAC, networkCard, eniSubnetCIDR, maxENIPerNIC, isTrunkENI, routeTableID, isRuleConfigured)
}

// SetupHostNetwork mocks base method.
func (m *MockNetworkAPIs) SetupHostNetwork(vpcCIDRs []string, primaryMAC string, primaryAddr *net.IP, enablePodENI, v6Enabled bool) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "SetupHostNetwork", vpcCIDRs, primaryMAC, primaryAddr, enablePodENI, v6Enabled)
	ret0, _ := ret[0].(error)
	return ret0
}

// SetupHostNetwork indicates an expected call of SetupHostNetwork.
func (mr *MockNetworkAPIsMockRecorder) SetupHostNetwork(vpcCIDRs, primaryMAC, primaryAddr, enablePodENI, v6Enabled interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetupHostNetwork", reflect.TypeOf((*MockNetworkAPIs)(nil).SetupHostNetwork), vpcCIDRs, primaryMAC, primaryAddr, enablePodENI, v6Enabled)
}

// UpdateExternalServiceIpRules mocks base method.
func (m *MockNetworkAPIs) UpdateExternalServiceIpRules(ruleList []netlink.Rule, externalIPs []string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UpdateExternalServiceIpRules", ruleList, externalIPs)
	ret0, _ := ret[0].(error)
	return ret0
}

// UpdateExternalServiceIpRules indicates an expected call of UpdateExternalServiceIpRules.
func (mr *MockNetworkAPIsMockRecorder) UpdateExternalServiceIpRules(ruleList, externalIPs interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateExternalServiceIpRules", reflect.TypeOf((*MockNetworkAPIs)(nil).UpdateExternalServiceIpRules), ruleList, externalIPs)
}

// UpdateHostIptablesRules mocks base method.
func (m *MockNetworkAPIs) UpdateHostIptablesRules(vpcCIDRs []string, primaryMAC string, primaryAddr *net.IP, v6Enabled bool) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UpdateHostIptablesRules", vpcCIDRs, primaryMAC, primaryAddr, v6Enabled)
	ret0, _ := ret[0].(error)
	return ret0
}

// UpdateHostIptablesRules indicates an expected call of UpdateHostIptablesRules.
func (mr *MockNetworkAPIsMockRecorder) UpdateHostIptablesRules(vpcCIDRs, primaryMAC, primaryAddr, v6Enabled interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateHostIptablesRules", reflect.TypeOf((*MockNetworkAPIs)(nil).UpdateHostIptablesRules), vpcCIDRs, primaryMAC, primaryAddr, v6Enabled)
}

// UpdateRuleListBySrc mocks base method.
func (m *MockNetworkAPIs) UpdateRuleListBySrc(ruleList []netlink.Rule, src net.IPNet) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UpdateRuleListBySrc", ruleList, src)
	ret0, _ := ret[0].(error)
	return ret0
}

// UpdateRuleListBySrc indicates an expected call of UpdateRuleListBySrc.
func (mr *MockNetworkAPIsMockRecorder) UpdateRuleListBySrc(ruleList, src interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateRuleListBySrc", reflect.TypeOf((*MockNetworkAPIs)(nil).UpdateRuleListBySrc), ruleList, src)
}

// UseExternalSNAT mocks base method.
func (m *MockNetworkAPIs) UseExternalSNAT() bool {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UseExternalSNAT")
	ret0, _ := ret[0].(bool)
	return ret0
}

// UseExternalSNAT indicates an expected call of UseExternalSNAT.
func (mr *MockNetworkAPIsMockRecorder) UseExternalSNAT() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UseExternalSNAT", reflect.TypeOf((*MockNetworkAPIs)(nil).UseExternalSNAT))
}
