"name" );
c1.setBinding( "$n" );
expected.setRoot( type );
type.addChild( c1 );
final ActionUpdateNode action = new ActionUpdateNodeImpl( type );
action.setModify( true );
action.getFieldValues().add( new ActionFieldValueImpl( "age",
new IntegerValue( 25 ) ) );
c1.addChild( action );
addModelField( "Person",
"this",
"Person",
DataType.TYPE_THIS );
addModelField( "Person",
"name",
String.class.getName(),
DataType.TYPE_STRING );
addModelField( "Person",
"age",
Integer.class.getName(),
DataType.TYPE_NUMERIC_INTEGER );
final GuidedDecisionTree model = GuidedDecisionTreeDRLPersistence.getInstance().unmarshal( drl,
"test",
dmo );
assertNotNull( model );
assertEquals( 0,
model.getParserErrors().size() );
assertEquals( expected.getTreeName(),
model.getTreeName() );
assertNotNull( model.getRoot() );
assertEquals( type.getClassName(),
model.getRoot().getClassName() );
assertTrue( model.getRoot().isBound() );
assertEquals( type.getBinding(),
model.getRoot().getBinding() );
assertEquals( 1,
model.getRoot().getChildren().size() );
assertNotNull( model.getRoot().getChildren().get( 0 ) );
assertTrue( model.getRoot().getChildren().get( 0 ) instanceof ConstraintNode );
final ConstraintNode _c1 = (ConstraintNode) model.getRoot().getChildren().get( 0 );
assertEquals( c1.getClassName(),
_c1.getClassName() );
assertEquals( c1.getFieldName(),
_c1.getFieldName() );
assertNull( _c1.getOperator() );
assertNull( _c1.getValue() );
assertTrue( _c1.isBound() );
assertEquals( c1.getBinding(),
_c1.getBinding() );
assertEquals( 1,
_c1.getChildren().size() );
assertNotNull( _c1.getChildren().get( 0 ) );
assertTrue( _c1.getChildren().get( 0 ) instanceof ActionUpdateNode );
final ActionUpdateNode _action = (ActionUpdateNode) _c1.getChildren().get( 0 );
assertEquals( action.getBoundNode().getBinding(),
_action.getBoundNode().getBinding() );
assertEquals( action.isModify(),
_action.isModify() );
assertEquals( action.getFieldValues().size(),
_action.getFieldValues().size() );
assertEquals( 1,
_action.getFieldValues().size() );
assertEquals( action.getFieldValues().get( 0 ).getFieldName(),
_action.getFieldValues().get( 0 ).getFieldName() );
assertEquals( action.getFieldValues().get( 0 ).getValue().getValue().toString(),
_action.getFieldValues().get( 0 ).getValue().getValue().toString() );
assertEquals( 0,
_action.getChildren().size() );
}