Skip to content

Commit 45b7905

Browse files
authored
test: improve code coverage (#116)
1 parent 51879fa commit 45b7905

File tree

3 files changed

+34
-0
lines changed

3 files changed

+34
-0
lines changed

quartz/cron_test.go

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,27 @@ func iterate(prev int64, cronTrigger *quartz.CronTrigger, iterations int) (strin
299299

300300
func TestCronExpressionError(t *testing.T) {
301301
tests := []string{
302+
"-1 * * * * *",
303+
"X * * * * *",
304+
"* X * * * *",
305+
"* * X * * *",
306+
"* * * X * *",
307+
"* * * * X *",
308+
"* * * * * X",
309+
"* * * * * * X",
310+
"1,X/1 * * * * *",
311+
"1,X-1 * * * * *",
312+
"1-2-3 * * * * *",
313+
"X-2 * * * * *",
314+
"1-X * * * * *",
315+
"100-200 * * * * *",
316+
"1/2/3 * * * * *",
317+
"1-2-3/4 * * * * *",
318+
"X-2/4 * * * * *",
319+
"1-X/4 * * * * *",
320+
"X/4 * * * * *",
302321
"*/X * * * * *",
322+
"200/100 * * * * *",
303323
}
304324
for _, test := range tests {
305325
t.Run(test, func(t *testing.T) {

quartz/job_key_test.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,13 @@ import (
1111
func TestJobKey(t *testing.T) {
1212
name := "jobName"
1313
jobKey1 := quartz.NewJobKey(name)
14+
assert.Equal(t, jobKey1.Name(), name)
15+
assert.Equal(t, jobKey1.Group(), quartz.DefaultGroup)
1416
assert.Equal(t, jobKey1.String(), fmt.Sprintf("%s::%s", quartz.DefaultGroup, name))
1517

1618
jobKey2 := quartz.NewJobKeyWithGroup(name, "")
19+
assert.Equal(t, jobKey2.Name(), name)
20+
assert.Equal(t, jobKey2.Group(), quartz.DefaultGroup)
1721
assert.Equal(t, jobKey2.String(), fmt.Sprintf("%s::%s", quartz.DefaultGroup, name))
1822

1923
if !jobKey1.Equals(jobKey2) {

quartz/scheduler_test.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import (
1313
"github.com/reugn/go-quartz/internal/assert"
1414
"github.com/reugn/go-quartz/internal/mock"
1515
"github.com/reugn/go-quartz/job"
16+
"github.com/reugn/go-quartz/matcher"
1617
"github.com/reugn/go-quartz/quartz"
1718
)
1819

@@ -307,6 +308,11 @@ func TestScheduler_JobWithRetries(t *testing.T) {
307308
)
308309
err := sched.ScheduleJob(jobDetail, quartz.NewRunOnceTrigger(time.Millisecond))
309310
assert.IsNil(t, err)
311+
err = sched.ScheduleJob(jobDetail, quartz.NewRunOnceTrigger(time.Millisecond))
312+
assert.ErrorIs(t, err, quartz.ErrIllegalState)
313+
jobDetail.Options().Replace = true
314+
err = sched.ScheduleJob(jobDetail, quartz.NewRunOnceTrigger(time.Millisecond))
315+
assert.IsNil(t, err)
310316

311317
assert.Equal(t, funcRetryJob.JobStatus(), job.StatusNA)
312318
assert.Equal(t, int(atomic.LoadInt32(&n)), 0)
@@ -425,6 +431,10 @@ func TestScheduler_PauseResumeErrors(t *testing.T) {
425431
err = sched.PauseJob(quartz.NewJobKey("funcJob2"))
426432
assert.ErrorIs(t, err, quartz.ErrJobNotFound)
427433

434+
assert.Equal(t, len(sched.GetJobKeys(matcher.JobPaused())), 1)
435+
assert.Equal(t, len(sched.GetJobKeys(matcher.JobActive())), 0)
436+
assert.Equal(t, len(sched.GetJobKeys()), 1)
437+
428438
sched.Stop()
429439
}
430440

0 commit comments

Comments
 (0)