Documentation
¶
Index ¶
- type FakeClock
- func (f *FakeClock) After(d time.Duration) <-chan time.Time
- func (f *FakeClock) AfterFunc(d time.Duration, cb func()) clock.Timer
- func (f *FakeClock) HasWaiters() bool
- func (f *FakeClock) NewTicker(d time.Duration) clock.Ticker
- func (f *FakeClock) NewTimer(d time.Duration) clock.Timer
- func (f *FakeClock) SetTime(t time.Time)
- func (f *FakeClock) Sleep(d time.Duration)
- func (f *FakeClock) Step(d time.Duration)
- func (f *FakeClock) Tick(d time.Duration) <-chan time.Time
- func (f *FakeClock) Waiters() int
- type FakePassiveClock
- type IntervalClockdeprecated
- func (*IntervalClock) After(d time.Duration) <-chan time.Time
- func (*IntervalClock) AfterFunc(d time.Duration, f func()) clock.Timer
- func (*IntervalClock) NewTicker(d time.Duration) clock.Ticker
- func (*IntervalClock) NewTimer(d time.Duration) clock.Timer
- func (i *IntervalClock) Now() time.Time
- func (i *IntervalClock) Since(ts time.Time) time.Duration
- func (*IntervalClock) Sleep(d time.Duration)
- func (*IntervalClock) Tick(d time.Duration) <-chan time.Time
- type SimpleIntervalClock
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type FakeClock ¶
type FakeClock struct { FakePassiveClock // contains filtered or unexported fields }
FakeClock implements clock.Clock, but returns an arbitrary time.
func NewFakeClock ¶
NewFakeClock constructs a fake clock set to the provided time.
func (*FakeClock) HasWaiters ¶
HasWaiters returns true if Waiters() returns non-0 (so you can write race-free tests).
func (*FakeClock) Step ¶
Step moves the clock by Duration and notifies anyone that's called After, Tick, or NewTimer.
func (*FakeClock) Waiters ¶
Waiters returns the number of "waiters" on the clock (so you can write race-free tests). A waiter exists for:
- every call to After that has not yet signaled its channel.
- every call to AfterFunc that has not yet called its callback.
- every timer created with NewTimer which is currently ticking.
- every ticker created with NewTicker which is currently ticking.
- every ticker created with Tick.
type FakePassiveClock ¶
type FakePassiveClock struct {
// contains filtered or unexported fields
}
FakePassiveClock implements PassiveClock, but returns an arbitrary time.
func NewFakePassiveClock ¶
func NewFakePassiveClock(t time.Time) *FakePassiveClock
NewFakePassiveClock returns a new FakePassiveClock.
func (*FakePassiveClock) SetTime ¶
func (f *FakePassiveClock) SetTime(t time.Time)
SetTime sets the time on the FakePassiveClock.
type IntervalClock
deprecated
IntervalClock implements clock.PassiveClock, but each invocation of Now steps the clock forward the specified duration. IntervalClock technically implements the other methods of clock.Clock, but each implementation is just a panic.
Deprecated: See SimpleIntervalClock for an alternative that only has the methods of PassiveClock.
func (*IntervalClock) After ¶
func (*IntervalClock) After(d time.Duration) <-chan time.Time
After is unimplemented, will panic. TODO: make interval clock use FakeClock so this can be implemented.
func (*IntervalClock) AfterFunc ¶
func (*IntervalClock) AfterFunc(d time.Duration, f func()) clock.Timer
AfterFunc is unimplemented, will panic. TODO: make interval clock use FakeClock so this can be implemented.
func (*IntervalClock) NewTicker ¶
func (*IntervalClock) NewTicker(d time.Duration) clock.Ticker
NewTicker has no implementation yet and is omitted. TODO: make interval clock use FakeClock so this can be implemented.
func (*IntervalClock) NewTimer ¶
func (*IntervalClock) NewTimer(d time.Duration) clock.Timer
NewTimer is unimplemented, will panic. TODO: make interval clock use FakeClock so this can be implemented.
func (*IntervalClock) Since ¶
func (i *IntervalClock) Since(ts time.Time) time.Duration
Since returns time since the time in i.
func (*IntervalClock) Sleep ¶
func (*IntervalClock) Sleep(d time.Duration)
Sleep is unimplemented, will panic.
type SimpleIntervalClock ¶
SimpleIntervalClock implements clock.PassiveClock, but each invocation of Now steps the clock forward the specified duration
func (*SimpleIntervalClock) Now ¶
func (i *SimpleIntervalClock) Now() time.Time
Now returns i's time.