Extend BOM test (dotnet/corefx#42279)
authorSteve Harter <steveharter@users.noreply.github.com>
Fri, 1 Nov 2019 00:48:02 +0000 (19:48 -0500)
committerStephen Toub <stoub@microsoft.com>
Fri, 1 Nov 2019 00:48:02 +0000 (20:48 -0400)
Commit migrated from https://github.com/dotnet/corefx/commit/5d92ba3e6bf4bf8f211f43ad4717572a2a3b4539

src/libraries/System.Text.Json/tests/Serialization/Stream.ReadTests.cs

index cfa4b33..d6d9818 100644 (file)
@@ -203,9 +203,11 @@ namespace System.Text.Json.Serialization.Tests
             stream.Position = 0;
             value = await JsonSerializer.DeserializeAsync<JsonElement[]>(stream, options);
 
-            // Verify first and last elements.
-            VerifyElement(0);
-            VerifyElement(count - 1);
+            // Verify each element.
+            for (int i = 0; i < count; i++)
+            {
+                VerifyElement(i);
+            }
 
             // Round trip and verify.
             stream.Position = 3; // Skip the BOM.
@@ -218,10 +220,12 @@ namespace System.Text.Json.Serialization.Tests
             void VerifyElement(int index)
             {
                 Assert.Equal(JsonValueKind.Object, value[index].GetProperty("Test").ValueKind);
+                Assert.False(value[index].GetProperty("Test").EnumerateObject().MoveNext());
                 Assert.Equal(JsonValueKind.Array, value[index].GetProperty("Test2").ValueKind);
                 Assert.Equal(0, value[index].GetProperty("Test2").GetArrayLength());
                 Assert.Equal(JsonValueKind.Object, value[index].GetProperty("Test3").ValueKind);
                 Assert.Equal(JsonValueKind.Object, value[index].GetProperty("Test3").GetProperty("Value").ValueKind);
+                Assert.False(value[index].GetProperty("Test3").GetProperty("Value").EnumerateObject().MoveNext());
                 Assert.Equal(0, value[index].GetProperty("PersonType").GetInt32());
                 Assert.Equal(2, value[index].GetProperty("Id").GetInt32());
             }