// Code generated by mockery; DO NOT EDIT.
// github.com/vektra/mockery
// template: testify

package mocks

import (
	"context"

	mock "github.com/stretchr/testify/mock"
	"github.com/tidbcloud/cluster-service-ng/domain/entity"
	"github.com/tidbcloud/cluster-service-ng/domain/server/br"
)

// NewLightweightRestoreAdaptor creates a new instance of LightweightRestoreAdaptor. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations.
// The first argument is typically a *testing.T value.
func NewLightweightRestoreAdaptor(t interface {
	mock.TestingT
	Cleanup(func())
}) *LightweightRestoreAdaptor {
	mock := &LightweightRestoreAdaptor{}
	mock.Mock.Test(t)

	t.Cleanup(func() { mock.AssertExpectations(t) })

	return mock
}

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

type LightweightRestoreAdaptor_Expecter struct {
	mock *mock.Mock
}

func (_m *LightweightRestoreAdaptor) EXPECT() *LightweightRestoreAdaptor_Expecter {
	return &LightweightRestoreAdaptor_Expecter{mock: &_m.Mock}
}

// GetCreationDagMeta provides a mock function for the type LightweightRestoreAdaptor
func (_mock *LightweightRestoreAdaptor) GetCreationDagMeta(restoreId string, targetSharedPoolId string) *br.LightweightRestoreDagMeta {
	ret := _mock.Called(restoreId, targetSharedPoolId)

	if len(ret) == 0 {
		panic("no return value specified for GetCreationDagMeta")
	}

	var r0 *br.LightweightRestoreDagMeta
	if returnFunc, ok := ret.Get(0).(func(string, string) *br.LightweightRestoreDagMeta); ok {
		r0 = returnFunc(restoreId, targetSharedPoolId)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*br.LightweightRestoreDagMeta)
		}
	}
	return r0
}

// LightweightRestoreAdaptor_GetCreationDagMeta_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'GetCreationDagMeta'
type LightweightRestoreAdaptor_GetCreationDagMeta_Call struct {
	*mock.Call
}

// GetCreationDagMeta is a helper method to define mock.On call
//   - restoreId string
//   - targetSharedPoolId string
func (_e *LightweightRestoreAdaptor_Expecter) GetCreationDagMeta(restoreId interface{}, targetSharedPoolId interface{}) *LightweightRestoreAdaptor_GetCreationDagMeta_Call {
	return &LightweightRestoreAdaptor_GetCreationDagMeta_Call{Call: _e.mock.On("GetCreationDagMeta", restoreId, targetSharedPoolId)}
}

func (_c *LightweightRestoreAdaptor_GetCreationDagMeta_Call) Run(run func(restoreId string, targetSharedPoolId string)) *LightweightRestoreAdaptor_GetCreationDagMeta_Call {
	_c.Call.Run(func(args mock.Arguments) {
		var arg0 string
		if args[0] != nil {
			arg0 = args[0].(string)
		}
		var arg1 string
		if args[1] != nil {
			arg1 = args[1].(string)
		}
		run(
			arg0,
			arg1,
		)
	})
	return _c
}

func (_c *LightweightRestoreAdaptor_GetCreationDagMeta_Call) Return(lightweightRestoreDagMeta *br.LightweightRestoreDagMeta) *LightweightRestoreAdaptor_GetCreationDagMeta_Call {
	_c.Call.Return(lightweightRestoreDagMeta)
	return _c
}

func (_c *LightweightRestoreAdaptor_GetCreationDagMeta_Call) RunAndReturn(run func(restoreId string, targetSharedPoolId string) *br.LightweightRestoreDagMeta) *LightweightRestoreAdaptor_GetCreationDagMeta_Call {
	_c.Call.Return(run)
	return _c
}

// GetDeletionDagMeta provides a mock function for the type LightweightRestoreAdaptor
func (_mock *LightweightRestoreAdaptor) GetDeletionDagMeta(restoreId string, targetSharedPoolId string) *br.LightweightRestoreDagMeta {
	ret := _mock.Called(restoreId, targetSharedPoolId)

	if len(ret) == 0 {
		panic("no return value specified for GetDeletionDagMeta")
	}

	var r0 *br.LightweightRestoreDagMeta
	if returnFunc, ok := ret.Get(0).(func(string, string) *br.LightweightRestoreDagMeta); ok {
		r0 = returnFunc(restoreId, targetSharedPoolId)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*br.LightweightRestoreDagMeta)
		}
	}
	return r0
}

