public void FromSecondsDouble_NormalTime() { TimeZoneInfo romance = TimeZoneInfo.FindSystemTimeZoneById("Romance Standard Time"); DateTimeOffset resultUtc = UnixTimeUtils.FromSeconds(1643886000d); DateTimeOffset resultDenmark = TimeZoneInfo.ConvertTime(resultUtc, romance); Assert.AreEqual("2022-02-03T11:00:00+00:00", resultUtc.ToString(Iso8601Constants.DateTimeSeconds)); Assert.AreEqual("2022-02-03T12:00:00+01:00", resultDenmark.ToString(Iso8601Constants.DateTimeSeconds)); }
public void FromSecondsInt64_SummerTime() { TimeZoneInfo romance = TimeZoneInfo.FindSystemTimeZoneById("Romance Standard Time"); DateTimeOffset resultUtc = UnixTimeUtils.FromSeconds(1629182100L); DateTimeOffset resultDenmark = TimeZoneInfo.ConvertTime(resultUtc, romance); Assert.AreEqual("2021-08-17T06:35:00+00:00", resultUtc.ToString(Iso8601Constants.DateTimeSeconds)); Assert.AreEqual("2021-08-17T08:35:00+02:00", resultDenmark.ToString(Iso8601Constants.DateTimeSeconds)); }
public void GetDateTimeOffsetFromUnixTime_Int64() { var samples = new[] { new { Timestamp = 1483384930L, Date = new DateTimeOffset(2017, 1, 2, 19, 22, 10, TimeSpan.Zero) }, new { Timestamp = 1483384930L, Date = new DateTimeOffset(2017, 1, 2, 18, 22, 10, TimeSpan.FromHours(-1)) }, new { Timestamp = 1483384930L, Date = new DateTimeOffset(2017, 1, 2, 20, 22, 10, TimeSpan.FromHours(+1)) } }; int n = 1; foreach (var sample in samples) { Assert.AreEqual(sample.Date, TimeHelper.GetDateTimeOffsetFromUnixTime(sample.Timestamp), $"\n\n#{n}. {sample.Timestamp} (TimeHelper)"); Assert.AreEqual(sample.Date, TimeUtils.GetDateTimeOffsetFromUnixTime(sample.Timestamp), $"\n\n#{n}. {sample.Timestamp} (TimeUtils)"); Assert.AreEqual(sample.Date, UnixTimeUtils.FromSeconds(sample.Timestamp), $"\n\n#{n}. {sample.Timestamp} (UnixTimeUtils)"); n++; } }
public static DateTimeOffset GetDateTimeOffsetFromUnixTime(int timestamp) { return(UnixTimeUtils.FromSeconds(timestamp)); }
public static DateTime GetDateTimeFromUnixTime(string timestamp) { return(UnixTimeUtils.FromSeconds(timestamp).UtcDateTime.ToUniversalTime()); }