mirror of
https://github.com/zoriya/octokit.net.git
synced 2025-12-06 07:16:09 +00:00
Obsolete UnixTimestampExtensions methods (#2121)
* The equivalent of `public static DateTimeOffset FromUnixTime(this long unixTime)` exists in the framework since .NET Framework 4.6: https://docs.microsoft.com/en-us/dotnet/api/system.datetimeoffset.fromunixtimeseconds * The equivalent of `public static long ToUnixTime(this DateTimeOffset date)` exists in the framework since .NET Framework 4.6: https://docs.microsoft.com/en-us/dotnet/api/system.datetimeoffset.tounixtimeseconds
This commit is contained in:
@@ -4,7 +4,6 @@ using System.Collections.ObjectModel;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using NSubstitute;
|
||||
using Octokit.Helpers;
|
||||
using Xunit;
|
||||
|
||||
namespace Octokit.Tests.Clients
|
||||
@@ -232,10 +231,10 @@ namespace Octokit.Tests.Clients
|
||||
var codeFrequency = await statisticsClient.GetCodeFrequency("owner", "name");
|
||||
|
||||
Assert.Equal(2, codeFrequency.AdditionsAndDeletionsByWeek.Count);
|
||||
Assert.Equal(firstTimestamp.FromUnixTime(), codeFrequency.AdditionsAndDeletionsByWeek[0].Timestamp);
|
||||
Assert.Equal(DateTimeOffset.FromUnixTimeSeconds(firstTimestamp), codeFrequency.AdditionsAndDeletionsByWeek[0].Timestamp);
|
||||
Assert.Equal(10, codeFrequency.AdditionsAndDeletionsByWeek[0].Additions);
|
||||
Assert.Equal(52, codeFrequency.AdditionsAndDeletionsByWeek[0].Deletions);
|
||||
Assert.Equal(secondTimestamp.FromUnixTime(), codeFrequency.AdditionsAndDeletionsByWeek[1].Timestamp);
|
||||
Assert.Equal(DateTimeOffset.FromUnixTimeSeconds(secondTimestamp), codeFrequency.AdditionsAndDeletionsByWeek[1].Timestamp);
|
||||
Assert.Equal(0, codeFrequency.AdditionsAndDeletionsByWeek[1].Additions);
|
||||
Assert.Equal(9, codeFrequency.AdditionsAndDeletionsByWeek[1].Deletions);
|
||||
}
|
||||
@@ -260,10 +259,10 @@ namespace Octokit.Tests.Clients
|
||||
var codeFrequency = await statisticsClient.GetCodeFrequency(1);
|
||||
|
||||
Assert.Equal(2, codeFrequency.AdditionsAndDeletionsByWeek.Count);
|
||||
Assert.Equal(firstTimestamp.FromUnixTime(), codeFrequency.AdditionsAndDeletionsByWeek[0].Timestamp);
|
||||
Assert.Equal(DateTimeOffset.FromUnixTimeSeconds(firstTimestamp), codeFrequency.AdditionsAndDeletionsByWeek[0].Timestamp);
|
||||
Assert.Equal(10, codeFrequency.AdditionsAndDeletionsByWeek[0].Additions);
|
||||
Assert.Equal(52, codeFrequency.AdditionsAndDeletionsByWeek[0].Deletions);
|
||||
Assert.Equal(secondTimestamp.FromUnixTime(), codeFrequency.AdditionsAndDeletionsByWeek[1].Timestamp);
|
||||
Assert.Equal(DateTimeOffset.FromUnixTimeSeconds(secondTimestamp), codeFrequency.AdditionsAndDeletionsByWeek[1].Timestamp);
|
||||
Assert.Equal(0, codeFrequency.AdditionsAndDeletionsByWeek[1].Additions);
|
||||
Assert.Equal(9, codeFrequency.AdditionsAndDeletionsByWeek[1].Deletions);
|
||||
}
|
||||
@@ -290,10 +289,10 @@ namespace Octokit.Tests.Clients
|
||||
var codeFrequency = await client.GetCodeFrequency("owner", "name", cancellationToken);
|
||||
|
||||
Assert.Equal(2, codeFrequency.AdditionsAndDeletionsByWeek.Count);
|
||||
Assert.Equal(firstTimestamp.FromUnixTime(), codeFrequency.AdditionsAndDeletionsByWeek[0].Timestamp);
|
||||
Assert.Equal(DateTimeOffset.FromUnixTimeSeconds(firstTimestamp), codeFrequency.AdditionsAndDeletionsByWeek[0].Timestamp);
|
||||
Assert.Equal(10, codeFrequency.AdditionsAndDeletionsByWeek[0].Additions);
|
||||
Assert.Equal(52, codeFrequency.AdditionsAndDeletionsByWeek[0].Deletions);
|
||||
Assert.Equal(secondTimestamp.FromUnixTime(), codeFrequency.AdditionsAndDeletionsByWeek[1].Timestamp);
|
||||
Assert.Equal(DateTimeOffset.FromUnixTimeSeconds(secondTimestamp), codeFrequency.AdditionsAndDeletionsByWeek[1].Timestamp);
|
||||
Assert.Equal(0, codeFrequency.AdditionsAndDeletionsByWeek[1].Additions);
|
||||
Assert.Equal(9, codeFrequency.AdditionsAndDeletionsByWeek[1].Deletions);
|
||||
}
|
||||
@@ -320,10 +319,10 @@ namespace Octokit.Tests.Clients
|
||||
var codeFrequency = await client.GetCodeFrequency(1, cancellationToken);
|
||||
|
||||
Assert.Equal(2, codeFrequency.AdditionsAndDeletionsByWeek.Count);
|
||||
Assert.Equal(firstTimestamp.FromUnixTime(), codeFrequency.AdditionsAndDeletionsByWeek[0].Timestamp);
|
||||
Assert.Equal(DateTimeOffset.FromUnixTimeSeconds(firstTimestamp), codeFrequency.AdditionsAndDeletionsByWeek[0].Timestamp);
|
||||
Assert.Equal(10, codeFrequency.AdditionsAndDeletionsByWeek[0].Additions);
|
||||
Assert.Equal(52, codeFrequency.AdditionsAndDeletionsByWeek[0].Deletions);
|
||||
Assert.Equal(secondTimestamp.FromUnixTime(), codeFrequency.AdditionsAndDeletionsByWeek[1].Timestamp);
|
||||
Assert.Equal(DateTimeOffset.FromUnixTimeSeconds(secondTimestamp), codeFrequency.AdditionsAndDeletionsByWeek[1].Timestamp);
|
||||
Assert.Equal(0, codeFrequency.AdditionsAndDeletionsByWeek[1].Additions);
|
||||
Assert.Equal(9, codeFrequency.AdditionsAndDeletionsByWeek[1].Deletions);
|
||||
}
|
||||
|
||||
@@ -1,46 +0,0 @@
|
||||
using System;
|
||||
using Octokit.Helpers;
|
||||
using Xunit;
|
||||
|
||||
public class UnixTimestampExtensionsTests
|
||||
{
|
||||
public class TheToUnixTimeMethod
|
||||
{
|
||||
[Fact]
|
||||
public void ReturnsUnixEpochCorrectly()
|
||||
{
|
||||
var epoch = new DateTimeOffset(1970, 1, 1, 0, 0, 0, TimeSpan.Zero);
|
||||
Assert.Equal(0, epoch.ToUnixTime());
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void ReturnsRandomDateCorrectly()
|
||||
{
|
||||
var epoch = new DateTimeOffset(1975, 1, 23, 1, 1, 1, TimeSpan.Zero);
|
||||
Assert.Equal(159670861, epoch.ToUnixTime());
|
||||
}
|
||||
}
|
||||
|
||||
public class TheFromUnixTimeMethod
|
||||
{
|
||||
[Fact]
|
||||
public void ReturnsDateFromUnixEpochCorrectly()
|
||||
{
|
||||
var epoch = new DateTimeOffset(1970, 1, 1, 0, 0, 0, TimeSpan.Zero);
|
||||
|
||||
var result = ((long)0).FromUnixTime();
|
||||
|
||||
Assert.Equal(epoch, result);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void ReturnsDateFromRandomTimeCorrectly()
|
||||
{
|
||||
var expected = new DateTimeOffset(1975, 1, 23, 1, 1, 2, TimeSpan.Zero);
|
||||
|
||||
var result = ((long)159670862).FromUnixTime();
|
||||
|
||||
Assert.Equal(expected, result);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -7,24 +7,24 @@ namespace Octokit.Helpers
|
||||
/// </summary>
|
||||
public static class UnixTimestampExtensions
|
||||
{
|
||||
static readonly DateTimeOffset epoch = new DateTimeOffset(1970, 1, 1, 0, 0, 0, TimeSpan.Zero);
|
||||
|
||||
/// <summary>
|
||||
/// Convert a Unix tick to a <see cref="DateTimeOffset"/> with UTC offset
|
||||
/// </summary>
|
||||
/// <param name="unixTime">UTC tick</param>
|
||||
[Obsolete("Use DateTimeOffset.FromUnixTimeSeconds(long seconds) instead.")]
|
||||
public static DateTimeOffset FromUnixTime(this long unixTime)
|
||||
{
|
||||
return epoch.AddSeconds(unixTime);
|
||||
return DateTimeOffset.FromUnixTimeSeconds(unixTime);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert <see cref="DateTimeOffset"/> with UTC offset to a Unix tick
|
||||
/// </summary>
|
||||
/// <param name="date">Date Time with UTC offset</param>
|
||||
[Obsolete("Use DateTimeOffset.ToUnixTimeSeconds() instead.")]
|
||||
public static long ToUnixTime(this DateTimeOffset date)
|
||||
{
|
||||
return Convert.ToInt64((date.ToUniversalTime() - epoch).TotalSeconds);
|
||||
return date.ToUnixTimeSeconds();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,6 @@ using System.Globalization;
|
||||
using System.Runtime.Serialization;
|
||||
#endif
|
||||
using System.Security;
|
||||
using Octokit.Helpers;
|
||||
using Octokit.Internal;
|
||||
|
||||
namespace Octokit
|
||||
@@ -57,7 +56,7 @@ namespace Octokit
|
||||
/// The date and time at which the current rate limit window resets
|
||||
/// </summary>
|
||||
[Parameter(Key = "ignoreThisField")]
|
||||
public DateTimeOffset Reset { get { return ResetAsUtcEpochSeconds.FromUnixTime(); } }
|
||||
public DateTimeOffset Reset => DateTimeOffset.FromUnixTimeSeconds(ResetAsUtcEpochSeconds);
|
||||
|
||||
/// <summary>
|
||||
/// The date and time at which the current rate limit window resets - in UTC epoch seconds
|
||||
|
||||
@@ -2,7 +2,6 @@ using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Globalization;
|
||||
using Octokit.Helpers;
|
||||
|
||||
namespace Octokit
|
||||
{
|
||||
@@ -33,7 +32,7 @@ namespace Octokit
|
||||
{
|
||||
throw new ArgumentException("Addition and deletion aggregate must only contain three data points.");
|
||||
}
|
||||
Timestamp = additionsAndDeletions[0].FromUnixTime();
|
||||
Timestamp = DateTimeOffset.FromUnixTimeSeconds(additionsAndDeletions[0]);
|
||||
Additions = Convert.ToInt32(additionsAndDeletions[1]);
|
||||
Deletions = Convert.ToInt32(additionsAndDeletions[2]);
|
||||
}
|
||||
|
||||
@@ -4,7 +4,6 @@ using System.Collections.ObjectModel;
|
||||
using System.Diagnostics;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using Octokit.Helpers;
|
||||
|
||||
namespace Octokit
|
||||
{
|
||||
@@ -37,10 +36,7 @@ namespace Octokit
|
||||
/// </summary>
|
||||
public long Week { get; protected set; }
|
||||
|
||||
public DateTimeOffset WeekTimestamp
|
||||
{
|
||||
get { return Week.FromUnixTime(); }
|
||||
}
|
||||
public DateTimeOffset WeekTimestamp => DateTimeOffset.FromUnixTimeSeconds(Week);
|
||||
|
||||
/// <summary>
|
||||
/// Get the number of commits made on any <see cref="DayOfWeek"/>
|
||||
|
||||
@@ -2,7 +2,6 @@ using System;
|
||||
using System.Diagnostics;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Globalization;
|
||||
using Octokit.Helpers;
|
||||
|
||||
namespace Octokit
|
||||
{
|
||||
@@ -37,7 +36,7 @@ namespace Octokit
|
||||
|
||||
public DateTimeOffset Week
|
||||
{
|
||||
get { return W.FromUnixTime(); }
|
||||
get { return DateTimeOffset.FromUnixTimeSeconds(W); }
|
||||
}
|
||||
|
||||
public int Additions
|
||||
|
||||
@@ -66,7 +66,6 @@ using System.Text;
|
||||
using Octokit.Reflection;
|
||||
#if !SIMPLE_JSON_NO_LINQ_EXPRESSION
|
||||
using System.Linq.Expressions;
|
||||
using Octokit.Helpers;
|
||||
#endif
|
||||
#if SIMPLE_JSON_DYNAMIC
|
||||
using System.Dynamic;
|
||||
@@ -1433,11 +1432,11 @@ namespace Octokit
|
||||
{
|
||||
if (valueIsLong && (type == typeof(DateTimeOffset) || type == typeof(DateTimeOffset?)))
|
||||
{
|
||||
return ((long)value).FromUnixTime();
|
||||
return DateTimeOffset.FromUnixTimeSeconds((long)value);
|
||||
}
|
||||
else if (valueIsLong && (type == typeof(DateTime) || type == typeof(DateTime?)))
|
||||
{
|
||||
return ((long)value).FromUnixTime().DateTime;
|
||||
return DateTimeOffset.FromUnixTimeSeconds((long)value).DateTime;
|
||||
}
|
||||
obj = type == typeof(int) || type == typeof(long) || type == typeof(double) || type == typeof(float) || type == typeof(bool) || type == typeof(decimal) || type == typeof(byte) || type == typeof(short)
|
||||
? Convert.ChangeType(value, type, CultureInfo.InvariantCulture)
|
||||
|
||||
Reference in New Issue
Block a user