示例#1
0
        public void ShouldBuildCaseInsensitiveDictionary()
        {
            string value = "Name=\"Foo\"";
            IDictionary <string, string> props = KeyValueParser.Parse(value);

            Assert.IsTrue(props.ContainsKey("name"));
        }
示例#2
0
        public void ShouldSupportMixingQuoteTypes()
        {
            string value = "Name='Foo' Value=\"Bar\"";
            IDictionary <string, string> props = KeyValueParser.Parse(value);

            Assert.AreEqual(2, props.Count);
        }
示例#3
0
        public void ShouldParseAttributes()
        {
            string value = "Name=\"Foo\" Value=\"Hey\"";
            IDictionary <string, string> props = KeyValueParser.Parse(value);

            Assert.AreEqual(2, props.Count);
        }
示例#4
0
        public void ThrowsIfDuplicateAttribute()
        {
            string value = "Name=\"Foo\" Name=\"Hey\"";
            IDictionary <string, string> props = KeyValueParser.Parse(value);

            Assert.AreEqual(2, props.Count);
        }
示例#5
0
        public void Parse_Uses_MissingValue()
        {
            var parser = new KeyValueParser('=', "ug");

            string key, value;

            parser.Parse("a", out key, out value);

            Assert.AreEqual("a", key);
            Assert.AreEqual("ug", value);
        }
示例#6
0
        public void Parse_Uses_Separator()
        {
            var parser = new KeyValueParser(':', "");

            string key, value;

            parser.Parse("Z1: a=b", out key, out value);

            Assert.AreEqual("Z1", key);
            Assert.AreEqual(" a=b", value);
        }
示例#7
0
        public void Parse_Splits_Key_And_Value_Correctly(string text, string expectedKey, string expectedValue)
        {
            var parser = new KeyValueParser();

            string key, value;

            parser.Parse(text, out key, out value);

            Assert.AreEqual(expectedKey, key);
            Assert.AreEqual(expectedValue, value);
        }
示例#8
0
 public void ThrowsIfNullValue()
 {
     KeyValueParser.Parse(null);
 }
 private ISettingsNode Parse()
 => parser.Parse(fileName, content);