// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/ydb-platform/ydb-go-sdk/v3/internal/grpcwrapper/rawtopic/rawtopicreader (interfaces: TopicReaderStreamInterface)
//
// Generated by this command:
//
//	mockgen -destination ../rawtopicreadermock/stream_reader_stream_interface_mock.go --typed -package rawtopicreadermock -write_package_comment=false --typed . TopicReaderStreamInterface
package rawtopicreadermock

import (
	reflect "reflect"

	rawtopicreader "github.com/ydb-platform/ydb-go-sdk/v3/internal/grpcwrapper/rawtopic/rawtopicreader"
	gomock "go.uber.org/mock/gomock"
)

// MockTopicReaderStreamInterface is a mock of TopicReaderStreamInterface interface.
type MockTopicReaderStreamInterface struct {
	ctrl     *gomock.Controller
	recorder *MockTopicReaderStreamInterfaceMockRecorder
}

// MockTopicReaderStreamInterfaceMockRecorder is the mock recorder for MockTopicReaderStreamInterface.
type MockTopicReaderStreamInterfaceMockRecorder struct {
	mock *MockTopicReaderStreamInterface
}

// NewMockTopicReaderStreamInterface creates a new mock instance.
func NewMockTopicReaderStreamInterface(ctrl *gomock.Controller) *MockTopicReaderStreamInterface {
	mock := &MockTopicReaderStreamInterface{ctrl: ctrl}
	mock.recorder = &MockTopicReaderStreamInterfaceMockRecorder{mock}
	return mock
}

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

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

// CloseSend indicates an expected call of CloseSend.
func (mr *MockTopicReaderStreamInterfaceMockRecorder) CloseSend() *MockTopicReaderStreamInterfaceCloseSendCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseSend", reflect.TypeOf((*MockTopicReaderStreamInterface)(nil).CloseSend))
	return &MockTopicReaderStreamInterfaceCloseSendCall{Call: call}
}

// MockTopicReaderStreamInterfaceCloseSendCall wrap *gomock.Call
type MockTopicReaderStreamInterfaceCloseSendCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockTopicReaderStreamInterfaceCloseSendCall) Return(arg0 error) *MockTopicReaderStreamInterfaceCloseSendCall {
	c.Call = c.Call.Return(arg0)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockTopicReaderStreamInterfaceCloseSendCall) Do(f func() error) *MockTopicReaderStreamInterfaceCloseSendCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockTopicReaderStreamInterfaceCloseSendCall) DoAndReturn(f func() error) *MockTopicReaderStreamInterfaceCloseSendCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

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

// Recv indicates an expected call of Recv.
func (mr *MockTopicReaderStreamInterfaceMockRecorder) Recv() *MockTopicReaderStreamInterfaceRecvCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Recv", reflect.TypeOf((*MockTopicReaderStreamInterface)(nil).Recv))
	return &MockTopicReaderStreamInterfaceRecvCall{Call: call}
}

// MockTopicReaderStreamInterfaceRecvCall wrap *gomock.Call
type MockTopicReaderStreamInterfaceRecvCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockTopicReaderStreamInterfaceRecvCall) Return(arg0 rawtopicreader.ServerMessage, arg1 error) *MockTopicReaderStreamInterfaceRecvCall {
	c.Call = c.Call.Return(arg0, arg1)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockTopicReaderStreamInterfaceRecvCall) Do(f func() (rawtopicreader.ServerMessage, error)) *MockTopicReaderStreamInterfaceRecvCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockTopicReaderStreamInterfaceRecvCall) DoAndReturn(f func() (rawtopicreader.ServerMessage, error)) *MockTopicReaderStreamInterfaceRecvCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

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

// Send indicates an expected call of Send.
func (mr *MockTopicReaderStreamInterfaceMockRecorder) Send(arg0 any) *MockTopicReaderStreamInterfaceSendCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Send", reflect.TypeOf((*MockTopicReaderStreamInterface)(nil).Send), arg0)
	return &MockTopicReaderStreamInterfaceSendCall{Call: call}
}

// MockTopicReaderStreamInterfaceSendCall wrap *gomock.Call
type MockTopicReaderStreamInterfaceSendCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockTopicReaderStreamInterfaceSendCall) Return(arg0 error) *MockTopicReaderStreamInterfaceSendCall {
	c.Call = c.Call.Return(arg0)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockTopicReaderStreamInterfaceSendCall) Do(f func(rawtopicreader.ClientMessage) error) *MockTopicReaderStreamInterfaceSendCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockTopicReaderStreamInterfaceSendCall) DoAndReturn(f func(rawtopicreader.ClientMessage) error) *MockTopicReaderStreamInterfaceSendCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}