// LightweightRestoreAdaptor_GetDeletionDagMeta_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'GetDeletionDagMeta'
type LightweightRestoreAdaptor_GetDeletionDagMeta_Call struct {
	*mock.Call
}

// GetDeletionDagMeta is a helper method to define mock.On call
//   - restoreId string
//   - targetSharedPoolId string
func (_e *LightweightRestoreAdaptor_Expecter) GetDeletionDagMeta(restoreId interface{}, targetSharedPoolId interface{}) *LightweightRestoreAdaptor_GetDeletionDagMeta_Call {
	return &LightweightRestoreAdaptor_GetDeletionDagMeta_Call{Call: _e.mock.On("GetDeletionDagMeta", restoreId, targetSharedPoolId)}
}

func (_c *LightweightRestoreAdaptor_GetDeletionDagMeta_Call) Run(run func(restoreId string, targetSharedPoolId string)) *LightweightRestoreAdaptor_GetDeletionDagMeta_Call {
	_c.Call.Run(func(args mock.Arguments) {
		var arg0 string
		if args[0] != nil {
			arg0 = args[0].(string)
		}
		var arg1 string
		if args[1] != nil {
			arg1 = args[1].(string)
		}
		run(
			arg0,
			arg1,
		)
	})
	return _c
}

func (_c *LightweightRestoreAdaptor_GetDeletionDagMeta_Call) Return(lightweightRestoreDagMeta *br.LightweightRestoreDagMeta) *LightweightRestoreAdaptor_GetDeletionDagMeta_Call {
	_c.Call.Return(lightweightRestoreDagMeta)
	return _c
}

func (_c *LightweightRestoreAdaptor_GetDeletionDagMeta_Call) RunAndReturn(run func(restoreId string, targetSharedPoolId string) *br.LightweightRestoreDagMeta) *LightweightRestoreAdaptor_GetDeletionDagMeta_Call {
	_c.Call.Return(run)
	return _c
}

// GetPostActions provides a mock function for the type LightweightRestoreAdaptor
func (_mock *LightweightRestoreAdaptor) GetPostActions(ctx context.Context, restore *entity.LightweightRestore) (*br.GetLightweightRestorePostActionsOutput, error) {
	ret := _mock.Called(ctx, restore)

	if len(ret) == 0 {
		panic("no return value specified for GetPostActions")
	}

	var r0 *br.GetLightweightRestorePostActionsOutput
	var r1 error
	if returnFunc, ok := ret.Get(0).(func(context.Context, *entity.LightweightRestore) (*br.GetLightweightRestorePostActionsOutput, error)); ok {
		return returnFunc(ctx, restore)
	}
	if returnFunc, ok := ret.Get(0).(func(context.Context, *entity.LightweightRestore) *br.GetLightweightRestorePostActionsOutput); ok {
		r0 = returnFunc(ctx, restore)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*br.GetLightweightRestorePostActionsOutput)
		}
	}
	if returnFunc, ok := ret.Get(1).(func(context.Context, *entity.LightweightRestore) error); ok {
		r1 = returnFunc(ctx, restore)
	} else {
		r1 = ret.Error(1)
	}
	return r0, r1
}

// LightweightRestoreAdaptor_GetPostActions_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'GetPostActions'
type LightweightRestoreAdaptor_GetPostActions_Call struct {
	*mock.Call
}

// GetPostActions is a helper method to define mock.On call
//   - ctx context.Context
//   - restore *entity.LightweightRestore
func (_e *LightweightRestoreAdaptor_Expecter) GetPostActions(ctx interface{}, restore interface{}) *LightweightRestoreAdaptor_GetPostActions_Call {
	return &LightweightRestoreAdaptor_GetPostActions_Call{Call: _e.mock.On("GetPostActions", ctx, restore)}
}

func (_c *LightweightRestoreAdaptor_GetPostActions_Call) Run(run func(ctx context.Context, restore *entity.LightweightRestore)) *LightweightRestoreAdaptor_GetPostActions_Call {
	_c.Call.Run(func(args mock.Arguments) {
		var arg0 context.Context
		if args[0] != nil {
			arg0 = args[0].(context.Context)
		}
		var arg1 *entity.LightweightRestore
		if args[1] != nil {
			arg1 = args[1].(*entity.LightweightRestore)
		}
		run(
			arg0,
			arg1,
		)
	})
	return _c
}

