示例#1
0
        public void MacroEscTest()
        {
            var provider = new VarProviderMock();

            var template = "$()";
            var text     = Generate(template, provider);

            Assert.AreEqual("$(", text);
        }
示例#2
0
        public void PartialMacroTest()
        {
            var provider = new VarProviderMock();

            var template = "$\"Hello world\"";
            var text     = Generate(template, provider);

            Assert.AreEqual("$\"Hello world\"", text);
        }
示例#3
0
        public void NotConditionExprFalseTest()
        {
            var provider = new VarProviderMock();

            provider.Conditions.Add("true", true);
            provider.Variables.Add("b", "b-value");

            var template = "$(if !true)$(b)$(endif)";
            var text     = Generate(template, provider);

            Assert.AreEqual("", text);
        }
示例#4
0
        public void ElseTest()
        {
            var provider = new VarProviderMock();

            provider.Conditions.Add("true", true);
            provider.Conditions.Add("false", false);
            provider.Variables.Add("b", "b-value");

            var template = "$(if false)bad$(else)good$(endif)";
            var text     = Generate(template, provider);

            Assert.AreEqual("good", text);
        }
示例#5
0
        public void TemplSymbolTest()
        {
            var provider = new VarProviderMock();

            provider.Variables.Add("b", "b-value");

            var template = "a $(b)";

            var templ     = new TemplateProcessor2(template);
            var generator = new Generator();

            templ.Format(generator, provider);
            var text = generator.ToString();

            Assert.AreEqual("a b-value", text);
        }
示例#6
0
        public void TemplParserStandaloneIf()
        {
            var provider = new VarProviderMock();

            provider.Conditions.Add("true", true);
            provider.Conditions.Add("false", false);
            provider.Variables.Add("b", "b-value");
            provider.Variables.Add("templ", "$(b)");

            var template = "$(if true)true$(endif)$(if false)false$(endif)";

            var templ     = new TemplateProcessor2(template);
            var generator = new Generator();

            templ.Format(generator, provider);
            var text = generator.ToString();

            Assert.AreEqual("true", text);
        }
示例#7
0
        public void TemplParserTest()
        {
            var provider = new VarProviderMock();

            provider.Conditions.Add("true", true);
            provider.Conditions.Add("false", false);
            provider.Variables.Add("b", "b-value");
            provider.Variables.Add("templ", "$(b)");

            var template = "a $(b) $(include templ) $(if false)drop$(endif)include";

            var templ     = new TemplateProcessor2(template);
            var generator = new Generator();

            templ.Format(generator, provider);
            var text = generator.ToString();

            Assert.AreEqual(
                "a b-value b-value include",
                text);
        }