// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License"). You may
// not use this file except in compliance with the License. A copy of the
// License is located at
//
//     http://aws.amazon.com/apache2.0/
//
// or in the "license" file accompanying this file. This file is distributed
// on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
// express or implied. See the License for the specific language governing
// permissions and limitations under the License.

// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/aws/amazon-vpc-resource-controller-k8s/pkg/k8s/wrapper.go

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

import (
	reflect "reflect"

	v1alpha1 "github.com/aws/amazon-vpc-cni-k8s/pkg/apis/crd/v1alpha1"
	v1alpha10 "github.com/aws/amazon-vpc-resource-controller-k8s/apis/vpcresources/v1alpha1"
	gomock "github.com/golang/mock/gomock"
	v1 "k8s.io/api/apps/v1"
	v10 "k8s.io/api/core/v1"
	v11 "k8s.io/api/events/v1"
	runtime "k8s.io/apimachinery/pkg/runtime"
	types "k8s.io/apimachinery/pkg/types"
	client "sigs.k8s.io/controller-runtime/pkg/client"
)

// MockK8sWrapper is a mock of K8sWrapper interface.
type MockK8sWrapper struct {
	ctrl     *gomock.Controller
	recorder *MockK8sWrapperMockRecorder
}

// MockK8sWrapperMockRecorder is the mock recorder for MockK8sWrapper.
type MockK8sWrapperMockRecorder struct {
	mock *MockK8sWrapper
}

// NewMockK8sWrapper creates a new mock instance.
func NewMockK8sWrapper(ctrl *gomock.Controller) *MockK8sWrapper {
	mock := &MockK8sWrapper{ctrl: ctrl}
	mock.recorder = &MockK8sWrapperMockRecorder{mock}
	return mock
}

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

// AddLabelToManageNode mocks base method.
func (m *MockK8sWrapper) AddLabelToManageNode(node *v10.Node, labelKey, labelValue string) (bool, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "AddLabelToManageNode", node, labelKey, labelValue)
	ret0, _ := ret[0].(bool)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// AddLabelToManageNode indicates an expected call of AddLabelToManageNode.
func (mr *MockK8sWrapperMockRecorder) AddLabelToManageNode(node, labelKey, labelValue interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddLabelToManageNode", reflect.TypeOf((*MockK8sWrapper)(nil).AddLabelToManageNode), node, labelKey, labelValue)
}

// AdvertiseCapacityIfNotSet mocks base method.
func (m *MockK8sWrapper) AdvertiseCapacityIfNotSet(nodeName, resourceName string, capacity int) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "AdvertiseCapacityIfNotSet", nodeName, resourceName, capacity)
	ret0, _ := ret[0].(error)
	return ret0
}

// AdvertiseCapacityIfNotSet indicates an expected call of AdvertiseCapacityIfNotSet.
func (mr *MockK8sWrapperMockRecorder) AdvertiseCapacityIfNotSet(nodeName, resourceName, capacity interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AdvertiseCapacityIfNotSet", reflect.TypeOf((*MockK8sWrapper)(nil).AdvertiseCapacityIfNotSet), nodeName, resourceName, capacity)
}

// BroadcastEvent mocks base method.
func (m *MockK8sWrapper) BroadcastEvent(obj runtime.Object, reason, message, eventType string) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "BroadcastEvent", obj, reason, message, eventType)
}

// BroadcastEvent indicates an expected call of BroadcastEvent.
func (mr *MockK8sWrapperMockRecorder) BroadcastEvent(obj, reason, message, eventType interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "BroadcastEvent", reflect.TypeOf((*MockK8sWrapper)(nil).BroadcastEvent), obj, reason, message, eventType)
}

// CreateCNINode mocks base method.
func (m *MockK8sWrapper) CreateCNINode(node *v10.Node, clusterName, nodeID string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateCNINode", node, clusterName, nodeID)
	ret0, _ := ret[0].(error)
	return ret0
}

// CreateCNINode indicates an expected call of CreateCNINode.
func (mr *MockK8sWrapperMockRecorder) CreateCNINode(node, clusterName, nodeID interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateCNINode", reflect.TypeOf((*MockK8sWrapper)(nil).CreateCNINode), node, clusterName, nodeID)
}

// DeleteCNINode mocks base method.
func (m *MockK8sWrapper) DeleteCNINode(cniNode *v1alpha10.CNINode) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteCNINode", cniNode)
	ret0, _ := ret[0].(error)
	return ret0
}

// DeleteCNINode indicates an expected call of DeleteCNINode.
func (mr *MockK8sWrapperMockRecorder) DeleteCNINode(cniNode interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteCNINode", reflect.TypeOf((*MockK8sWrapper)(nil).DeleteCNINode), cniNode)
}

