use of org.drools.compiler.lang.descr.ConstraintConnectiveDescr in project drools by kiegroup.
the class DRLExprParserTest method testDoubleBinding.
@Test
public void testDoubleBinding() throws Exception {
String source = "$x : x.m( 1, a ) && $y : y[z].foo";
ConstraintConnectiveDescr result = parser.parse(source);
assertFalse(parser.getErrors().toString(), parser.hasErrors());
assertEquals(ConnectiveType.AND, result.getConnective());
assertEquals(2, result.getDescrs().size());
BindingDescr bind = (BindingDescr) result.getDescrs().get(0);
assertEquals("$x", bind.getVariable());
assertEquals("x.m( 1, a )", bind.getExpression());
bind = (BindingDescr) result.getDescrs().get(1);
assertEquals("$y", bind.getVariable());
assertEquals("y[z].foo", bind.getExpression());
}
use of org.drools.compiler.lang.descr.ConstraintConnectiveDescr in project drools by kiegroup.
the class MVELDumperTest method testDumpContains.
@Test
public void testDumpContains() throws Exception {
String input = "list contains \"b\"";
String expected = "list contains \"b\"";
ConstraintConnectiveDescr descr = parse(input);
String result = dumper.dump(descr);
assertEquals(expected, result);
}
use of org.drools.compiler.lang.descr.ConstraintConnectiveDescr in project drools by kiegroup.
the class MVELDumperTest method testDumpBindingsComplexOp.
@Test
public void testDumpBindingsComplexOp() throws Exception {
String input = "$x : age in (10, 20, $someVal)";
String expected = "( age == 10 || age == 20 || age == $someVal )";
ConstraintConnectiveDescr descr = parse(input);
MVELDumperContext ctx = new MVELDumperContext();
String result = dumper.dump(descr, ctx);
assertEquals(expected, result);
assertEquals(1, ctx.getBindings().size());
BindingDescr bind = ctx.getBindings().get(0);
assertEquals("$x", bind.getVariable());
assertEquals("age", bind.getExpression());
}
use of org.drools.compiler.lang.descr.ConstraintConnectiveDescr in project drools by kiegroup.
the class MVELDumperTest method parse.
public ConstraintConnectiveDescr parse(final String constraint) {
DrlExprParser parser = new DrlExprParser(LanguageLevelOption.DRL6);
ConstraintConnectiveDescr result = parser.parse(constraint);
assertFalse(parser.getErrors().toString(), parser.hasErrors());
return result;
}
use of org.drools.compiler.lang.descr.ConstraintConnectiveDescr in project drools by kiegroup.
the class MVELDumperTest method testDumpBindingsComplexOp2.
@Test
public void testDumpBindingsComplexOp2() throws Exception {
String input = "$x : age not in (10, 20, $someVal)";
String expected = "age != 10 && age != 20 && age != $someVal";
ConstraintConnectiveDescr descr = parse(input);
MVELDumperContext ctx = new MVELDumperContext();
String result = dumper.dump(descr, ctx);
assertEquals(expected, result);
assertEquals(1, ctx.getBindings().size());
BindingDescr bind = ctx.getBindings().get(0);
assertEquals("$x", bind.getVariable());
assertEquals("age", bind.getExpression());
}
Aggregations