mirror of https://github.com/go-co-op/gocron.git
return an error if duration is zero (#701)
This commit is contained in:
parent
41dd412a49
commit
5b1cf9c619
|
|
@ -9,6 +9,7 @@ var (
|
|||
ErrDailyJobAtTimesNil = fmt.Errorf("gocron: DailyJob: atTimes must not be nil")
|
||||
ErrDailyJobHours = fmt.Errorf("gocron: DailyJob: atTimes hours must be between 0 and 23 inclusive")
|
||||
ErrDailyJobMinutesSeconds = fmt.Errorf("gocron: DailyJob: atTimes minutes and seconds must be between 0 and 59 inclusive")
|
||||
ErrDurationJobIntervalZero = fmt.Errorf("gocron: DurationJob: time interval is 0")
|
||||
ErrDurationRandomJobMinMax = fmt.Errorf("gocron: DurationRandomJob: minimum duration must be less than maximum duration")
|
||||
ErrEventListenerFuncNil = fmt.Errorf("gocron: eventListenerFunc must not be nil")
|
||||
ErrJobNotFound = fmt.Errorf("gocron: job not found")
|
||||
|
|
|
|||
3
job.go
3
job.go
|
|
@ -148,6 +148,9 @@ type durationJobDefinition struct {
|
|||
}
|
||||
|
||||
func (d durationJobDefinition) setup(j *internalJob, _ *time.Location) error {
|
||||
if d.duration == 0 {
|
||||
return ErrDurationJobIntervalZero
|
||||
}
|
||||
j.jobSchedule = &durationJob{duration: d.duration}
|
||||
return nil
|
||||
}
|
||||
|
|
|
|||
|
|
@ -478,6 +478,12 @@ func TestScheduler_NewJobErrors(t *testing.T) {
|
|||
nil,
|
||||
ErrCronJobParse,
|
||||
},
|
||||
{
|
||||
"duration job time interval is zero",
|
||||
DurationJob(0 * time.Second),
|
||||
nil,
|
||||
ErrDurationJobIntervalZero,
|
||||
},
|
||||
{
|
||||
"random with bad min/max",
|
||||
DurationRandomJob(
|
||||
|
|
|
|||
Loading…
Reference in New Issue