diff --git a/Src/Newtonsoft.Json.Tests/Issues/Issue1512.cs b/Src/Newtonsoft.Json.Tests/Issues/Issue1512.cs index 09b7bddb..f231f9f5 100644 --- a/Src/Newtonsoft.Json.Tests/Issues/Issue1512.cs +++ b/Src/Newtonsoft.Json.Tests/Issues/Issue1512.cs @@ -25,6 +25,8 @@ #if !(NET20 || NET35 || NET40) using System; +using System.Collections; +using System.Collections.Generic; using System.Collections.Immutable; #if DNXCORE50 using System.Reflection; @@ -41,17 +43,35 @@ namespace Newtonsoft.Json.Tests.Issues public class Issue1512 : TestFixtureBase { [Test] - public void Test() + public void Test_Constructor() { var json = @"[ { - ""Inners"": [] + ""Inners"": [""hi"",""bye""] } ]"; ImmutableArray result = JsonConvert.DeserializeObject>(json); Assert.AreEqual(1, result.Length); - Assert.AreEqual(0, result[0].Inners.Value.Length); + Assert.AreEqual(2, result[0].Inners.Value.Length); + Assert.AreEqual("hi", result[0].Inners.Value[0]); + Assert.AreEqual("bye", result[0].Inners.Value[1]); + } + + [Test] + public void Test_Property() + { + var json = @"[ + { + ""Inners"": [""hi"",""bye""] + } + ]"; + ImmutableArray result = JsonConvert.DeserializeObject>(json); + + Assert.AreEqual(1, result.Length); + Assert.AreEqual(2, result[0].Inners.Value.Length); + Assert.AreEqual("hi", result[0].Inners.Value[0]); + Assert.AreEqual("bye", result[0].Inners.Value[1]); } } @@ -65,14 +85,9 @@ namespace Newtonsoft.Json.Tests.Issues public ImmutableArray? Inners { get; } } - public sealed class Inner + public sealed class OuterProperty { - public Inner(string id) - { - this.Id = id; - } - - public string Id { get; } + public ImmutableArray? Inners { get; set; } } } #endif \ No newline at end of file