[jboss-svn-commits] JBL Code SVN: r14558 - in labs/jbossrules/trunk/drools-compiler/src/test: resources/org/drools/rule/builder/dialect and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Aug 25 18:43:39 EDT 2007
Author: ahtik
Date: 2007-08-25 18:43:39 -0400 (Sat, 25 Aug 2007)
New Revision: 14558
Added:
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/rule/builder/dialect/JavaAndMVELCombinedTest.java
labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/rule/builder/dialect/javaonly.drl
labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/rule/builder/dialect/mveljavarules.drl
labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/rule/builder/dialect/mvelonly.drl
Log:
test demonstrating slowdown caused by combining java and mvel into one drl
Added: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/rule/builder/dialect/JavaAndMVELCombinedTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/rule/builder/dialect/JavaAndMVELCombinedTest.java (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/rule/builder/dialect/JavaAndMVELCombinedTest.java 2007-08-25 22:43:39 UTC (rev 14558)
@@ -0,0 +1,70 @@
+package org.drools.rule.builder.dialect;
+
+import java.io.InputStreamReader;
+import java.io.Reader;
+
+import junit.framework.Assert;
+import junit.framework.TestCase;
+
+import org.drools.RuleBase;
+import org.drools.RuleBaseFactory;
+import org.drools.compiler.PackageBuilder;
+import org.drools.rule.Package;
+
+public class JavaAndMVELCombinedTest extends TestCase {
+
+ private final static String FN1 = "mveljavarules.drl";
+ private final static String FN2 = "mvelonly.drl";
+ private final static String FN3 = "javaonly.drl";
+
+ public void testJavaMVELCombination() throws Exception {
+ long time1 = timing( new Runnable() {
+ public void run() {
+ readDRL( FN1 );
+ }
+ } );
+ long time2 = timing( new Runnable() {
+ public void run() {
+ readDRL( FN2 );
+ }
+ } );
+ long time3 = timing( new Runnable() {
+ public void run() {
+ readDRL( FN3 );
+ }
+ } );
+
+ System.out.println("mveljava: "+time1/1000.);
+ System.out.println(" mvel: "+time2/1000.);
+ System.out.println(" java: "+time3/1000.);
+
+ }
+
+ private long timing(Runnable runnable) {
+ long start = System.currentTimeMillis();
+ runnable.run();
+ return System.currentTimeMillis()-start;
+ }
+
+ private void readDRL(String fn) {
+ try {
+ Reader source = new InputStreamReader( JavaAndMVELCombinedTest.class.getResourceAsStream( fn ) );
+
+ PackageBuilder builder = new PackageBuilder();
+ builder.addPackageFromDrl( source );
+ Assert.assertEquals( 0,
+ builder.getErrors().getErrors().length );
+
+ Package pkg = builder.getPackage();
+ RuleBase ruleBase = RuleBaseFactory.newRuleBase();
+ ruleBase.addPackage( pkg );
+
+ Assert.assertEquals( 2,
+ pkg.getRules().length );
+ } catch ( Throwable t ) {
+ throw new RuntimeException(t);
+ }
+
+ }
+
+}
Added: labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/rule/builder/dialect/javaonly.drl
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/rule/builder/dialect/javaonly.drl (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/rule/builder/dialect/javaonly.drl 2007-08-25 22:43:39 UTC (rev 14558)
@@ -0,0 +1,15 @@
+package org.drools;
+
+rule "Hello World"
+ dialect "java"
+ when
+ then
+ System.out.println( "java" );
+end
+
+rule "GoodBye"
+ dialect "java"
+ when
+ then
+ System.out.println( "java" );
+end
Added: labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/rule/builder/dialect/mveljavarules.drl
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/rule/builder/dialect/mveljavarules.drl (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/rule/builder/dialect/mveljavarules.drl 2007-08-25 22:43:39 UTC (rev 14558)
@@ -0,0 +1,15 @@
+package org.drools;
+
+rule "Hello World"
+ dialect "java"
+ when
+ then
+ System.out.println( "java" );
+end
+
+rule "GoodBye"
+ dialect "mvel"
+ when
+ then
+ System.out.println( "mvel" );
+end
Added: labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/rule/builder/dialect/mvelonly.drl
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/rule/builder/dialect/mvelonly.drl (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/rule/builder/dialect/mvelonly.drl 2007-08-25 22:43:39 UTC (rev 14558)
@@ -0,0 +1,15 @@
+package org.drools;
+
+rule "Hello World"
+ dialect "mvel"
+ when
+ then
+ System.out.println( "mvel" );
+end
+
+rule "GoodBye"
+ dialect "mvel"
+ when
+ then
+ System.out.println( "mvel" );
+end
More information about the jboss-svn-commits
mailing list