// Code generated by MockGen. DO NOT EDIT.
//
// Generated by this command:
//
//

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

import (
	context "context"
	reflect "reflect"

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

// MockDistributedLock is a mock of DistributedLock interface.
type MockDistributedLock struct {
	ctrl     *gomock.Controller
	recorder *MockDistributedLockMockRecorder
	isgomock struct{}
}

// MockDistributedLockMockRecorder is the mock recorder for MockDistributedLock.
type MockDistributedLockMockRecorder struct {
	mock *MockDistributedLock
}

// NewMockDistributedLock creates a new mock instance.
func NewMockDistributedLock(ctrl *gomock.Controller) *MockDistributedLock {
	mock := &MockDistributedLock{ctrl: ctrl}
	mock.recorder = &MockDistributedLockMockRecorder{mock}
	return mock
}

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

// Acquire mocks base method.
func (m *MockDistributedLock) Acquire(ctx context.Context, key string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Acquire", ctx, key)
	ret0, _ := ret[0].(error)
	return ret0
}

// Acquire indicates an expected call of Acquire.
func (mr *MockDistributedLockMockRecorder) Acquire(ctx, key any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Acquire", reflect.TypeOf((*MockDistributedLock)(nil).Acquire), ctx, key)
}

// IsHeld mocks base method.
func (m *MockDistributedLock) IsHeld(key string) bool {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "IsHeld", key)
	ret0, _ := ret[0].(bool)
	return ret0
}

// IsHeld indicates an expected call of IsHeld.
func (mr *MockDistributedLockMockRecorder) IsHeld(key any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "IsHeld", reflect.TypeOf((*MockDistributedLock)(nil).IsHeld), key)
}

// Release mocks base method.
func (m *MockDistributedLock) Release(ctx context.Context, key string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Release", ctx, key)
	ret0, _ := ret[0].(error)
	return ret0
}

// Release indicates an expected call of Release.
func (mr *MockDistributedLockMockRecorder) Release(ctx, key any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Release", reflect.TypeOf((*MockDistributedLock)(nil).Release), ctx, key)
}

// TryAcquire mocks base method.
func (m *MockDistributedLock) TryAcquire(ctx context.Context, key string) (bool, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "TryAcquire", ctx, key)
	ret0, _ := ret[0].(bool)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// TryAcquire indicates an expected call of TryAcquire.
func (mr *MockDistributedLockMockRecorder) TryAcquire(ctx, key any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "TryAcquire", reflect.TypeOf((*MockDistributedLock)(nil).TryAcquire), ctx, key)
}
