Package org.drools.workbench.models.guided.template.shared

Examples of org.drools.workbench.models.guided.template.shared.TemplateModel


                       m );
    }

    @Test
    public void testNestedCompositeConstraints5FirstValue() {
        TemplateModel m = new TemplateModel();
        m.name = "t1";

        FactPattern p = new FactPattern( "Person" );
        CompositeFieldConstraint comp = new CompositeFieldConstraint();
        comp.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( comp );

        m.addLhsItem( p );

        final SingleFieldConstraint comp1sfc1 = new SingleFieldConstraint();
        comp1sfc1.setFieldName( "field1" );
        comp1sfc1.setFieldType( DataType.TYPE_STRING );
        comp1sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        comp1sfc1.setValue( "$f1" );
        comp1sfc1.setOperator( "==" );
        comp.addConstraint( comp1sfc1 );

        final SingleFieldConstraint comp1sfc2 = new SingleFieldConstraint();
        comp1sfc2.setFieldName( "field2" );
        comp1sfc2.setFieldType( DataType.TYPE_STRING );
        comp1sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        comp1sfc2.setValue( "$f2" );
        comp1sfc2.setOperator( "==" );
        comp.addConstraint( comp1sfc2 );

        final SingleFieldConstraint comp1sfc3 = new SingleFieldConstraint();
        comp1sfc3.setFieldName( "field3" );
        comp1sfc3.setFieldType( DataType.TYPE_STRING );
        comp1sfc3.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        comp1sfc3.setValue( "$f3" );
        comp1sfc3.setOperator( "==" );
        comp.addConstraint( comp1sfc3 );

        String expected = "rule \"t1_0\"\n" +
                "dialect \"mvel\"\n" +
                "when\n" +
                "Person( field1 == \"foo\" )\n" +
                "then\n" +
                "end\n";

        m.addRow( new String[]{ "foo", null, null } );

        checkMarshall( expected,
                       m );
    }
View Full Code Here


                       m );
    }

    @Test
    public void testNestedCompositeConstraints5SecondValue() {
        TemplateModel m = new TemplateModel();
        m.name = "t1";

        FactPattern p = new FactPattern( "Person" );
        CompositeFieldConstraint comp = new CompositeFieldConstraint();
        comp.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( comp );

        m.addLhsItem( p );

        final SingleFieldConstraint comp1sfc1 = new SingleFieldConstraint();
        comp1sfc1.setFieldName( "field1" );
        comp1sfc1.setFieldType( DataType.TYPE_STRING );
        comp1sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        comp1sfc1.setValue( "$f1" );
        comp1sfc1.setOperator( "==" );
        comp.addConstraint( comp1sfc1 );

        final SingleFieldConstraint comp1sfc2 = new SingleFieldConstraint();
        comp1sfc2.setFieldName( "field2" );
        comp1sfc2.setFieldType( DataType.TYPE_STRING );
        comp1sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        comp1sfc2.setValue( "$f2" );
        comp1sfc2.setOperator( "==" );
        comp.addConstraint( comp1sfc2 );

        final SingleFieldConstraint comp1sfc3 = new SingleFieldConstraint();
        comp1sfc3.setFieldName( "field3" );
        comp1sfc3.setFieldType( DataType.TYPE_STRING );
        comp1sfc3.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        comp1sfc3.setValue( "$f3" );
        comp1sfc3.setOperator( "==" );
        comp.addConstraint( comp1sfc3 );

        String expected = "rule \"t1_0\"\n" +
                "dialect \"mvel\"\n" +
                "when\n" +
                "Person( field2 == \"bar\" )\n" +
                "then\n" +
                "end\n";

        m.addRow( new String[]{ null, "bar", null } );

        checkMarshall( expected,
                       m );
    }
