private CompositeFactPattern visitCompositeFactPattern(CompositeFactPattern pattern) { CompositeFactPattern clone = new CompositeFactPattern(); clone.setType(pattern.getType()); if (pattern.getPatterns() != null) { for (IFactPattern fp : pattern.getPatterns()) { clone.addFactPattern((IFactPattern) visit(fp)); } } return clone; }
private CompositeFactPattern visitCompositeFactPattern(CompositeFactPattern pattern) { CompositeFactPattern clone = new CompositeFactPattern(); clone.setType(pattern.getType()); if (pattern.getPatterns() != null) { for (IFactPattern fp : pattern.getPatterns()) { clone.addFactPattern((IFactPattern) visit(fp)); } } return clone; }
@Test public void testValidateCompositeFactPatternFalse() throws Exception { CompositeFactPattern not = new CompositeFactPattern(); not.setType("not"); model.addLhsItem(not); assertFalse(validator.isValid()); assertTrue(validator.getErrors().get(0).equals(MISSING_FACT_PATTERN)); }
@Test public void testValidateCompositeFactPatternFalse() throws Exception { CompositeFactPattern not = new CompositeFactPattern(); not.setType("not"); model.addLhsItem(not); assertFalse(validator.isValid()); assertTrue(validator.getErrors().get(0).equals(MISSING_FACT_PATTERN)); }
@Test public void testValidateCompositeFactPatternTrue() throws Exception { CompositeFactPattern not = new CompositeFactPattern(); not.setType("not"); not.addFactPattern(new FactPattern()); model.addLhsItem(not); assertTrue(validator.isValid()); assertTrue(validator.getErrors().isEmpty()); }
@Test public void testValidateCompositeFactPatternTrue() throws Exception { CompositeFactPattern not = new CompositeFactPattern(); not.setType("not"); not.addFactPattern(new FactPattern()); model.addLhsItem(not); assertTrue(validator.isValid()); assertTrue(validator.getErrors().isEmpty()); }
@Test public void testMissingValueWhenOperatorExistsInCompositePattern() throws Exception { FactPattern pattern = new FactPattern("Person"); SingleFieldConstraint constraint = new SingleFieldConstraint("age"); constraint.setOperator("=="); pattern.addConstraint(constraint); CompositeFactPattern not = new CompositeFactPattern(); not.setType("not"); not.addFactPattern(pattern); model.lhs = new IPattern[]{not}; assertFalse(validator.isValid()); assertEquals(1, validator.getErrors().size()); assertEquals(MISSING_VALUE_WHEN_OPERATOR_IS_SET, validator.getErrors().get(0)); verify(constants).FactType0HasAField1ThatHasAnOperatorSetButNoValuePleaseAddAValueOrRemoveTheOperator("Person", "age"); }
@Test public void testMissingValueWhenOperatorExistsInCompositePattern() throws Exception { FactPattern pattern = new FactPattern("Person"); SingleFieldConstraint constraint = new SingleFieldConstraint("age"); constraint.setOperator("=="); pattern.addConstraint(constraint); CompositeFactPattern not = new CompositeFactPattern(); not.setType("not"); not.addFactPattern(pattern); model.lhs = new IPattern[]{not}; assertFalse(validator.isValid()); assertEquals(1, validator.getErrors().size()); assertEquals(MISSING_VALUE_WHEN_OPERATOR_IS_SET, validator.getErrors().get(0)); verify(constants).FactType0HasAField1ThatHasAnOperatorSetButNoValuePleaseAddAValueOrRemoveTheOperator("Person", "age"); }
@Test public void testMissingValueWhenOperatorExistsIsNull() throws Exception { FactPattern pattern = new FactPattern("Person"); SingleFieldConstraint constraint = new SingleFieldConstraint("age"); constraint.setOperator("== null"); pattern.addConstraint(constraint); CompositeFactPattern not = new CompositeFactPattern(); not.setType("not"); not.addFactPattern(pattern); model.lhs = new IPattern[]{not}; assertTrue(validator.isValid()); assertTrue(validator.getErrors().isEmpty()); }
@Test public void testMissingValueWhenOperatorExistsIsNotNull() throws Exception { FactPattern pattern = new FactPattern("Person"); SingleFieldConstraint constraint = new SingleFieldConstraint("age"); constraint.setOperator("!= null"); pattern.addConstraint(constraint); CompositeFactPattern not = new CompositeFactPattern(); not.setType("not"); not.addFactPattern(pattern); model.lhs = new IPattern[]{not}; assertTrue(validator.isValid()); assertTrue(validator.getErrors().isEmpty()); }
@Test public void testMissingValueWhenOperatorExistsIsNotNull() throws Exception { FactPattern pattern = new FactPattern("Person"); SingleFieldConstraint constraint = new SingleFieldConstraint("age"); constraint.setOperator("!= null"); pattern.addConstraint(constraint); CompositeFactPattern not = new CompositeFactPattern(); not.setType("not"); not.addFactPattern(pattern); model.lhs = new IPattern[]{not}; assertTrue(validator.isValid()); assertTrue(validator.getErrors().isEmpty()); }
@Test public void testMissingValueWhenOperatorExistsIsNull() throws Exception { FactPattern pattern = new FactPattern("Person"); SingleFieldConstraint constraint = new SingleFieldConstraint("age"); constraint.setOperator("== null"); pattern.addConstraint(constraint); CompositeFactPattern not = new CompositeFactPattern(); not.setType("not"); not.addFactPattern(pattern); model.lhs = new IPattern[]{not}; assertTrue(validator.isValid()); assertTrue(validator.getErrors().isEmpty()); }
composite.setType( CompositeFactPattern.COMPOSITE_TYPE_EXISTS ); composite.addFactPattern( f1 ); composite.addFactPattern( f2 );