public void Verify() { Assert.Equal((short)1, MyInt16); Assert.Equal((int)2, MyInt32); Assert.Equal((long)3, MyInt64); Assert.Equal((ushort)4, MyUInt16); Assert.Equal((uint)5, MyUInt32); Assert.Equal((ulong)6, MyUInt64); Assert.Equal((byte)7, MyByte); Assert.Equal((sbyte)8, MySByte); Assert.Equal('a', MyChar); Assert.Equal("Hello", MyString); Assert.Equal(3.3m, MyDecimal); Assert.False(MyBooleanFalse); Assert.True(MyBooleanTrue); Assert.Equal(1.1f, MySingle); Assert.Equal(2.2d, MyDouble); Assert.Equal(new DateTime(2019, 1, 30, 12, 1, 2, DateTimeKind.Utc), MyDateTime); Assert.Equal(new DateTimeOffset(2019, 1, 30, 12, 1, 2, new TimeSpan(1, 0, 0)), MyDateTimeOffset); Assert.Equal(new Guid("1B33498A-7B7D-4DDA-9C13-F6AA4AB449A6"), MyGuid); Assert.Equal(new Uri("https://github.com/dotnet/runtime"), MyUri); Assert.Equal(SampleEnum.Two, MyEnum); Assert.Equal(SampleEnumInt64.MinNegative, MyInt64Enum); Assert.Equal(SampleEnumUInt64.Max, MyUInt64Enum); Assert.Equal(11, MySimpleStruct.One); Assert.Equal(1.9999, MySimpleStruct.Two); Assert.Equal(64, MySimpleTestStruct.MyInt64); Assert.Equal("Hello", MySimpleTestStruct.MyString); Assert.Equal(32, MySimpleTestStruct.MyInt32Array[0]); Assert.Equal((short)1, MyInt16Array[0]); Assert.Equal((int)2, MyInt32Array[0]); Assert.Equal((long)3, MyInt64Array[0]); Assert.Equal((ushort)4, MyUInt16Array[0]); Assert.Equal((uint)5, MyUInt32Array[0]); Assert.Equal((ulong)6, MyUInt64Array[0]); Assert.Equal((byte)7, MyByteArray[0]); Assert.Equal((sbyte)8, MySByteArray[0]); Assert.Equal('a', MyCharArray[0]); Assert.Equal("Hello", MyStringArray[0]); Assert.Equal(3.3m, MyDecimalArray[0]); Assert.False(MyBooleanFalseArray[0]); Assert.True(MyBooleanTrueArray[0]); Assert.Equal(1.1f, MySingleArray[0]); Assert.Equal(2.2d, MyDoubleArray[0]); Assert.Equal(new DateTime(2019, 1, 30, 12, 1, 2, DateTimeKind.Utc), MyDateTimeArray[0]); Assert.Equal(new DateTimeOffset(2019, 1, 30, 12, 1, 2, new TimeSpan(1, 0, 0)), MyDateTimeOffsetArray[0]); Assert.Equal(new Guid("1B33498A-7B7D-4DDA-9C13-F6AA4AB449A6"), MyGuidArray[0]); Assert.Equal(new Uri("https://github.com/dotnet/runtime"), MyUriArray[0]); Assert.Equal(SampleEnum.Two, MyEnumArray[0]); Assert.Equal(10, MyInt16TwoDimensionArray[0][0]); Assert.Equal(11, MyInt16TwoDimensionArray[0][1]); Assert.Equal(20, MyInt16TwoDimensionArray[1][0]); Assert.Equal(21, MyInt16TwoDimensionArray[1][1]); Assert.Equal(10, MyInt16TwoDimensionList[0][0]); Assert.Equal(11, MyInt16TwoDimensionList[0][1]); Assert.Equal(20, MyInt16TwoDimensionList[1][0]); Assert.Equal(21, MyInt16TwoDimensionList[1][1]); Assert.Equal(11, MyInt16ThreeDimensionArray[0][0][0]); Assert.Equal(12, MyInt16ThreeDimensionArray[0][0][1]); Assert.Equal(13, MyInt16ThreeDimensionArray[0][1][0]); Assert.Equal(14, MyInt16ThreeDimensionArray[0][1][1]); Assert.Equal(21, MyInt16ThreeDimensionArray[1][0][0]); Assert.Equal(22, MyInt16ThreeDimensionArray[1][0][1]); Assert.Equal(23, MyInt16ThreeDimensionArray[1][1][0]); Assert.Equal(24, MyInt16ThreeDimensionArray[1][1][1]); Assert.Equal(11, MyInt16ThreeDimensionList[0][0][0]); Assert.Equal(12, MyInt16ThreeDimensionList[0][0][1]); Assert.Equal(13, MyInt16ThreeDimensionList[0][1][0]); Assert.Equal(14, MyInt16ThreeDimensionList[0][1][1]); Assert.Equal(21, MyInt16ThreeDimensionList[1][0][0]); Assert.Equal(22, MyInt16ThreeDimensionList[1][0][1]); Assert.Equal(23, MyInt16ThreeDimensionList[1][1][0]); Assert.Equal(24, MyInt16ThreeDimensionList[1][1][1]); Assert.Equal("Hello", MyStringList[0]); IEnumerator enumerator = MyStringIEnumerable.GetEnumerator(); enumerator.MoveNext(); { // Verifying after deserialization. if (enumerator.Current is JsonElement currentJsonElement) { Assert.Equal("Hello", currentJsonElement.GetString()); } // Verifying test data. else { Assert.Equal("Hello", enumerator.Current); } } { // Verifying after deserialization. if (MyStringIList[0] is JsonElement currentJsonElement) { Assert.Equal("Hello", currentJsonElement.GetString()); } // Verifying test data. else { Assert.Equal("Hello", enumerator.Current); } } enumerator = MyStringICollection.GetEnumerator(); enumerator.MoveNext(); { // Verifying after deserialization. if (enumerator.Current is JsonElement currentJsonElement) { Assert.Equal("Hello", currentJsonElement.GetString()); } // Verifying test data. else { Assert.Equal("Hello", enumerator.Current); } } Assert.Equal("Hello", MyStringIEnumerableT.First()); Assert.Equal("Hello", MyStringIListT[0]); Assert.Equal("Hello", MyStringICollectionT.First()); Assert.Equal("Hello", MyStringIReadOnlyCollectionT.First()); Assert.Equal("Hello", MyStringIReadOnlyListT[0]); Assert.Equal("Hello", MyStringISetT.First()); enumerator = MyStringToStringIDict.GetEnumerator(); enumerator.MoveNext(); { // Verifying after deserialization. if (enumerator.Current is JsonElement currentJsonElement) { IEnumerator jsonEnumerator = currentJsonElement.EnumerateObject(); jsonEnumerator.MoveNext(); JsonProperty property = (JsonProperty)jsonEnumerator.Current; Assert.Equal("key", property.Name); Assert.Equal("value", property.Value.GetString()); } // Verifying test data. else { DictionaryEntry entry = (DictionaryEntry)enumerator.Current; Assert.Equal("key", entry.Key); if (entry.Value is JsonElement element) { Assert.Equal("value", element.GetString()); } else { Assert.Equal("value", entry.Value); } } } Assert.Equal("value", MyStringToStringGenericDict["key"]); Assert.Equal("value", MyStringToStringGenericIDict["key"]); Assert.Equal("value", MyStringToStringGenericIReadOnlyDict["key"]); Assert.Equal("value", MyStringToStringImmutableDict["key"]); Assert.Equal("value", MyStringToStringIImmutableDict["key"]); Assert.Equal("value", MyStringToStringImmutableSortedDict["key"]); Assert.Equal("myKey", MyStringToStringKeyValuePair.Key); Assert.Equal("myValue", MyStringToStringKeyValuePair.Value); Assert.Equal(2, MyStringStackT.Count); Assert.True(MyStringStackT.Contains("Hello")); Assert.True(MyStringStackT.Contains("World")); string[] expectedQueue = { "Hello", "World" }; int i = 0; foreach (string item in MyStringQueueT) { Assert.Equal(expectedQueue[i], item); i++; } Assert.Equal("Hello", MyStringHashSetT.First()); Assert.Equal("Hello", MyStringLinkedListT.First()); Assert.Equal("Hello", MyStringSortedSetT.First()); Assert.Equal("Hello", MyStringIImmutableListT[0]); Assert.Equal("Hello", MyStringIImmutableStackT.First()); Assert.Equal("Hello", MyStringIImmutableQueueT.First()); Assert.Equal("Hello", MyStringIImmutableSetT.First()); Assert.Equal("Hello", MyStringImmutableHashSetT.First()); Assert.Equal("Hello", MyStringImmutableListT[0]); Assert.Equal("Hello", MyStringImmutableStackT.First()); Assert.Equal("Hello", MyStringImmutablQueueT.First()); Assert.Equal("Hello", MyStringImmutableSortedSetT.First()); Assert.Null(MyListOfNullString[0]); }