Esempio n. 1
0
        public void Can_Deserialize_Names_With_Dashes_With_Default_Root()
        {
            string           doc      = CreateJsonWithDashes();
            JsonDeserializer d        = new JsonDeserializer();
            RestResponse     response = new RestResponse {
                Content = doc
            };
            PersonForJson p = d.Deserialize <PersonForJson>(response);

            Assert.AreEqual("John Sheehan", p.Name);
            //Assert.AreEqual(new DateTime(2009, 9, 25, 0, 6, 1, DateTimeKind.Utc), p.StartDate);
            Assert.AreEqual(28, p.Age);
            Assert.AreEqual(long.MaxValue, p.BigNumber);
            Assert.AreEqual(99.9999m, p.Percent);
            Assert.AreEqual(false, p.IsCool);
            Assert.AreEqual(new Uri("http://example.com", UriKind.RelativeOrAbsolute), p.Url);
            Assert.AreEqual(new Uri("/foo/bar", UriKind.RelativeOrAbsolute), p.UrlPath);
            Assert.NotNull(p.Friends);
            Assert.AreEqual(10, p.Friends.Count);
            Assert.NotNull(p.BestFriend);
            Assert.AreEqual("The Fonz", p.BestFriend.Name);
            Assert.AreEqual(1952, p.BestFriend.Since);
            Assert.IsNotEmpty(p.Foes);
            Assert.AreEqual("Foe 1", p.Foes["dict1"].Nickname);
            Assert.AreEqual("Foe 2", p.Foes["dict2"].Nickname);
        }
Esempio n. 2
0
        public void Can_Deserialize_JsonNet_Dates()
        {
            PersonForJson person = GetPayLoad <PersonForJson>("person.json.txt");

            Assert.AreEqual(
                new DateTime(2011, 6, 30, 8, 15, 46, 929, DateTimeKind.Utc),
                person.StartDate);
        }
Esempio n. 3
0
        public void Ignore_ReadOnly_Property_That_Exists_In_Data()
        {
            string       doc      = CreateJson();
            RestResponse response = new RestResponse {
                Content = doc
            };
            JsonDeserializer d = new JsonDeserializer();
            PersonForJson    p = d.Deserialize <PersonForJson>(response);

            Assert.Null(p.ReadOnlyProxy);
        }
Esempio n. 4
0
        public void Can_Deserialize_Int_to_Bool()
        {
            JsonObject doc = new JsonObject();

            doc["IsCool"] = 1;

            JsonDeserializer d        = new JsonDeserializer();
            RestResponse     response = new RestResponse {
                Content = doc.ToString()
            };
            PersonForJson p = d.Deserialize <PersonForJson>(response);

            Assert.True(p.IsCool);
        }
Esempio n. 5
0
        public void Can_Deserialize_Quoted_Primitive()
        {
            JsonObject doc = new JsonObject();

            doc["Age"] = "28";

            JsonDeserializer d        = new JsonDeserializer();
            RestResponse     response = new RestResponse {
                Content = doc.ToString()
            };
            PersonForJson p = d.Deserialize <PersonForJson>(response);

            Assert.AreEqual(28, p.Age);
        }
Esempio n. 6
0
        public void Can_Deserialize_Guid_String_Fields()
        {
            JsonObject doc = new JsonObject();

            doc["Guid"] = GUID_STRING;

            JsonDeserializer d        = new JsonDeserializer();
            RestResponse     response = new RestResponse {
                Content = doc.ToString()
            };
            PersonForJson p = d.Deserialize <PersonForJson>(response);

            Assert.AreEqual(new Guid(GUID_STRING), p.Guid);
        }
Esempio n. 7
0
        public void Can_Deserialize_Custom_Formatted_Date()
        {
            CultureInfo  culture   = CultureInfo.InvariantCulture;
            const string format    = "dd yyyy MMM, hh:mm ss tt";
            DateTime     date      = new DateTime(2010, 2, 8, 11, 11, 11);
            var          formatted = new { StartDate = date.ToString(format, culture) };
            string       data      = SimpleJson.SerializeObject(formatted);
            RestResponse response  = new RestResponse {
                Content = data
            };
            JsonDeserializer json = new JsonDeserializer
            {
                DateFormat = format,
                Culture    = culture
            };
            PersonForJson output = json.Deserialize <PersonForJson>(response);

            Assert.AreEqual(date, output.StartDate);
        }