// Code generated by MockGen. DO NOT EDIT.
// Source: bulkinserter.go
//
// Generated by this command:
//
//	mockgen -package mon -destination collectioninserter_mock.go -source bulkinserter.go collectionInserter
//

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

import (
	context "context"
	reflect "reflect"

	mongo "go.mongodb.org/mongo-driver/v2/mongo"
	options "go.mongodb.org/mongo-driver/v2/mongo/options"
	gomock "go.uber.org/mock/gomock"
)

// MockcollectionInserter is a mock of collectionInserter interface.
type MockcollectionInserter struct {
	ctrl     *gomock.Controller
	recorder *MockcollectionInserterMockRecorder
	isgomock struct{}
}

// MockcollectionInserterMockRecorder is the mock recorder for MockcollectionInserter.
type MockcollectionInserterMockRecorder struct {
	mock *MockcollectionInserter
}

// NewMockcollectionInserter creates a new mock instance.
func NewMockcollectionInserter(ctrl *gomock.Controller) *MockcollectionInserter {
	mock := &MockcollectionInserter{ctrl: ctrl}
	mock.recorder = &MockcollectionInserterMockRecorder{mock}
	return mock
}

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

// InsertMany mocks base method.
func (m *MockcollectionInserter) InsertMany(ctx context.Context, documents any, opts ...options.Lister[options.InsertManyOptions]) (*mongo.InsertManyResult, error) {
	m.ctrl.T.Helper()
	varargs := []any{ctx, documents}
	for _, a := range opts {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "InsertMany", varargs...)
	ret0, _ := ret[0].(*mongo.InsertManyResult)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// InsertMany indicates an expected call of InsertMany.
func (mr *MockcollectionInserterMockRecorder) InsertMany(ctx, documents any, opts ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{ctx, documents}, opts...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "InsertMany", reflect.TypeOf((*MockcollectionInserter)(nil).InsertMany), varargs...)
}
