[jboss-svn-commits] JBL Code SVN: r15524 - in labs/jbossrules/trunk/drools-eclipse: drools-eclipse-test/src/test/java/org/drools/eclipse/editors/completion and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Oct 2 18:44:38 EDT 2007


Author: pombredanne
Date: 2007-10-02 18:44:38 -0400 (Tue, 02 Oct 2007)
New Revision: 15524

Modified:
   labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/editors/completion/RuleCompletionProcessor.java
   labs/jbossrules/trunk/drools-eclipse/drools-eclipse-test/src/test/java/org/drools/eclipse/editors/completion/CompletionUtilTest.java
Log:
Fxied issue when the last expression befor an mvel completion  was a  comment

Modified: labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/editors/completion/RuleCompletionProcessor.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/editors/completion/RuleCompletionProcessor.java	2007-10-02 22:41:49 UTC (rev 15523)
+++ labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/editors/completion/RuleCompletionProcessor.java	2007-10-02 22:44:38 UTC (rev 15524)
@@ -975,6 +975,7 @@
             MvelContext previousExprContext = analyzeMvelExpression( getResolvedMvelInputs( params ),
                                                                      drlInfo,
                                                                      previousExpression );
+            System.out.println( "previous:'" + previousExpression +"'");
 
             // attempt to compile and analyze the last and last inner expression, using as inputs the previous expression inputs and vars
             Map variables = previousExprContext.getContext().getVariables();
@@ -984,7 +985,7 @@
             //last inner expression
             String lastInnerExpression = CompletionUtil.getTextWithoutPrefix( CompletionUtil.getInnerExpression( consequenceBackText ),
                                                                               prefix );
-            System.out.println( "Lastinner:" + lastInnerExpression );
+            System.out.println( "Last inner:'" + lastInnerExpression +"'");
             String compilableLastInnerExpression = CompletionUtil.getCompilableText( lastInnerExpression );
 
             MvelContext lastInnerExprContext = analyzeMvelExpression( inputs,
@@ -993,7 +994,7 @@
 
             //last expression
             String lastExpression = CompletionUtil.getLastExpression( consequenceBackText ).trim();
-            System.out.println( "Last:" + lastExpression );
+            System.out.println( "previous:'" + lastExpression +"'");
             //is this a modify expression?
             //group 1 is the body of modify
             //group 2 if present is the whole with block including brackets
@@ -1049,10 +1050,11 @@
                                                                   params );
 
                 proposals.addAll( jdtProps );
+                return proposals;
 
             }
