-
Notifications
You must be signed in to change notification settings - Fork 143
/
ListOfPocoDeserializeTests.cs
79 lines (66 loc) · 2.87 KB
/
ListOfPocoDeserializeTests.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
//-----------------------------------------------------------------------
// <copyright file="<file>.cs" company="The Outercurve Foundation">
// Copyright (c) 2011, The Outercurve Foundation.
//
// Licensed under the MIT License (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.opensource.org/licenses/mit-license.php
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>
// <author>Nathan Totten (ntotten.com), Jim Zimmerman (jimzimmerman.com) and Prabir Shrestha (prabir.me)</author>
// <website>https://github.com/facebook-csharp-sdk/simple-json</website>
//-----------------------------------------------------------------------
namespace SimpleJsonTests.PocoDeserializerTests
{
using System.Collections.Generic;
#if NUNIT
using TestClass = NUnit.Framework.TestFixtureAttribute;
using TestMethod = NUnit.Framework.TestAttribute;
using TestCleanup = NUnit.Framework.TearDownAttribute;
using TestInitialize = NUnit.Framework.SetUpAttribute;
using ClassCleanup = NUnit.Framework.TestFixtureTearDownAttribute;
using ClassInitialize = NUnit.Framework.TestFixtureSetUpAttribute;
using NUnit.Framework;
#else
#if NETFX_CORE
using Microsoft.VisualStudio.TestPlatform.UnitTestFramework;
#else
using Microsoft.VisualStudio.TestTools.UnitTesting;
#endif
#endif
public class ListOfPocoDeserializeTests
{
[TestMethod]
public void CorrectlyDeserializesListOfPoco()
{
string json = "{\"colleges\":[{\"id\": 16777217,\"value\":\"Harvard\"},{\"id\": 16777218,\"value\":\"Columbia\"}]}";
var result = SimpleJson.SimpleJson.DeserializeObject<autocomplete_data>(json);
Assert.IsNotNull(result);
Assert.IsNotNull(result.colleges);
Assert.AreEqual(2, result.colleges.Count);
var harvard = result.colleges[0];
var columbia = result.colleges[1];
Assert.IsNotNull(harvard);
Assert.AreEqual(16777217, harvard.id);
Assert.AreEqual("Harvard", harvard.value);
Assert.IsNotNull(columbia);
Assert.AreEqual(16777218, columbia.id);
Assert.AreEqual("Columbia", columbia.value);
}
class autocomplete_data
{
public List<college> colleges { get; set; }
}
class college
{
public long id { get; set; }
public string value { get; set; }
}
}
}