View Full Code Here

                       m );
    }

    @Test
    public void testNestedCompositeConstraints5ThirdValue() {
        TemplateModel m = new TemplateModel();
        m.name = "t1";

        FactPattern p = new FactPattern( "Person" );
        CompositeFieldConstraint comp = new CompositeFieldConstraint();
        comp.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( comp );

        m.addLhsItem( p );

        final SingleFieldConstraint comp1sfc1 = new SingleFieldConstraint();
        comp1sfc1.setFieldName( "field1" );
        comp1sfc1.setFieldType( DataType.TYPE_STRING );
        comp1sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        comp1sfc1.setValue( "$f1" );
        comp1sfc1.setOperator( "==" );
        comp.addConstraint( comp1sfc1 );

        final SingleFieldConstraint comp1sfc2 = new SingleFieldConstraint();
        comp1sfc2.setFieldName( "field2" );
        comp1sfc2.setFieldType( DataType.TYPE_STRING );
        comp1sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        comp1sfc2.setValue( "$f2" );
        comp1sfc2.setOperator( "==" );
        comp.addConstraint( comp1sfc2 );

        final SingleFieldConstraint comp1sfc3 = new SingleFieldConstraint();
        comp1sfc3.setFieldName( "field3" );
        comp1sfc3.setFieldType( DataType.TYPE_STRING );
        comp1sfc3.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        comp1sfc3.setValue( "$f3" );
        comp1sfc3.setOperator( "==" );
        comp.addConstraint( comp1sfc3 );

        String expected = "rule \"t1_0\"\n" +
                "dialect \"mvel\"\n" +
                "when\n" +
                "Person( field3 == \"goo\" )\n" +
                "then\n" +
                "end\n";

        m.addRow( new String[]{ null, null, "goo" } );

        checkMarshall( expected,
                       m );
    }
View Full Code Here

                       m );
    }

    @Test
    public void testNestedCompositeConstraints6AllValues() {
        TemplateModel m = new TemplateModel();
        m.name = "t1";

        FactPattern p = new FactPattern( "Person" );

        m.addLhsItem( p );

        final CompositeFieldConstraint cfc1 = new CompositeFieldConstraint();
        cfc1.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc1 );
        final SingleFieldConstraint cfc1sfc1 = new SingleFieldConstraint();
        cfc1sfc1.setFieldName( "field1" );
        cfc1sfc1.setFieldType( DataType.TYPE_STRING );
        cfc1sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc1sfc1.setValue( "$f1" );
        cfc1sfc1.setOperator( "==" );
        cfc1.addConstraint( cfc1sfc1 );
        final SingleFieldConstraint cfc1sfc2 = new SingleFieldConstraint();
        cfc1sfc2.setFieldName( "field2" );
        cfc1sfc2.setFieldType( DataType.TYPE_STRING );
        cfc1sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc1sfc2.setValue( "$f2" );
        cfc1sfc2.setOperator( "==" );
        cfc1.addConstraint( cfc1sfc2 );

        final CompositeFieldConstraint cfc2 = new CompositeFieldConstraint();
        cfc2.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc2 );
        final SingleFieldConstraint cfc2sfc1 = new SingleFieldConstraint();
        cfc2sfc1.setFieldName( "field3" );
        cfc2sfc1.setFieldType( DataType.TYPE_STRING );
        cfc2sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc2sfc1.setValue( "$f3" );
        cfc2sfc1.setOperator( "==" );
        cfc2.addConstraint( cfc2sfc1 );
        final SingleFieldConstraint cfc2sfc2 = new SingleFieldConstraint();
        cfc2sfc2.setFieldName( "field4" );
        cfc2sfc2.setFieldType( DataType.TYPE_STRING );
        cfc2sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc2sfc2.setValue( "$f4" );
        cfc2sfc2.setOperator( "==" );
        cfc2.addConstraint( cfc2sfc2 );

        final CompositeFieldConstraint cfc3 = new CompositeFieldConstraint();
        cfc3.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc3 );
        final SingleFieldConstraint cfc3sfc1 = new SingleFieldConstraint();
        cfc3sfc1.setFieldName( "field5" );
        cfc3sfc1.setFieldType( DataType.TYPE_STRING );
        cfc3sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc3sfc1.setValue( "$f5" );
        cfc3sfc1.setOperator( "==" );
        cfc3.addConstraint( cfc3sfc1 );
        final SingleFieldConstraint cfc3sfc2 = new SingleFieldConstraint();
        cfc3sfc2.setFieldName( "field6" );
        cfc3sfc2.setFieldType( DataType.TYPE_STRING );
        cfc3sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc3sfc2.setValue( "$f6" );
        cfc3sfc2.setOperator( "==" );
        cfc3.addConstraint( cfc3sfc2 );

        String expected = "rule \"t1_0\"\n" +
                "dialect \"mvel\"\n" +
                "when\n" +
                "Person( field1 == \"v1\" || field2 == \"v2\", field3 == \"v3\" || field4 == \"v4\", field5 == \"v5\" || field6 == \"v6\" )\n" +
                "then\n" +
                "end\n";

        m.addRow( new String[]{ "v1", "v2", "v3", "v4", "v5", "v6" } );

        checkMarshall( expected,
                       m );
    }
