// Code generated by mockery v2.13.0-beta.1. DO NOT EDIT.

package receiver

import (
	p2ppb "github.com/centrifuge/centrifuge-protobufs/gen/go/p2p"
	peer "github.com/libp2p/go-libp2p-core/peer"
	mock "github.com/stretchr/testify/mock"

	types "github.com/centrifuge/go-substrate-rpc-client/v4/types"
)

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

// Validate provides a mock function with given fields: header, centID, peerID
func (_m *ValidatorMock) Validate(header *p2ppb.Header, centID *types.AccountID, peerID *peer.ID) error {
	ret := _m.Called(header, centID, peerID)

	var r0 error
	if rf, ok := ret.Get(0).(func(*p2ppb.Header, *types.AccountID, *peer.ID) error); ok {
		r0 = rf(header, centID, peerID)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

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

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

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

	return mock
}
