[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