// Code generated by mockery v2.20.0. DO NOT EDIT.

package mocks

import mock "github.com/stretchr/testify/mock"

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

// CounterAdd provides a mock function with given fields: name, val
func (_m *Instrumenter) CounterAdd(name string, val uint64) {
	_m.Called(name, val)
}

// CounterIncrement provides a mock function with given fields: name
func (_m *Instrumenter) CounterIncrement(name string) {
	_m.Called(name)
}

// GaugeDecrement provides a mock function with given fields: name
func (_m *Instrumenter) GaugeDecrement(name string) {
	_m.Called(name)
}

// GaugeIncrement provides a mock function with given fields: name
func (_m *Instrumenter) GaugeIncrement(name string) {
	_m.Called(name)
}

// GaugeSet provides a mock function with given fields: name, val
func (_m *Instrumenter) GaugeSet(name string, val uint64) {
	_m.Called(name, val)
}

// RegisterCounter provides a mock function with given fields: name, desc
func (_m *Instrumenter) RegisterCounter(name string, desc string) {
	_m.Called(name, desc)
}

// RegisterGauge provides a mock function with given fields: name, desc
func (_m *Instrumenter) RegisterGauge(name string, desc string) {
	_m.Called(name, desc)
}

type mockConstructorTestingTNewInstrumenter interface {
	mock.TestingT
	Cleanup(func())
}

// NewInstrumenter creates a new instance of Instrumenter. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations.
func NewInstrumenter(t mockConstructorTestingTNewInstrumenter) *Instrumenter {
	mock := &Instrumenter{}
	mock.Mock.Test(t)

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

	return mock
}
