public void CakeMailDateTimeConverter_ReadJson_Throws_exception_when_content_is_not_a_string() { // Arrange var json = "1234"; var converter = new CakeMailDateTimeConverter(); var reader = new JsonTextReader(new StringReader(json)); reader.Read(); // Act Should.Throw <Exception>(() => { var result = (DateTime)converter.ReadJson(reader, typeof(DateTime), null, null); }); }
public void CakeMailDateTimeConverter_ReadJson_Successfully_parses_empty_date() { // Arrange var json = "\"0000-00-00 00:00:00\""; var converter = new CakeMailDateTimeConverter(); var reader = new JsonTextReader(new StringReader(json)); reader.Read(); // Act var result = (DateTime)converter.ReadJson(reader, typeof(DateTime), null, null); // Assert result.ShouldBe(DateTime.MinValue); }
public void CakeMailDateTimeConverter_ReadJson_Successfully_parses_null_date() { // Arrange var json = "null"; var converter = new CakeMailDateTimeConverter(); var reader = new JsonTextReader(new StringReader(json)); reader.Read(); // Act var result = (DateTime?)converter.ReadJson(reader, typeof(DateTime), null, null); // Assert result.ShouldBeNull(); }
public void CakeMailDateTimeConverter_ReadJson_Successfully_parses_json() { // Arrange var json = "\"2015-03-11 15:21:00\""; var converter = new CakeMailDateTimeConverter(); var reader = new JsonTextReader(new StringReader(json)); reader.Read(); // Act var result = (DateTime)converter.ReadJson(reader, typeof(DateTime), null, null); // Assert result.Year.ShouldBe(2015); result.Month.ShouldBe(3); result.Day.ShouldBe(11); result.Hour.ShouldBe(15); result.Minute.ShouldBe(21); result.Second.ShouldBe(0); }