예제 #1
0
 public void GetKeys()
 {
     DObject
     .Create(new { Array = new[] { 1, 2, 3 }, Object = new object(), String = "string" })
     .GetKeys()
     .ShouldBe(new[] { "Array", "Object", "String" });
 }
예제 #2
0
 public void CreateFromUnsupportedType()
 {
     Should.Throw <InvalidCastException>(() => DObject.Create(null));
     Should.Throw <InvalidCastException>(() => DObject.Create(""));
     Should.Throw <InvalidCastException>(() => DObject.Create(0));
     Should.Throw <InvalidCastException>(() => DObject.Create(new object[] { }));
 }
예제 #3
0
 public void CreateFromDictionary()
 {
     DObject.Create(new Dictionary <string, object> {
         { "key", "value" }
     })
     .Contains("key");
 }
예제 #4
0
        public void Serialization()
        {
            var source = new { children = new[] { new { child = new { value = 1 } } } };

            var d1   = DObject.Create(source);
            var json = JsonConvert.SerializeObject(d1);
            var d2   = JsonConvert.DeserializeObject <DObject>(json);

            d1.GetObjects("children").Single().GetObject("child").GetString("value").ShouldBe("1");
            d2.GetObjects("children").Single().GetObject("child").GetString("value").ShouldBe("1");
        }
예제 #5
0
        public void GetObjects()
        {
            var source = new
            {
                items = new[]
                {
                    new { value = "1" },
                    new { value = "2" },
                    new { value = "3" }
                }
            };

            var objects = DObject.Create(source).GetObjects("items");

            objects.Count().ShouldBe(3);
            objects.ElementAt(0).GetString("value").ShouldBe("1");
            objects.ElementAt(1).GetString("value").ShouldBe("2");
            objects.ElementAt(2).GetString("value").ShouldBe("3");
        }
예제 #6
0
 public void GetObject()
 {
     DObject.Create(new { @object = new { @string = "1" } })
     .GetObject("object").GetString("string").ShouldBe("1");
 }
예제 #7
0
 public void CreateFromObject()
 {
     DObject.Create(new { key = "value" })
     .Contains("key");
 }