func (_c *LightweightRestoreAdaptor_GetPostActions_Call) Return(getLightweightRestorePostActionsOutput *br.GetLightweightRestorePostActionsOutput, err error) *LightweightRestoreAdaptor_GetPostActions_Call {
	_c.Call.Return(getLightweightRestorePostActionsOutput, err)
	return _c
}

func (_c *LightweightRestoreAdaptor_GetPostActions_Call) RunAndReturn(run func(ctx context.Context, restore *entity.LightweightRestore) (*br.GetLightweightRestorePostActionsOutput, error)) *LightweightRestoreAdaptor_GetPostActions_Call {
	_c.Call.Return(run)
	return _c
}

// GetRestoreInRunning provides a mock function for the type LightweightRestoreAdaptor
func (_mock *LightweightRestoreAdaptor) GetRestoreInRunning(ctx context.Context, restore *entity.LightweightRestore) (*br.GetLightweightRestoreOutput, error) {
	ret := _mock.Called(ctx, restore)

	if len(ret) == 0 {
		panic("no return value specified for GetRestoreInRunning")
	}

	var r0 *br.GetLightweightRestoreOutput
	var r1 error
	if returnFunc, ok := ret.Get(0).(func(context.Context, *entity.LightweightRestore) (*br.GetLightweightRestoreOutput, error)); ok {
		return returnFunc(ctx, restore)
	}
	if returnFunc, ok := ret.Get(0).(func(context.Context, *entity.LightweightRestore) *br.GetLightweightRestoreOutput); ok {
		r0 = returnFunc(ctx, restore)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*br.GetLightweightRestoreOutput)
		}
	}
	if returnFunc, ok := ret.Get(1).(func(context.Context, *entity.LightweightRestore) error); ok {
		r1 = returnFunc(ctx, restore)
	} else {
		r1 = ret.Error(1)
	}
	return r0, r1
}

// LightweightRestoreAdaptor_GetRestoreInRunning_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'GetRestoreInRunning'
type LightweightRestoreAdaptor_GetRestoreInRunning_Call struct {
	*mock.Call
}

// GetRestoreInRunning is a helper method to define mock.On call
//   - ctx context.Context
//   - restore *entity.LightweightRestore
func (_e *LightweightRestoreAdaptor_Expecter) GetRestoreInRunning(ctx interface{}, restore interface{}) *LightweightRestoreAdaptor_GetRestoreInRunning_Call {
	return &LightweightRestoreAdaptor_GetRestoreInRunning_Call{Call: _e.mock.On("GetRestoreInRunning", ctx, restore)}
}

func (_c *LightweightRestoreAdaptor_GetRestoreInRunning_Call) Run(run func(ctx context.Context, restore *entity.LightweightRestore)) *LightweightRestoreAdaptor_GetRestoreInRunning_Call {
	_c.Call.Run(func(args mock.Arguments) {
		var arg0 context.Context
		if args[0] != nil {
			arg0 = args[0].(context.Context)
		}
		var arg1 *entity.LightweightRestore
		if args[1] != nil {
			arg1 = args[1].(*entity.LightweightRestore)
		}
		run(
			arg0,
			arg1,
		)
	})
	return _c
}

func (_c *LightweightRestoreAdaptor_GetRestoreInRunning_Call) Return(getLightweightRestoreOutput *br.GetLightweightRestoreOutput, err error) *LightweightRestoreAdaptor_GetRestoreInRunning_Call {
	_c.Call.Return(getLightweightRestoreOutput, err)
	return _c
}

func (_c *LightweightRestoreAdaptor_GetRestoreInRunning_Call) RunAndReturn(run func(ctx context.Context, restore *entity.LightweightRestore) (*br.GetLightweightRestoreOutput, error)) *LightweightRestoreAdaptor_GetRestoreInRunning_Call {
	_c.Call.Return(run)
	return _c
}

// NewLightweightRestoreAdaptorIdentifier creates a new instance of LightweightRestoreAdaptorIdentifier. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations.
// The first argument is typically a *testing.T value.
func NewLightweightRestoreAdaptorIdentifier(t interface {
	mock.TestingT
	Cleanup(func())
}) *LightweightRestoreAdaptorIdentifier {
	mock := &LightweightRestoreAdaptorIdentifier{}
	mock.Mock.Test(t)

	t.Cleanup(func() { mock.AssertExpectations(t) })

	return mock
}

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

