Package org.drools.compiler

Examples of org.drools.compiler.Cheese


        Person p = new Person( "x" );
        p.addAddress( new Address( "x", "x", "x" ) );
        p.addAddress( new Address( "y", "y", "y" ) );
        ksession.insert( p );

        ksession.insert( new Cheese( "x" ) );
        assertEquals( 1, ksession.fireAllRules() );
        ksession.dispose();
    }
View Full Code Here


        Person p = new Person( "x" );
        p.setAddress( new Address( "x", "x", "x" ) );
        ksession.insert( p );

        ksession.insert( new Cheese( "x" ) );
        assertEquals( 1, ksession.fireAllRules() );
        ksession.dispose();
    }
View Full Code Here

        org.kie.api.event.rule.AgendaEventListener ael = mock( org.kie.api.event.rule.AgendaEventListener.class );
        ksession.addEventListener( ael );

        ksession.insert( new Person( "Bob", 19 ) );
        ksession.insert( new Cheese( "brie", 10 ) );
        ksession.fireAllRules();

        // both rules should fire exactly once
        verify( ael, times( 2 ) ).afterMatchFired(any(org.kie.api.event.rule.AfterMatchFiredEvent.class));
        // no cancellations should have happened
View Full Code Here

    @Test
    public void testUnbalancedTrees() throws Exception {
        KnowledgeBase kbase = SerializationHelper.serializeObject( loadKnowledgeBase( "test_UnbalancedTrees.drl" ) );
        StatefulKnowledgeSession wm = createKnowledgeSession( kbase );

        wm.insert( new Cheese( "a",
                               10 ) );
        wm.insert( new Cheese( "b",
                               10 ) );
        wm.insert( new Cheese( "c",
                               10 ) );
        wm.insert( new Cheese( "d",
                               10 ) );
        final Cheese e = new Cheese( "e",
                                     10 );
        wm.insert( e );

        wm.fireAllRules();

        assertEquals( "Rule should have fired twice, seting the price to 30",
                      30,
                      e.getPrice() );
        // success
    }
View Full Code Here

        final List result = new ArrayList();
        ksession.setGlobal( "results",
                            result );

        final Person person = new Person( "bob" );
        final Cheese cheese = new Cheese( "brie",
                                          10 );

        ksession.insert( person );
        ksession.insert( cheese );
View Full Code Here

        final Map result = new HashMap();
        ksession.setGlobal( "results",
                            result );

        final Cheese stilton = new Cheese( "stilton",
                                           20 );
        final Cheese brie = new Cheese( "brie",
                                        10 );

        ksession.insert( stilton );
        ksession.insert( brie );

        ksession.fireAllRules();
        assertEquals( 5,
                      result.size() );
        assertEquals( stilton.getPrice(),
                      ((Integer) result.get( stilton.getType() )).intValue() );
        assertEquals( brie.getPrice(),
                      ((Integer) result.get( brie.getType() )).intValue() );

        assertEquals( stilton.getPrice(),
                      ((Integer) result.get( stilton )).intValue() );
        assertEquals( brie.getPrice(),
                      ((Integer) result.get( brie )).intValue() );

        assertEquals( stilton.getPrice(),
                      ((Integer) result.get( "test3" + stilton.getType() )).intValue() );

        ksession.insert( new Person( "bob",
                                     brie.getType() ) );
        ksession.fireAllRules();

        assertEquals( 6,
                      result.size() );
        assertEquals( brie.getPrice(),
                      ((Integer) result.get( "test3" + brie.getType() )).intValue() );
    }
View Full Code Here

        StatefulKnowledgeSession wm = createKnowledgeSession( kbase );

        RuleRuntimeEventListener wmel = mock( RuleRuntimeEventListener.class );
        wm.addEventListener( wmel );

        final Cheese stilton = new Cheese( "stilton",
                                           15 );

        final org.kie.api.runtime.rule.FactHandle stiltonHandle = wm.insert( stilton );

        ArgumentCaptor<org.kie.api.event.rule.ObjectInsertedEvent> oic = ArgumentCaptor.forClass( org.kie.api.event.rule.ObjectInsertedEvent.class );
View Full Code Here

        ksession.setGlobal( "results",
                            results );
        ksession.setGlobal( "factor",
                            new Double( 1.2 ) );

        final Cheese cheese = new Cheese( "stilton",
                                          10 );
        ksession.insert( cheese );

        ksession.fireAllRules();
        assertEquals( 1,
View Full Code Here

        final List list = new ArrayList();
        ksession.setGlobal( "list",
                            list );

        final Cheese stilton = new Cheese( "stilton",
                                           12 );
        final Cheese muzzarela = new Cheese( "muzzarela",
                                             10 );
        final Cheese brie = new Cheese( "brie",
                                        15 );
        ksession.insert( stilton );
        ksession.insert( muzzarela );

        final Cheesery cheesery = new Cheesery();
        cheesery.getCheeses().add( stilton.getType() );
        cheesery.getCheeses().add( brie.getType() );
        ksession.insert( cheesery );

        ksession.fireAllRules();

        assertEquals( 2,
View Full Code Here

                      list.size() );

        assertEquals( "rule1",
                      list.get( 0 ) );

        ksession.insert( new Cheese( "stilton",
                                     10 ) );
        ksession.fireAllRules();

        assertEquals( 2,
                      list.size() );
View Full Code Here

TOP

Related Classes of org.drools.compiler.Cheese

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.