public void JsonConvertSerializer_DeserializeTest()
        {
            // Arrange
            var person = new Person
            {
                BirthDay = new DateTime(2013, 09, 02, 06, 45, 43),
                LastModified = new DateTime(2013, 10, 21, 18, 23, 12),
                Name = "Name!"
            };

            var json = @"{
              ""name"": ""Name!"",
              ""birth_day"": ""2013-09-02T06:45:43"",
              ""last_modified"": ""2013-10-21T18:23:12""
            }";

            // Act
            var deserializedPerson = JsonConvert.DeserializeObject<Person>(json, new JsonSerializerSettings
            {
                ContractResolver = new SnakeCasePropertyNamesContractResolver()
            });

            // Assert
            Assert.Equal(person.Name, deserializedPerson.Name);
            Assert.Equal(person.BirthDay, deserializedPerson.BirthDay);
            Assert.Equal(person.LastModified, deserializedPerson.LastModified);
        }
        public void JsonConvertSerializer_SerializeTest()
        {
            // Arrange
            var person = new Person
            {
                BirthDay = new DateTime(2013, 09, 02, 06, 45, 43),
                LastModified = new DateTime(2013, 10, 21, 18, 23, 12),
                Name = "Name!"
            };

            // Act
            var json = JsonConvert.SerializeObject(person, Formatting.Indented, new JsonSerializerSettings
            {
                ContractResolver = new SnakeCasePropertyNamesContractResolver()
            });

            // Assert
            Assert.Equal(@"{
              ""name"": ""Name!"",
              ""birth_day"": ""2013-09-02T06:45:43"",
              ""last_modified"": ""2013-10-21T18:23:12""
            }", json);
        }