-            //If expression start, then get completion for prefix with prev expr var&inputs
-            else if ( expressionStart ) {
+            //If expression start, and all other cases then get completion for prefix with prev expr var&inputs
+//            else if ( expressionStart ) {
                 addMvelCompletions( proposals,
                                     documentOffset,
                                     prefix,
@@ -1070,7 +1072,7 @@
 
                 proposals.addAll( jdtProps );
 
-            }
+//            }
 
         } catch ( Throwable e ) {
             DroolsEclipsePlugin.log( e );

Modified: labs/jbossrules/trunk/drools-eclipse/drools-eclipse-test/src/test/java/org/drools/eclipse/editors/completion/CompletionUtilTest.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/drools-eclipse-test/src/test/java/org/drools/eclipse/editors/completion/CompletionUtilTest.java	2007-10-02 22:41:49 UTC (rev 15523)
+++ labs/jbossrules/trunk/drools-eclipse/drools-eclipse-test/src/test/java/org/drools/eclipse/editors/completion/CompletionUtilTest.java	2007-10-02 22:44:38 UTC (rev 15524)
@@ -142,281 +142,200 @@
     }
 
     public void testStripLastWord() {
-    	String backtext = "rule \"GoodBye\"\r\n"
-				+
-    			"	no-loop true\r\n" +
-    			"	when\r\n" +
-    			"		m : Message( status == Message.GOODBYE, message : message )\r\n" +
-    			"	then\r\n" +
-    			"		m.message=message;\r\n" +
-    			"		m.last";
+        String backtext = "rule \"GoodBye\"\r\n" + "	no-loop true\r\n" + "	when\r\n" + "		m : Message( status == Message.GOODBYE, message : message )\r\n" + "	then\r\n" + "		m.message=message;\r\n" + "		m.last";
 
-    	String lastword = "last";
-    	assertEquals(lastword, CompletionUtil.stripLastWord(backtext));
+        String lastword = "last";
+        assertEquals( lastword,
+                      CompletionUtil.stripLastWord( backtext ) );
     }
 
     public void testGetPreviousExpression1() {
-        String backText =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   adasd ='d';";
-        String previous =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   adasd ='d';";
-        assertEquals(previous, CompletionUtil.getPreviousExpression( backText ));
+        String backText = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   adasd ='d';";
+        String previous = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   adasd ='d';";
+        assertEquals( previous,
+                      CompletionUtil.getPreviousExpression( backText ) );
     }
 
     public void testGetPreviousExpression2() {
-        String backText =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   message== ";
-        String previous =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;";
-        assertEquals(previous, CompletionUtil.getPreviousExpression( backText ));
+        String backText = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   message== ";
+        String previous = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;";
+        assertEquals( previous,
+                      CompletionUtil.getPreviousExpression( backText ) );
     }
 
     public void testGetPreviousExpression3() {
-        String backText =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   message(sdasdasd, ";
-        String previous =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;";
-        assertEquals(previous, CompletionUtil.getPreviousExpression( backText ));
+        String backText = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   message(sdasdasd, ";
+        String previous = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;";
+        assertEquals( previous,
+                      CompletionUtil.getPreviousExpression( backText ) );
     }
 
     public void testGetPreviousExpression4() {
-        String backText =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   message( ";
-        String previous =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;";
-        assertEquals(previous, CompletionUtil.getPreviousExpression( backText ));
+        String backText = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   message( ";
+        String previous = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;";
+        assertEquals( previous,
+                      CompletionUtil.getPreviousExpression( backText ) );
     }
 
     public void testGetPreviousExpression5() {
-        String backText =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   this.asd ";
-        String previous =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;";
-        assertEquals(previous, CompletionUtil.getPreviousExpression( backText ));
+        String backText = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   this.asd ";
+        String previous = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;";
+        assertEquals( previous,
+                      CompletionUtil.getPreviousExpression( backText ) );
     }
 
     public void testGetPreviousExpression6() {
-        String backText =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   message(){ ";
-        String previous =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;";
-        assertEquals(previous, CompletionUtil.getPreviousExpression( backText ));
+        String backText = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   message(){ ";
+        String previous = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;";
+        assertEquals( previous,
+                      CompletionUtil.getPreviousExpression( backText ) );
     }
 
     public void testGetPreviousExpression7() {
-        String backText =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   adasd ='d';message== ";
-        String previous =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   adasd ='d';";
-        assertEquals(previous, CompletionUtil.getPreviousExpression( backText ));
+        String backText = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   adasd ='d';message== ";
+        String previous = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   adasd ='d';";
+        assertEquals( previous,
+                      CompletionUtil.getPreviousExpression( backText ) );
     }
 
     public void testGetLastExpression11() {
-        String backText =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   adasd ='d'";
+        String backText = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   adasd ='d'";
         String previous = "\r\n" + "   adasd ='d'";
-        assertEquals(previous, CompletionUtil.getLastExpression( backText ));
+        assertEquals( previous,
+                      CompletionUtil.getLastExpression( backText ) );
     }
 
     public void testGetLastExpression1() {
-        String backText =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   adasd ='d';";
+        String backText = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   adasd ='d';";
         String previous = "\r\n   adasd ='d'";
-        assertEquals(previous, CompletionUtil.getLastExpression( backText ));
+        assertEquals( previous,
+                      CompletionUtil.getLastExpression( backText ) );
     }
 
     public void testGetLastExpression10() {
-        String backText =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   adasd ='d';\r\n";
-        assertEquals(backText, CompletionUtil.getLastExpression( backText ));
+        String backText = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   adasd ='d';\r\n";
+        assertEquals( backText,
+                      CompletionUtil.getLastExpression( backText ) );
     }
 
     public void testGetLastExpression2() {
-        String backText =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   message== ";
+        String backText = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   message== ";
         String previous = "\r\n   message== ";
-        assertEquals(previous, CompletionUtil.getLastExpression( backText ));
+        assertEquals( previous,
+                      CompletionUtil.getLastExpression( backText ) );
     }
 
     public void testGetLastExpression3() {
-        String backText =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   message(sdasdasd, ";
-        String previous ="\r\n   message(sdasdasd, ";
-        assertEquals(previous, CompletionUtil.getLastExpression( backText ));
+        String backText = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   message(sdasdasd, ";
+        String previous = "\r\n   message(sdasdasd, ";
+        assertEquals( previous,
+                      CompletionUtil.getLastExpression( backText ) );
     }
 
     public void testGetLastExpression4() {
-        String backText =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   message( ";
-        String previous ="\r\n   message( ";
-        assertEquals(previous, CompletionUtil.getLastExpression( backText ));
+        String backText = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   message( ";
+        String previous = "\r\n   message( ";
+        assertEquals( previous,
+                      CompletionUtil.getLastExpression( backText ) );
     }
 
     public void testGetLastExpression5() {
-        String backText =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   this.asd ";
-        String previous =   "\r\n   this.asd ";
-        assertEquals(previous, CompletionUtil.getLastExpression( backText ));
+        String backText = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   this.asd ";
+        String previous = "\r\n   this.asd ";
+        assertEquals( previous,
+                      CompletionUtil.getLastExpression( backText ) );
     }
 
     public void testGetLastExpression6() {
-        String backText =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   message(){ ";
-        String previous =  "\r\n   message(){ ";
-        assertEquals(previous, CompletionUtil.getLastExpression( backText ));
+        String backText = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   message(){ ";
+        String previous = "\r\n   message(){ ";
+        assertEquals( previous,
+                      CompletionUtil.getLastExpression( backText ) );
     }
 
     public void testGetLastExpression7() {
-        String backText =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   adasd ='d';message== ";
-        String previous ="message== ";
-        assertEquals(previous, CompletionUtil.getLastExpression( backText ));
+        String backText = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   adasd ='d';message== ";
+        String previous = "message== ";
+        assertEquals( previous,
+                      CompletionUtil.getLastExpression( backText ) );
     }
 
     public void testGetInnerExpression() {
-        String backText =
-            "  \r\n" +
-            "   System.out.println( message );\r\n" +
-            "   m.message = \"Goodbyte cruel world\";\r\n" +
-            "   m.status = 1;\r\n" +
-            "   adasd ='d';message== ";
-        String previous ="";
-        assertEquals(previous, CompletionUtil.getInnerExpression( backText ));
+        String backText = "  \r\n" + "   System.out.println( message );\r\n" + "   m.message = \"Goodbyte cruel world\";\r\n" + "   m.status = 1;\r\n" + "   adasd ='d';message== ";
+        String previous = "";
+        assertEquals( previous,
+                      CompletionUtil.getInnerExpression( backText ) );
     }
 
     public void testGetInnerExpression2() {
-        String backText =
-            "System.out.println(m ";
-        String previous ="m";
-        assertEquals(previous, CompletionUtil.getInnerExpression( backText ));
+        String backText = "System.out.println(m ";
+        String previous = "m";
+        assertEquals( previous,
+                      CompletionUtil.getInnerExpression( backText ) );
     }
 
     public void testGetInnerExpression3() {
-        String backText =
-            "update(m) {";
-        String previous ="";
-        assertEquals(previous, CompletionUtil.getInnerExpression( backText ));
+        String backText = "update(m) {";
+        String previous = "";
+        assertEquals( previous,
+                      CompletionUtil.getInnerExpression( backText ) );
     }
 
     public void testGetInnerExpression4() {
-        String backText =
-            "update(m) {some=";
-        String previous ="";
-        assertEquals(previous, CompletionUtil.getInnerExpression( backText ));
+        String backText = "update(m) {some=";
+        String previous = "";
+        assertEquals( previous,
+                      CompletionUtil.getInnerExpression( backText ) );
     }
+
     public void testGetInnerExpression5() {
-        String backText =
-            "update(m) {asdasdas==asdasd, asdasd";
-        String previous ="asdasd";
-        assertEquals(previous, CompletionUtil.getInnerExpression( backText ));
+        String backText = "update(m) {asdasdas==asdasd, asdasd";
+        String previous = "asdasd";
+        assertEquals( previous,
+                      CompletionUtil.getInnerExpression( backText ) );
     }
+
     public void testGetInnerExpression6() {
-        String backText =
-            "update(m) {asdasdas==asdasd, asdasd}";
-        String previous ="";
-        assertEquals(previous, CompletionUtil.getInnerExpression( backText ));
+        String backText = "update(m) {asdasdas==asdasd, asdasd}";
+        String previous = "";
+        assertEquals( previous,
+                      CompletionUtil.getInnerExpression( backText ) );
     }
 
+    public void testGetLastExpression_withComments() {
+        String backText = "dasdasdas\nsasasasa\n //fsdfsdfdsfdsf\n\n";
+        String exp = "dasdasdas\n" + "sasasasa\n" + " //fsdfsdfdsfdsf\n" + "\n";
+        assertEquals( exp,
+                      CompletionUtil.getLastExpression( backText ) );
+    }
+
+    public void testGetLastExpression_withComments2() {
+        String backText = "dasdasdas\nsasasasa\n //fsdfsdfdsfdsf\n";
+        String exp = "dasdasdas\n" + "sasasasa\n" + " //fsdfsdfdsfdsf\n" ;
+        assertEquals( exp,
+                      CompletionUtil.getLastExpression( backText ) );
+    }
+    public void testGetLastExpression_withComments3() {
+        String backText = "dasdasdas\nsasasasa\n //fsdfsdfdsfdsf\n";
+        String exp = "dasdasdas\n" + "sasasasa\n" + " //fsdfsdfdsfdsf\n" ;
+        assertEquals( exp,
+                      CompletionUtil.getLastExpression( backText ) );
+    }
+
     public void testGetTextWithoutPrefix() {
-        String text =
-            "modify(m) {asdasdas==asdasd, asdasd.asa";
-        String expected ="modify(m) {asdasdas==asdasd, asdasd.";
-        assertEquals(expected, CompletionUtil.getTextWithoutPrefix( text,"asa"));
+        String text = "modify(m) {asdasdas==asdasd, asdasd.asa";
+        String expected = "modify(m) {asdasdas==asdasd, asdasd.";
+        assertEquals( expected,
+                      CompletionUtil.getTextWithoutPrefix( text,
+                                                           "asa" ) );
     }
 
     public void testGetTextWithoutPrefix2() {
-        String text =
-            "it";
-        String expected ="";
-        assertEquals(expected, CompletionUtil.getTextWithoutPrefix( text,text));
+        String text = "it";
+        String expected = "";
+        assertEquals( expected,
+                      CompletionUtil.getTextWithoutPrefix( text,
+                                                           text ) );
     }
 
-
 }
\ No newline at end of file




More information about the jboss-svn-commits mailing list