View Full Code Here

                       m );
    }

    @Test
    public void testNestedCompositeConstraints6NoValues() {
        TemplateModel m = new TemplateModel();
        m.name = "t1";

        FactPattern p = new FactPattern( "Person" );

        m.addLhsItem( p );

        final CompositeFieldConstraint cfc1 = new CompositeFieldConstraint();
        cfc1.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc1 );
        final SingleFieldConstraint cfc1sfc1 = new SingleFieldConstraint();
        cfc1sfc1.setFieldName( "field1" );
        cfc1sfc1.setFieldType( DataType.TYPE_STRING );
        cfc1sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc1sfc1.setValue( "$f1" );
        cfc1sfc1.setOperator( "==" );
        cfc1.addConstraint( cfc1sfc1 );
        final SingleFieldConstraint cfc1sfc2 = new SingleFieldConstraint();
        cfc1sfc2.setFieldName( "field2" );
        cfc1sfc2.setFieldType( DataType.TYPE_STRING );
        cfc1sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc1sfc2.setValue( "$f2" );
        cfc1sfc2.setOperator( "==" );
        cfc1.addConstraint( cfc1sfc2 );

        final CompositeFieldConstraint cfc2 = new CompositeFieldConstraint();
        cfc2.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc2 );
        final SingleFieldConstraint cfc2sfc1 = new SingleFieldConstraint();
        cfc2sfc1.setFieldName( "field3" );
        cfc2sfc1.setFieldType( DataType.TYPE_STRING );
        cfc2sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc2sfc1.setValue( "$f3" );
        cfc2sfc1.setOperator( "==" );
        cfc2.addConstraint( cfc2sfc1 );
        final SingleFieldConstraint cfc2sfc2 = new SingleFieldConstraint();
        cfc2sfc2.setFieldName( "field4" );
        cfc2sfc2.setFieldType( DataType.TYPE_STRING );
        cfc2sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc2sfc2.setValue( "$f4" );
        cfc2sfc2.setOperator( "==" );
        cfc2.addConstraint( cfc2sfc2 );

        final CompositeFieldConstraint cfc3 = new CompositeFieldConstraint();
        cfc3.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc3 );
        final SingleFieldConstraint cfc3sfc1 = new SingleFieldConstraint();
        cfc3sfc1.setFieldName( "field5" );
        cfc3sfc1.setFieldType( DataType.TYPE_STRING );
        cfc3sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc3sfc1.setValue( "$f5" );
        cfc3sfc1.setOperator( "==" );
        cfc3.addConstraint( cfc3sfc1 );
        final SingleFieldConstraint cfc3sfc2 = new SingleFieldConstraint();
        cfc3sfc2.setFieldName( "field6" );
        cfc3sfc2.setFieldType( DataType.TYPE_STRING );
        cfc3sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc3sfc2.setValue( "$f6" );
        cfc3sfc2.setOperator( "==" );
        cfc3.addConstraint( cfc3sfc2 );

        String expected = "rule \"t1_0\"\n" +
                "dialect \"mvel\"\n" +
                "when\n" +
                "then\n" +
                "end\n";

        m.addRow( new String[]{ null, null, null, null, null, null } );

        checkMarshall( expected,
                       m );
    }
