Пример #1
0
        public static ExprRegexpNode MakeRegexpNode(bool isNot)
        {
            // Build :      s0.string regexp "[a-z][a-z]"  (with not)
            var node = new ExprRegexpNode(isNot);

            node.AddChildNode(MakeIdentNode("TheString", "s0"));
            node.AddChildNode(new SupportExprNode("[a-z][a-z]"));
            Validate3Stream(node);
            return(node);
        }
Пример #2
0
        public void TestValidate()
        {
            // No subnodes: Exception is thrown.
            TryInvalidValidate(new ExprRegexpNode(true));

            // singe child node not possible, must be 2 at least
            _regexpNodeNormal = new ExprRegexpNode(false);
            _regexpNodeNormal.AddChildNode(new SupportExprNode(4));
            TryInvalidValidate(_regexpNodeNormal);

            // test a type mismatch
            _regexpNodeNormal = new ExprRegexpNode(true);
            _regexpNodeNormal.AddChildNode(new SupportExprNode("sx"));
            _regexpNodeNormal.AddChildNode(new SupportExprNode(4));
            TryInvalidValidate(_regexpNodeNormal);

            // test numeric supported
            _regexpNodeNormal = new ExprRegexpNode(false);
            _regexpNodeNormal.AddChildNode(new SupportExprNode(4));
            _regexpNodeNormal.AddChildNode(new SupportExprNode("sx"));
        }