EMBJOPR SVN: r544 - trunk/jsfunit/src/test/java/org/jboss/jopr/jsfunit/as5/scripts.
by embjopr-commits@lists.jboss.org
Author: ozizka(a)redhat.com
Date: 2009-06-19 12:05:31 -0400 (Fri, 19 Jun 2009)
New Revision: 544
Modified:
trunk/jsfunit/src/test/java/org/jboss/jopr/jsfunit/as5/scripts/ScriptsTest.java
Log:
Scripts tests updated.
Modified: trunk/jsfunit/src/test/java/org/jboss/jopr/jsfunit/as5/scripts/ScriptsTest.java
===================================================================
--- trunk/jsfunit/src/test/java/org/jboss/jopr/jsfunit/as5/scripts/ScriptsTest.java 2009-06-19 14:35:33 UTC (rev 543)
+++ trunk/jsfunit/src/test/java/org/jboss/jopr/jsfunit/as5/scripts/ScriptsTest.java 2009-06-19 16:05:31 UTC (rev 544)
@@ -18,7 +18,9 @@
import junit.framework.Test;
import junit.framework.TestSuite;
import org.apache.commons.io.filefilter.SuffixFileFilter;
+import org.apache.commons.lang.StringUtils;
import org.jboss.jopr.jsfunit.ApplicationTestBaseAS5;
+import org.jboss.jopr.jsfunit.DebugUtils;
import org.jboss.jopr.jsfunit.exceptions.EmbJoprTestException;
import org.jboss.jopr.jsfunit.exceptions.HtmlElementNotFoundException;
import org.jboss.jopr.jsfunit.util.ActiveConditionChecker;
@@ -191,6 +193,10 @@
// (22:50:51) ozizka: ccrouch, ips: After clicking "Execute Script", the Control Operation page (the one where I set the arguments) doesn't have the tabs. All other pages have tabs. Is this intentional?
// (22:52:49) ips: ozizka: yeah probably intentional to show you're in the middle of a workflow
// (22:52:55) ips: ideally we should switch it over to using a modal on the original page for prompting for the params
+
+ ejtt.sleep(2000);
+
+ // Run.
/*String label = "OK";
HtmlInput okButton = ((HtmlDivision) client.getElement("content")).getFirstByXPath(".//input[normalize-space(@value)='" + label + "']");
okButton.click();*/
@@ -201,6 +207,8 @@
ejtt.operations.waitActivelyForOperationToFinish(EXECUTE_OP_NAME, 5000, 5);
assertTrue(EXECUTE_OP_NAME+" operation wasn't successful.", ejtt.tabMenu.getTabContentBox().getOperationsHistoryTable().wasLastOperationSuccesful() );
+ ejtt.sleep(2000);
+
// Get the results table.
//client.getElement("historyDetailsPanel_body");
HtmlDivision resultsDiv = (HtmlDivision) client.getElement("operationResults");
@@ -220,7 +228,9 @@
String expectedOutputPart = "usage";
HtmlTextArea outputTA = resultsTable.getFirstRowContainingText("Output").getCellByColumnName("Value").getFirstByXPath(".//textarea");
- assertTrue("classpath.sh parameter-less run output should contain '"+expectedOutputPart+"'", outputTA.getText().toLowerCase().contains(expectedOutputPart));
+ String taText = outputTA.getText();
+ DebugUtils.writeFile("target/scriptsWithoutParam-output.html", taText);
+ assertTrue("classpath.sh parameter-less run output should contain '"+expectedOutputPart+"'; is:\n"+taText, taText.toLowerCase().contains(expectedOutputPart));
}
finally {
@@ -247,8 +257,10 @@
/**
* Runs `classpath.sh -c`, which prints the classpath.
+ *
+ * DISABLED, because from JSFUnit, setting the op param doesn't work.
*/
- public void testScriptsRunClasspathshWithParamTest() throws IOException, EmbJoprTestException {
+ public void DISABLEDtestScriptsRunClasspathshWithParamTest() throws IOException, EmbJoprTestException {
final String SCRIPT_FILE_NAME = "classpath.sh";
@@ -262,26 +274,32 @@
ejtt.tabMenu.getTabContentBox().getButtonByLabel(EXECUTE_OP_NAME).click();
// Command Line Arguments: "-c"
+ // No tab content box in this block.
{
- HtmlTable resultsTableElm = ((HtmlForm)client.getElement("parametersForm")).getFirstByXPath("table[@class='properties-table']");
+ HtmlTable resultsTableElm = ((HtmlForm)client.getElement("parametersForm")).getFirstByXPath(".//table[@class='properties-table']");
ContentTable resultsTable = ejtt.getTable(resultsTableElm);
- ContentTableRow row = ejtt.tabMenu.getTabContentBox().getFirstTable().getFirstRowContainingText("Command Line Arguments");
+ ContentTableRow row = resultsTable.getFirstRowContainingText("Command Line Arguments");
assertNotNull("'Command Line Arguments' row not found.", row);
HtmlCheckBoxInput unsetCheckbox = row./*getCellByColumnName("Unset").*/ getElement().getFirstByXPath(".//input[@type='checkbox']");
unsetCheckbox.setChecked(false);
HtmlTextArea argsTA = row./*getCellByColumnName("Value").*/ getElement().getFirstByXPath(".//textarea"); // [@ondblclick='commandLineArguments']
argsTA.setText("-c");
+ DebugUtils.writeFile("target/scriptsWithParam-settingParams.html", client.getPageAsText());
+
+ ejtt.sleep(2000);
+
+ // Run.
+ ((HtmlSubmitInput) client.getElement("parametersForm:okButton")).click();
}
- // Run.
- //ejtt.tabMenu.getTabContentBox().getSubmitButtonByLabel("OK").click();
- ((HtmlSubmitInput) client.getElement("parametersForm:okButton")).click();
// Wait for the operation to succesfuly finish.
ejtt.operations.waitActivelyForOperationToFinish(EXECUTE_OP_NAME, 5000, 5);
assertTrue(EXECUTE_OP_NAME+" operation wasn't successful.", ejtt.tabMenu.getTabContentBox().getOperationsHistoryTable().wasLastOperationSuccesful() );
+ ejtt.sleep(2000);
+
// Get the results table.
//client.getElement("historyDetailsPanel_body");
HtmlDivision resultsDiv = (HtmlDivision) client.getElement("operationResults");
@@ -301,7 +319,9 @@
String expectedOutputPart = "/client";
HtmlTextArea outputTA = resultsTable.getFirstRowContainingText("Output").getCellByColumnName("Value").getFirstByXPath(".//textarea");
- assertTrue("`classpath.sh -c` run output should contain '"+expectedOutputPart+"'", outputTA.getText().toLowerCase().contains(expectedOutputPart));
+ String taText = outputTA.getText().trim();
+ DebugUtils.writeFile("target/scriptsWithParam-output.html", client.getPageAsText());
+ assertTrue("`classpath.sh -c` run output should contain '"+expectedOutputPart+"'; is:\n"+taText, taText.toLowerCase().contains(expectedOutputPart));
}
finally {