type Timer … type realTimer … func (r realTimer) Chan() <-chan time.Time { … } type fakeTimer … func (f *fakeTimer) Reset(d time.Duration) bool { … } func (f *fakeTimer) Stop() bool { … } func (f *fakeTimer) expire(now time.Time) *time.Duration { … }