优化结构
This commit is contained in:
@@ -308,3 +308,25 @@ func TestStartReturnsAfterStop(t *testing.T) {
|
||||
t.Fatal("Start() did not return after Stop()")
|
||||
}
|
||||
}
|
||||
|
||||
func TestStopBeforeStartPreventsSchedulerStartup(t *testing.T) {
|
||||
scheduler := newTestTaskScheduler(&workerTaskRepo{})
|
||||
if err := scheduler.Stop(context.Background()); err != nil {
|
||||
t.Fatalf("Stop() error = %v", err)
|
||||
}
|
||||
started := make(chan error, 1)
|
||||
go func() {
|
||||
started <- scheduler.Start(context.Background())
|
||||
}()
|
||||
select {
|
||||
case err := <-started:
|
||||
if err != nil {
|
||||
t.Fatalf("Start() error = %v", err)
|
||||
}
|
||||
case <-time.After(time.Second):
|
||||
t.Fatal("Start() did not return after a pre-start Stop()")
|
||||
}
|
||||
if got := len(scheduler.standard.Entries()) + len(scheduler.seconds.Entries()); got != 0 {
|
||||
t.Fatalf("pre-start Stop() left cron entries: %d", got)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user