MCPcopy Index your code
hub / github.com/coder/coder / TestConvertProvisionerJob_Unit

Function TestConvertProvisionerJob_Unit

coderd/provisionerjobs_internal_test.go:30–143  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

28)
29
30func TestConvertProvisionerJob_Unit(t *testing.T) {
31 t.Parallel()
32 validNullTimeMock := sql.NullTime{
33 Time: dbtime.Now(),
34 Valid: true,
35 }
36 invalidNullTimeMock := sql.NullTime{}
37 errorMock := sql.NullString{
38 String: "error",
39 Valid: true,
40 }
41 testCases := []struct {
42 name string
43 input database.ProvisionerJob
44 expected codersdk.ProvisionerJob
45 }{
46 {
47 name: "empty",
48 input: database.ProvisionerJob{
49 JobStatus: database.ProvisionerJobStatusPending,
50 },
51 expected: codersdk.ProvisionerJob{
52 Status: codersdk.ProvisionerJobPending,
53 },
54 },
55 {
56 name: "cancellation pending",
57 input: database.ProvisionerJob{
58 CanceledAt: validNullTimeMock,
59 CompletedAt: invalidNullTimeMock,
60 JobStatus: database.ProvisionerJobStatusCanceling,
61 },
62 expected: codersdk.ProvisionerJob{
63 CanceledAt: &validNullTimeMock.Time,
64 Status: codersdk.ProvisionerJobCanceling,
65 },
66 },
67 {
68 name: "cancellation failed",
69 input: database.ProvisionerJob{
70 CanceledAt: validNullTimeMock,
71 CompletedAt: validNullTimeMock,
72 Error: errorMock,
73 JobStatus: database.ProvisionerJobStatusFailed,
74 },
75 expected: codersdk.ProvisionerJob{
76 CanceledAt: &validNullTimeMock.Time,
77 CompletedAt: &validNullTimeMock.Time,
78 Status: codersdk.ProvisionerJobFailed,
79 Error: errorMock.String,
80 },
81 },
82 {
83 name: "cancellation succeeded",
84 input: database.ProvisionerJob{
85 CanceledAt: validNullTimeMock,
86 CompletedAt: validNullTimeMock,
87 JobStatus: database.ProvisionerJobStatusCanceled,

Callers

nothing calls this directly

Calls 4

NowFunction · 0.92
convertProvisionerJobFunction · 0.85
RunMethod · 0.65
EqualMethod · 0.45

Tested by

no test coverage detected