// Code generated by MockGen. DO NOT EDIT.
// Source: hashring.go
//
// Generated by this command:
//
//	mockgen -package membership -source hashring.go -destination peerprovider_mock.go github.com/uber/cadence/common/membership PeerProvider
//

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

import (
	reflect "reflect"

	gomock "go.uber.org/mock/gomock"
)

// MockPeerProvider is a mock of PeerProvider interface.
type MockPeerProvider struct {
	ctrl     *gomock.Controller
	recorder *MockPeerProviderMockRecorder
	isgomock struct{}
}

// MockPeerProviderMockRecorder is the mock recorder for MockPeerProvider.
type MockPeerProviderMockRecorder struct {
	mock *MockPeerProvider
}

// NewMockPeerProvider creates a new mock instance.
func NewMockPeerProvider(ctrl *gomock.Controller) *MockPeerProvider {
	mock := &MockPeerProvider{ctrl: ctrl}
	mock.recorder = &MockPeerProviderMockRecorder{mock}
	return mock
}

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

// GetMembers mocks base method.
func (m *MockPeerProvider) GetMembers(service string) ([]HostInfo, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetMembers", service)
	ret0, _ := ret[0].([]HostInfo)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetMembers indicates an expected call of GetMembers.
func (mr *MockPeerProviderMockRecorder) GetMembers(service any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetMembers", reflect.TypeOf((*MockPeerProvider)(nil).GetMembers), service)
}

// SelfEvict mocks base method.
func (m *MockPeerProvider) SelfEvict() error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "SelfEvict")
	ret0, _ := ret[0].(error)
	return ret0
}

// SelfEvict indicates an expected call of SelfEvict.
func (mr *MockPeerProviderMockRecorder) SelfEvict() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SelfEvict", reflect.TypeOf((*MockPeerProvider)(nil).SelfEvict))
}

// Start mocks base method.
func (m *MockPeerProvider) Start() {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "Start")
}

// Start indicates an expected call of Start.
func (mr *MockPeerProviderMockRecorder) Start() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Start", reflect.TypeOf((*MockPeerProvider)(nil).Start))
}

// Stop mocks base method.
func (m *MockPeerProvider) Stop() {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "Stop")
}

// Stop indicates an expected call of Stop.
func (mr *MockPeerProviderMockRecorder) Stop() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Stop", reflect.TypeOf((*MockPeerProvider)(nil).Stop))
}

// Subscribe mocks base method.
func (m *MockPeerProvider) Subscribe(name string, handler func(ChangedEvent)) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Subscribe", name, handler)
	ret0, _ := ret[0].(error)
	return ret0
}

// Subscribe indicates an expected call of Subscribe.
func (mr *MockPeerProviderMockRecorder) Subscribe(name, handler any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Subscribe", reflect.TypeOf((*MockPeerProvider)(nil).Subscribe), name, handler)
}

// WhoAmI mocks base method.
func (m *MockPeerProvider) WhoAmI() (HostInfo, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "WhoAmI")
	ret0, _ := ret[0].(HostInfo)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// WhoAmI indicates an expected call of WhoAmI.
func (mr *MockPeerProviderMockRecorder) WhoAmI() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "WhoAmI", reflect.TypeOf((*MockPeerProvider)(nil).WhoAmI))
}
