public void DeserializeObject()
        {
            var instance1 = JsonStreamConvert.DeserializeObject <MyTestClass>(ExpectedJson);

            Assert.Equal(ExpectedInstance.Value, instance1.Value);

            var instance2 = (MyTestClass)JsonStreamConvert.DeserializeObject(ExpectedJson, typeof(MyTestClass));

            Assert.Equal(ExpectedInstance.Value, instance2.Value);
        }
        public void ConvertToSimpleTypes()
        {
            var json  = @"[null, true, 100, ""x"", {""a"": 1}]";
            var value = JsonStreamConvert.DeserializeObject(json, JsonStreamConvert.ConvertSimpleTypes);
            var list  = Assert.IsType <List <object> >(value);

            Assert.Collection(list,
                              e => Assert.Null(e),
                              e => Assert.Equal(true, e),
                              e => Assert.Equal((double)100, e),
                              e => Assert.Equal("x", e),
                              e =>
            {
                var dict = Assert.IsType <Dictionary <string, object> >(e);
                Assert.Equal((double)1, dict["a"]);
            }
                              );
        }
 public void DeserializeObjectFailsForClassWithNoConverter()
 {
     Assert.Throws <ArgumentException>(() =>
                                       JsonStreamConvert.DeserializeObject <TestClassWithNoConverter>("{}"));
 }