Exemplo n.º 1
0
        public void TestNoSuchProp()
        {
            ErrorBufferAllErrors errors = new ErrorBufferAllErrors();
            string        template      = "<u.qqq>";
            TemplateGroup group         = new TemplateGroup();

            group.Listener = errors;
            Template st = new Template(group, template);

            st.Add("u", new User(1, "parrt"));
            string expected = "";
            string result   = st.Render();

            Assert.AreEqual(expected, result);
            TemplateRuntimeMessage          msg = (TemplateRuntimeMessage)errors.Errors[0];
            TemplateNoSuchPropertyException e   = (TemplateNoSuchPropertyException)msg.Cause;

            Assert.AreEqual("Antlr4.Test.StringTemplate.BaseTest+User.qqq", e.PropertyName);
        }
Exemplo n.º 2
0
        public void TestAdaptorAndBadProp()
        {
            ErrorBufferAllErrors errors = new ErrorBufferAllErrors();
            string templates            =
                "foo(x) ::= \"<x.qqq>\"\n";

            writeFile(tmpdir, "foo.stg", templates);
            TemplateGroup group = new TemplateGroupFile(tmpdir + "/foo.stg");

            group.Listener = errors;
            group.RegisterModelAdaptor(typeof(User), new UserAdaptor());
            Template st = group.GetInstanceOf("foo");

            st.Add("x", new User(100, "parrt"));
            string expecting = "";
            string result    = st.Render();

            Assert.AreEqual(expecting, result);

            TemplateRuntimeMessage          msg = (TemplateRuntimeMessage)errors.Errors[0];
            TemplateNoSuchPropertyException e   = (TemplateNoSuchPropertyException)msg.Cause;

            Assert.AreEqual("User.qqq", e.PropertyName);
        }