private FromCompositeFactPattern visitFromCompositeFactPattern(FromCompositeFactPattern pattern) { FromCompositeFactPattern clone = new FromCompositeFactPattern(); clone.setExpression((ExpressionFormLine) visit(pattern.getExpression())); clone.setFactPattern((FactPattern) visit(pattern.getFactPattern())); return clone; }
private FromCompositeFactPattern visitFromCompositeFactPattern(FromCompositeFactPattern pattern) { FromCompositeFactPattern clone = new FromCompositeFactPattern(); clone.setExpression((ExpressionFormLine) visit(pattern.getExpression())); clone.setFactPattern((FactPattern) visit(pattern.getFactPattern())); return clone; }
private static FromCompositeFactPattern buildFromCompositeFactPattern() { FromCompositeFactPattern fcomp = new FromCompositeFactPattern(); fcomp.setExpression( buildExpressionFormLine() ); fcomp.setFactPattern( buildFactPattern() ); return fcomp; }
@Test public void testMissingRHSPartInFrom() throws Exception { FactPattern pattern = new FactPattern("Address"); SingleFieldConstraint constraint = new SingleFieldConstraint("street"); pattern.addConstraint(constraint); FromCompositeFactPattern fromCompositeFactPattern = new FromCompositeFactPattern(); fromCompositeFactPattern.setFactPattern(pattern); ExpressionFormLine expression = new ExpressionFormLine(); fromCompositeFactPattern.setExpression(expression); model.lhs = new IPattern[]{fromCompositeFactPattern}; assertFalse(validator.isValid()); assertEquals(1, validator.getErrors().size()); assertEquals(MISSING_RHS_FROM, validator.getErrors().get(0)); verify(constants).WhenUsingFromTheSourceNeedsToBeSet(); }
@Test public void testMissingRHSPartInFrom() throws Exception { FactPattern pattern = new FactPattern("Address"); SingleFieldConstraint constraint = new SingleFieldConstraint("street"); pattern.addConstraint(constraint); FromCompositeFactPattern fromCompositeFactPattern = new FromCompositeFactPattern(); fromCompositeFactPattern.setFactPattern(pattern); ExpressionFormLine expression = new ExpressionFormLine(); fromCompositeFactPattern.setExpression(expression); model.lhs = new IPattern[]{fromCompositeFactPattern}; assertFalse(validator.isValid()); assertEquals(1, validator.getErrors().size()); assertEquals(MISSING_RHS_FROM, validator.getErrors().get(0)); verify(constants).WhenUsingFromTheSourceNeedsToBeSet(); }
@Test public void testValidFromCompositeFactPattern() throws Exception { FactPattern factPattern = new FactPattern("SomeList"); factPattern.setBoundName("list"); FromCompositeFactPattern fromCompositeFactPattern = new FromCompositeFactPattern(); fromCompositeFactPattern.setFactPattern(new FactPattern("Person")); ExpressionFormLine expression = new ExpressionFormLine(); expression.appendPart(new ExpressionVariable("list", "SomeList", "SomeList")); fromCompositeFactPattern.setExpression(expression); model.lhs = new IPattern[]{fromCompositeFactPattern}; assertTrue(validator.isValid()); }
@Test public void testMissingValueInFrom() throws Exception { FactPattern boundPattern = new FactPattern("Person"); boundPattern.setBoundName("person"); boundPattern.addConstraint(new SingleFieldConstraint("addresses")); FactPattern pattern = new FactPattern("Address"); SingleFieldConstraint constraint = new SingleFieldConstraint("street"); constraint.setOperator("!="); pattern.addConstraint(constraint); FromCompositeFactPattern fromCompositeFactPattern = new FromCompositeFactPattern(); fromCompositeFactPattern.setFactPattern(pattern); ExpressionFormLine expression = new ExpressionFormLine(); expression.setBinding("person.addresses"); fromCompositeFactPattern.setExpression(expression); model.lhs = new IPattern[]{boundPattern, fromCompositeFactPattern}; assertFalse(validator.isValid()); assertEquals(1, validator.getErrors().size()); assertEquals(MISSING_VALUE_WHEN_OPERATOR_IS_SET, validator.getErrors().get(0)); verify(constants).FactType0HasAField1ThatHasAnOperatorSetButNoValuePleaseAddAValueOrRemoveTheOperator("Address", "street"); }
@Test public void testMissingValueInFrom() throws Exception { FactPattern boundPattern = new FactPattern("Person"); boundPattern.setBoundName("person"); boundPattern.addConstraint(new SingleFieldConstraint("addresses")); FactPattern pattern = new FactPattern("Address"); SingleFieldConstraint constraint = new SingleFieldConstraint("street"); constraint.setOperator("!="); pattern.addConstraint(constraint); FromCompositeFactPattern fromCompositeFactPattern = new FromCompositeFactPattern(); fromCompositeFactPattern.setFactPattern(pattern); ExpressionFormLine expression = new ExpressionFormLine(); expression.setBinding("person.addresses"); fromCompositeFactPattern.setExpression(expression); model.lhs = new IPattern[]{boundPattern, fromCompositeFactPattern}; assertFalse(validator.isValid()); assertEquals(1, validator.getErrors().size()); assertEquals(MISSING_VALUE_WHEN_OPERATOR_IS_SET, validator.getErrors().get(0)); verify(constants).FactType0HasAField1ThatHasAnOperatorSetButNoValuePleaseAddAValueOrRemoveTheOperator("Address", "street"); }
@Test public void testValidFromCompositeFactPattern() throws Exception { FactPattern factPattern = new FactPattern("SomeList"); factPattern.setBoundName("list"); FromCompositeFactPattern fromCompositeFactPattern = new FromCompositeFactPattern(); fromCompositeFactPattern.setFactPattern(new FactPattern("Person")); ExpressionFormLine expression = new ExpressionFormLine(); expression.appendPart(new ExpressionVariable("list", "SomeList", "SomeList")); fromCompositeFactPattern.setExpression(expression); model.lhs = new IPattern[]{fromCompositeFactPattern}; assertTrue(validator.isValid()); }
fcfp.setExpression(expression);
@Test public void testWorkingFrom() throws Exception { FactPattern boundPattern = new FactPattern("Person"); boundPattern.setBoundName("person"); boundPattern.addConstraint(new SingleFieldConstraint("addresses")); FactPattern pattern = new FactPattern("Address"); SingleFieldConstraint constraint = new SingleFieldConstraint("street"); pattern.addConstraint(constraint); FromCompositeFactPattern fromCompositeFactPattern = new FromCompositeFactPattern(); fromCompositeFactPattern.setFactPattern(pattern); ExpressionFormLine expression = new ExpressionFormLine(); expression.setBinding("person.addresses"); fromCompositeFactPattern.setExpression(expression); model.lhs = new IPattern[]{boundPattern, fromCompositeFactPattern}; assertTrue(validator.isValid()); }
@Test public void testWorkingFrom() throws Exception { FactPattern boundPattern = new FactPattern("Person"); boundPattern.setBoundName("person"); boundPattern.addConstraint(new SingleFieldConstraint("addresses")); FactPattern pattern = new FactPattern("Address"); SingleFieldConstraint constraint = new SingleFieldConstraint("street"); pattern.addConstraint(constraint); FromCompositeFactPattern fromCompositeFactPattern = new FromCompositeFactPattern(); fromCompositeFactPattern.setFactPattern(pattern); ExpressionFormLine expression = new ExpressionFormLine(); expression.setBinding("person.addresses"); fromCompositeFactPattern.setExpression(expression); model.lhs = new IPattern[]{boundPattern, fromCompositeFactPattern}; assertTrue(validator.isValid()); }