lnmock: add new package lnmock to host mocks
This commit introduces a new package to host mocked objects that can be used for all the unit tests.
This commit is contained in:
parent
31a40abd91
commit
5e6f10c9b8
@ -238,3 +238,10 @@ issues:
|
||||
- govet
|
||||
# itest case can be very long so we disable long function check.
|
||||
- funlen
|
||||
|
||||
- path: lnmock/*
|
||||
linters:
|
||||
# forcetypeassert is skipped for the mock because the test would fail
|
||||
# if the returned value doesn't match the type, so there's no need to
|
||||
# check the convert.
|
||||
- forcetypeassert
|
||||
|
||||
30
lnmock/clock.go
Normal file
30
lnmock/clock.go
Normal file
@ -0,0 +1,30 @@
|
||||
// NOTE: forcetypeassert is skipped for the mock because the test would fail if
|
||||
// the returned value doesn't match the type.
|
||||
package lnmock
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
"github.com/lightningnetwork/lnd/clock"
|
||||
"github.com/stretchr/testify/mock"
|
||||
)
|
||||
|
||||
// MockClock implements the `clock.Clock` interface.
|
||||
type MockClock struct {
|
||||
mock.Mock
|
||||
}
|
||||
|
||||
// Compile time assertion that MockClock implements clock.Clock.
|
||||
var _ clock.Clock = (*MockClock)(nil)
|
||||
|
||||
func (m *MockClock) Now() time.Time {
|
||||
args := m.Called()
|
||||
|
||||
return args.Get(0).(time.Time)
|
||||
}
|
||||
|
||||
func (m *MockClock) TickAfter(d time.Duration) <-chan time.Time {
|
||||
args := m.Called(d)
|
||||
|
||||
return args.Get(0).(chan time.Time)
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user