View Full Code Here

                       m );
    }

    @Test
    public void testNestedCompositeConstraints6VariablesAndLiterals() {
        TemplateModel m = new TemplateModel();
        m.name = "t1";

        FactPattern p = new FactPattern( "Person" );

        m.addLhsItem( p );

        final CompositeFieldConstraint cfc1 = new CompositeFieldConstraint();
        cfc1.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc1 );
        final SingleFieldConstraint cfc1sfc1 = new SingleFieldConstraint();
        cfc1sfc1.setFieldName( "field1" );
        cfc1sfc1.setFieldType( DataType.TYPE_STRING );
        cfc1sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc1sfc1.setValue( "$f1" );
        cfc1sfc1.setOperator( "==" );
        cfc1.addConstraint( cfc1sfc1 );
        final SingleFieldConstraint cfc1sfc2 = new SingleFieldConstraint();
        cfc1sfc2.setFieldName( "field2" );
        cfc1sfc2.setFieldType( DataType.TYPE_STRING );
        cfc1sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_LITERAL );
        cfc1sfc2.setValue( "v2" );
        cfc1sfc2.setOperator( "==" );
        cfc1.addConstraint( cfc1sfc2 );

        final CompositeFieldConstraint cfc2 = new CompositeFieldConstraint();
        cfc2.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc2 );
        final SingleFieldConstraint cfc2sfc1 = new SingleFieldConstraint();
        cfc2sfc1.setFieldName( "field3" );
        cfc2sfc1.setFieldType( DataType.TYPE_STRING );
        cfc2sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc2sfc1.setValue( "$f3" );
        cfc2sfc1.setOperator( "==" );
        cfc2.addConstraint( cfc2sfc1 );
        final SingleFieldConstraint cfc2sfc2 = new SingleFieldConstraint();
        cfc2sfc2.setFieldName( "field4" );
        cfc2sfc2.setFieldType( DataType.TYPE_STRING );
        cfc2sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_LITERAL );
        cfc2sfc2.setValue( "v4" );
        cfc2sfc2.setOperator( "==" );
        cfc2.addConstraint( cfc2sfc2 );

        final CompositeFieldConstraint cfc3 = new CompositeFieldConstraint();
        cfc3.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc3 );
        final SingleFieldConstraint cfc3sfc1 = new SingleFieldConstraint();
        cfc3sfc1.setFieldName( "field5" );
        cfc3sfc1.setFieldType( DataType.TYPE_STRING );
        cfc3sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc3sfc1.setValue( "$f5" );
        cfc3sfc1.setOperator( "==" );
        cfc3.addConstraint( cfc3sfc1 );
        final SingleFieldConstraint cfc3sfc2 = new SingleFieldConstraint();
        cfc3sfc2.setFieldName( "field6" );
        cfc3sfc2.setFieldType( DataType.TYPE_STRING );
        cfc3sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_LITERAL );
        cfc3sfc2.setValue( "v6" );
        cfc3sfc2.setOperator( "==" );
        cfc3.addConstraint( cfc3sfc2 );

        String expected = "rule \"t1_0\"\n" +
                "dialect \"mvel\"\n" +
                "when\n" +
                "Person( field1 == \"v1\" || field2 == \"v2\", field3 == \"v3\" || field4 == \"v4\", field5 == \"v5\" || field6 == \"v6\" )\n" +
                "then\n" +
                "end\n";

        m.addRow( new String[]{ "v1", "v3", "v5" } );

        checkMarshall( expected,
                       m );
    }
