(t *testing.T)
| 103 | } |
| 104 | |
| 105 | func TestJobOperations(t *testing.T) { |
| 106 | work := New(Config{}) |
| 107 | job := createTestJob("ops-test", tempopb.JobType_JOB_TYPE_COMPACTION) |
| 108 | err := work.AddJob(job) |
| 109 | require.NoError(t, err) |
| 110 | |
| 111 | t.Run("start job", func(t *testing.T) { |
| 112 | work.StartJob("ops-test") |
| 113 | retrievedJob := work.GetJob("ops-test") |
| 114 | require.Equal(t, tempopb.JobStatus_JOB_STATUS_RUNNING, retrievedJob.Status) |
| 115 | require.False(t, retrievedJob.StartTime.IsZero()) |
| 116 | }) |
| 117 | |
| 118 | t.Run("complete job", func(t *testing.T) { |
| 119 | work.CompleteJob("ops-test") |
| 120 | retrievedJob := work.GetJob("ops-test") |
| 121 | require.Equal(t, tempopb.JobStatus_JOB_STATUS_SUCCEEDED, retrievedJob.Status) |
| 122 | require.False(t, retrievedJob.EndTime.IsZero()) |
| 123 | }) |
| 124 | |
| 125 | t.Run("set compaction output", func(t *testing.T) { |
| 126 | output := []string{"output1", "output2"} |
| 127 | work.SetJobCompactionOutput("ops-test", output) |
| 128 | retrievedJob := work.GetJob("ops-test") |
| 129 | require.Equal(t, output, retrievedJob.GetCompactionOutput()) |
| 130 | }) |
| 131 | |
| 132 | t.Run("fail job", func(t *testing.T) { |
| 133 | failJob := createTestJob("fail-test", tempopb.JobType_JOB_TYPE_COMPACTION) |
| 134 | err = work.AddJob(failJob) |
| 135 | require.NoError(t, err) |
| 136 | work.StartJob("fail-test") |
| 137 | |
| 138 | work.FailJob("fail-test") |
| 139 | retrievedJob := work.GetJob("fail-test") |
| 140 | require.Equal(t, tempopb.JobStatus_JOB_STATUS_FAILED, retrievedJob.Status) |
| 141 | require.False(t, retrievedJob.EndTime.IsZero()) |
| 142 | }) |
| 143 | |
| 144 | t.Run("remove job", func(t *testing.T) { |
| 145 | removeJob := createTestJob("remove-test", tempopb.JobType_JOB_TYPE_COMPACTION) |
| 146 | err = work.AddJob(removeJob) |
| 147 | require.NoError(t, err) |
| 148 | |
| 149 | // Verify job exists |
| 150 | require.NotNil(t, work.GetJob("remove-test")) |
| 151 | |
| 152 | // Remove job |
| 153 | work.RemoveJob("remove-test") |
| 154 | |
| 155 | // Verify job is gone |
| 156 | require.Nil(t, work.GetJob("remove-test")) |
| 157 | }) |
| 158 | } |
| 159 | |
| 160 | func TestListJobs(t *testing.T) { |
| 161 | work := New(Config{}) |
nothing calls this directly
no test coverage detected