Example #1
0
        public void AsXAttributesMixedProperties()
        {
            DateTime now = DateTime.Now;
            var obj = new { StringProp = "foo", DateTimeProp = now, Int32Prop = 32 };

            var map = obj.AsXAttributes().ToDictionary(attr => attr.Name);

            Assert.AreEqual(3, map.Count);
            Assert.AreEqual("foo", map["StringProp"].Value);
            Assert.AreEqual(now, (DateTime)map["DateTimeProp"]);
            Assert.AreEqual(32, (int)map["Int32Prop"]);
        }
Example #2
0
        public void AsXAttributesReturnsEmptyAttributesForNulls()
        {
            var obj = new { NullProp = (string)null };

            var list = obj.AsXAttributes().ToList();
            Assert.AreEqual(1, list.Count);
            Assert.AreEqual("NullProp", list[0].Name.LocalName);
            Assert.AreEqual("", list[0].Value);
        }
Example #3
0
        public void AsXAttributesConvertsUnderscoresToHyphens()
        {
            var obj = new { Separated_Name = "test" };

            var map = obj.AsXAttributes().ToDictionary(attr => attr.Name);

            Assert.AreEqual(1, map.Count);
            Assert.AreEqual("test", map["Separated-Name"].Value);            
        }