github.com/ungtb10d/cli/v2@v2.0.0-20221110210412-98537dd9d6a1/pkg/cmd/run/shared/test.go (about) 1 package shared 2 3 import ( 4 "fmt" 5 "time" 6 7 workflowShared "github.com/ungtb10d/cli/v2/pkg/cmd/workflow/shared" 8 ) 9 10 var TestRunStartTime, _ = time.Parse("2006-01-02 15:04:05", "2021-02-23 04:51:00") 11 12 func TestRun(id int64, s Status, c Conclusion) Run { 13 return TestRunWithCommit(id, s, c, "cool commit") 14 } 15 16 func TestRunWithCommit(id int64, s Status, c Conclusion, commit string) Run { 17 return Run{ 18 WorkflowID: 123, 19 ID: id, 20 CreatedAt: TestRunStartTime, 21 UpdatedAt: TestRunStartTime.Add(time.Minute*4 + time.Second*34), 22 Status: s, 23 Conclusion: c, 24 Event: "push", 25 HeadBranch: "trunk", 26 JobsURL: fmt.Sprintf("https://api.github.com/runs/%d/jobs", id), 27 HeadCommit: Commit{ 28 Message: commit, 29 }, 30 HeadSha: "1234567890", 31 URL: fmt.Sprintf("https://github.com/runs/%d", id), 32 HeadRepository: Repo{ 33 Owner: struct{ Login string }{Login: "OWNER"}, 34 Name: "REPO", 35 }, 36 } 37 } 38 39 var SuccessfulRun Run = TestRun(3, Completed, Success) 40 var FailedRun Run = TestRun(1234, Completed, Failure) 41 42 var TestRuns []Run = []Run{ 43 TestRun(1, Completed, TimedOut), 44 TestRun(2, InProgress, ""), 45 SuccessfulRun, 46 TestRun(4, Completed, Cancelled), 47 FailedRun, 48 TestRun(6, Completed, Neutral), 49 TestRun(7, Completed, Skipped), 50 TestRun(8, Requested, ""), 51 TestRun(9, Queued, ""), 52 TestRun(10, Completed, Stale), 53 } 54 55 var WorkflowRuns []Run = []Run{ 56 TestRun(2, InProgress, ""), 57 SuccessfulRun, 58 FailedRun, 59 } 60 61 var SuccessfulJob Job = Job{ 62 ID: 10, 63 Status: Completed, 64 Conclusion: Success, 65 Name: "cool job", 66 StartedAt: TestRunStartTime, 67 CompletedAt: TestRunStartTime.Add(time.Minute*4 + time.Second*34), 68 URL: "https://github.com/jobs/10", 69 RunID: 3, 70 Steps: []Step{ 71 { 72 Name: "fob the barz", 73 Status: Completed, 74 Conclusion: Success, 75 Number: 1, 76 }, 77 { 78 Name: "barz the fob", 79 Status: Completed, 80 Conclusion: Success, 81 Number: 2, 82 }, 83 }, 84 } 85 86 var FailedJob Job = Job{ 87 ID: 20, 88 Status: Completed, 89 Conclusion: Failure, 90 Name: "sad job", 91 StartedAt: TestRunStartTime, 92 CompletedAt: TestRunStartTime.Add(time.Minute*4 + time.Second*34), 93 URL: "https://github.com/jobs/20", 94 RunID: 1234, 95 Steps: []Step{ 96 { 97 Name: "barf the quux", 98 Status: Completed, 99 Conclusion: Success, 100 Number: 1, 101 }, 102 { 103 Name: "quux the barf", 104 Status: Completed, 105 Conclusion: Failure, 106 Number: 2, 107 }, 108 }, 109 } 110 111 var FailedJobAnnotations []Annotation = []Annotation{ 112 { 113 JobName: "sad job", 114 Message: "the job is sad", 115 Path: "blaze.py", 116 Level: "failure", 117 StartLine: 420, 118 }, 119 } 120 121 var TestWorkflow workflowShared.Workflow = workflowShared.Workflow{ 122 Name: "CI", 123 ID: 123, 124 }