// Code generated by MockGen. DO NOT EDIT.
// Source: publisher.go
//
// Generated by this command:
//
//	mockgen -source=publisher.go -package=mock_clusterevent -destination=./mock_clusterevent/mock_publisher.go
//

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

import (
	context "context"
	reflect "reflect"

	bizerr "github.com/tidbcloud/tidb-management-service/utilities/bizerr"
	clusterevent "github.com/tidbcloud/tidb-management-service/utilities/clusterevent"
	gomock "go.uber.org/mock/gomock"
)

// MockPublisher is a mock of Publisher interface.
type MockPublisher struct {
	ctrl     *gomock.Controller
	recorder *MockPublisherMockRecorder
	isgomock struct{}
}

// MockPublisherMockRecorder is the mock recorder for MockPublisher.
type MockPublisherMockRecorder struct {
	mock *MockPublisher
}

// NewMockPublisher creates a new mock instance.
func NewMockPublisher(ctrl *gomock.Controller) *MockPublisher {
	mock := &MockPublisher{ctrl: ctrl}
	mock.recorder = &MockPublisherMockRecorder{mock}
	return mock
}

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

// Publish mocks base method.
func (m *MockPublisher) Publish(ctx context.Context, meta *clusterevent.Meta, ev clusterevent.Event) bizerr.BizError {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Publish", ctx, meta, ev)
	ret0, _ := ret[0].(bizerr.BizError)
	return ret0
}

// Publish indicates an expected call of Publish.
func (mr *MockPublisherMockRecorder) Publish(ctx, meta, ev any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Publish", reflect.TypeOf((*MockPublisher)(nil).Publish), ctx, meta, ev)
}
