Xander Sigler 26bf9cd7ec
All checks were successful
continuous-integration/drone/push Build is passing
Fixed runtime resolution and parsing
2023-12-09 20:54:34 -08:00

36 lines
1.0 KiB
C#

using System;
using System.Collections.Generic;
using System.Runtime.Serialization;
namespace AdventOfCode.Models
{
[DataContract]
[Serializable]
public class AOCResponse
{
[DataMember]
public DateTime Date { get { return DateTime.Now; } }
[DataMember]
public object Answer { get; set; }
[DataMember]
public bool Status { get; set; }
[DataMember]
public IEnumerable<string> Debug { get; set; }
[DataMember]
public string StackTrace { get; set; }
private string timeInTicks;
[DataMember]
public string RunTime { get { return FormatRunTime(); } set { timeInTicks = value; } }
public string FormatRunTime()
{
var ts = TimeSpan.FromTicks(long.Parse(timeInTicks));
var microseconds = (ts.Ticks - (ts.Milliseconds * TimeSpan.TicksPerMillisecond)) / (TimeSpan.TicksPerMillisecond / 1000);
return $"Run time is {ts.Minutes}min {ts.Seconds}sec {ts.Milliseconds}ms {microseconds}µs";
}
}
}