// Code generated by MockGen. DO NOT EDIT.
// Source: offloader.go
//
// Generated by this command:
//
//	mockgen -source=offloader.go -destination=offloader_mock.go -package=offloader Offloader
//

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

import (
	context "context"
	reflect "reflect"

	deployment "github.com/beamlit/beamlit-controller/api/v1alpha1/deployment"
	gomock "go.uber.org/mock/gomock"
)

// MockOffloader is a mock of Offloader interface.
type MockOffloader struct {
	ctrl     *gomock.Controller
	recorder *MockOffloaderMockRecorder
}

// MockOffloaderMockRecorder is the mock recorder for MockOffloader.
type MockOffloaderMockRecorder struct {
	mock *MockOffloader
}

// NewMockOffloader creates a new mock instance.
func NewMockOffloader(ctrl *gomock.Controller) *MockOffloader {
	mock := &MockOffloader{ctrl: ctrl}
	mock.recorder = &MockOffloaderMockRecorder{mock}
	return mock
}

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

// Cleanup mocks base method.
func (m *MockOffloader) Cleanup(ctx context.Context, model *deployment.ModelDeployment) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Cleanup", ctx, model)
	ret0, _ := ret[0].(error)
	return ret0
}

// Cleanup indicates an expected call of Cleanup.
func (mr *MockOffloaderMockRecorder) Cleanup(ctx, model any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Cleanup", reflect.TypeOf((*MockOffloader)(nil).Cleanup), ctx, model)
}

// Configure mocks base method.
func (m *MockOffloader) Configure(ctx context.Context, model *deployment.ModelDeployment, localBackend *deployment.ServiceReference, remoteBackend *deployment.RemoteBackend, remoteBackendWeight int) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Configure", ctx, model, localBackend, remoteBackend, remoteBackendWeight)
	ret0, _ := ret[0].(error)
	return ret0
}

// Configure indicates an expected call of Configure.
func (mr *MockOffloaderMockRecorder) Configure(ctx, model, localBackend, remoteBackend, remoteBackendWeight any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Configure", reflect.TypeOf((*MockOffloader)(nil).Configure), ctx, model, localBackend, remoteBackend, remoteBackendWeight)
}
