[jboss-svn-commits] JBL Code SVN: r18402 - in labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client: common and 2 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Feb 8 00:41:32 EST 2008
Author: michael.neale at jboss.com
Date: 2008-02-08 00:41:32 -0500 (Fri, 08 Feb 2008)
New Revision: 18402
Added:
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/common/SmallLabel.java
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/qa/ScenarioPackageView.java
Modified:
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/JBRMSEntryPoint.java
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/explorer/ExplorerLayoutManager.java
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/explorer/ExplorerNodeConfig.java
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/qa/BulkRunResultWidget.java
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/qa/QAManagerWidget.java
Log:
JBRULES-1445 Scenario feature
Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/JBRMSEntryPoint.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/JBRMSEntryPoint.java 2008-02-08 00:37:03 UTC (rev 18401)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/JBRMSEntryPoint.java 2008-02-08 05:41:32 UTC (rev 18402)
@@ -24,8 +24,6 @@
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.user.client.Command;
import com.google.gwt.user.client.DOM;
-import com.google.gwt.user.client.HistoryListener;
-import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.RootPanel;
import com.gwtext.client.widgets.QuickTips;
import com.gwtext.client.widgets.form.Field;
Added: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/common/SmallLabel.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/common/SmallLabel.java (rev 0)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/common/SmallLabel.java 2008-02-08 05:41:32 UTC (rev 18402)
@@ -0,0 +1,11 @@
+package org.drools.brms.client.common;
+
+import com.google.gwt.user.client.ui.HTML;
+
+public class SmallLabel extends HTML {
+
+ public SmallLabel(String text) {
+ super("<small>" + text + "</small>");
+ }
+
+}
Property changes on: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/common/SmallLabel.java
___________________________________________________________________
Name: svn:eol-style
+ native
Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/explorer/ExplorerLayoutManager.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/explorer/ExplorerLayoutManager.java 2008-02-08 00:37:03 UTC (rev 18401)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/explorer/ExplorerLayoutManager.java 2008-02-08 05:41:32 UTC (rev 18402)
@@ -110,6 +110,7 @@
TabPanelItem tpDeployment = tp.addTab("tpi3", "Deployment",
false);
TabPanelItem tpAdmin = tp.addTab("tpi4", "Admin", false);
+ TabPanelItem tpQA = tp.addTab("tpi5", "QA", false);
VerticalPanel rulesPanel = new VerticalPanel();
packagesPanel = new VerticalPanel();
@@ -271,6 +272,17 @@
tp.activate(0);
+ VerticalPanel qaPanel = new VerticalPanel();
+ qaPanel.setWidth("100%");
+ TreePanel qaTree = genericExplorerWidget(ExplorerNodeConfig.getQAStructure(centertabbedPanel));
+ qaPanel.add(qaTree);
+
+
+ tpQA.setContent(qaPanel);
+
+
+
+
ContentPanel tree = new ContentPanel();
tree.add(tp);
layout.add(LayoutRegionConfig.WEST, tree);
@@ -509,7 +521,7 @@
LayoutRegionConfig west = new LayoutRegionConfig();
west.setSplit(true);
- west.setInitialSize(300);
+ west.setInitialSize(315);
west.setMinSize(175);
west.setMaxSize(400);
west.setTitlebar(true);
@@ -607,7 +619,7 @@
for (int i = 0; i < value.length; i++) {
TreeNode pkg = new TreeNode(value[i].name, new TreeNodeConfig() {
{
- setIcon("images/package.gif");
+ setIcon("images/snapshot_small.gif");
}
});
pkg.setUserObject(value[i]);
Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/explorer/ExplorerNodeConfig.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/explorer/ExplorerNodeConfig.java 2008-02-08 00:37:03 UTC (rev 18401)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/explorer/ExplorerNodeConfig.java 2008-02-08 05:41:32 UTC (rev 18402)
@@ -2,8 +2,12 @@
import org.drools.brms.client.common.AssetFormats;
import org.drools.brms.client.common.GenericCallback;
+import org.drools.brms.client.qa.ScenarioPackageView;
+import org.drools.brms.client.rpc.PackageConfigData;
import org.drools.brms.client.rpc.RepositoryServiceFactory;
+import org.drools.brms.client.rulelist.EditItemEvent;
+import com.gwtext.client.core.EventObject;
import com.gwtext.client.data.Node;
import com.gwtext.client.widgets.tree.TreeNode;
import com.gwtext.client.widgets.tree.TreeNodeConfig;
@@ -206,6 +210,81 @@
return treeNode;
}
+ public static TreeNode getQAStructure(final ExplorerViewCenterPanel centerPanel) {
+ final TreeNode treeNode = new TreeNode( new TreeNodeConfig() {
+ {
+ setText("QA");
+ }
+ });
+
+
+ final TreeNode scenarios = new TreeNode(new TreeNodeConfig() {
+ {
+ setText("Test Scenarios in packages:");
+ setIcon("images/scenario_conf.gif");
+ }
+ });
+
+ final EditItemEvent edit = new EditItemEvent() {
+ public void open(String key) {centerPanel.openAsset(key);}
+ };
+
+ scenarios.appendChild(new TreeNode("Please wait..."));
+ scenarios.addTreeNodeListener(new TreeNodeListenerAdapter() {
+
+ public void onExpand(Node node) {
+ RepositoryServiceFactory.getService().listPackages(new GenericCallback() {
+ public void onSuccess(Object data) {
+ PackageConfigData[] conf = (PackageConfigData[]) data;
+
+ for (int i = 0; i < conf.length; i++) {
+ final PackageConfigData c = conf[i];
+ TreeNode pkg = new TreeNode(new TreeNodeConfig() {
+ {
+ setText(c.name);
+ setIcon("images/package.gif");
+
+ }
+ });
+ scenarios.appendChild(pkg);
+ pkg.addTreeNodeListener(new TreeNodeListenerAdapter() {
+ public void onClick(Node node, EventObject e) {
+ if (!centerPanel.showIfOpen("scenarios" + c.uuid)) {
+ centerPanel.addTab("Scenarios for " + c.name, true, new ScenarioPackageView(
+ c.uuid, c.name, edit, centerPanel ), "scenarios" + c.uuid);
+ }
+ }
+ });
+ }
+ scenarios.removeChild(scenarios.getFirstChild());
+
+ }
+ });
+ }
+
+
+ public void onCollapse(Node node) {
+ Node[] cs = node.getChildNodes();
+ for (int i = 0; i < cs.length; i++) {
+ node.removeChild(cs[i]);
+ }
+ node.appendChild(new TreeNode("Please wait..."));
+ }
+ });
+ treeNode.appendChild(scenarios);
+
+
+ TreeNode analysis = new TreeNode(new TreeNodeConfig() {
+ {
+ setText("Analysis");
+ setIcon("images/analyze.gif");
+ }
+ });
+ treeNode.appendChild(analysis);
+
+ return treeNode;
+ }
+
}
Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/qa/BulkRunResultWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/qa/BulkRunResultWidget.java 2008-02-08 00:37:03 UTC (rev 18401)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/qa/BulkRunResultWidget.java 2008-02-08 05:41:32 UTC (rev 18402)
@@ -1,6 +1,7 @@
package org.drools.brms.client.qa;
import org.drools.brms.client.common.FormStyleLayout;
+import org.drools.brms.client.common.SmallLabel;
import org.drools.brms.client.packages.PackageBuilderWidget;
import org.drools.brms.client.rpc.BuilderResult;
import org.drools.brms.client.rpc.BulkTestRunResult;
@@ -11,13 +12,12 @@
import com.google.gwt.user.client.ui.ClickListener;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.FlexTable;
+import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.HasHorizontalAlignment;
import com.google.gwt.user.client.ui.HorizontalPanel;
-import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.ListBox;
import com.google.gwt.user.client.ui.Panel;
import com.google.gwt.user.client.ui.SimplePanel;
-import com.google.gwt.user.client.ui.TabPanel;
import com.google.gwt.user.client.ui.Widget;
/**
@@ -33,12 +33,11 @@
private String packageName;
- public BulkRunResultWidget(BulkTestRunResult result, EditItemEvent editEvent, final TabPanel tab, String packageName) {
+ public BulkRunResultWidget(BulkTestRunResult result, EditItemEvent editEvent) {
this.result = result;
this.editEvent = editEvent;
- this.packageName = packageName;
parent = new SimplePanel();
if (result.errors != null && result.errors.length > 0) {
@@ -47,19 +46,7 @@
showResult();
}
- final BulkRunResultWidget self = this;
- Button close = new Button("Close");
- close.addClickListener(new ClickListener() {
- public void onClick(Widget w) {
- tab.remove(self);
- tab.selectTab(0);
- }
- });
-
-
-
- layout.addAttribute("", close);
initWidget(parent);
}
@@ -78,7 +65,7 @@
totalFailures = totalFailures + s.failures;
//now render this summary
- summaryTable.setWidget(i, 0, new Label(s.scenarioName + ":"));
+ summaryTable.setWidget(i, 0, new SmallLabel(s.scenarioName + ":"));
summaryTable.getFlexCellFormatter().setHorizontalAlignment(i, 0, HasHorizontalAlignment.ALIGN_RIGHT);
if (s.failures > 0) {
@@ -87,7 +74,7 @@
summaryTable.setWidget(i, 1, ScenarioWidget.getBar("GREEN", 150, 100));
}
- summaryTable.setWidget(i, 2, new Label("[" + s.failures +" failures out of " + s.total + "]"));
+ summaryTable.setWidget(i, 2, new SmallLabel("[" + s.failures +" failures out of " + s.total + "]"));
Button open = new Button("Open");
open.addClickListener(new ClickListener() {
public void onClick(Widget w) {
@@ -107,8 +94,12 @@
} else {
resultsH.add(ScenarioWidget.getBar("GREEN", 300, 100));
}
- resultsH.add(new Label(totalFailures + " failures out of " + grandTotal + " expectations."));
+ resultsH.add(new SmallLabel(" " + totalFailures + " failures out of " + grandTotal + " expectations."));
+ layout.addAttribute("Overall result:", new HTML((totalFailures==0) ? "<b>SUCCESS</b>" : "<b>FAILURE</b>"));
+
+
+
layout.addAttribute("Results:", resultsH);
HorizontalPanel coveredH = new HorizontalPanel();
@@ -118,7 +109,7 @@
coveredH.add(ScenarioWidget.getBar("GREEN", 300, 100));
}
- coveredH.add(new Label(result.percentCovered + "% of the rules were tested."));
+ coveredH.add(new SmallLabel(" " + result.percentCovered + "% of the rules were tested."));
layout.addAttribute("Rules covered:", coveredH);
@@ -147,7 +138,7 @@
private void clear() {
parent.clear();
- layout = new FormStyleLayout("images/scenario_large.png", "Testing: " + packageName);
+ layout = new FormStyleLayout();
parent.add(layout);
}
Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/qa/QAManagerWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/qa/QAManagerWidget.java 2008-02-08 00:37:03 UTC (rev 18401)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/qa/QAManagerWidget.java 2008-02-08 05:41:32 UTC (rev 18402)
@@ -153,7 +153,7 @@
RepositoryServiceFactory.getService().runScenariosInPackage(currentUUID, new GenericCallback() {
public void onSuccess(Object data) {
BulkTestRunResult d = (BulkTestRunResult) data;
- BulkRunResultWidget w = new BulkRunResultWidget(d, editEvent, tab, currentlySelectedPackage);
+ BulkRunResultWidget w = new BulkRunResultWidget(d, editEvent);
tab.add(w, "<img src='images/tick_green.gif'/>" + currentlySelectedPackage, true);
tab.selectTab(tab.getWidgetIndex(w));
LoadingPopup.close();
Added: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/qa/ScenarioPackageView.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/qa/ScenarioPackageView.java (rev 0)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/qa/ScenarioPackageView.java 2008-02-08 05:41:32 UTC (rev 18402)
@@ -0,0 +1,88 @@
+package org.drools.brms.client.qa;
+
+import org.drools.brms.client.common.AssetFormats;
+import org.drools.brms.client.common.GenericCallback;
+import org.drools.brms.client.common.LoadingPopup;
+import org.drools.brms.client.common.PrettyFormLayout;
+import org.drools.brms.client.explorer.ExplorerViewCenterPanel;
+import org.drools.brms.client.rpc.BulkTestRunResult;
+import org.drools.brms.client.rpc.RepositoryServiceFactory;
+import org.drools.brms.client.rulelist.AssetItemGrid;
+import org.drools.brms.client.rulelist.AssetItemGridDataLoader;
+import org.drools.brms.client.rulelist.EditItemEvent;
+
+import com.google.gwt.user.client.ui.Button;
+import com.google.gwt.user.client.ui.ClickListener;
+import com.google.gwt.user.client.ui.Composite;
+import com.google.gwt.user.client.ui.HTML;
+import com.google.gwt.user.client.ui.VerticalPanel;
+import com.google.gwt.user.client.ui.Widget;
+
+/**
+ * This shows a list of scenarios in a package.
+ * And allows them to be run in bulk.
+ * @author Michael Neale
+ */
+public class ScenarioPackageView extends Composite {
+
+
+ private EditItemEvent editEvent;
+
+ private VerticalPanel layout;
+
+ public ScenarioPackageView(final String packageUUID, String packageName, EditItemEvent editEvent, ExplorerViewCenterPanel centerPanel) {
+ this.editEvent = editEvent;
+
+ AssetItemGrid grid = new AssetItemGrid(editEvent, AssetItemGrid.RULE_LIST_TABLE_ID, new AssetItemGridDataLoader() {
+ public void loadData(int startRow, int numberOfRows,
+ GenericCallback cb) {
+ RepositoryServiceFactory.getService().listAssets(packageUUID, new String[] {AssetFormats.TEST_SCENARIO},
+ startRow, numberOfRows, cb);
+ }
+ });
+
+ layout = new VerticalPanel();
+ layout.setWidth("100%");
+ PrettyFormLayout pf = new PrettyFormLayout();
+
+ VerticalPanel vert = new VerticalPanel();
+ vert.add(new HTML("<b>Scenarios for package: </b>" + packageName));
+ Button run = new Button("Run all scenarios");
+ run.addClickListener(new ClickListener() {
+ public void onClick(Widget w) {
+ runAllScenarios(packageUUID);
+ }
+ });
+
+ vert.add(run);
+
+
+ pf.addHeader("images/scenario_large.png", vert);
+
+ layout.add(pf);
+ layout.add(grid);
+
+ initWidget(layout);
+
+
+
+
+ }
+
+ /**
+ * Run all the scenarios, obviously !
+ */
+ private void runAllScenarios(String uuid) {
+ LoadingPopup.showMessage("Building and running scenarios... ");
+ RepositoryServiceFactory.getService().runScenariosInPackage(uuid, new GenericCallback() {
+ public void onSuccess(Object data) {
+ BulkTestRunResult d = (BulkTestRunResult) data;
+ BulkRunResultWidget w = new BulkRunResultWidget(d, editEvent);
+ layout.remove(1);
+ layout.add(w);
+ LoadingPopup.close();
+ }
+ });
+ }
+
+}
Property changes on: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/qa/ScenarioPackageView.java
___________________________________________________________________
Name: svn:eol-style
+ native
More information about the jboss-svn-commits
mailing list