public RuleImpl getRule() { return new RuleImpl( ruleName ); }
public MockActivation( ) { this.rule = new RuleImpl(); }
private Activation prepareActivation() { final Activation activation = mock(Activation.class); when(activation.getRule()).thenReturn(new RuleImpl()); return activation; } }
@Before public void prepareGuard() { guardedUnit = new TestRuleUnit(new Integer[]{}, BigDecimal.TEN); guardingRule = new RuleImpl(); guard = new Guard(guardedUnit, guardingRule); }
@Before public void setUp() throws Exception { store.setClassFieldAccessorCache( new ClassFieldAccessorCache( Thread.currentThread().getContextClassLoader() ) ); store.setEagerWire( true ); this.kBase = (InternalKnowledgeBase) KnowledgeBaseFactory.newKnowledgeBase(); this.buildContext = new BuildContext( kBase ); this.buildContext.setRule(new RuleImpl("test")); }
@Test public void testDateEffective() { WorkingMemory wm = (WorkingMemory) new KnowledgeBaseImpl( "x", null).newKieSession(); final RuleImpl rule = new RuleImpl( "myrule" ); assertTrue( rule.isEffective(null, new RuleTerminalNode(), wm ) ); final Calendar earlier = Calendar.getInstance(); earlier.setTimeInMillis( 10 ); rule.setDateEffective( earlier ); assertTrue( rule.isEffective(null, new RuleTerminalNode(), wm ) ); final Calendar later = Calendar.getInstance(); later.setTimeInMillis( later.getTimeInMillis() + 100000000 ); assertTrue( later.after( Calendar.getInstance() ) ); rule.setDateEffective( later ); assertFalse( rule.isEffective(null, new RuleTerminalNode(), wm ) ); }
@Test public void testDateExpires() throws Exception { WorkingMemory wm = (WorkingMemory) new KnowledgeBaseImpl("x", null).newKieSession(); final RuleImpl rule = new RuleImpl( "myrule" ); assertTrue( rule.isEffective(null, new RuleTerminalNode(), wm ) ); final Calendar earlier = Calendar.getInstance(); earlier.setTimeInMillis( 10 ); rule.setDateExpires( earlier ); assertFalse( rule.isEffective(null, new RuleTerminalNode(), wm ) ); final Calendar later = Calendar.getInstance(); later.setTimeInMillis( later.getTimeInMillis() + 100000000 ); rule.setDateExpires( later ); assertTrue( rule.isEffective(null, new RuleTerminalNode(), wm ) ); }
@Test public void testIsSalienceDynamic() { final RuleImpl rule = new RuleImpl( "myrule" ); Salience salience = new MVELSalienceExpression(); rule.setSalience(salience); assertTrue(rule.isSalienceDynamic()); }
@Test public void testGetSalienceValue() { final RuleImpl rule = new RuleImpl( "myrule" ); final int salienceValue = 100; Salience salience = new SalienceInteger(salienceValue); rule.setSalience(salience); assertEquals(salienceValue, rule.getSalienceValue()); assertFalse(rule.isSalienceDynamic()); }
@Test public void testDateEffectiveExpires() { WorkingMemory wm = (WorkingMemory) new KnowledgeBaseImpl("x",null).newKieSession(); final RuleImpl rule = new RuleImpl( "myrule" ); final Calendar past = Calendar.getInstance(); past.setTimeInMillis( 10 ); final Calendar future = Calendar.getInstance(); future.setTimeInMillis( future.getTimeInMillis() + 100000000 ); rule.setDateEffective( past ); rule.setDateExpires( future ); assertTrue( rule.isEffective(null, new RuleTerminalNode(), wm ) ); rule.setDateExpires( past ); assertFalse( rule.isEffective(null, new RuleTerminalNode(), wm ) ); rule.setDateExpires( future ); rule.setDateEffective( future ); assertFalse( rule.isEffective(null, new RuleTerminalNode(), wm ) ); }
@Test public void testRuleEnabled() { WorkingMemory wm = (WorkingMemory) new KnowledgeBaseImpl("x", null).newKieSession(); final RuleImpl rule = new RuleImpl( "myrule" ); rule.setEnabled( EnabledBoolean.ENABLED_FALSE ); assertFalse( rule.isEffective( null, new RuleTerminalNode(), wm ) ); final Calendar past = Calendar.getInstance(); past.setTimeInMillis( 10 ); rule.setDateEffective( past ); assertFalse( rule.isEffective( null, new RuleTerminalNode(), wm ) ); rule.setEnabled( EnabledBoolean.ENABLED_TRUE ); assertTrue( rule.isEffective( null, new RuleTerminalNode(), wm ) ); }
@Test public void testTimeMachine() { SessionConfiguration conf = SessionConfiguration.newInstance(); conf.setClockType( ClockType.PSEUDO_CLOCK ); WorkingMemory wm = (WorkingMemory) new KnowledgeBaseImpl("x", null).newKieSession(conf, null); final Calendar future = Calendar.getInstance(); ((PseudoClockScheduler)wm.getSessionClock()).setStartupTime( future.getTimeInMillis() ); final RuleImpl rule = new RuleImpl( "myrule" ); rule.setEnabled( EnabledBoolean.ENABLED_TRUE ); assertTrue( rule.isEffective(null, new RuleTerminalNode(), wm ) ); future.setTimeInMillis( future.getTimeInMillis() + 100000000 ); rule.setDateEffective(future); assertFalse( rule.isEffective(null, new RuleTerminalNode(), wm ) ); ((PseudoClockScheduler)wm.getSessionClock()).advanceTime( 1000000000000L, TimeUnit.MILLISECONDS ); assertTrue(rule.isEffective(null, new RuleTerminalNode(), wm )); }
@Before public void setUp() { this.kBase = (InternalKnowledgeBase) KnowledgeBaseFactory.newKnowledgeBase(); this.buildContext = new BuildContext( kBase ); this.buildContext.setRule(new RuleImpl()); PropagationContextFactory pctxFactory = kBase.getConfiguration().getComponentFactory().getPropagationContextFactory(); this.context = pctxFactory.createPropagationContext(0, PropagationContext.Type.INSERTION, null, null, null); this.workingMemory = new InstrumentedWorkingMemory( 0, this.kBase ); }
public BuildContext createContext() { RuleBaseConfiguration conf = new RuleBaseConfiguration(); KnowledgeBaseImpl rbase = new KnowledgeBaseImpl( "ID", conf ); BuildContext buildContext = new BuildContext( rbase ); RuleImpl rule = new RuleImpl( "rule1").setPackage( "org.pkg1" ); InternalKnowledgePackage pkg = new KnowledgePackageImpl( "org.pkg1" ); pkg.getDialectRuntimeRegistry().setDialectData( "mvel", new MVELDialectRuntimeData() ); pkg.addRule( rule ); buildContext.setRule( rule ); return buildContext; }
public BuildContext createContext() { RuleBaseConfiguration conf = new RuleBaseConfiguration(); KnowledgeBaseImpl rbase = new KnowledgeBaseImpl( "ID", conf ); BuildContext buildContext = new BuildContext( rbase ); RuleImpl rule = new RuleImpl( "rule1").setPackage( "org.pkg1" ); InternalKnowledgePackage pkg = new KnowledgePackageImpl( "org.pkg1" ); pkg.getDialectRuntimeRegistry().setDialectData( "mvel", new MVELDialectRuntimeData() ); pkg.addRule( rule ); buildContext.setRule( rule ); return buildContext; }
public BuildContext createContext() { RuleBaseConfiguration conf = new RuleBaseConfiguration(); KnowledgeBaseImpl rbase = new KnowledgeBaseImpl( "ID", conf ); BuildContext buildContext = new BuildContext( rbase ); RuleImpl rule = new RuleImpl( "rule1").setPackage( "org.pkg1" ); InternalKnowledgePackage pkg = new KnowledgePackageImpl( "org.pkg1" ); pkg.getDialectRuntimeRegistry().setDialectData( "mvel", new MVELDialectRuntimeData() ); pkg.addRule( rule ); buildContext.setRule( rule ); return buildContext; }
public BuildContext createContext() { RuleBaseConfiguration conf = new RuleBaseConfiguration(); KnowledgeBaseImpl rbase = new KnowledgeBaseImpl( "ID", conf ); BuildContext buildContext = new BuildContext( rbase ); RuleImpl rule = new RuleImpl( "rule1").setPackage( "org.pkg1" ); InternalKnowledgePackage pkg = new KnowledgePackageImpl( "org.pkg1" ); pkg.getDialectRuntimeRegistry().setDialectData( "mvel", new MVELDialectRuntimeData() ); pkg.addRule( rule ); buildContext.setRule( rule ); return buildContext; } }
@Before public void setUp() { this.kBase = (InternalKnowledgeBase) KnowledgeBaseFactory.newKnowledgeBase(); pkg = new KnowledgePackageImpl("org.droos.test"); pkg.setClassFieldAccessorCache(new ClassFieldAccessorCache(Thread.currentThread().getContextClassLoader())); JavaDialectRuntimeData data = new JavaDialectRuntimeData(); data.onAdd(pkg.getDialectRuntimeRegistry(), kBase.getRootClassLoader()); pkg.getDialectRuntimeRegistry().setDialectData("java", data); // we need to add one rule to the package because the previous deadlock was encountered // while removing rules from a package when said package is removed from the rulebase rule = new RuleImpl("Test"); rule.setDialect("java"); rule.setConsequence(new Consequence() { public void evaluate(KnowledgeHelper knowledgeHelper, WorkingMemory workingMemory) throws Exception { } public String getName() { return "default"; } }); pkg.addRule(rule); kBase.addPackage(pkg); }
@Test public void testRuleStreamingWithCalendar() throws Exception { // DROOLS-260 RuleImpl rule = new RuleImpl ("test"); rule.setCalendars(new String[] {"mycalendar"}); byte[] buf = marshal(rule); RuleImpl retrievedRule = (RuleImpl)unmarshal(buf); assertNotNull(retrievedRule); assertNotNull(retrievedRule.getCalendars()); assertEquals(1, retrievedRule.getCalendars().length); assertEquals("mycalendar", retrievedRule.getCalendars()[0]); } }
@Test public void testAddRuleWithPatterns() { final RuleImpl rule = new RuleImpl( "only patterns" ); final Pattern c1 = new Pattern( 0, new ClassObjectType( String.class ) );