jobqueue: Query job dependents
This commit is contained in:
parent
099b34b301
commit
0fe3f1b2ae
6 changed files with 64 additions and 16 deletions
|
|
@ -211,7 +211,11 @@ func testDependencies(t *testing.T, q jobqueue.JobQueue) {
|
|||
require.ElementsMatch(t, []uuid.UUID{one, two}, r)
|
||||
|
||||
j := pushTestJob(t, q, "test", nil, []uuid.UUID{one, two}, "")
|
||||
jobType, _, _, queued, started, finished, canceled, deps, err := q.JobStatus(j)
|
||||
_, _, _, _, _, _, _, _, dependents, err := q.JobStatus(one)
|
||||
require.NoError(t, err)
|
||||
require.ElementsMatch(t, dependents, []uuid.UUID{j})
|
||||
|
||||
jobType, _, _, queued, started, finished, canceled, deps, dependents, err := q.JobStatus(j)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, jobType, "test")
|
||||
require.True(t, !queued.IsZero())
|
||||
|
|
@ -219,10 +223,11 @@ func testDependencies(t *testing.T, q jobqueue.JobQueue) {
|
|||
require.True(t, finished.IsZero())
|
||||
require.False(t, canceled)
|
||||
require.ElementsMatch(t, deps, []uuid.UUID{one, two})
|
||||
require.Empty(t, dependents)
|
||||
|
||||
require.Equal(t, j, finishNextTestJob(t, q, "test", testResult{}, []uuid.UUID{one, two}))
|
||||
|
||||
jobType, _, result, queued, started, finished, canceled, deps, err := q.JobStatus(j)
|
||||
jobType, _, result, queued, started, finished, canceled, deps, dependents, err := q.JobStatus(j)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, jobType, "test")
|
||||
require.True(t, !queued.IsZero())
|
||||
|
|
@ -230,6 +235,7 @@ func testDependencies(t *testing.T, q jobqueue.JobQueue) {
|
|||
require.True(t, !finished.IsZero())
|
||||
require.False(t, canceled)
|
||||
require.ElementsMatch(t, deps, []uuid.UUID{one, two})
|
||||
require.Empty(t, dependents)
|
||||
|
||||
err = json.Unmarshal(result, &testResult{})
|
||||
require.NoError(t, err)
|
||||
|
|
@ -240,7 +246,7 @@ func testDependencies(t *testing.T, q jobqueue.JobQueue) {
|
|||
two := pushTestJob(t, q, "test", nil, nil, "")
|
||||
|
||||
j := pushTestJob(t, q, "test", nil, []uuid.UUID{one, two}, "")
|
||||
jobType, _, _, queued, started, finished, canceled, deps, err := q.JobStatus(j)
|
||||
jobType, _, _, queued, started, finished, canceled, deps, _, err := q.JobStatus(j)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, jobType, "test")
|
||||
require.True(t, !queued.IsZero())
|
||||
|
|
@ -256,7 +262,7 @@ func testDependencies(t *testing.T, q jobqueue.JobQueue) {
|
|||
|
||||
require.Equal(t, j, finishNextTestJob(t, q, "test", testResult{}, []uuid.UUID{one, two}))
|
||||
|
||||
jobType, _, result, queued, started, finished, canceled, deps, err := q.JobStatus(j)
|
||||
jobType, _, result, queued, started, finished, canceled, deps, _, err := q.JobStatus(j)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, jobType, "test")
|
||||
require.True(t, !queued.IsZero())
|
||||
|
|
@ -352,7 +358,7 @@ func testCancel(t *testing.T, q jobqueue.JobQueue) {
|
|||
require.NotEmpty(t, id)
|
||||
err = q.CancelJob(id)
|
||||
require.NoError(t, err)
|
||||
jobType, _, result, _, _, _, canceled, _, err := q.JobStatus(id)
|
||||
jobType, _, result, _, _, _, canceled, _, _, err := q.JobStatus(id)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, jobType, "clownfish")
|
||||
require.True(t, canceled)
|
||||
|
|
@ -372,7 +378,7 @@ func testCancel(t *testing.T, q jobqueue.JobQueue) {
|
|||
require.Equal(t, json.RawMessage("null"), args)
|
||||
err = q.CancelJob(id)
|
||||
require.NoError(t, err)
|
||||
jobType, _, result, _, _, _, canceled, _, err = q.JobStatus(id)
|
||||
jobType, _, result, _, _, _, canceled, _, _, err = q.JobStatus(id)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, jobType, "clownfish")
|
||||
require.True(t, canceled)
|
||||
|
|
@ -395,7 +401,7 @@ func testCancel(t *testing.T, q jobqueue.JobQueue) {
|
|||
err = q.CancelJob(id)
|
||||
require.Error(t, err)
|
||||
require.Equal(t, jobqueue.ErrNotRunning, err)
|
||||
jobType, _, result, _, _, _, canceled, _, err = q.JobStatus(id)
|
||||
jobType, _, result, _, _, _, canceled, _, _, err = q.JobStatus(id)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, jobType, "clownfish")
|
||||
require.False(t, canceled)
|
||||
|
|
@ -612,7 +618,7 @@ func test100dequeuers(t *testing.T, q jobqueue.JobQueue) {
|
|||
// try to do some other operations on the jobqueue
|
||||
id := pushTestJob(t, q, "clownfish", nil, nil, "")
|
||||
|
||||
_, _, _, _, _, _, _, _, err := q.JobStatus(id)
|
||||
_, _, _, _, _, _, _, _, _, err := q.JobStatus(id)
|
||||
require.NoError(t, err)
|
||||
|
||||
finishNextTestJob(t, q, "clownfish", testResult{}, nil)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue