diff --git a/Build/Newtonsoft.Json.nuspec b/Build/Newtonsoft.Json.nuspec index 1afa7503..af4057ee 100644 --- a/Build/Newtonsoft.Json.nuspec +++ b/Build/Newtonsoft.Json.nuspec @@ -2,7 +2,7 @@ Newtonsoft.Json - 6.0.2 + 6.0.3 Json.NET Json.NET is a popular high-performance JSON framework for .NET James Newton-King diff --git a/Build/build.ps1 b/Build/build.ps1 index 41c47533..8aa8f63a 100644 --- a/Build/build.ps1 +++ b/Build/build.ps1 @@ -1,7 +1,7 @@ properties { - $zipFileName = "Json60r2.zip" + $zipFileName = "Json60r3.zip" $majorVersion = "6.0" - $majorWithReleaseVersion = "6.0.2" + $majorWithReleaseVersion = "6.0.3" $version = GetVersion $majorWithReleaseVersion $signAssemblies = $false $signKeyPath = "C:\Development\Releases\newtonsoft.snk" diff --git a/Src/Newtonsoft.Json.Tests/Serialization/JsonSerializerTest.cs b/Src/Newtonsoft.Json.Tests/Serialization/JsonSerializerTest.cs index 8a69a8e4..1a334579 100644 --- a/Src/Newtonsoft.Json.Tests/Serialization/JsonSerializerTest.cs +++ b/Src/Newtonsoft.Json.Tests/Serialization/JsonSerializerTest.cs @@ -7860,6 +7860,50 @@ Parameter name: value", Assert.AreEqual("abc", v.Value); } + [Test] + public void DateFormatStringWithDateTimeAndCulture() + { + CultureInfo culture = new CultureInfo("tr-TR"); + + DateTime dt = new DateTime(2000, 12, 22); + string dateFormatString = "yyyy'-pie-'MMM'-'dddd'-'dd"; + JsonSerializerSettings settings = new JsonSerializerSettings + { + DateFormatString = dateFormatString, + Culture = culture + }; + + string json = JsonConvert.SerializeObject(dt, settings); + + Assert.AreEqual(@"""2000-pie-Ara-Cuma-22""", json); + + DateTime dt1 = JsonConvert.DeserializeObject(json, settings); + + Assert.AreEqual(dt, dt1); + + JsonTextReader reader = new JsonTextReader(new StringReader(json)) + { + DateFormatString = dateFormatString, + Culture = culture + }; + JValue v = (JValue)JToken.ReadFrom(reader); + + Assert.AreEqual(JTokenType.Date, v.Type); + Assert.AreEqual(typeof(DateTime), v.Value.GetType()); + Assert.AreEqual(dt, (DateTime)v.Value); + + reader = new JsonTextReader(new StringReader(@"""2000-pie-Dec-Friday-22""")) + { + DateFormatString = dateFormatString, + Culture = culture + }; + v = (JValue)JToken.ReadFrom(reader); + + Assert.AreEqual(JTokenType.String, v.Type); + Assert.AreEqual(typeof(string), v.Value.GetType()); + Assert.AreEqual("2000-pie-Dec-Friday-22", v.Value); + } + [Test] public void DateFormatStringWithDictionaryKey() {