View Full Code Here

                       m );
    }

    @Test
    public void testNestedCompositeConstraints6VariablesNoValuesAndLiterals() {
        TemplateModel m = new TemplateModel();
        m.name = "t1";

        FactPattern p = new FactPattern( "Person" );

        m.addLhsItem( p );

        final CompositeFieldConstraint cfc1 = new CompositeFieldConstraint();
        cfc1.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc1 );
        final SingleFieldConstraint cfc1sfc1 = new SingleFieldConstraint();
        cfc1sfc1.setFieldName( "field1" );
        cfc1sfc1.setFieldType( DataType.TYPE_STRING );
        cfc1sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc1sfc1.setValue( "$f1" );
        cfc1sfc1.setOperator( "==" );
        cfc1.addConstraint( cfc1sfc1 );
        final SingleFieldConstraint cfc1sfc2 = new SingleFieldConstraint();
        cfc1sfc2.setFieldName( "field2" );
        cfc1sfc2.setFieldType( DataType.TYPE_STRING );
        cfc1sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_LITERAL );
        cfc1sfc2.setValue( "v2" );
        cfc1sfc2.setOperator( "==" );
        cfc1.addConstraint( cfc1sfc2 );

        final CompositeFieldConstraint cfc2 = new CompositeFieldConstraint();
        cfc2.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc2 );
        final SingleFieldConstraint cfc2sfc1 = new SingleFieldConstraint();
        cfc2sfc1.setFieldName( "field3" );
        cfc2sfc1.setFieldType( DataType.TYPE_STRING );
        cfc2sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc2sfc1.setValue( "$f3" );
        cfc2sfc1.setOperator( "==" );
        cfc2.addConstraint( cfc2sfc1 );
        final SingleFieldConstraint cfc2sfc2 = new SingleFieldConstraint();
        cfc2sfc2.setFieldName( "field4" );
        cfc2sfc2.setFieldType( DataType.TYPE_STRING );
        cfc2sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_LITERAL );
        cfc2sfc2.setValue( "v4" );
        cfc2sfc2.setOperator( "==" );
        cfc2.addConstraint( cfc2sfc2 );

        final CompositeFieldConstraint cfc3 = new CompositeFieldConstraint();
        cfc3.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc3 );
        final SingleFieldConstraint cfc3sfc1 = new SingleFieldConstraint();
        cfc3sfc1.setFieldName( "field5" );
        cfc3sfc1.setFieldType( DataType.TYPE_STRING );
        cfc3sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc3sfc1.setValue( "$f5" );
        cfc3sfc1.setOperator( "==" );
        cfc3.addConstraint( cfc3sfc1 );
        final SingleFieldConstraint cfc3sfc2 = new SingleFieldConstraint();
        cfc3sfc2.setFieldName( "field6" );
        cfc3sfc2.setFieldType( DataType.TYPE_STRING );
        cfc3sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_LITERAL );
        cfc3sfc2.setValue( "v6" );
        cfc3sfc2.setOperator( "==" );
        cfc3.addConstraint( cfc3sfc2 );

        String expected = "rule \"t1_0\"\n" +
                "dialect \"mvel\"\n" +
                "when\n" +
                "Person( field2 == \"v2\", field4 == \"v4\", field6 == \"v6\" )\n" +
                "then\n" +
                "end\n";

        m.addRow( new String[]{ null, null, null } );

        checkMarshall( expected,
                       m );
    }
View Full Code Here

                       m );
    }

    @Test
    public void testNestedCompositeConstraints6VariablesWithValuesAndLiterals() {
        TemplateModel m = new TemplateModel();
        m.name = "t1";

        FactPattern p = new FactPattern( "Person" );

        m.addLhsItem( p );

        final CompositeFieldConstraint cfc1 = new CompositeFieldConstraint();
        cfc1.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc1 );
        final SingleFieldConstraint cfc1sfc1 = new SingleFieldConstraint();
        cfc1sfc1.setFieldName( "field1" );
        cfc1sfc1.setFieldType( DataType.TYPE_STRING );
        cfc1sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc1sfc1.setValue( "$f1" );
        cfc1sfc1.setOperator( "==" );
        cfc1.addConstraint( cfc1sfc1 );
        final SingleFieldConstraint cfc1sfc2 = new SingleFieldConstraint();
        cfc1sfc2.setFieldName( "field2" );
        cfc1sfc2.setFieldType( DataType.TYPE_STRING );
        cfc1sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_LITERAL );
        cfc1sfc2.setValue( "v2" );
        cfc1sfc2.setOperator( "==" );
        cfc1.addConstraint( cfc1sfc2 );

        final CompositeFieldConstraint cfc2 = new CompositeFieldConstraint();
        cfc2.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc2 );
        final SingleFieldConstraint cfc2sfc1 = new SingleFieldConstraint();
        cfc2sfc1.setFieldName( "field3" );
        cfc2sfc1.setFieldType( DataType.TYPE_STRING );
        cfc2sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc2sfc1.setValue( "$f3" );
        cfc2sfc1.setOperator( "==" );
        cfc2.addConstraint( cfc2sfc1 );
        final SingleFieldConstraint cfc2sfc2 = new SingleFieldConstraint();
        cfc2sfc2.setFieldName( "field4" );
        cfc2sfc2.setFieldType( DataType.TYPE_STRING );
        cfc2sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_LITERAL );
        cfc2sfc2.setValue( "v4" );
        cfc2sfc2.setOperator( "==" );
        cfc2.addConstraint( cfc2sfc2 );

        final CompositeFieldConstraint cfc3 = new CompositeFieldConstraint();
        cfc3.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc3 );
        final SingleFieldConstraint cfc3sfc1 = new SingleFieldConstraint();
        cfc3sfc1.setFieldName( "field5" );
        cfc3sfc1.setFieldType( DataType.TYPE_STRING );
        cfc3sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc3sfc1.setValue( "$f5" );
        cfc3sfc1.setOperator( "==" );
        cfc3.addConstraint( cfc3sfc1 );
        final SingleFieldConstraint cfc3sfc2 = new SingleFieldConstraint();
        cfc3sfc2.setFieldName( "field6" );
        cfc3sfc2.setFieldType( DataType.TYPE_STRING );
        cfc3sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_LITERAL );
        cfc3sfc2.setValue( "v6" );
        cfc3sfc2.setOperator( "==" );
        cfc3.addConstraint( cfc3sfc2 );

        String expected = "rule \"t1_0\"\n" +
                "dialect \"mvel\"\n" +
                "when\n" +
                "Person( field1 == \"v1\" || field2 == \"v2\", field3 == \"v3\" || field4 == \"v4\", field5 == \"v5\" || field6 == \"v6\" )\n" +
                "then\n" +
                "end\n";

        m.addRow( new String[]{ "v1", "v3", "v5" } );

        checkMarshall( expected,
                       m );
    }
