mstover1 2002/07/25 19:48:46
Modified: src_1/org/apache/jmeter/functions CompoundFunction.java
src_1/org/apache/jmeter/protocol/http/modifier
URLRewritingModifier.java
src_1/org/apache/jmeter/protocol/http/modifier/gui
UserParameterModifierGui.java
src_1/org/apache/jmeter/protocol/http/sampler
HTTPSampler.java
Log:
User defined variables bug fix
URL Rewriting Modifier enhancement
User Parameter Modifier fix reload
Revision Changes Path
1.3 +12 -0
jakarta-jmeter/src_1/org/apache/jmeter/functions/CompoundFunction.java
Index: CompoundFunction.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/functions/CompoundFunction.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- CompoundFunction.java 18 Jul 2002 03:44:21 -0000 1.2
+++ CompoundFunction.java 26 Jul 2002 02:48:46 -0000 1.3
@@ -177,7 +177,9 @@
if(hasStatics())
{
compiledComponents.clear();
+ hasStatics = false;
setParameters(staticSubstitution);
+ hasStatics = true;
}
}
else if(hasStatics())
@@ -287,6 +289,7 @@
{
Map userDefinedVariables = new HashMap();
userDefinedVariables.put("my_regex",".*");
+ userDefinedVariables.put("server","jakarta.apache.org");
function = new CompoundFunction();
function.setUserDefinedVariables(userDefinedVariables);
result = new SampleResult();
@@ -340,6 +343,15 @@
function.compiledComponents.getFirst().toString());
assertEquals("${non-existing
function}",function.execute(result,null));
assertEquals("${non-existing
function}",function.execute(null,null));
+ }
+
+ public void testParseExample6() throws Exception
+ {
+ function.setParameters("${server}");
+ assertEquals(1,function.compiledComponents.size());
+ assertTrue(!function.hasFunction());
+ assertTrue(function.hasStatics());
+ assertEquals("jakarta.apache.org",function.execute(null,null));
}
public void testParseExample5() throws Exception
1.3 +52 -1
jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/modifier/URLRewritingModifier.java
Index: URLRewritingModifier.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/modifier/URLRewritingModifier.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- URLRewritingModifier.java 18 Jun 2002 01:01:14 -0000 1.2
+++ URLRewritingModifier.java 26 Jul 2002 02:48:46 -0000 1.3
@@ -2,7 +2,10 @@
import java.io.Serializable;
+import junit.framework.TestCase;
+
import org.apache.jmeter.config.Argument;
+import org.apache.jmeter.config.Arguments;
import org.apache.jmeter.config.ResponseBasedModifier;
import org.apache.jmeter.protocol.http.sampler.HTTPSampler;
import org.apache.jmeter.samplers.SampleResult;
@@ -78,7 +81,7 @@
{
setProperty(ARGUMENT_NAME,argName);
try {
- case1 = compiler.compile(argName+"=(.*)[& ]");
+ case1 = compiler.compile(argName+"=([^\">& ]*)[&
\\n\\r\">]?$?");
case2 =
compiler.compile("[Nn][Aa][Mm][Ee]=\""+argName+"\"[^>]+[vV][Aa][Ll][Uu][Ee]=\"(.*)\"");
case3 =
compiler.compile("[vV][Aa][Ll][Uu][Ee]=\"(.*)\"[^>]+[Nn][Aa][Mm][Ee]=\""+argName+"\"");
} catch(MalformedPatternException e) {
@@ -99,6 +102,54 @@
public boolean isPathExtension()
{
return getPropertyAsBoolean(PATH_EXTENSION);
+ }
+
+ public static class Test extends TestCase
+ {
+ SampleResult response;
+ public Test(String name)
+ {
+ super(name);
+ }
+
+ public void setUp()
+ {
+
+ }
+
+ public void testGrabSessionId() throws Exception
+ {
+ String html = "location:
http://server.com/index.html?session_id=jfdkjdkfjddkfdfjkdjfdf";
+ response = new SampleResult();
+ response.setResponseData(html.getBytes());
+ URLRewritingModifier mod = new URLRewritingModifier();
+ mod.setArgumentName("session_id");
+ HTTPSampler sampler = new HTTPSampler();
+ sampler.setDomain("server.com");
+ sampler.setPath("index.html");
+ sampler.setMethod(HTTPSampler.GET);
+ sampler.setProtocol("http");
+ mod.modifyEntry(sampler,response);
+ Arguments args = sampler.getArguments();
+
assertEquals("jfdkjdkfjddkfdfjkdjfdf",((Argument)args.getArguments().get(0)).getValue());
+ }
+
+ public void testGrabSessionId2() throws Exception
+ {
+ String html = "<a
href=\"http://server.com/index.html?session_id=jfdkjdkfjddkfdfjkdjfdf\">";
+ response = new SampleResult();
+ response.setResponseData(html.getBytes());
+ URLRewritingModifier mod = new URLRewritingModifier();
+ mod.setArgumentName("session_id");
+ HTTPSampler sampler = new HTTPSampler();
+ sampler.setDomain("server.com");
+ sampler.setPath("index.html");
+ sampler.setMethod(HTTPSampler.GET);
+ sampler.setProtocol("http");
+ mod.modifyEntry(sampler,response);
+ Arguments args = sampler.getArguments();
+
assertEquals("jfdkjdkfjddkfdfjkdjfdf",((Argument)args.getArguments().get(0)).getValue());
+ }
}
}
1.3 +8 -1
jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/modifier/gui/UserParameterModifierGui.java
Index: UserParameterModifierGui.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/modifier/gui/UserParameterModifierGui.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- UserParameterModifierGui.java 2 May 2002 22:54:59 -0000 1.2
+++ UserParameterModifierGui.java 26 Jul 2002 02:48:46 -0000 1.3
@@ -101,6 +101,13 @@
public String getStaticLabel() {
return JMeterUtils.getResString("HTTP User Parameter Modifier");
}
+
+ public void configure(TestElement el)
+ {
+ super.configure(el);
+ fileNameField.setText(((UserParameterModifier)el).getXmlUri());
+ }
+
/*----------------------------------------------------------------------------------------------
* Methods Private
*--------------------------------------------------------------------------------------------*/
1.19 +5 -4
jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/sampler/HTTPSampler.java
Index: HTTPSampler.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/protocol/http/sampler/HTTPSampler.java,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- HTTPSampler.java 18 Jul 2002 18:55:53 -0000 1.18
+++ HTTPSampler.java 26 Jul 2002 02:48:46 -0000 1.19
@@ -646,7 +646,8 @@
URL newUrl = new URL(loc);
urlConfig.setDomain(newUrl.getHost());
urlConfig.setPath(newUrl.getFile());
- urlConfig.setArguments(new Arguments());
+ urlConfig.removeArguments();
+ urlConfig.parseArguments(newUrl.getQuery());
urlConfig.setMethod(HTTPSampler.GET);
}
@@ -664,7 +665,7 @@
SampleResult res = new SampleResult();
if(redirected)
{
- url.removeArguments();
+ //url.removeArguments();
// [Jordi <[EMAIL PROTECTED]>
// TO-DO: I need to investigate why this is necessary.
// ...although it won't do any harm...
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>