From 48ae58196ddf51430134130ca1e144981fdf3b36 Mon Sep 17 00:00:00 2001 From: Steve Sanderson Date: Mon, 12 Mar 2018 10:52:59 +0100 Subject: [PATCH] Add unit test to show JsonUtil handling IList types --- test/Microsoft.AspNetCore.Blazor.Test/JsonUtilTest.cs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/test/Microsoft.AspNetCore.Blazor.Test/JsonUtilTest.cs b/test/Microsoft.AspNetCore.Blazor.Test/JsonUtilTest.cs index 6ba63ac2f7..2f064d29e4 100644 --- a/test/Microsoft.AspNetCore.Blazor.Test/JsonUtilTest.cs +++ b/test/Microsoft.AspNetCore.Blazor.Test/JsonUtilTest.cs @@ -1,6 +1,7 @@ // Copyright (c) .NET Foundation. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. +using System.Collections.Generic; using Xunit; namespace Microsoft.AspNetCore.Blazor.Test @@ -47,12 +48,13 @@ namespace Microsoft.AspNetCore.Blazor.Test Id = 1844, Name = "Athos", Pets = new[] { "Aramis", "Porthos", "D'Artagnan" }, - Hobby = Hobbies.Swordfighting + Hobby = Hobbies.Swordfighting, + Nicknames = new List { "Comte de la Fère", "Armand" } }; // Act/Assert Assert.Equal( - "{\"Id\":1844,\"Name\":\"Athos\",\"Pets\":[\"Aramis\",\"Porthos\",\"D'Artagnan\"],\"Hobby\":2}", + "{\"Id\":1844,\"Name\":\"Athos\",\"Pets\":[\"Aramis\",\"Porthos\",\"D'Artagnan\"],\"Hobby\":2,\"Nicknames\":[\"Comte de la Fère\",\"Armand\"]}", JsonUtil.Serialize(person)); } @@ -60,7 +62,7 @@ namespace Microsoft.AspNetCore.Blazor.Test public void CanDeserializeClassFromJson() { // Arrange - var json = "{\"Id\":1844,\"Name\":\"Athos\",\"Pets\":[\"Aramis\",\"Porthos\",\"D'Artagnan\"],\"Hobby\":2}"; + var json = "{\"Id\":1844,\"Name\":\"Athos\",\"Pets\":[\"Aramis\",\"Porthos\",\"D'Artagnan\"],\"Hobby\":2,\"Nicknames\":[\"Comte de la Fère\",\"Armand\"]}"; // Act var person = JsonUtil.Deserialize(json); @@ -70,6 +72,7 @@ namespace Microsoft.AspNetCore.Blazor.Test Assert.Equal("Athos", person.Name); Assert.Equal(new[] { "Aramis", "Porthos", "D'Artagnan" }, person.Pets); Assert.Equal(Hobbies.Swordfighting, person.Hobby); + Assert.Equal(new[] { "Comte de la Fère", "Armand" }, person.Nicknames); } class Person @@ -78,6 +81,7 @@ namespace Microsoft.AspNetCore.Blazor.Test public string Name { get; set; } public string[] Pets { get; set; } public Hobbies Hobby { get; set; } + public IList Nicknames { get; set; } } enum Hobbies { Reading = 1, Swordfighting = 2 }