public void CreateZonedDateTimeSerializer_NullPattern_Throws() { Assert.Throws <ArgumentNullException>( () => NodaSerializerDefinitions.CreateZonedDateTimeSerializer( new DateTimeZoneCache(TzdbDateTimeZoneSource.Default), null)); }
public void Deserialize_WrongCaseForId_ReturnsCorrectDateTimeZone() { var serializer = NodaSerializerDefinitions.CreateDateTimeZoneSerializer(DateTimeZoneProviders.Tzdb); var expectedTimeZone = DateTimeZoneProviders.Tzdb["America/Los_Angeles"]; var actualTimeZone = serializer.Deserialize("amerICa/LOS_angELes"); Assert.Equal(expectedTimeZone, actualTimeZone); }
public void ZonedDateTimeConverter() { // Deliberately give it an ambiguous local time, in both ways. var zone = DateTimeZoneProviders.Tzdb["Europe/London"]; var earlierValue = new ZonedDateTime(new LocalDateTime(2012, 10, 28, 1, 30), zone, Offset.FromHours(1)); var laterValue = new ZonedDateTime(new LocalDateTime(2012, 10, 28, 1, 30), zone, Offset.FromHours(0)); string earlierJson = "2012-10-28T01:30:00+01 Europe/London"; string laterJson = "2012-10-28T01:30:00Z Europe/London"; var converter = NodaSerializerDefinitions.CreateZonedDateTimeSerializer(DateTimeZoneProviders.Tzdb); AssertConversions(earlierValue, earlierJson, converter); AssertConversions(laterValue, laterJson, converter); }
public void UseRawSerializer_Default_False() { var serializer = NodaSerializerDefinitions.CreateDateTimeZoneSerializer(DateTimeZoneProviders.Tzdb); Assert.False(serializer.UseRawSerializer); }
public void Deserialize_EmptyId_Throws() { var serializer = NodaSerializerDefinitions.CreateDateTimeZoneSerializer(DateTimeZoneProviders.Tzdb); Assert.Throws <DateTimeZoneNotFoundException>(() => serializer.Deserialize(string.Empty)); }
public void Serialize_NullDateTimeZone_NullString() { var serializer = NodaSerializerDefinitions.CreateDateTimeZoneSerializer(DateTimeZoneProviders.Tzdb); Assert.Null(serializer.Serialize(null)); }