type LightweightRestoreAdaptorIdentifier_Expecter struct {
	mock *mock.Mock
}

func (_m *LightweightRestoreAdaptorIdentifier) EXPECT() *LightweightRestoreAdaptorIdentifier_Expecter {
	return &LightweightRestoreAdaptorIdentifier_Expecter{mock: &_m.Mock}
}

// GetSourceSharedPoolId provides a mock function for the type LightweightRestoreAdaptorIdentifier
func (_mock *LightweightRestoreAdaptorIdentifier) GetSourceSharedPoolId() string {
	ret := _mock.Called()

	if len(ret) == 0 {
		panic("no return value specified for GetSourceSharedPoolId")
	}

	var r0 string
	if returnFunc, ok := ret.Get(0).(func() string); ok {
		r0 = returnFunc()
	} else {
		r0 = ret.Get(0).(string)
	}
	return r0
}

// LightweightRestoreAdaptorIdentifier_GetSourceSharedPoolId_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'GetSourceSharedPoolId'
type LightweightRestoreAdaptorIdentifier_GetSourceSharedPoolId_Call struct {
	*mock.Call
}

// GetSourceSharedPoolId is a helper method to define mock.On call
func (_e *LightweightRestoreAdaptorIdentifier_Expecter) GetSourceSharedPoolId() *LightweightRestoreAdaptorIdentifier_GetSourceSharedPoolId_Call {
	return &LightweightRestoreAdaptorIdentifier_GetSourceSharedPoolId_Call{Call: _e.mock.On("GetSourceSharedPoolId")}
}

func (_c *LightweightRestoreAdaptorIdentifier_GetSourceSharedPoolId_Call) Run(run func()) *LightweightRestoreAdaptorIdentifier_GetSourceSharedPoolId_Call {
	_c.Call.Run(func(args mock.Arguments) {
		run()
	})
	return _c
}

func (_c *LightweightRestoreAdaptorIdentifier_GetSourceSharedPoolId_Call) Return(s string) *LightweightRestoreAdaptorIdentifier_GetSourceSharedPoolId_Call {
	_c.Call.Return(s)
	return _c
}

func (_c *LightweightRestoreAdaptorIdentifier_GetSourceSharedPoolId_Call) RunAndReturn(run func() string) *LightweightRestoreAdaptorIdentifier_GetSourceSharedPoolId_Call {
	_c.Call.Return(run)
	return _c
}

// GetTargetSharedPoolId provides a mock function for the type LightweightRestoreAdaptorIdentifier
func (_mock *LightweightRestoreAdaptorIdentifier) GetTargetSharedPoolId() string {
	ret := _mock.Called()

	if len(ret) == 0 {
		panic("no return value specified for GetTargetSharedPoolId")
	}

	var r0 string
	if returnFunc, ok := ret.Get(0).(func() string); ok {
		r0 = returnFunc()
	} else {
		r0 = ret.Get(0).(string)
	}
	return r0
}

// LightweightRestoreAdaptorIdentifier_GetTargetSharedPoolId_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'GetTargetSharedPoolId'
type LightweightRestoreAdaptorIdentifier_GetTargetSharedPoolId_Call struct {
	*mock.Call
}

// GetTargetSharedPoolId is a helper method to define mock.On call
func (_e *LightweightRestoreAdaptorIdentifier_Expecter) GetTargetSharedPoolId() *LightweightRestoreAdaptorIdentifier_GetTargetSharedPoolId_Call {
	return &LightweightRestoreAdaptorIdentifier_GetTargetSharedPoolId_Call{Call: _e.mock.On("GetTargetSharedPoolId")}
}

func (_c *LightweightRestoreAdaptorIdentifier_GetTargetSharedPoolId_Call) Run(run func()) *LightweightRestoreAdaptorIdentifier_GetTargetSharedPoolId_Call {
	_c.Call.Run(func(args mock.Arguments) {
		run()
	})
	return _c
}

func (_c *LightweightRestoreAdaptorIdentifier_GetTargetSharedPoolId_Call) Return(s string) *LightweightRestoreAdaptorIdentifier_GetTargetSharedPoolId_Call {
	_c.Call.Return(s)
	return _c
}

func (_c *LightweightRestoreAdaptorIdentifier_GetTargetSharedPoolId_Call) RunAndReturn(run func() string) *LightweightRestoreAdaptorIdentifier_GetTargetSharedPoolId_Call {
	_c.Call.Return(run)
	return _c
}
