示例#1
0
        [Test] public void attribute_test()
        {
            SDL.Tag root = new SDL.Tag("root").ReadString("person name=\"odv\" age=50");
            Tag     p    = root.GetChild("person");

            Assert.AreEqual(p["name"], "odv");
            Assert.AreEqual(p["age"], 50);
        }
示例#2
0
        [Test] public void Int_test()
        {
            SDL.Tag root = new SDL.Tag("root").ReadString("size 4");
            Assert.AreEqual(root.Name, "root");
            Assert.AreEqual(root.GetChild("size").Value, 4);
            var s = root.GetChild("xx");

            Assert.IsNull(s);
        }
示例#3
0
        [Test] public void get_int_child_as_T_sould_return_valid_value()
        {
            SDL.Tag root = new SDL.Tag("root").ReadString("size 4");
            Assert.AreEqual(root.GetChildAs <int>("size", 0), 4);
            Assert.AreEqual(root.GetChildAs <double>("size", 0), 4D);
            Assert.AreEqual(root.GetChildAs <string>("size", "x"), "4");
            Assert.IsTrue(root.GetChildAs <bool>("size", false));

            Assert.AreEqual(root.GetChildAs <int>("no_value", 1), 1);
            Assert.AreEqual(root.GetChildAs <double>("no_value", 0), 0);
            Assert.AreEqual(root.GetChildAs <string>("no_value", "x"), "x");
            Assert.IsFalse(root.GetChildAs <bool>("no_value", false));
        }
示例#4
0
        [Test] public void list_test()
        {
            SDL.Tag root = new SDL.Tag("root").ReadString("numbers 12 53 2");
            Tag     num  = root.GetChild("numbers");

            Assert.AreEqual(num.Values.Count, 3);
            Assert.AreEqual(num.Values[0], 12);
            Assert.AreEqual(num.Values[1], 53);
            Assert.AreEqual(num.Values[2], 2);

            SCG.IList <Tag> list = num.GetChildren(false);
            Assert.AreEqual(list.Count, 0);
        }
示例#5
0
        [Test] public void get_string_child_as_T_sould_return_valid_value()
        {
            SDL.Tag root = new SDL.Tag("root").ReadString("size `a`");
            Assert.AreEqual(root.GetChildAs <int>("size", 0), 0);
            Assert.AreEqual(root.GetChildAs <double>("size", 0), 0);
            Assert.AreEqual(root.GetChildAs <string>("size", "x"), "a");
            Assert.IsFalse(root.GetChildAs <bool>("size", false));

            root = new SDL.Tag("root").ReadString("size `8`");
            Assert.AreEqual(root.GetChildAs <int>("size", 0), 8);
            Assert.AreEqual(root.GetChildAs <double>("size", 0), 8);
            Assert.AreEqual(root.GetChildAs <string>("size", "x"), "8");
            Assert.IsFalse(root.GetChildAs <bool>("size", false));
        }
示例#6
0
文件: Tag.cs 项目: Panke/SDL.NET
 public U GetChildAs <U>(string name, U defaultValue)
 {
     SDL.Tag tag = GetChild(name);
     return(tag == null ? defaultValue : tag.ValueAs <U>(defaultValue));
 }
示例#7
0
 [Test] public void simple_date()
 {
     SDL.Tag root = new SDL.Tag("root").ReadString("date 2005/12/05");
     Assert.AreEqual(root.GetChild("date").ValueAs <SDLDateTime>().DateTime
                     , new System.DateTime(2005, 12, 5));
 }
示例#8
0
 [Test] public void ticked_string_test()
 {
     SDL.Tag root = new SDL.Tag("root").ReadString("talk `I said \"something\"`");
     Assert.AreEqual(root.GetChild("talk").Value, "I said \"something\"");
 }
示例#9
0
 [Test] public void string_test()
 {
     SDL.Tag root = new SDL.Tag("root").ReadString("first_name \"Akiko\"");
     Assert.AreEqual(root.GetChild("first_name").Value, "Akiko");
 }