// Code generated by MockGen. DO NOT EDIT.
// Source: sku_service.go
//
// Generated by this command:
//
//	mockgen -source=sku_service.go -package=mock_spu -destination=./mock_spu/mock_sku_service.go
//

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

import (
	context "context"
	reflect "reflect"

	dedicatedv1 "github.com/tidbcloud/tidb-management-service/api/spec/global/dedicated/v1"
	entity "github.com/tidbcloud/tidb-management-service/dedicated-global-service/domain/entity"
	spu "github.com/tidbcloud/tidb-management-service/dedicated-global-service/domain/service/spu"
	bizerr "github.com/tidbcloud/tidb-management-service/utilities/bizerr"
	gomock "go.uber.org/mock/gomock"
)

// MockSkuService is a mock of SkuService interface.
type MockSkuService struct {
	ctrl     *gomock.Controller
	recorder *MockSkuServiceMockRecorder
	isgomock struct{}
}

// MockSkuServiceMockRecorder is the mock recorder for MockSkuService.
type MockSkuServiceMockRecorder struct {
	mock *MockSkuService
}

// NewMockSkuService creates a new mock instance.
func NewMockSkuService(ctrl *gomock.Controller) *MockSkuService {
	mock := &MockSkuService{ctrl: ctrl}
	mock.recorder = &MockSkuServiceMockRecorder{mock}
	return mock
}

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

// CreateSku mocks base method.
func (m *MockSkuService) CreateSku(ctx context.Context, req *dedicatedv1.Sku) (*entity.Sku, bizerr.BizError) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateSku", ctx, req)
	ret0, _ := ret[0].(*entity.Sku)
	ret1, _ := ret[1].(bizerr.BizError)
	return ret0, ret1
}

// CreateSku indicates an expected call of CreateSku.
func (mr *MockSkuServiceMockRecorder) CreateSku(ctx, req any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateSku", reflect.TypeOf((*MockSkuService)(nil).CreateSku), ctx, req)
}

// DeleteSku mocks base method.
func (m *MockSkuService) DeleteSku(ctx context.Context, id uint64) bizerr.BizError {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteSku", ctx, id)
	ret0, _ := ret[0].(bizerr.BizError)
	return ret0
}

// DeleteSku indicates an expected call of DeleteSku.
func (mr *MockSkuServiceMockRecorder) DeleteSku(ctx, id any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteSku", reflect.TypeOf((*MockSkuService)(nil).DeleteSku), ctx, id)
}

// GetSku mocks base method.
func (m *MockSkuService) GetSku(ctx context.Context, req *dedicatedv1.GetSkuRequest) (*entity.Sku, bizerr.BizError) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetSku", ctx, req)
	ret0, _ := ret[0].(*entity.Sku)
	ret1, _ := ret[1].(bizerr.BizError)
	return ret0, ret1
}

// GetSku indicates an expected call of GetSku.
func (mr *MockSkuServiceMockRecorder) GetSku(ctx, req any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetSku", reflect.TypeOf((*MockSkuService)(nil).GetSku), ctx, req)
}

// GetSkuByKey mocks base method.
func (m *MockSkuService) GetSkuByKey(ctx context.Context, key string) (*entity.Sku, bizerr.BizError) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetSkuByKey", ctx, key)
	ret0, _ := ret[0].(*entity.Sku)
	ret1, _ := ret[1].(bizerr.BizError)
	return ret0, ret1
}

// GetSkuByKey indicates an expected call of GetSkuByKey.
func (mr *MockSkuServiceMockRecorder) GetSkuByKey(ctx, key any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetSkuByKey", reflect.TypeOf((*MockSkuService)(nil).GetSkuByKey), ctx, key)
}

// ListSkus mocks base method.
func (m *MockSkuService) ListSkus(ctx context.Context, req *dedicatedv1.ListSkusRequest) (*dedicatedv1.ListSkusResponse, bizerr.BizError) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListSkus", ctx, req)
	ret0, _ := ret[0].(*dedicatedv1.ListSkusResponse)
	ret1, _ := ret[1].(bizerr.BizError)
	return ret0, ret1
}

// ListSkus indicates an expected call of ListSkus.
func (mr *MockSkuServiceMockRecorder) ListSkus(ctx, req any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListSkus", reflect.TypeOf((*MockSkuService)(nil).ListSkus), ctx, req)
}

// SelectSkusByComponentType mocks base method.
func (m *MockSkuService) SelectSkusByComponentType(ctx context.Context, componentType entity.ComponentType, request *spu.SelectSkusRequest) ([]*entity.Sku, bizerr.BizError) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "SelectSkusByComponentType", ctx, componentType, request)
	ret0, _ := ret[0].([]*entity.Sku)
	ret1, _ := ret[1].(bizerr.BizError)
	return ret0, ret1
}

// SelectSkusByComponentType indicates an expected call of SelectSkusByComponentType.
func (mr *MockSkuServiceMockRecorder) SelectSkusByComponentType(ctx, componentType, request any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SelectSkusByComponentType", reflect.TypeOf((*MockSkuService)(nil).SelectSkusByComponentType), ctx, componentType, request)
}

// SelectSkusWithPrefetchedData mocks base method.
func (m *MockSkuService) SelectSkusWithPrefetchedData(ctx context.Context, prefetched *spu.PrefetchedData, request *spu.SelectSkusRequest) ([]*entity.Sku, bizerr.BizError) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "SelectSkusWithPrefetchedData", ctx, prefetched, request)
	ret0, _ := ret[0].([]*entity.Sku)
	ret1, _ := ret[1].(bizerr.BizError)
	return ret0, ret1
}

// SelectSkusWithPrefetchedData indicates an expected call of SelectSkusWithPrefetchedData.
func (mr *MockSkuServiceMockRecorder) SelectSkusWithPrefetchedData(ctx, prefetched, request any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SelectSkusWithPrefetchedData", reflect.TypeOf((*MockSkuService)(nil).SelectSkusWithPrefetchedData), ctx, prefetched, request)
}

// UpdateSku mocks base method.
func (m *MockSkuService) UpdateSku(ctx context.Context, req *dedicatedv1.BatchUpsertSkusRequest_Update) (*entity.Sku, bizerr.BizError) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UpdateSku", ctx, req)
	ret0, _ := ret[0].(*entity.Sku)
	ret1, _ := ret[1].(bizerr.BizError)
	return ret0, ret1
}

// UpdateSku indicates an expected call of UpdateSku.
func (mr *MockSkuServiceMockRecorder) UpdateSku(ctx, req any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateSku", reflect.TypeOf((*MockSkuService)(nil).UpdateSku), ctx, req)
}
