@@ -68,31 +68,28 @@ func (p *RunPrinter) PrintAll(run *trickest.Run, subJobs []trickest.SubJob, vers
6868 output .WriteString (p .formatKeyValue ("Created" ,
6969 run .CreatedDate .In (time .Local ).Format (time .RFC1123 )+ " (" + FormatDuration (time .Since (* run .CreatedDate ))+ " ago)" ))
7070 }
71- if run .Status != "PENDING" {
72- if run .StartedDate != nil {
73- output .WriteString (p .formatKeyValue ("Started" ,
74- run .StartedDate .In (time .Local ).Format (time .RFC1123 )+ " (" + FormatDuration (time .Since (* run .StartedDate ))+ " ago)" ))
75- }
71+ if run .Status != "PENDING" && run .StartedDate != nil {
72+ output .WriteString (p .formatKeyValue ("Started" ,
73+ run .StartedDate .In (time .Local ).Format (time .RFC1123 )+ " (" + FormatDuration (time .Since (* run .StartedDate ))+ " ago)" ))
7674 }
77- if run .Finished {
75+ if run .Finished && run . CompletedDate != nil {
7876 output .WriteString (p .formatKeyValue ("Finished" ,
7977 run .CompletedDate .In (time .Local ).Format (time .RFC1123 )+ " (" + FormatDuration (time .Since (* run .CompletedDate ))+ " ago)" ))
8078 }
8179 output .WriteString ("\n " )
8280
8381 // Print duration and average duration
84- if run .Finished {
85- output .WriteString (p .formatKeyValue ("Duration" , FormatDuration (run .CompletedDate .Sub (* run .StartedDate ))))
86- } else if run .Status == "RUNNING" {
87- output .WriteString (p .formatKeyValue ("Duration" , FormatDuration (time .Since (* run .StartedDate ))))
82+ durationStr := "N/A"
83+ if duration := run .Duration (); duration > 0 {
84+ durationStr = FormatDuration (duration )
8885 }
89- if run .AverageDuration != nil {
90- if run .AverageDuration .Duration > 0 {
91- output .WriteString (p .formatKeyValue ("Average Duration" , FormatDuration (run .AverageDuration .Duration )))
92- } else {
93- output .WriteString (p .formatKeyValue ("Average Duration" , "N/A" ))
94- }
86+ output .WriteString (p .formatKeyValue ("Duration" , durationStr ))
87+
88+ avgDurationStr := "N/A"
89+ if run .AverageDuration != nil && run .AverageDuration .Duration > 0 {
90+ avgDurationStr = FormatDuration (run .AverageDuration .Duration )
9591 }
92+ output .WriteString (p .formatKeyValue ("Average Duration" , avgDurationStr ))
9693 output .WriteString ("\n " )
9794
9895 // Print subjob insights
0 commit comments