[jboss-svn-commits] JBL Code SVN: r19644 - in labs/jbossrules/trunk/drools-compiler/src: test/java/org/drools/integrationtests and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Apr 19 13:36:11 EDT 2008
Author: KrisVerlaenen
Date: 2008-04-19 13:36:11 -0400 (Sat, 19 Apr 2008)
New Revision: 19644
Added:
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/ConsequenceOffsetTest.java
labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_consequenceOffset.drl
labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_consequenceOffset2.drl
labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_consequenceOffsetImports.drl
Modified:
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/JavaRuleClassBuilder.java
Log:
JBRULES-1568: Java debug not working with multiple rule files
- imports are now on one line
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/JavaRuleClassBuilder.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/JavaRuleClassBuilder.java 2008-04-19 16:09:17 UTC (rev 19643)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/rule/builder/dialect/java/JavaRuleClassBuilder.java 2008-04-19 17:36:11 UTC (rev 19644)
@@ -46,12 +46,14 @@
buffer.append( "package " + context.getPkg().getName() + ";" + lineSeparator );
for ( final Iterator it = context.getPkg().getImports().keySet().iterator(); it.hasNext(); ) {
- buffer.append( "import " + it.next() + ";" + lineSeparator );
+ buffer.append( "import " + it.next() + ";");
}
for ( final Iterator it = context.getPkg().getStaticImports().iterator(); it.hasNext(); ) {
- buffer.append( "import static " + it.next() + ";" + lineSeparator );
+ buffer.append( "import static " + it.next() + ";");
}
+
+ buffer.append( lineSeparator );
final RuleDescr ruleDescr = context.getRuleDescr();
Added: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/ConsequenceOffsetTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/ConsequenceOffsetTest.java (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/ConsequenceOffsetTest.java 2008-04-19 17:36:11 UTC (rev 19644)
@@ -0,0 +1,66 @@
+package org.drools.integrationtests;
+
+import java.io.InputStreamReader;
+import java.io.Reader;
+
+import junit.framework.TestCase;
+
+import org.antlr.runtime.ANTLRReaderStream;
+import org.antlr.runtime.CommonTokenStream;
+import org.drools.compiler.PackageBuilder;
+import org.drools.lang.DRLLexer;
+import org.drools.lang.DRLParser;
+import org.drools.lang.descr.PackageDescr;
+import org.drools.lang.descr.RuleDescr;
+
+public class ConsequenceOffsetTest extends TestCase {
+
+ public void testConsequenceOffset() throws Exception {
+ int offset = -1;
+ Reader reader = new InputStreamReader( ConsequenceOffsetTest.class.getResourceAsStream( "test_consequenceOffset.drl" ) );
+ DRLParser parser = new DRLParser( new CommonTokenStream( new DRLLexer( new ANTLRReaderStream( reader ) ) ) );
+ parser.compilation_unit();
+ PackageDescr packageDescr = parser.getPackageDescr();
+ PackageBuilder packageBuilder = new PackageBuilder();
+ packageBuilder.addPackage(packageDescr);
+ assertEquals(false, packageBuilder.hasErrors());
+ for (Object o: packageDescr.getRules()) {
+ RuleDescr rule = (RuleDescr) o;
+ if (rule.getName().equals("test")) {
+ offset = rule.getConsequenceOffset();
+ }
+ }
+
+ reader = new InputStreamReader( ConsequenceOffsetTest.class.getResourceAsStream( "test_consequenceOffset2.drl" ) );
+ parser = new DRLParser( new CommonTokenStream( new DRLLexer( new ANTLRReaderStream( reader ) ) ) );
+ parser.compilation_unit();
+ packageDescr = parser.getPackageDescr();
+ packageBuilder = new PackageBuilder();
+ packageBuilder.addPackage(packageDescr);
+ reader = new InputStreamReader( ConsequenceOffsetTest.class.getResourceAsStream( "test_consequenceOffset.drl" ) );
+ parser = new DRLParser( new CommonTokenStream( new DRLLexer( new ANTLRReaderStream( reader ) ) ) );
+ parser.compilation_unit();
+ packageDescr = parser.getPackageDescr();
+ packageBuilder.addPackage(packageDescr);
+ assertEquals(false, packageBuilder.hasErrors());
+ for (Object o: packageDescr.getRules()) {
+ RuleDescr rule = (RuleDescr) o;
+ if (rule.getName().equals("test")) {
+ assertEquals(offset, rule.getConsequenceOffset());
+ return;
+ }
+ }
+ fail();
+ }
+
+ public void testLargeSetOfImports() throws Exception {
+ Reader reader = new InputStreamReader( ConsequenceOffsetTest.class.getResourceAsStream( "test_consequenceOffsetImports.drl" ) );
+ DRLParser parser = new DRLParser( new CommonTokenStream( new DRLLexer( new ANTLRReaderStream( reader ) ) ) );
+ parser.compilation_unit();
+ PackageDescr packageDescr = parser.getPackageDescr();
+ PackageBuilder packageBuilder = new PackageBuilder();
+ packageBuilder.addPackage(packageDescr);
+ assertEquals(false, packageBuilder.hasErrors());
+ }
+
+}
Added: labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_consequenceOffset.drl
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_consequenceOffset.drl (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_consequenceOffset.drl 2008-04-19 17:36:11 UTC (rev 19644)
@@ -0,0 +1,10 @@
+package com.sample
+
+import java.util.List
+
+rule test
+ when
+ List()
+ then
+ System.out.println("Test");
+end
\ No newline at end of file
Added: labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_consequenceOffset2.drl
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_consequenceOffset2.drl (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_consequenceOffset2.drl 2008-04-19 17:36:11 UTC (rev 19644)
@@ -0,0 +1,10 @@
+package com.sample
+
+import java.util.ArrayList
+
+rule test
+ when
+ ArrayList()
+ then
+ System.out.println("Test");
+end
\ No newline at end of file
Added: labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_consequenceOffsetImports.drl
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_consequenceOffsetImports.drl (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/integrationtests/test_consequenceOffsetImports.drl 2008-04-19 17:36:11 UTC (rev 19644)
@@ -0,0 +1,100 @@
+package com.sample
+
+// really long list of imports
+import java.util.ArrayDeque
+import java.util.AbstractCollection
+import java.util.AbstractQueue
+import java.util.AbstractMap
+import java.util.Arrays
+import java.util.AbstractList
+import java.util.ArrayList
+import java.util.AbstractSequentialList
+import java.util.AbstractSet
+import java.util.BitSet
+import java.util.ConcurrentModificationException
+import java.util.Collection
+import java.util.Calendar
+import java.util.Collections
+import java.util.Comparator
+import java.util.Currency
+import java.util.Date
+import java.util.Deque
+import java.util.DuplicateFormatFlagsException
+import java.util.Dictionary
+import java.util.EmptyStackException
+import java.util.Enumeration
+import java.util.EnumMap
+import java.util.EventListener
+import java.util.EventObject
+import java.util.EnumSet
+import java.util.EventListenerProxy
+import java.util.Formattable
+import java.util.FormatterClosedException
+import java.util.FormatFlagsConversionMismatchException
+import java.util.Formatter
+import java.util.FormattableFlags
+import java.util.GregorianCalendar
+import java.util.Hashtable
+import java.util.HashMap
+import java.util.HashSet
+import java.util.IllegalFormatWidthException
+import java.util.IllegalFormatException
+import java.util.IllegalFormatPrecisionException
+import java.util.InvalidPropertiesFormatException
+import java.util.Iterator
+import java.util.IllegalFormatCodePointException
+import java.util.IdentityHashMap
+import java.util.IllegalFormatFlagsException
+import java.util.InputMismatchException
+import java.util.IllegalFormatConversionException
+import java.util.Locale
+import java.util.ListResourceBundle
+import java.util.LinkedHashMap
+import java.util.ListIterator
+import java.util.LinkedList
+import java.util.List
+import java.util.LinkedHashSet
+import java.util.MissingResourceException
+import java.util.MissingFormatWidthException
+import java.util.Map
+import java.util.MissingFormatArgumentException
+import java.util.NoSuchElementException
+import java.util.NavigableMap
+import java.util.NavigableSet
+import java.util.Observable
+import java.util.Observer
+import java.util.PriorityQueue
+import java.util.PropertyResourceBundle
+import java.util.PropertyPermission
+import java.util.Properties
+import java.util.Queue
+import java.util.Random
+import java.util.ResourceBundle
+import java.util.RandomAccess
+import java.util.SimpleTimeZone
+import java.util.Stack
+import java.util.SortedMap
+import java.util.ServiceLoader
+import java.util.ServiceConfigurationError
+import java.util.Set
+import java.util.SortedSet
+import java.util.Scanner
+import java.util.StringTokenizer
+import java.util.TimeZone
+import java.util.TimerTask
+import java.util.TooManyListenersException
+import java.util.TreeMap
+import java.util.Timer
+import java.util.TreeSet
+import java.util.UUID
+import java.util.UnknownFormatFlagsException
+import java.util.UnknownFormatConversionException
+import java.util.Vector
+import java.util.WeakHashMap
+
+rule test
+ when
+ ArrayList()
+ then
+ System.out.println("Test");
+end
\ No newline at end of file
More information about the jboss-svn-commits
mailing list