github.com/ngicks/gokugen@v0.0.5/scheduler/util_test.go (about)

     1  package scheduler_test
     2  
     3  import (
     4  	"time"
     5  
     6  	"github.com/ngicks/gokugen/common"
     7  )
     8  
     9  var _ common.GetNower = new(getNowDummyImpl)
    10  var _ common.ITimer = new(timerDummyImpl)
    11  
    12  type getNowDummyImpl struct {
    13  	dummy time.Time
    14  }
    15  
    16  func (g *getNowDummyImpl) GetNow() time.Time {
    17  	return g.dummy
    18  }
    19  
    20  type timerDummyImpl struct {
    21  	resetArg []time.Duration
    22  	timer    *common.TimerImpl
    23  }
    24  
    25  func (t *timerDummyImpl) GetChan() <-chan time.Time {
    26  	return t.timer.C
    27  }
    28  
    29  func (t *timerDummyImpl) Reset(to, now time.Time) {
    30  	t.resetArg = append(t.resetArg, to.Sub(now))
    31  	t.timer.Reset(to, now)
    32  }
    33  func (t *timerDummyImpl) Stop() {
    34  	t.timer.Stop()
    35  }