// Code generated by mockery v2.53.4. DO NOT EDIT.

package legacy

import (
	context "context"

	resourcepb "github.com/grafana/grafana/pkg/storage/unified/resourcepb"
	mock "github.com/stretchr/testify/mock"
)

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

type MockMigrationDashboardAccessor_Expecter struct {
	mock *mock.Mock
}

func (_m *MockMigrationDashboardAccessor) EXPECT() *MockMigrationDashboardAccessor_Expecter {
	return &MockMigrationDashboardAccessor_Expecter{mock: &_m.Mock}
}

// CountResources provides a mock function with given fields: ctx, opts
func (_m *MockMigrationDashboardAccessor) CountResources(ctx context.Context, opts MigrateOptions) (*resourcepb.BulkResponse, error) {
	ret := _m.Called(ctx, opts)

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

	var r0 *resourcepb.BulkResponse
	var r1 error
	if rf, ok := ret.Get(0).(func(context.Context, MigrateOptions) (*resourcepb.BulkResponse, error)); ok {
		return rf(ctx, opts)
	}
	if rf, ok := ret.Get(0).(func(context.Context, MigrateOptions) *resourcepb.BulkResponse); ok {
		r0 = rf(ctx, opts)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*resourcepb.BulkResponse)
		}
	}

	if rf, ok := ret.Get(1).(func(context.Context, MigrateOptions) error); ok {
		r1 = rf(ctx, opts)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

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

// CountResources is a helper method to define mock.On call
//   - ctx context.Context
//   - opts MigrateOptions
func (_e *MockMigrationDashboardAccessor_Expecter) CountResources(ctx interface{}, opts interface{}) *MockMigrationDashboardAccessor_CountResources_Call {
	return &MockMigrationDashboardAccessor_CountResources_Call{Call: _e.mock.On("CountResources", ctx, opts)}
}

func (_c *MockMigrationDashboardAccessor_CountResources_Call) Run(run func(ctx context.Context, opts MigrateOptions)) *MockMigrationDashboardAccessor_CountResources_Call {
	_c.Call.Run(func(args mock.Arguments) {
		run(args[0].(context.Context), args[1].(MigrateOptions))
	})
	return _c
}

func (_c *MockMigrationDashboardAccessor_CountResources_Call) Return(_a0 *resourcepb.BulkResponse, _a1 error) *MockMigrationDashboardAccessor_CountResources_Call {
	_c.Call.Return(_a0, _a1)
	return _c
}

func (_c *MockMigrationDashboardAccessor_CountResources_Call) RunAndReturn(run func(context.Context, MigrateOptions) (*resourcepb.BulkResponse, error)) *MockMigrationDashboardAccessor_CountResources_Call {
	_c.Call.Return(run)
	return _c
}

// MigrateDashboards provides a mock function with given fields: ctx, orgId, opts, stream
func (_m *MockMigrationDashboardAccessor) MigrateDashboards(ctx context.Context, orgId int64, opts MigrateOptions, stream resourcepb.BulkStore_BulkProcessClient) (*BlobStoreInfo, error) {
	ret := _m.Called(ctx, orgId, opts, stream)

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

	var r0 *BlobStoreInfo
	var r1 error
	if rf, ok := ret.Get(0).(func(context.Context, int64, MigrateOptions, resourcepb.BulkStore_BulkProcessClient) (*BlobStoreInfo, error)); ok {
		return rf(ctx, orgId, opts, stream)
	}
	if rf, ok := ret.Get(0).(func(context.Context, int64, MigrateOptions, resourcepb.BulkStore_BulkProcessClient) *BlobStoreInfo); ok {
		r0 = rf(ctx, orgId, opts, stream)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*BlobStoreInfo)
		}
	}

	if rf, ok := ret.Get(1).(func(context.Context, int64, MigrateOptions, resourcepb.BulkStore_BulkProcessClient) error); ok {
		r1 = rf(ctx, orgId, opts, stream)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

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

// MigrateDashboards is a helper method to define mock.On call
//   - ctx context.Context
//   - orgId int64
//   - opts MigrateOptions
//   - stream resourcepb.BulkStore_BulkProcessClient
func (_e *MockMigrationDashboardAccessor_Expecter) MigrateDashboards(ctx interface{}, orgId interface{}, opts interface{}, stream interface{}) *MockMigrationDashboardAccessor_MigrateDashboards_Call {
	return &MockMigrationDashboardAccessor_MigrateDashboards_Call{Call: _e.mock.On("MigrateDashboards", ctx, orgId, opts, stream)}
}

func (_c *MockMigrationDashboardAccessor_MigrateDashboards_Call) Run(run func(ctx context.Context, orgId int64, opts MigrateOptions, stream resourcepb.BulkStore_BulkProcessClient)) *MockMigrationDashboardAccessor_MigrateDashboards_Call {
	_c.Call.Run(func(args mock.Arguments) {
		run(args[0].(context.Context), args[1].(int64), args[2].(MigrateOptions), args[3].(resourcepb.BulkStore_BulkProcessClient))
	})
	return _c
}

func (_c *MockMigrationDashboardAccessor_MigrateDashboards_Call) Return(_a0 *BlobStoreInfo, _a1 error) *MockMigrationDashboardAccessor_MigrateDashboards_Call {
	_c.Call.Return(_a0, _a1)
	return _c
}

func (_c *MockMigrationDashboardAccessor_MigrateDashboards_Call) RunAndReturn(run func(context.Context, int64, MigrateOptions, resourcepb.BulkStore_BulkProcessClient) (*BlobStoreInfo, error)) *MockMigrationDashboardAccessor_MigrateDashboards_Call {
	_c.Call.Return(run)
	return _c
}

// MigrateFolders provides a mock function with given fields: ctx, orgId, opts, stream
func (_m *MockMigrationDashboardAccessor) MigrateFolders(ctx context.Context, orgId int64, opts MigrateOptions, stream resourcepb.BulkStore_BulkProcessClient) (*BlobStoreInfo, error) {
	ret := _m.Called(ctx, orgId, opts, stream)

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

	var r0 *BlobStoreInfo
	var r1 error
	if rf, ok := ret.Get(0).(func(context.Context, int64, MigrateOptions, resourcepb.BulkStore_BulkProcessClient) (*BlobStoreInfo, error)); ok {
		return rf(ctx, orgId, opts, stream)
	}
	if rf, ok := ret.Get(0).(func(context.Context, int64, MigrateOptions, resourcepb.BulkStore_BulkProcessClient) *BlobStoreInfo); ok {
		r0 = rf(ctx, orgId, opts, stream)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*BlobStoreInfo)
		}
	}

	if rf, ok := ret.Get(1).(func(context.Context, int64, MigrateOptions, resourcepb.BulkStore_BulkProcessClient) error); ok {
		r1 = rf(ctx, orgId, opts, stream)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

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

// MigrateFolders is a helper method to define mock.On call
//   - ctx context.Context
//   - orgId int64
//   - opts MigrateOptions
//   - stream resourcepb.BulkStore_BulkProcessClient
func (_e *MockMigrationDashboardAccessor_Expecter) MigrateFolders(ctx interface{}, orgId interface{}, opts interface{}, stream interface{}) *MockMigrationDashboardAccessor_MigrateFolders_Call {
	return &MockMigrationDashboardAccessor_MigrateFolders_Call{Call: _e.mock.On("MigrateFolders", ctx, orgId, opts, stream)}
}

func (_c *MockMigrationDashboardAccessor_MigrateFolders_Call) Run(run func(ctx context.Context, orgId int64, opts MigrateOptions, stream resourcepb.BulkStore_BulkProcessClient)) *MockMigrationDashboardAccessor_MigrateFolders_Call {
	_c.Call.Run(func(args mock.Arguments) {
		run(args[0].(context.Context), args[1].(int64), args[2].(MigrateOptions), args[3].(resourcepb.BulkStore_BulkProcessClient))
	})
	return _c
}

func (_c *MockMigrationDashboardAccessor_MigrateFolders_Call) Return(_a0 *BlobStoreInfo, _a1 error) *MockMigrationDashboardAccessor_MigrateFolders_Call {
	_c.Call.Return(_a0, _a1)
	return _c
}

func (_c *MockMigrationDashboardAccessor_MigrateFolders_Call) RunAndReturn(run func(context.Context, int64, MigrateOptions, resourcepb.BulkStore_BulkProcessClient) (*BlobStoreInfo, error)) *MockMigrationDashboardAccessor_MigrateFolders_Call {
	_c.Call.Return(run)
	return _c
}

// MigrateLibraryPanels provides a mock function with given fields: ctx, orgId, opts, stream
func (_m *MockMigrationDashboardAccessor) MigrateLibraryPanels(ctx context.Context, orgId int64, opts MigrateOptions, stream resourcepb.BulkStore_BulkProcessClient) (*BlobStoreInfo, error) {
	ret := _m.Called(ctx, orgId, opts, stream)

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

	var r0 *BlobStoreInfo
	var r1 error
	if rf, ok := ret.Get(0).(func(context.Context, int64, MigrateOptions, resourcepb.BulkStore_BulkProcessClient) (*BlobStoreInfo, error)); ok {
		return rf(ctx, orgId, opts, stream)
	}
	if rf, ok := ret.Get(0).(func(context.Context, int64, MigrateOptions, resourcepb.BulkStore_BulkProcessClient) *BlobStoreInfo); ok {
		r0 = rf(ctx, orgId, opts, stream)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*BlobStoreInfo)
		}
	}

	if rf, ok := ret.Get(1).(func(context.Context, int64, MigrateOptions, resourcepb.BulkStore_BulkProcessClient) error); ok {
		r1 = rf(ctx, orgId, opts, stream)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

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

// MigrateLibraryPanels is a helper method to define mock.On call
//   - ctx context.Context
//   - orgId int64
//   - opts MigrateOptions
//   - stream resourcepb.BulkStore_BulkProcessClient
func (_e *MockMigrationDashboardAccessor_Expecter) MigrateLibraryPanels(ctx interface{}, orgId interface{}, opts interface{}, stream interface{}) *MockMigrationDashboardAccessor_MigrateLibraryPanels_Call {
	return &MockMigrationDashboardAccessor_MigrateLibraryPanels_Call{Call: _e.mock.On("MigrateLibraryPanels", ctx, orgId, opts, stream)}
}

func (_c *MockMigrationDashboardAccessor_MigrateLibraryPanels_Call) Run(run func(ctx context.Context, orgId int64, opts MigrateOptions, stream resourcepb.BulkStore_BulkProcessClient)) *MockMigrationDashboardAccessor_MigrateLibraryPanels_Call {
	_c.Call.Run(func(args mock.Arguments) {
		run(args[0].(context.Context), args[1].(int64), args[2].(MigrateOptions), args[3].(resourcepb.BulkStore_BulkProcessClient))
	})
	return _c
}

func (_c *MockMigrationDashboardAccessor_MigrateLibraryPanels_Call) Return(_a0 *BlobStoreInfo, _a1 error) *MockMigrationDashboardAccessor_MigrateLibraryPanels_Call {
	_c.Call.Return(_a0, _a1)
	return _c
}

func (_c *MockMigrationDashboardAccessor_MigrateLibraryPanels_Call) RunAndReturn(run func(context.Context, int64, MigrateOptions, resourcepb.BulkStore_BulkProcessClient) (*BlobStoreInfo, error)) *MockMigrationDashboardAccessor_MigrateLibraryPanels_Call {
	_c.Call.Return(run)
	return _c
}

// MigratePlaylists provides a mock function with given fields: ctx, orgId, opts, stream
func (_m *MockMigrationDashboardAccessor) MigratePlaylists(ctx context.Context, orgId int64, opts MigrateOptions, stream resourcepb.BulkStore_BulkProcessClient) (*BlobStoreInfo, error) {
	ret := _m.Called(ctx, orgId, opts, stream)

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

	var r0 *BlobStoreInfo
	var r1 error
	if rf, ok := ret.Get(0).(func(context.Context, int64, MigrateOptions, resourcepb.BulkStore_BulkProcessClient) (*BlobStoreInfo, error)); ok {
		return rf(ctx, orgId, opts, stream)
	}
	if rf, ok := ret.Get(0).(func(context.Context, int64, MigrateOptions, resourcepb.BulkStore_BulkProcessClient) *BlobStoreInfo); ok {
		r0 = rf(ctx, orgId, opts, stream)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*BlobStoreInfo)
		}
	}

	if rf, ok := ret.Get(1).(func(context.Context, int64, MigrateOptions, resourcepb.BulkStore_BulkProcessClient) error); ok {
		r1 = rf(ctx, orgId, opts, stream)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

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

// MigratePlaylists is a helper method to define mock.On call
//   - ctx context.Context
//   - orgId int64
//   - opts MigrateOptions
//   - stream resourcepb.BulkStore_BulkProcessClient
func (_e *MockMigrationDashboardAccessor_Expecter) MigratePlaylists(ctx interface{}, orgId interface{}, opts interface{}, stream interface{}) *MockMigrationDashboardAccessor_MigratePlaylists_Call {
	return &MockMigrationDashboardAccessor_MigratePlaylists_Call{Call: _e.mock.On("MigratePlaylists", ctx, orgId, opts, stream)}
}

func (_c *MockMigrationDashboardAccessor_MigratePlaylists_Call) Run(run func(ctx context.Context, orgId int64, opts MigrateOptions, stream resourcepb.BulkStore_BulkProcessClient)) *MockMigrationDashboardAccessor_MigratePlaylists_Call {
	_c.Call.Run(func(args mock.Arguments) {
		run(args[0].(context.Context), args[1].(int64), args[2].(MigrateOptions), args[3].(resourcepb.BulkStore_BulkProcessClient))
	})
	return _c
}

func (_c *MockMigrationDashboardAccessor_MigratePlaylists_Call) Return(_a0 *BlobStoreInfo, _a1 error) *MockMigrationDashboardAccessor_MigratePlaylists_Call {
	_c.Call.Return(_a0, _a1)
	return _c
}

func (_c *MockMigrationDashboardAccessor_MigratePlaylists_Call) RunAndReturn(run func(context.Context, int64, MigrateOptions, resourcepb.BulkStore_BulkProcessClient) (*BlobStoreInfo, error)) *MockMigrationDashboardAccessor_MigratePlaylists_Call {
	_c.Call.Return(run)
	return _c
}

// NewMockMigrationDashboardAccessor creates a new instance of MockMigrationDashboardAccessor. 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 NewMockMigrationDashboardAccessor(t interface {
	mock.TestingT
	Cleanup(func())
}) *MockMigrationDashboardAccessor {
	mock := &MockMigrationDashboardAccessor{}
	mock.Mock.Test(t)

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

	return mock
}
