// Code generated by MockGen. DO NOT EDIT.
// Source: mcp_server_release.go
//
// Generated by this command:
//
//	mockgen -source=mcp_server_release.go -destination=../../mocks/model_mcp_server_release.go -package=mocks
//

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

import (
	context "context"
	sql "database/sql"
	reflect "reflect"

	ormhelper "github.com/kweaver-ai/adp/execution-factory/operator-integration/server/infra/common/ormhelper"
	model "github.com/kweaver-ai/adp/execution-factory/operator-integration/server/interfaces/model"
	gomock "go.uber.org/mock/gomock"
)

// MockDBMCPServerRelease is a mock of DBMCPServerRelease interface.
type MockDBMCPServerRelease struct {
	ctrl     *gomock.Controller
	recorder *MockDBMCPServerReleaseMockRecorder
	isgomock struct{}
}

// MockDBMCPServerReleaseMockRecorder is the mock recorder for MockDBMCPServerRelease.
type MockDBMCPServerReleaseMockRecorder struct {
	mock *MockDBMCPServerRelease
}

// NewMockDBMCPServerRelease creates a new mock instance.
func NewMockDBMCPServerRelease(ctrl *gomock.Controller) *MockDBMCPServerRelease {
	mock := &MockDBMCPServerRelease{ctrl: ctrl}
	mock.recorder = &MockDBMCPServerReleaseMockRecorder{mock}
	return mock
}

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

// CountByWhereClause mocks base method.
func (m *MockDBMCPServerRelease) CountByWhereClause(ctx context.Context, tx *sql.Tx, filter map[string]any) (int64, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CountByWhereClause", ctx, tx, filter)
	ret0, _ := ret[0].(int64)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// CountByWhereClause indicates an expected call of CountByWhereClause.
func (mr *MockDBMCPServerReleaseMockRecorder) CountByWhereClause(ctx, tx, filter any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CountByWhereClause", reflect.TypeOf((*MockDBMCPServerRelease)(nil).CountByWhereClause), ctx, tx, filter)
}

// DeleteByMCPID mocks base method.
func (m *MockDBMCPServerRelease) DeleteByMCPID(ctx context.Context, tx *sql.Tx, mcpID string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteByMCPID", ctx, tx, mcpID)
	ret0, _ := ret[0].(error)
	return ret0
}

// DeleteByMCPID indicates an expected call of DeleteByMCPID.
func (mr *MockDBMCPServerReleaseMockRecorder) DeleteByMCPID(ctx, tx, mcpID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteByMCPID", reflect.TypeOf((*MockDBMCPServerRelease)(nil).DeleteByMCPID), ctx, tx, mcpID)
}

// Insert mocks base method.
func (m *MockDBMCPServerRelease) Insert(ctx context.Context, tx *sql.Tx, release *model.MCPServerReleaseDB) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Insert", ctx, tx, release)
	ret0, _ := ret[0].(error)
	return ret0
}

// Insert indicates an expected call of Insert.
func (mr *MockDBMCPServerReleaseMockRecorder) Insert(ctx, tx, release any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Insert", reflect.TypeOf((*MockDBMCPServerRelease)(nil).Insert), ctx, tx, release)
}

// SelectByMCPID mocks base method.
func (m *MockDBMCPServerRelease) SelectByMCPID(ctx context.Context, tx *sql.Tx, mcpID string) (*model.MCPServerReleaseDB, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "SelectByMCPID", ctx, tx, mcpID)
	ret0, _ := ret[0].(*model.MCPServerReleaseDB)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// SelectByMCPID indicates an expected call of SelectByMCPID.
func (mr *MockDBMCPServerReleaseMockRecorder) SelectByMCPID(ctx, tx, mcpID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SelectByMCPID", reflect.TypeOf((*MockDBMCPServerRelease)(nil).SelectByMCPID), ctx, tx, mcpID)
}

// SelectByMCPIDs mocks base method.
func (m *MockDBMCPServerRelease) SelectByMCPIDs(ctx context.Context, tx *sql.Tx, mcpIDs, fields []string) ([]*model.MCPServerReleaseDB, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "SelectByMCPIDs", ctx, tx, mcpIDs, fields)
	ret0, _ := ret[0].([]*model.MCPServerReleaseDB)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// SelectByMCPIDs indicates an expected call of SelectByMCPIDs.
func (mr *MockDBMCPServerReleaseMockRecorder) SelectByMCPIDs(ctx, tx, mcpIDs, fields any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SelectByMCPIDs", reflect.TypeOf((*MockDBMCPServerRelease)(nil).SelectByMCPIDs), ctx, tx, mcpIDs, fields)
}

// SelectListPage mocks base method.
func (m *MockDBMCPServerRelease) SelectListPage(ctx context.Context, tx *sql.Tx, filter map[string]any, sort *ormhelper.SortParams, cursor *ormhelper.CursorParams) ([]*model.MCPServerReleaseDB, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "SelectListPage", ctx, tx, filter, sort, cursor)
	ret0, _ := ret[0].([]*model.MCPServerReleaseDB)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// SelectListPage indicates an expected call of SelectListPage.
func (mr *MockDBMCPServerReleaseMockRecorder) SelectListPage(ctx, tx, filter, sort, cursor any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SelectListPage", reflect.TypeOf((*MockDBMCPServerRelease)(nil).SelectListPage), ctx, tx, filter, sort, cursor)
}

// UpdateByMCPID mocks base method.
func (m *MockDBMCPServerRelease) UpdateByMCPID(ctx context.Context, tx *sql.Tx, release *model.MCPServerReleaseDB) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UpdateByMCPID", ctx, tx, release)
	ret0, _ := ret[0].(error)
	return ret0
}

// UpdateByMCPID indicates an expected call of UpdateByMCPID.
func (mr *MockDBMCPServerReleaseMockRecorder) UpdateByMCPID(ctx, tx, release any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateByMCPID", reflect.TypeOf((*MockDBMCPServerRelease)(nil).UpdateByMCPID), ctx, tx, release)
}
