public override CmsqlQueryCondition VisitCondition(CmsqlParser.ConditionContext context) { return(new CmsqlQueryCondition { Operator = GetEqualityOperator(context.op.Type), Identifier = context.IDENTIFIER().GetText(), Value = context.LITERAL().GetText().Trim('\'') }); }
public void Test_can_parse_less_than_or_equals_condition() { CmsqlParser cmsqlParser = CmsqlParserFactory.CreateParserForQuery("foo <= 'bar'"); CmsqlParser.ConditionContext parseTree = cmsqlParser.condition(); ConditionVisitor visitor = new ConditionVisitor(); CmsqlQueryCondition condition = visitor.VisitCondition(parseTree); condition.Identifier.ShouldBeEquivalentTo("foo"); condition.Operator.ShouldBeEquivalentTo(EqualityOperator.LessThanOrEquals); condition.Value.ShouldBeEquivalentTo("bar"); }