// GetCNINode mocks base method.
func (m *MockK8sWrapper) GetCNINode(namespacedName types.NamespacedName) (*v1alpha10.CNINode, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetCNINode", namespacedName)
	ret0, _ := ret[0].(*v1alpha10.CNINode)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetCNINode indicates an expected call of GetCNINode.
func (mr *MockK8sWrapperMockRecorder) GetCNINode(namespacedName interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetCNINode", reflect.TypeOf((*MockK8sWrapper)(nil).GetCNINode), namespacedName)
}

// GetConfigMap mocks base method.
func (m *MockK8sWrapper) GetConfigMap(configMapName, configMapNamespace string) (*v10.ConfigMap, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetConfigMap", configMapName, configMapNamespace)
	ret0, _ := ret[0].(*v10.ConfigMap)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetConfigMap indicates an expected call of GetConfigMap.
func (mr *MockK8sWrapperMockRecorder) GetConfigMap(configMapName, configMapNamespace interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetConfigMap", reflect.TypeOf((*MockK8sWrapper)(nil).GetConfigMap), configMapName, configMapNamespace)
}

// GetDaemonSet mocks base method.
func (m *MockK8sWrapper) GetDaemonSet(namespace, name string) (*v1.DaemonSet, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetDaemonSet", namespace, name)
	ret0, _ := ret[0].(*v1.DaemonSet)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetDaemonSet indicates an expected call of GetDaemonSet.
func (mr *MockK8sWrapperMockRecorder) GetDaemonSet(namespace, name interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetDaemonSet", reflect.TypeOf((*MockK8sWrapper)(nil).GetDaemonSet), namespace, name)
}

// GetDeployment mocks base method.
func (m *MockK8sWrapper) GetDeployment(namespace, name string) (*v1.Deployment, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetDeployment", namespace, name)
	ret0, _ := ret[0].(*v1.Deployment)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetDeployment indicates an expected call of GetDeployment.
func (mr *MockK8sWrapperMockRecorder) GetDeployment(namespace, name interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetDeployment", reflect.TypeOf((*MockK8sWrapper)(nil).GetDeployment), namespace, name)
}

// GetENIConfig mocks base method.
func (m *MockK8sWrapper) GetENIConfig(eniConfigName string) (*v1alpha1.ENIConfig, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetENIConfig", eniConfigName)
	ret0, _ := ret[0].(*v1alpha1.ENIConfig)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetENIConfig indicates an expected call of GetENIConfig.
func (mr *MockK8sWrapperMockRecorder) GetENIConfig(eniConfigName interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetENIConfig", reflect.TypeOf((*MockK8sWrapper)(nil).GetENIConfig), eniConfigName)
}

// GetNode mocks base method.
func (m *MockK8sWrapper) GetNode(nodeName string) (*v10.Node, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetNode", nodeName)
	ret0, _ := ret[0].(*v10.Node)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetNode indicates an expected call of GetNode.
func (mr *MockK8sWrapperMockRecorder) GetNode(nodeName interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetNode", reflect.TypeOf((*MockK8sWrapper)(nil).GetNode), nodeName)
}

// ListCNINodes mocks base method.
func (m *MockK8sWrapper) ListCNINodes() ([]*v1alpha10.CNINode, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListCNINodes")
	ret0, _ := ret[0].([]*v1alpha10.CNINode)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// ListEvents mocks base method.
func (m *MockK8sWrapper) ListEvents(ops []client.ListOption) (*v11.EventList, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListEvents", ops)
	ret0, _ := ret[0].(*v11.EventList)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ListEvents indicates an expected call of ListEvents.
func (mr *MockK8sWrapperMockRecorder) ListEvents(ops interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListEvents", reflect.TypeOf((*MockK8sWrapper)(nil).ListEvents), ops)
}

// ListNodes mocks base method.
func (m *MockK8sWrapper) ListNodes() (*v10.NodeList, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListNodes")
	ret0, _ := ret[0].(*v10.NodeList)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// PatchCNINode mocks base method.
func (m *MockK8sWrapper) PatchCNINode(oldCNINode, newCNINode *v1alpha10.CNINode) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "PatchCNINode", oldCNINode, newCNINode)
	ret0, _ := ret[0].(error)
	return ret0
}

// PatchCNINode indicates an expected call of PatchCNINode.
func (mr *MockK8sWrapperMockRecorder) PatchCNINode(oldCNINode, newCNINode interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "PatchCNINode", reflect.TypeOf((*MockK8sWrapper)(nil).PatchCNINode), oldCNINode, newCNINode)
}
