Author: fschumacher
Date: Sat Mar 2 17:17:47 2019
New Revision: 1854657
URL: http://svn.apache.org/viewvc?rev=1854657&view=rev
Log:
Make test work in both IDE and ant setting
The test used the setting of CWD, which is different when run from an IDE or from ant.
Now it uses JMeterHome which is the same for both environments.
And while we are at the test,
* we try to make sure, that we don't disturb other tests with the manipulated base dir
* use more descriptive messages in the case of a failure
Relates to #400 on github
Bugzilla Id: 62785
Added:
jmeter/trunk/test/src/org/apache/jmeter/protocol/http/sampler/TestSerializedHTTPSampler.java
(with props)
Modified:
jmeter/trunk/test/src/org/apache/jmeter/protocol/http/sampler/TestHTTPSamplers.java
Modified: jmeter/trunk/test/src/org/apache/jmeter/protocol/http/sampler/TestHTTPSamplers.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/test/src/org/apache/jmeter/protocol/http/sampler/TestHTTPSamplers.java?rev=1854657&r1=1854656&r2=1854657&view=diff
==============================================================================
--- jmeter/trunk/test/src/org/apache/jmeter/protocol/http/sampler/TestHTTPSamplers.java (original)
+++ jmeter/trunk/test/src/org/apache/jmeter/protocol/http/sampler/TestHTTPSamplers.java Sat
Mar 2 17:17:47 2019
@@ -19,17 +19,12 @@
package org.apache.jmeter.protocol.http.sampler;
import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
-import java.io.File;
-
import org.apache.jmeter.config.Argument;
import org.apache.jmeter.config.Arguments;
import org.apache.jmeter.protocol.http.util.HTTPConstants;
import org.apache.jmeter.protocol.http.util.HTTPFileArg;
-import org.apache.jmeter.samplers.SampleResult;
-import org.apache.jmeter.services.FileServer;
import org.junit.Test;
public class TestHTTPSamplers {
@@ -370,21 +365,4 @@ public class TestHTTPSamplers {
assertEquals("mime2", file.getMimeType());
}
- @Test
- public void testRawBodyFromFile() {
- String baseDirPath = FileServer.getFileServer().getBaseDir();
- File baseDir = new File(baseDirPath);
- try {
- FileServer.getFileServer().setBase(baseDir.getParentFile());
- HTTPSamplerBase sampler = new HTTPSampler3();
- sampler.setMethod("POST");
- sampler.setPath("http://httpbin.org/post");
- sampler.setHTTPFiles(new HTTPFileArg[]{new HTTPFileArg("bin/jmeter.properties",
"", "")});
-
- SampleResult sample = sampler.sample();
- assertFalse(sample.getResponseDataAsString().contains("java.io.FileNotFoundException:"));
- } finally {
- FileServer.getFileServer().setBase(baseDir);
- }
- }
}
Added: jmeter/trunk/test/src/org/apache/jmeter/protocol/http/sampler/TestSerializedHTTPSampler.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/test/src/org/apache/jmeter/protocol/http/sampler/TestSerializedHTTPSampler.java?rev=1854657&view=auto
==============================================================================
--- jmeter/trunk/test/src/org/apache/jmeter/protocol/http/sampler/TestSerializedHTTPSampler.java
(added)
+++ jmeter/trunk/test/src/org/apache/jmeter/protocol/http/sampler/TestSerializedHTTPSampler.java
Sat Mar 2 17:17:47 2019
@@ -0,0 +1,38 @@
+package org.apache.jmeter.protocol.http.sampler;
+
+import static org.hamcrest.CoreMatchers.containsString;
+import static org.hamcrest.CoreMatchers.not;
+import static org.junit.Assert.assertThat;
+
+import java.io.File;
+import java.nio.file.Paths;
+
+import org.apache.jmeter.junit.JMeterTestCase;
+import org.apache.jmeter.protocol.http.util.HTTPFileArg;
+import org.apache.jmeter.samplers.SampleResult;
+import org.apache.jmeter.services.FileServer;
+import org.apache.jmeter.util.JMeterUtils;
+import org.apache.jorphan.test.JMeterSerialTest;
+import org.junit.Test;
+
+public class TestSerializedHTTPSampler extends JMeterTestCase implements JMeterSerialTest
{
+
+ @Test
+ public void checkThatFilesAreReadRelativeToBaseDir() {
+ String baseDirPath = FileServer.getFileServer().getBaseDir();
+ File baseDir = new File(baseDirPath);
+ try {
+ FileServer.getFileServer().setBase(Paths.get(JMeterUtils.getJMeterHome(), "test",
"resources").toFile());
+ HTTPSamplerBase sampler = new HTTPSampler3();
+ sampler.setMethod("POST");
+ sampler.setPath("https://httpbin.org/post");
+ sampler.setHTTPFiles(new HTTPFileArg[]{new HTTPFileArg("resourcefile.txt", "",
"")});
+
+ SampleResult sample = sampler.sample();
+ assertThat(sample.getResponseDataAsString(), not(containsString("java.io.FileNotFoundException:")));
+ } finally {
+ FileServer.getFileServer().setBase(baseDir);
+ }
+ }
+
+}
Propchange: jmeter/trunk/test/src/org/apache/jmeter/protocol/http/sampler/TestSerializedHTTPSampler.java
------------------------------------------------------------------------------
svn:eol-style = native
|