[jboss-svn-commits] JBL Code SVN: r10171 - in labs/jbossrules/trunk/drools-jbrms/src: main/java/org/drools/brms/client/modeldriven/ui and 5 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Mar 14 08:10:04 EDT 2007
Author: michael.neale at jboss.com
Date: 2007-03-14 08:10:04 -0400 (Wed, 14 Mar 2007)
New Revision: 10171
Added:
labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/client/modeldriven/DSLSentenceTest.java
Removed:
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/brxml/DSLSentenceFragment.java
Modified:
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/brxml/DSLSentence.java
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/ui/DSLSentenceWidget.java
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/ui/RuleModeller.java
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/rules/SuggestionCompletionLoader.java
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/util/BRLPersistence.java
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/util/SuggestionCompletionEngineBuilder.java
labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/rules/SuggestionCompletionLoaderTest.java
labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/util/BRLPersitenceTest.java
labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/util/SuggestionCompletionEngineBuilderTest.java
Log:
refactored BRL stuff to use DSL Sentences
Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/brxml/DSLSentence.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/brxml/DSLSentence.java 2007-03-14 03:10:16 UTC (rev 10170)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/brxml/DSLSentence.java 2007-03-14 12:10:04 UTC (rev 10171)
@@ -10,15 +10,26 @@
IPattern,
IAction {
- public DSLSentenceFragment[] elements;
+ public String sentence;
+ /**
+ * This will strip off any residual "{" stuff...
+ */
public String toString() {
+ char[] chars = sentence.toCharArray();
String result = "";
- if (elements != null) {
- for ( int i = 0; i < elements.length; i++ ) {
- result += elements[i].value + " ";
+ for ( int i = 0; i < chars.length; i++ ) {
+ char c = chars[i];
+ if (c != '{' && c != '}') {
+ result += c;
}
}
return result;
}
+
+ public DSLSentence copy() {
+ DSLSentence newOne = new DSLSentence();
+ newOne.sentence = this.sentence;
+ return newOne;
+ }
}
Deleted: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/brxml/DSLSentenceFragment.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/brxml/DSLSentenceFragment.java 2007-03-14 03:10:16 UTC (rev 10170)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/brxml/DSLSentenceFragment.java 2007-03-14 12:10:04 UTC (rev 10171)
@@ -1,31 +0,0 @@
-package org.drools.brms.client.modeldriven.brxml;
-
-
-/**
- * This holds the value of a fragment of a DSL.
- * It can either be a sentence fragment (a display only thing) or a
- * value which the user can change.
- *
- * @author Michael Neale
- *
- */
-public class DSLSentenceFragment
- implements
- PortableObject {
-
- public String value;
- public boolean isEditableField;
-
- /**
- * @param fragment
- * @param isEditableField true if it is a editable value. false means display only.
- */
- public DSLSentenceFragment(String fragment,
- boolean isEditableField) {
- value = fragment;
- this.isEditableField = isEditableField;
- }
-
- public DSLSentenceFragment() {}
-
-}
Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/ui/DSLSentenceWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/ui/DSLSentenceWidget.java 2007-03-14 03:10:16 UTC (rev 10170)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/ui/DSLSentenceWidget.java 2007-03-14 12:10:04 UTC (rev 10171)
@@ -1,7 +1,10 @@
package org.drools.brms.client.modeldriven.ui;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
import org.drools.brms.client.modeldriven.brxml.DSLSentence;
-import org.drools.brms.client.modeldriven.brxml.DSLSentenceFragment;
import com.google.gwt.user.client.ui.ChangeListener;
import com.google.gwt.user.client.ui.Composite;
@@ -17,36 +20,118 @@
*/
public class DSLSentenceWidget extends Composite {
- private HorizontalPanel horiz = new HorizontalPanel();
-
+ private final HorizontalPanel horiz;
+ private final List widgets;
+ private final DSLSentence sentence;
public DSLSentenceWidget(DSLSentence sentence) {
- init( sentence );
+ horiz = new HorizontalPanel();
+ widgets = new ArrayList();
+ this.sentence = sentence;
+ init( );
}
- private void init(DSLSentence sentence) {
- for ( int i = 0; i < sentence.elements.length; i++ ) {
- final DSLSentenceFragment el = sentence.elements[i];
- if (!el.isEditableField) {
- horiz.add( new Label(el.value) );
+ private void init( ) {
+ makeWidgets(this.sentence.sentence);
+ initWidget( this.horiz );
+ }
+
+
+ /**
+ * This will take a DSL line item, and split it into widget thingamies for displaying.
+ * One day, if this is too complex, this will have to be done on the server side.
+ */
+ public void makeWidgets(String dslLine) {
+
+ char[] chars = dslLine.toCharArray();
+ FieldEditor currentBox = null;
+ Label currentLabel = null;
+ for ( int i = 0; i < chars.length; i++ ) {
+ char c = chars[i];
+ if (c == '{') {
+ currentLabel = null;
+ currentBox = new FieldEditor();
+ addWidget( currentBox );
+
+ } else if (c == '}') {
+ currentBox.setVisibleLength( currentBox.getText().length() + 1);
+ currentBox = null;
} else {
- horiz.add( new HTML(" ") );
- final TextBox box = new TextBox();
- box.addChangeListener( new ChangeListener() {
- public void onChange(Widget w) {
- el.value = box.getText();
- }
- });
- box.setText( el.value );
- box.setVisibleLength( el.value.length() );
- horiz.add( box );
- horiz.add( new HTML(" ") );
+ if (currentBox == null && currentLabel == null) {
+ currentLabel = new Label();
+ addWidget( currentLabel );
+ }
+ if (currentLabel != null) {
+ currentLabel.setText( currentLabel.getText() + c );
+ } else if (currentBox != null) {
+ currentBox.setText( currentBox.getText() + c );
+ }
+
}
}
- initWidget( this.horiz );
}
+ private void addWidget(Widget currentBox) {
+ this.horiz.add( currentBox );
+ widgets.add( currentBox );
+ }
+ /**
+ * This will go through the widgets and build up a sentence.
+ */
+ protected void updateSentence() {
+ String newSentence = "";
+ for ( Iterator iter = widgets.iterator(); iter.hasNext(); ) {
+ Widget wid = (Widget) iter.next();
+ if (wid instanceof Label) {
+ newSentence = newSentence + ((Label) wid).getText();
+ } else if (wid instanceof FieldEditor) {
+ newSentence = newSentence + " {" + ((FieldEditor) wid).getText() + "} ";
+ }
+ }
+ this.sentence.sentence = newSentence.trim();
+
+ }
+ class FieldEditor extends Composite {
+
+ private TextBox box;
+ private HorizontalPanel panel = new HorizontalPanel();
+
+ public FieldEditor() {
+ box = new TextBox();
+ box.setStyleName( "dsl-field-TextBox" );
+
+ panel.add( new HTML(" ") );
+ panel.add( box );
+ panel.add( new HTML(" ") );
+
+ box.addChangeListener( new ChangeListener() {
+ public void onChange(Widget w) {
+ updateSentence();
+ }
+ });
+
+ initWidget( panel );
+ }
+
+
+
+
+
+ public void setText(String t) {
+ box.setText( t );
+ }
+
+ public void setVisibleLength(int l) {
+ box.setVisibleLength( l );
+ }
+
+ public String getText() {
+ return box.getText();
+ }
+ }
+
+
}
Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/ui/RuleModeller.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/ui/RuleModeller.java 2007-03-14 03:10:16 UTC (rev 10170)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/modeldriven/ui/RuleModeller.java 2007-03-14 12:10:04 UTC (rev 10171)
@@ -280,7 +280,7 @@
}
protected void addNewDSLLhs(DSLSentence sentence) {
- model.addLhsItem( sentence );
+ model.addLhsItem( sentence.copy() );
refreshWidget();
}
@@ -434,7 +434,7 @@
}
protected void addNewDSLRhs(DSLSentence sentence) {
- this.model.addRhsItem( sentence );
+ this.model.addRhsItem( sentence.copy() );
refreshWidget();
}
Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/rules/SuggestionCompletionLoader.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/rules/SuggestionCompletionLoader.java 2007-03-14 03:10:16 UTC (rev 10170)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/rules/SuggestionCompletionLoader.java 2007-03-14 12:10:04 UTC (rev 10171)
@@ -101,7 +101,12 @@
DSLMapping mapping = file.getMapping();
for ( Iterator entries = mapping.getEntries().iterator(); entries.hasNext(); ) {
DSLMappingEntry entry = (DSLMappingEntry) entries.next();
- builder.addDSLSentence( entry.getMappingKey() );
+ if (entry.getSection() == DSLMappingEntry.CONDITION) {
+ builder.addDSLConditionSentence( entry.getMappingKey() );
+ } else if (entry.getSection() == DSLMappingEntry.CONSEQUENCE) {
+ builder.addDSLActionSentence( entry.getMappingKey() );
+ }
+
}
} else {
errors.append( file.getErrors().toString() );
Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/util/BRLPersistence.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/util/BRLPersistence.java 2007-03-14 03:10:16 UTC (rev 10170)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/util/BRLPersistence.java 2007-03-14 12:10:04 UTC (rev 10171)
@@ -1,9 +1,8 @@
package org.drools.brms.server.util;
import org.drools.brms.client.modeldriven.brxml.ActionAssertFact;
-import org.drools.brms.client.modeldriven.brxml.ActionFieldList;
-import org.drools.brms.client.modeldriven.brxml.ActionFieldValue;
import org.drools.brms.client.modeldriven.brxml.ActionAssertLogicalFact;
+import org.drools.brms.client.modeldriven.brxml.ActionFieldValue;
import org.drools.brms.client.modeldriven.brxml.ActionModifyField;
import org.drools.brms.client.modeldriven.brxml.ActionRetractFact;
import org.drools.brms.client.modeldriven.brxml.ActionSetField;
@@ -11,7 +10,6 @@
import org.drools.brms.client.modeldriven.brxml.ConnectiveConstraint;
import org.drools.brms.client.modeldriven.brxml.Constraint;
import org.drools.brms.client.modeldriven.brxml.DSLSentence;
-import org.drools.brms.client.modeldriven.brxml.DSLSentenceFragment;
import org.drools.brms.client.modeldriven.brxml.FactPattern;
import org.drools.brms.client.modeldriven.brxml.RuleAttribute;
import org.drools.brms.client.modeldriven.brxml.RuleModel;
@@ -40,14 +38,14 @@
xt.alias( "assert", ActionAssertFact.class );
xt.alias( "modify", ActionModifyField.class );
xt.alias( "setField", ActionSetField.class );
- xt.alias( "dslExpression", DSLSentence.class );
+ xt.alias( "dslSentence", DSLSentence.class );
xt.alias( "compositePattern", CompositeFactPattern.class );
xt.alias( "attribute", RuleAttribute.class );
xt.alias( "fieldValue", ActionFieldValue.class );
xt.alias( "connectiveConstraint", ConnectiveConstraint.class );
xt.alias( "constraint", Constraint.class );
- xt.alias( "sentenceFragment", DSLSentenceFragment.class );
+
xt.alias( "assertLogical", ActionAssertLogicalFact.class );
Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/util/SuggestionCompletionEngineBuilder.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/util/SuggestionCompletionEngineBuilder.java 2007-03-14 03:10:16 UTC (rev 10170)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/server/util/SuggestionCompletionEngineBuilder.java 2007-03-14 12:10:04 UTC (rev 10171)
@@ -25,7 +25,7 @@
import org.drools.brms.client.modeldriven.SuggestionCompletionEngine;
import org.drools.brms.client.modeldriven.brxml.DSLSentence;
-import org.drools.brms.client.modeldriven.brxml.DSLSentenceFragment;
+import org.drools.lang.dsl.DSLMappingEntry;
/**
* A builder to incrementally populate a SuggestionCompletionEngine
@@ -57,7 +57,8 @@
private Map fieldsForType = new HashMap();
private Map fieldTypes = new HashMap();
private Map globalTypes = new HashMap();
- private List dslSentences = new ArrayList();
+ private List actionDSLSentences = new ArrayList();
+ private List conditionDSLSentences = new ArrayList();
public SuggestionCompletionEngineBuilder() {
}
@@ -71,7 +72,8 @@
this.fieldsForType = new HashMap();
this.fieldTypes = new HashMap();
this.globalTypes = new HashMap();
- this.dslSentences = new ArrayList();
+ this.actionDSLSentences = new ArrayList();
+ this.conditionDSLSentences = new ArrayList();
}
/**
@@ -127,41 +129,23 @@
}
/**
- * Adds a DSL Sentence to the engine, splitting it into
- * chunks of editable and non-editable text
- *
- * @param sentence
+ * Add a DSL sentence for an action.
*/
- public void addDSLSentence(String sentence) {
- // splitting the sentence in fragments
- Matcher m = splitter.matcher( sentence );
- int lastEnd = 0;
- List fragments = new ArrayList();
-
- while ( m.find() ) {
- if ( m.start( 2 ) > lastEnd ) {
- // if there is anything after last match and before the current one, add
- // a non-editable fragment
- fragments.add( new DSLSentenceFragment( sentence.substring( lastEnd,
- m.start( 2 ) ).replaceAll( "\\\\([\\{\\}])",
- "$1" ),
- false ) );
- }
- // add the editable fragment
- fragments.add( new DSLSentenceFragment( m.group( 2 ),
- true ) );
- lastEnd = m.end( 2 );
- }
- if ( lastEnd < sentence.length() ) {
- // if there is anything after the last match, add as a non-editable fragment
- fragments.add( new DSLSentenceFragment( sentence.substring( lastEnd ),
- false ) );
- }
-
+ public void addDSLActionSentence(String sentence) {
DSLSentence sen = new DSLSentence();
- sen.elements = (DSLSentenceFragment[]) fragments.toArray( new DSLSentenceFragment[fragments.size()] );
- this.dslSentences.add( sen );
+ sen.sentence = sentence;
+ this.actionDSLSentences.add( sen );
}
+
+ /**
+ * Add a DSL sentence for a condition.
+ */
+ public void addDSLConditionSentence(String sentence) {
+ DSLSentence sen = new DSLSentence();
+ sen.sentence = sentence;
+ this.conditionDSLSentences.add( sen );
+ }
+
/**
* Returns a SuggestionCompletionEngine instance populated with
@@ -174,7 +158,8 @@
this.instance.fieldsForType = this.fieldsForType;
this.instance.fieldTypes = this.fieldTypes;
this.instance.globalTypes = this.globalTypes;
- this.instance.actionDSLSentences = (DSLSentence[]) this.dslSentences.toArray( new DSLSentence[this.dslSentences.size()] );
+ this.instance.actionDSLSentences = (DSLSentence[]) this.actionDSLSentences.toArray( new DSLSentence[this.actionDSLSentences.size()] );
+ this.instance.conditionDSLSentences = (DSLSentence[]) this.conditionDSLSentences.toArray( new DSLSentence[this.conditionDSLSentences.size()] );
return this.instance;
}
Added: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/client/modeldriven/DSLSentenceTest.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/client/modeldriven/DSLSentenceTest.java (rev 0)
+++ labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/client/modeldriven/DSLSentenceTest.java 2007-03-14 12:10:04 UTC (rev 10171)
@@ -0,0 +1,24 @@
+package org.drools.brms.client.modeldriven;
+
+import org.drools.brms.client.modeldriven.brxml.DSLSentence;
+
+import junit.framework.TestCase;
+
+public class DSLSentenceTest extends TestCase {
+
+
+ public void testSentence() {
+
+ DSLSentence sen = new DSLSentence();
+ sen.sentence = "this is {something} here and {here}";
+ assertEquals("this is something here and here", sen.toString());
+
+ sen.sentence = "foo bar";
+ assertEquals("foo bar", sen.toString());
+
+ DSLSentence newOne = sen.copy();
+ assertFalse(newOne == sen);
+ assertEquals(newOne.sentence, sen.sentence);
+ }
+
+}
Property changes on: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/client/modeldriven/DSLSentenceTest.java
___________________________________________________________________
Name: svn:eol-style
+ native
Modified: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/rules/SuggestionCompletionLoaderTest.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/rules/SuggestionCompletionLoaderTest.java 2007-03-14 03:10:16 UTC (rev 10170)
+++ labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/rules/SuggestionCompletionLoaderTest.java 2007-03-14 12:10:04 UTC (rev 10171)
@@ -1,7 +1,9 @@
package org.drools.brms.server.rules;
+import org.drools.brms.client.common.AssetFormats;
import org.drools.brms.client.modeldriven.SuggestionCompletionEngine;
import org.drools.brms.server.SessionHelper;
+import org.drools.repository.AssetItem;
import org.drools.repository.PackageItem;
import org.drools.repository.RulesRepository;
@@ -64,4 +66,27 @@
assertEquals( SuggestionCompletionEngine.TYPE_COMPARABLE, fieldType );
}
+ public void testLoadDSLs() throws Exception {
+ String dsl = "[when]The agents rating is {rating}=doNothing()\n[then]Send a notification to manufacturing '{message}'=foo()";
+ RulesRepository repo = new RulesRepository(SessionHelper.getSession());
+ PackageItem item = repo.createPackage( "testLoadDSLs", "to test the loader for DSLs" );
+ AssetItem asset = item.addAsset( "mydsl", "" );
+ asset.updateFormat( AssetFormats.DSL );
+ asset.updateContent( dsl );
+ asset.checkin( "ok" );
+
+ item = repo.loadPackage( "testLoadDSLs" );
+ SuggestionCompletionLoader loader = new SuggestionCompletionLoader();
+ SuggestionCompletionEngine eng = loader.getSuggestionEngine( item );
+ assertEquals(1, eng.actionDSLSentences.length);
+ assertEquals(1, eng.conditionDSLSentences.length);
+
+ assertEquals( "The agents rating is {rating}", eng.conditionDSLSentences[0].sentence );
+ assertEquals("Send a notification to manufacturing '{message}'",eng.actionDSLSentences[0].sentence);
+
+
+
+
+ }
+
}
Modified: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/util/BRLPersitenceTest.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/util/BRLPersitenceTest.java 2007-03-14 03:10:16 UTC (rev 10170)
+++ labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/util/BRLPersitenceTest.java 2007-03-14 12:10:04 UTC (rev 10171)
@@ -6,11 +6,9 @@
import org.drools.brms.client.modeldriven.brxml.ActionFieldValue;
import org.drools.brms.client.modeldriven.brxml.ActionModifyField;
import org.drools.brms.client.modeldriven.brxml.ActionRetractFact;
-import org.drools.brms.client.modeldriven.brxml.ActionSetField;
import org.drools.brms.client.modeldriven.brxml.CompositeFactPattern;
import org.drools.brms.client.modeldriven.brxml.Constraint;
import org.drools.brms.client.modeldriven.brxml.DSLSentence;
-import org.drools.brms.client.modeldriven.brxml.DSLSentenceFragment;
import org.drools.brms.client.modeldriven.brxml.FactPattern;
import org.drools.brms.client.modeldriven.brxml.RuleAttribute;
import org.drools.brms.client.modeldriven.brxml.RuleModel;
@@ -109,12 +107,10 @@
m.addRhsItem( ret );
DSLSentence sen = new DSLSentence();
- sen.elements = new DSLSentenceFragment[2];
- sen.elements[0] = new DSLSentenceFragment("Send an email to", false);
- sen.elements[1] = new DSLSentenceFragment("administrator", true);
+ sen.sentence = "Send an email to {administrator}";
+
-
m.addRhsItem( sen );
return m;
}
Modified: labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/util/SuggestionCompletionEngineBuilderTest.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/util/SuggestionCompletionEngineBuilderTest.java 2007-03-14 03:10:16 UTC (rev 10170)
+++ labs/jbossrules/trunk/drools-jbrms/src/test/java/org/drools/brms/server/util/SuggestionCompletionEngineBuilderTest.java 2007-03-14 12:10:04 UTC (rev 10171)
@@ -1,15 +1,11 @@
package org.drools.brms.server.util;
-import java.util.HashMap;
-import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import junit.framework.TestCase;
import org.drools.brms.client.modeldriven.SuggestionCompletionEngine;
-import org.drools.brms.client.modeldriven.brxml.DSLSentence;
-import org.drools.brms.client.modeldriven.brxml.DSLSentenceFragment;
public class SuggestionCompletionEngineBuilderTest extends TestCase {
SuggestionCompletionEngineBuilder builder = new SuggestionCompletionEngineBuilder();
@@ -25,24 +21,17 @@
public void testAddDSLSentence() {
String input = "{This} is a {pattern} considered pretty \\{{easy}\\} by most \\{people\\}. What do you {say}?";
- String[] strFrags = new String[] {"{This}", " is a ", "{pattern}", " considered pretty {", "{easy}", "} by most {people}. What do you ", "{say}", "?"};
- boolean[] editable = new boolean[] { true, false, true, false, true, false, true, false };
- builder.addDSLSentence( input );
-
+ builder.addDSLActionSentence( input );
+ builder.addDSLConditionSentence( "foo bar" );
SuggestionCompletionEngine engine = builder.getInstance();
assertEquals( 1,
engine.actionDSLSentences.length );
- DSLSentenceFragment[] fragments = engine.actionDSLSentences[0].elements;
- assertEquals( 8,
- fragments.length );
- for( int i = 0; i < 8; i++ ) {
- assertEquals( strFrags[i],
- fragments[i].value );
- assertEquals( editable[i],
- fragments[i].isEditableField );
- }
+ assertEquals( 1,
+ engine.conditionDSLSentences.length );
+
+
}
public void testPattern() {
More information about the jboss-svn-commits
mailing list