public void EvaluateWildcardScanNestResults() { JsonDocument o1 = JsonDocument.Parse(@"{ ""Name"": 1 }"); JsonDocument o2 = JsonDocument.Parse(@"{ ""Name"": 2 }"); JsonDocument o3 = JsonDocument.Parse(@"{ ""Name"": { ""Name"": [3] } }"); var a = JsonDocument.Parse(@"[ { ""Name"": 1 }, { ""Name"": 2 }, { ""Name"": { ""Name"": [3] } } ]"); var t = a.SelectElements("$..*").ToList(); Assert.NotNull(t); Assert.Equal(9, t.Count); Assert.True(a.DeepEquals(t[0].Value)); Assert.True(o1.DeepEquals(t[1].Value)); Assert.Equal(1, t[2].Value.GetInt32()); Assert.True(o2.DeepEquals(t[3])); Assert.Equal(2, t[4].Value.GetInt32()); Assert.True(o3.DeepEquals(t[5])); Assert.True(JsonDocument.Parse(@"{ ""Name"": [3] }").DeepEquals(t[6].Value)); Assert.True(JsonDocument.Parse("[3]").DeepEquals(t[7].Value)); Assert.Equal(3, t[8].Value.GetInt32()); Assert.True(JsonDocument.Parse("[3]").DeepEquals(t[7].Value)); }
public void EvaluateWildcardScan() { JsonDocument o1 = JsonDocument.Parse(@"{ ""Name"": 1 }"); JsonDocument o2 = JsonDocument.Parse(@"{ ""Name"": 2 }"); var a = JsonDocument.Parse(@"[{ ""Name"": 1 }, { ""Name"": 2 }]"); var t = a.SelectElements("$..*").ToList(); Assert.NotNull(t); Assert.Equal(5, t.Count); Assert.True(a.DeepEquals(t[0].Value)); Assert.True(o1.DeepEquals(t[1].Value)); Assert.Equal(1, t[2].Value.GetInt32()); Assert.True(o2.DeepEquals(t[3].Value)); Assert.Equal(2, t[4].Value.GetInt32()); }