View Full Code Here

                       m );
    }

    @Test
    public void testNestedCompositeConstraints6LiteralsAndVariablesNoValues() {
        TemplateModel m = new TemplateModel();
        m.name = "t1";

        FactPattern p = new FactPattern( "Person" );

        m.addLhsItem( p );

        final CompositeFieldConstraint cfc1 = new CompositeFieldConstraint();
        cfc1.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc1 );
        final SingleFieldConstraint cfc1sfc1 = new SingleFieldConstraint();
        cfc1sfc1.setFieldName( "field1" );
        cfc1sfc1.setFieldType( DataType.TYPE_STRING );
        cfc1sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_LITERAL );
        cfc1sfc1.setValue( "v1" );
        cfc1sfc1.setOperator( "==" );
        cfc1.addConstraint( cfc1sfc1 );
        final SingleFieldConstraint cfc1sfc2 = new SingleFieldConstraint();
        cfc1sfc2.setFieldName( "field2" );
        cfc1sfc2.setFieldType( DataType.TYPE_STRING );
        cfc1sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc1sfc2.setValue( "$f2" );
        cfc1sfc2.setOperator( "==" );
        cfc1.addConstraint( cfc1sfc2 );

        final CompositeFieldConstraint cfc2 = new CompositeFieldConstraint();
        cfc2.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc2 );
        final SingleFieldConstraint cfc2sfc1 = new SingleFieldConstraint();
        cfc2sfc1.setFieldName( "field3" );
        cfc2sfc1.setFieldType( DataType.TYPE_STRING );
        cfc2sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_LITERAL );
        cfc2sfc1.setValue( "v3" );
        cfc2sfc1.setOperator( "==" );
        cfc2.addConstraint( cfc2sfc1 );
        final SingleFieldConstraint cfc2sfc2 = new SingleFieldConstraint();
        cfc2sfc2.setFieldName( "field4" );
        cfc2sfc2.setFieldType( DataType.TYPE_STRING );
        cfc2sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc2sfc2.setValue( "$f4" );
        cfc2sfc2.setOperator( "==" );
        cfc2.addConstraint( cfc2sfc2 );

        final CompositeFieldConstraint cfc3 = new CompositeFieldConstraint();
        cfc3.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc3 );
        final SingleFieldConstraint cfc3sfc1 = new SingleFieldConstraint();
        cfc3sfc1.setFieldName( "field5" );
        cfc3sfc1.setFieldType( DataType.TYPE_STRING );
        cfc3sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_LITERAL );
        cfc3sfc1.setValue( "v5" );
        cfc3sfc1.setOperator( "==" );
        cfc3.addConstraint( cfc3sfc1 );
        final SingleFieldConstraint cfc3sfc2 = new SingleFieldConstraint();
        cfc3sfc2.setFieldName( "field6" );
        cfc3sfc2.setFieldType( DataType.TYPE_STRING );
        cfc3sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc3sfc2.setValue( "$f6" );
        cfc3sfc2.setOperator( "==" );
        cfc3.addConstraint( cfc3sfc2 );

        String expected = "rule \"t1_0\"\n" +
                "dialect \"mvel\"\n" +
                "when\n" +
                "Person( field1 == \"v1\", field3 == \"v3\", field5 == \"v5\" )\n" +
                "then\n" +
                "end\n";

        m.addRow( new String[]{ null, null, null } );

        checkMarshall( expected,
                       m );
    }
