-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathadmin_test.go
More file actions
67 lines (61 loc) · 2.91 KB
/
admin_test.go
File metadata and controls
67 lines (61 loc) · 2.91 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
package queue
import (
"context"
"errors"
"testing"
)
func TestQueueAdminHelpers_UnsupportedOnSync(t *testing.T) {
q, err := NewSync()
if err != nil {
t.Fatalf("new sync queue failed: %v", err)
}
if SupportsQueueAdmin(q) {
t.Fatal("expected sync queue to not support queue admin")
}
if _, err := q.ListJobs(context.Background(), ListJobsOptions{Queue: "default", State: JobStatePending}); !errors.Is(err, ErrQueueAdminUnsupported) {
t.Fatalf("expected queue admin unsupported for ListJobs, got %v", err)
}
if err := q.RetryJob(context.Background(), "default", "job-1"); !errors.Is(err, ErrQueueAdminUnsupported) {
t.Fatalf("expected queue admin unsupported for RetryJob, got %v", err)
}
if err := q.CancelJob(context.Background(), "job-1"); !errors.Is(err, ErrQueueAdminUnsupported) {
t.Fatalf("expected queue admin unsupported for CancelJob, got %v", err)
}
if err := q.DeleteJob(context.Background(), "default", "job-1"); !errors.Is(err, ErrQueueAdminUnsupported) {
t.Fatalf("expected queue admin unsupported for DeleteJob, got %v", err)
}
if err := q.ClearQueue(context.Background(), "default"); !errors.Is(err, ErrQueueAdminUnsupported) {
t.Fatalf("expected queue admin unsupported for ClearQueue, got %v", err)
}
if history, err := q.History(context.Background(), "default", QueueHistoryHour); err != nil {
t.Fatalf("expected history to be supported on sync queue, got %v", err)
} else if len(history) == 0 {
t.Fatalf("expected at least one history point, got %+v", history)
}
if _, err := ListJobs(context.Background(), q, ListJobsOptions{Queue: "default", State: JobStatePending}); !errors.Is(err, ErrQueueAdminUnsupported) {
t.Fatalf("expected package ListJobs unsupported, got %v", err)
}
if err := RetryJob(context.Background(), q, "default", "job-1"); !errors.Is(err, ErrQueueAdminUnsupported) {
t.Fatalf("expected package RetryJob unsupported, got %v", err)
}
if err := CancelJob(context.Background(), q, "job-1"); !errors.Is(err, ErrQueueAdminUnsupported) {
t.Fatalf("expected package CancelJob unsupported, got %v", err)
}
if err := DeleteJob(context.Background(), q, "default", "job-1"); !errors.Is(err, ErrQueueAdminUnsupported) {
t.Fatalf("expected package DeleteJob unsupported, got %v", err)
}
if err := ClearQueue(context.Background(), q, "default"); !errors.Is(err, ErrQueueAdminUnsupported) {
t.Fatalf("expected package ClearQueue unsupported, got %v", err)
}
if history, err := QueueHistory(context.Background(), q, "default", QueueHistoryHour); err != nil {
t.Fatalf("expected package QueueHistory supported on sync queue, got %v", err)
} else if len(history) == 0 {
t.Fatalf("expected package QueueHistory points, got %+v", history)
}
}
func TestListJobsOptionsNormalize(t *testing.T) {
got := (ListJobsOptions{}).Normalize()
if got.Queue != "default" || got.State != JobStatePending || got.Page != 1 || got.PageSize != 50 {
t.Fatalf("unexpected normalized options: %+v", got)
}
}