// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/luxfi/node/vms/xvm/metrics (interfaces: Metrics)
//
// Generated by this command:
//
//	mockgen -package=metricsmock -destination=metricsmock/metrics.go -mock_names=Metrics=Metrics . Metrics
//

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

import (
	http "net/http"
	reflect "reflect"

	rpc "github.com/gorilla/rpc/v2"
	block "github.com/luxfi/node/vms/xvm/block"
	txs "github.com/luxfi/node/vms/xvm/txs"
	gomock "go.uber.org/mock/gomock"
)

// Metrics is a mock of Metrics interface.
type Metrics struct {
	ctrl     *gomock.Controller
	recorder *MetricsMockRecorder
	isgomock struct{}
}

// MetricsMockRecorder is the mock recorder for Metrics.
type MetricsMockRecorder struct {
	mock *Metrics
}

// NewMetrics creates a new mock instance.
func NewMetrics(ctrl *gomock.Controller) *Metrics {
	mock := &Metrics{ctrl: ctrl}
	mock.recorder = &MetricsMockRecorder{mock}
	return mock
}

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

// AfterRequest mocks base method.
func (m *Metrics) AfterRequest(i *rpc.RequestInfo) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "AfterRequest", i)
}

// AfterRequest indicates an expected call of AfterRequest.
func (mr *MetricsMockRecorder) AfterRequest(i any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AfterRequest", reflect.TypeOf((*Metrics)(nil).AfterRequest), i)
}

// IncTxRefreshHits mocks base method.
func (m *Metrics) IncTxRefreshHits() {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "IncTxRefreshHits")
}

// IncTxRefreshHits indicates an expected call of IncTxRefreshHits.
func (mr *MetricsMockRecorder) IncTxRefreshHits() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "IncTxRefreshHits", reflect.TypeOf((*Metrics)(nil).IncTxRefreshHits))
}

// IncTxRefreshMisses mocks base method.
func (m *Metrics) IncTxRefreshMisses() {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "IncTxRefreshMisses")
}

// IncTxRefreshMisses indicates an expected call of IncTxRefreshMisses.
func (mr *MetricsMockRecorder) IncTxRefreshMisses() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "IncTxRefreshMisses", reflect.TypeOf((*Metrics)(nil).IncTxRefreshMisses))
}

// IncTxRefreshes mocks base method.
func (m *Metrics) IncTxRefreshes() {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "IncTxRefreshes")
}

// IncTxRefreshes indicates an expected call of IncTxRefreshes.
func (mr *MetricsMockRecorder) IncTxRefreshes() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "IncTxRefreshes", reflect.TypeOf((*Metrics)(nil).IncTxRefreshes))
}

// InterceptRequest mocks base method.
func (m *Metrics) InterceptRequest(i *rpc.RequestInfo) *http.Request {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "InterceptRequest", i)
	ret0, _ := ret[0].(*http.Request)
	return ret0
}

// InterceptRequest indicates an expected call of InterceptRequest.
func (mr *MetricsMockRecorder) InterceptRequest(i any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "InterceptRequest", reflect.TypeOf((*Metrics)(nil).InterceptRequest), i)
}

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

// MarkBlockAccepted indicates an expected call of MarkBlockAccepted.
func (mr *MetricsMockRecorder) MarkBlockAccepted(b any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "MarkBlockAccepted", reflect.TypeOf((*Metrics)(nil).MarkBlockAccepted), b)
}

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

// MarkTxAccepted indicates an expected call of MarkTxAccepted.
func (mr *MetricsMockRecorder) MarkTxAccepted(tx any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "MarkTxAccepted", reflect.TypeOf((*Metrics)(nil).MarkTxAccepted), tx)
}