View Full Code Here

                       m );
    }

    @Test
    public void testNestedCompositeConstraints6LiteralsAndVariablesWithValues() {
        TemplateModel m = new TemplateModel();
        m.name = "t1";

        FactPattern p = new FactPattern( "Person" );

        m.addLhsItem( p );

        final CompositeFieldConstraint cfc1 = new CompositeFieldConstraint();
        cfc1.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc1 );
        final SingleFieldConstraint cfc1sfc1 = new SingleFieldConstraint();
        cfc1sfc1.setFieldName( "field1" );
        cfc1sfc1.setFieldType( DataType.TYPE_STRING );
        cfc1sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_LITERAL );
        cfc1sfc1.setValue( "v1" );
        cfc1sfc1.setOperator( "==" );
        cfc1.addConstraint( cfc1sfc1 );
        final SingleFieldConstraint cfc1sfc2 = new SingleFieldConstraint();
        cfc1sfc2.setFieldName( "field2" );
        cfc1sfc2.setFieldType( DataType.TYPE_STRING );
        cfc1sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc1sfc2.setValue( "$f2" );
        cfc1sfc2.setOperator( "==" );
        cfc1.addConstraint( cfc1sfc2 );

        final CompositeFieldConstraint cfc2 = new CompositeFieldConstraint();
        cfc2.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc2 );
        final SingleFieldConstraint cfc2sfc1 = new SingleFieldConstraint();
        cfc2sfc1.setFieldName( "field3" );
        cfc2sfc1.setFieldType( DataType.TYPE_STRING );
        cfc2sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_LITERAL );
        cfc2sfc1.setValue( "v3" );
        cfc2sfc1.setOperator( "==" );
        cfc2.addConstraint( cfc2sfc1 );
        final SingleFieldConstraint cfc2sfc2 = new SingleFieldConstraint();
        cfc2sfc2.setFieldName( "field4" );
        cfc2sfc2.setFieldType( DataType.TYPE_STRING );
        cfc2sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc2sfc2.setValue( "$f4" );
        cfc2sfc2.setOperator( "==" );
        cfc2.addConstraint( cfc2sfc2 );

        final CompositeFieldConstraint cfc3 = new CompositeFieldConstraint();
        cfc3.setCompositeJunctionType( CompositeFieldConstraint.COMPOSITE_TYPE_OR );
        p.addConstraint( cfc3 );
        final SingleFieldConstraint cfc3sfc1 = new SingleFieldConstraint();
        cfc3sfc1.setFieldName( "field5" );
        cfc3sfc1.setFieldType( DataType.TYPE_STRING );
        cfc3sfc1.setConstraintValueType( SingleFieldConstraint.TYPE_LITERAL );
        cfc3sfc1.setValue( "v5" );
        cfc3sfc1.setOperator( "==" );
        cfc3.addConstraint( cfc3sfc1 );
        final SingleFieldConstraint cfc3sfc2 = new SingleFieldConstraint();
        cfc3sfc2.setFieldName( "field6" );
        cfc3sfc2.setFieldType( DataType.TYPE_STRING );
        cfc3sfc2.setConstraintValueType( SingleFieldConstraint.TYPE_TEMPLATE );
        cfc3sfc2.setValue( "$f6" );
        cfc3sfc2.setOperator( "==" );
        cfc3.addConstraint( cfc3sfc2 );

        String expected = "rule \"t1_0\"\n" +
                "dialect \"mvel\"\n" +
                "when\n" +
                "Person( field1 == \"v1\" || field2 == \"v2\", field3 == \"v3\" || field4 == \"v4\", field5 == \"v5\" || field6 == \"v6\" )\n" +
                "then\n" +
                "end\n";

        m.addRow( new String[]{ "v2", "v4", "v6" } );

        checkMarshall( expected,
                       m );
    }
View Full Code Here

TOP

Related Classes of org.drools.workbench.models.guided.template.shared.TemplateModel

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.