mstover1 2002/08/21 09:09:35
Modified: src/core/org/apache/jmeter/engine StandardJMeterEngine.java
src/core/org/apache/jmeter/gui/tree JMeterTreeModel.java
src/functions/org/apache/jmeter/functions RegexFunction.java
Log:
Fixed problem with the "-l" option in running JMeter in non-gui mode.
Revision Changes Path
1.3 +27 -3
jakarta-jmeter/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java
Index: StandardJMeterEngine.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- StandardJMeterEngine.java 16 Aug 2002 21:10:20 -0000 1.2
+++ StandardJMeterEngine.java 21 Aug 2002 16:09:35 -0000 1.3
@@ -58,9 +58,12 @@
import java.io.StringWriter;
import java.util.HashSet;
import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
import java.util.Set;
import org.apache.jmeter.reporters.ResultCollector;
+import org.apache.jmeter.testelement.TestElement;
import org.apache.jmeter.testelement.TestListener;
import org.apache.jmeter.testelement.TestPlan;
import org.apache.jmeter.threads.JMeterThread;
@@ -130,6 +133,8 @@
System.out.println("Running the test!");
running = true;
compileTree();
+ List testLevelElements = new
LinkedList(getTestTree().list(getTestTree().getArray()[0]));
+ removeThreadGroups(testLevelElements);
SearchByClass searcher = new SearchByClass(ThreadGroup.class);
testListeners = new SearchByClass(TestListener.class);
setMode();
@@ -151,7 +156,9 @@
threads = new JMeterThread[group.getNumThreads()];
for(int i = 0;running && i < threads.length; i++)
{
- threads[i] = new
JMeterThread(cloneTree(searcher.getSubTree(group)),this);
+ ListedHashTree threadGroupTree =
searcher.getSubTree(group);
+ threadGroupTree.add(group,testLevelElements);
+ threads[i] = new
JMeterThread(cloneTree(threadGroupTree),this);
threads[i].setInitialDelay((int)(((float)(group.getRampUp() * 1000) /
(float)group.getNumThreads())
* (float)i));
threads[i].setThreadName(group.getName()+"-"+(i+1));
@@ -169,6 +176,23 @@
PrintWriter writer = new PrintWriter(string);
err.printStackTrace(writer);
throw new JMeterEngineException(string.toString());
+ }
+ }
+
+ private void removeThreadGroups(List elements)
+ {
+ Iterator iter = elements.iterator();
+ while(iter.hasNext())
+ {
+ Object item = iter.next();
+ if(item instanceof ThreadGroup)
+ {
+ iter.remove();
+ }
+ else if(!(item instanceof TestElement))
+ {
+ iter.remove();
+ }
}
}
1.2 +1 -5
jakarta-jmeter/src/core/org/apache/jmeter/gui/tree/JMeterTreeModel.java
Index: JMeterTreeModel.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/gui/tree/JMeterTreeModel.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- JMeterTreeModel.java 11 Aug 2002 19:24:44 -0000 1.1
+++ JMeterTreeModel.java 21 Aug 2002 16:09:35 -0000 1.2
@@ -144,10 +144,6 @@
public JMeterTreeNode addComponent(Object component, JMeterTreeNode node)
throws IllegalUserActionException
{
- if((node.getUserObject() instanceof TestPlanGui) && !(component
instanceof ThreadGroupGui))
- {
- throw new IllegalUserActionException("Only ThreadGroups can be
added to Test Plan nodes");
- }
if(node.getUserObject() instanceof AbstractConfigGui)
{
throw new IllegalUserActionException("This node cannot hold
sub-elements");
1.3 +0 -2
jakarta-jmeter/src/functions/org/apache/jmeter/functions/RegexFunction.java
Index: RegexFunction.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src/functions/org/apache/jmeter/functions/RegexFunction.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- RegexFunction.java 16 Aug 2002 21:10:21 -0000 1.2
+++ RegexFunction.java 21 Aug 2002 16:09:35 -0000 1.3
@@ -109,7 +109,6 @@
}
else if(valueIndex.equals(RAND))
{
- System.out.println("Number of matches =
"+collectAllMatches.size());
MatchResult result = (MatchResult)collectAllMatches.get(
rand.nextInt(collectAllMatches.size()));
return generateResult(result);
@@ -182,7 +181,6 @@
if(tk.hasNext())
{
valueIndex = (String)tk.next();
- System.out.println("Value index = "+valueIndex);
}
if(tk.hasNext())
{
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>