25 lines
532 B
Go
25 lines
532 B
Go
package scheduler
|
|
|
|
import (
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
func TestJobDue(t *testing.T) {
|
|
now := time.Date(2026, 3, 7, 12, 0, 0, 0, time.UTC)
|
|
|
|
if !jobDue(nil, now, time.Hour) {
|
|
t.Fatalf("expected nil lastFinishedAt to be due")
|
|
}
|
|
|
|
lastFinished := now.Add(-59 * time.Minute)
|
|
if jobDue(&lastFinished, now, time.Hour) {
|
|
t.Fatalf("expected job not to be due before interval elapsed")
|
|
}
|
|
|
|
lastFinished = now.Add(-1 * time.Hour)
|
|
if !jobDue(&lastFinished, now, time.Hour) {
|
|
t.Fatalf("expected job to be due at interval boundary")
|
|
}
|
|
}
|