// Code generated by mockery. DO NOT EDIT.

package mock_apicore

import (
	pb "github.com/anyproto/anytype-heart/pb"
	mock "github.com/stretchr/testify/mock"
)

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

type MockEventService_Expecter struct {
	mock *mock.Mock
}

func (_m *MockEventService) EXPECT() *MockEventService_Expecter {
	return &MockEventService_Expecter{mock: &_m.Mock}
}

// Broadcast provides a mock function with given fields: event
func (_m *MockEventService) Broadcast(event *pb.Event) {
	_m.Called(event)
}

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

// Broadcast is a helper method to define mock.On call
//   - event *pb.Event
func (_e *MockEventService_Expecter) Broadcast(event interface{}) *MockEventService_Broadcast_Call {
	return &MockEventService_Broadcast_Call{Call: _e.mock.On("Broadcast", event)}
}

func (_c *MockEventService_Broadcast_Call) Run(run func(event *pb.Event)) *MockEventService_Broadcast_Call {
	_c.Call.Run(func(args mock.Arguments) {
		run(args[0].(*pb.Event))
	})
	return _c
}

func (_c *MockEventService_Broadcast_Call) Return() *MockEventService_Broadcast_Call {
	_c.Call.Return()
	return _c
}

func (_c *MockEventService_Broadcast_Call) RunAndReturn(run func(*pb.Event)) *MockEventService_Broadcast_Call {
	_c.Call.Return(run)
	return _c
}

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

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

	return mock
}
