-Added support for 24 hour ISO dates
This commit is contained in:
@@ -70,6 +70,32 @@ namespace Newtonsoft.Json.Tests.Utilities
|
||||
Assert.AreEqual(value, parsedDt);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void Parse24HourDateTime()
|
||||
{
|
||||
DateTime dt;
|
||||
Assert.IsTrue(DateTimeUtils.TryParseDateTimeIso(CreateStringReference("2000-12-15T24:00:00Z"), DateTimeZoneHandling.RoundtripKind, out dt));
|
||||
Assert.AreEqual(new DateTime(2000, 12, 16, 0, 0, 0, DateTimeKind.Utc), dt);
|
||||
|
||||
Assert.IsFalse(DateTimeUtils.TryParseDateTimeIso(CreateStringReference("2000-12-15T24:01:00Z"), DateTimeZoneHandling.RoundtripKind, out dt));
|
||||
Assert.IsFalse(DateTimeUtils.TryParseDateTimeIso(CreateStringReference("2000-12-15T24:00:01Z"), DateTimeZoneHandling.RoundtripKind, out dt));
|
||||
Assert.IsFalse(DateTimeUtils.TryParseDateTimeIso(CreateStringReference("2000-12-15T24:00:00.0000001Z"), DateTimeZoneHandling.RoundtripKind, out dt));
|
||||
}
|
||||
|
||||
#if !NET20
|
||||
[Test]
|
||||
public void Parse24HourDateTimeOffset()
|
||||
{
|
||||
DateTimeOffset dt;
|
||||
Assert.IsTrue(DateTimeUtils.TryParseDateTimeOffsetIso(CreateStringReference("2000-12-15T24:00:00Z"), out dt));
|
||||
Assert.AreEqual(new DateTimeOffset(2000, 12, 16, 0, 0, 0, TimeSpan.Zero), dt);
|
||||
|
||||
Assert.IsFalse(DateTimeUtils.TryParseDateTimeOffsetIso(CreateStringReference("2000-12-15T24:01:00Z"), out dt));
|
||||
Assert.IsFalse(DateTimeUtils.TryParseDateTimeOffsetIso(CreateStringReference("2000-12-15T24:00:01Z"), out dt));
|
||||
Assert.IsFalse(DateTimeUtils.TryParseDateTimeOffsetIso(CreateStringReference("2000-12-15T24:00:00.0000001Z"), out dt));
|
||||
}
|
||||
#endif
|
||||
|
||||
[Test]
|
||||
public void NewDateTimeParse()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user