You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jmeter.apache.org by pm...@apache.org on 2018/04/05 21:57:19 UTC
svn commit: r1828480 -
/jmeter/trunk/test/src/org/apache/jmeter/protocol/http/sampler/PostWriterTest.java
Author: pmouawad
Date: Thu Apr 5 21:57:19 2018
New Revision: 1828480
URL: http://svn.apache.org/viewvc?rev=1828480&view=rev
Log:
[Bug 60190] Content-Type is added for POST unconditionally
Fix test failure in Java
Java implementation does not set header
Bugzilla Id: 60190
Modified:
jmeter/trunk/test/src/org/apache/jmeter/protocol/http/sampler/PostWriterTest.java
Modified: jmeter/trunk/test/src/org/apache/jmeter/protocol/http/sampler/PostWriterTest.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/test/src/org/apache/jmeter/protocol/http/sampler/PostWriterTest.java?rev=1828480&r1=1828479&r2=1828480&view=diff
==============================================================================
--- jmeter/trunk/test/src/org/apache/jmeter/protocol/http/sampler/PostWriterTest.java (original)
+++ jmeter/trunk/test/src/org/apache/jmeter/protocol/http/sampler/PostWriterTest.java Thu Apr 5 21:57:19 2018
@@ -18,6 +18,7 @@
package org.apache.jmeter.protocol.http.sampler;
+import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.fail;
@@ -175,7 +176,7 @@ public class PostWriterTest {
postWriter.setHeaders(connection, sampler);
postWriter.sendPostData(connection, sampler);
- checkContentTypeUrlEncoded(connection);
+ checkNoContentType(connection);
byte[] expectedUrl = "title=mytitle&description=mydescription".getBytes(); // TODO - charset?
checkContentLength(connection, expectedUrl.length);
checkArraysHaveSameContent(expectedUrl, connection.getOutputStreamContent());
@@ -191,7 +192,7 @@ public class PostWriterTest {
postWriter.setHeaders(connection, sampler);
postWriter.sendPostData(connection, sampler);
- checkContentTypeUrlEncoded(connection);
+ checkNoContentType(connection);
expectedUrl = "title=mytitle&description=mydescription".getBytes(contentEncoding);
checkContentLength(connection, expectedUrl.length);
checkArraysHaveSameContent(expectedUrl, connection.getOutputStreamContent());
@@ -248,7 +249,7 @@ public class PostWriterTest {
postWriter.setHeaders(connection, sampler);
postWriter.sendPostData(connection, sampler);
- checkContentTypeUrlEncoded(connection);
+ checkNoContentType(connection);
byte[] expectedUrl = "title=mytitle&description=mydescription".getBytes(); // TODO - charset?
checkContentLength(connection, expectedUrl.length);
checkArraysHaveSameContent(expectedUrl, connection.getOutputStreamContent());
@@ -426,7 +427,7 @@ public class PostWriterTest {
postWriter.setHeaders(connection, sampler);
postWriter.sendPostData(connection, sampler);
- checkContentTypeUrlEncoded(connection);
+ checkNoContentType(connection);
byte[] expectedUrl = ("title=" + titleValue + "&description=" + descriptionValue).getBytes("US-ASCII");
checkContentLength(connection, expectedUrl.length);
checkArraysHaveSameContent(expectedUrl, connection.getOutputStreamContent());
@@ -442,7 +443,7 @@ public class PostWriterTest {
postWriter.setHeaders(connection, sampler);
postWriter.sendPostData(connection, sampler);
- checkContentTypeUrlEncoded(connection);
+ checkNoContentType(connection);
expectedUrl = new StringBuilder("title=").append(titleValue).append("&description=")
.append(descriptionValue).toString().getBytes("US-ASCII");
checkContentLength(connection, expectedUrl.length);
@@ -462,7 +463,7 @@ public class PostWriterTest {
postWriter.setHeaders(connection, sampler);
postWriter.sendPostData(connection, sampler);
- checkContentTypeUrlEncoded(connection);
+ checkNoContentType(connection);
String expectedString = "title="
+ URLEncoder.encode(titleValue, contentEncoding)
+ "&description="
@@ -488,7 +489,7 @@ public class PostWriterTest {
postWriter.setHeaders(connection, sampler);
postWriter.sendPostData(connection, sampler);
- checkContentTypeUrlEncoded(connection);
+ checkNoContentType(connection);
expectedString = "title="
+ URLEncoder.encode(titleValue, contentEncoding)
+ "&description="
@@ -511,7 +512,7 @@ public class PostWriterTest {
postWriter.setHeaders(connection, sampler);
postWriter.sendPostData(connection, sampler);
- checkContentTypeUrlEncoded(connection);
+ checkNoContentType(connection);
expectedString = "title=" + URLEncoder.encode(titleValue, UTF_8) + "&description=" + URLEncoder.encode(descriptionValue, UTF_8);
expectedUrl = expectedString.getBytes("US-ASCII");
checkContentLength(connection, expectedUrl.length);
@@ -539,7 +540,7 @@ public class PostWriterTest {
postWriter.setHeaders(connection, sampler);
postWriter.sendPostData(connection, sampler);
- checkContentTypeUrlEncoded(connection);
+ checkNoContentType(connection);
StringBuilder sb = new StringBuilder();
expectedUrl = sb.append("title=").append(titleValue.replaceAll("%20", "+").replaceAll("%C3%85", "%C5"))
.append("&description=").append(descriptionValue.replaceAll("%C3%85", "%C5")).toString().getBytes("US-ASCII");
@@ -558,7 +559,7 @@ public class PostWriterTest {
postWriter.setHeaders(connection, sampler);
postWriter.sendPostData(connection, sampler);
- checkContentTypeUrlEncoded(connection);
+ checkNoContentType(connection);
sb = new StringBuilder();
expectedUrl = sb.append("title=").append(titleValue.replaceAll("%20", "+").replaceAll("%C3%85", "%C5"))
.append("&description=").append(descriptionValue.replaceAll("%C3%85", "%C5")).toString().getBytes("US-ASCII");
@@ -576,7 +577,7 @@ public class PostWriterTest {
postWriter.setHeaders(connection, sampler);
postWriter.sendPostData(connection, sampler);
- checkContentTypeUrlEncoded(connection);
+ checkNoContentType(connection);
sb = new StringBuilder();
expectedUrl = sb.append("title=")
.append(titleValue.replaceAll("%20", "+"))
@@ -613,7 +614,7 @@ public class PostWriterTest {
setupFormData(sampler);
postWriter.setHeaders(connection, sampler);
- checkContentTypeUrlEncoded(connection);
+ checkNoContentType(connection);
checkContentLength(connection, "title=mytitle&description=mydescription".length());
}
@@ -920,6 +921,9 @@ public class PostWriterTest {
assertEquals("multipart/form-data; boundary=" + boundaryString, conn.getRequestProperty(HTTPConstants.HEADER_CONTENT_TYPE));
}
+ private void checkNoContentType(HttpURLConnection conn) {
+ assertNull(conn.getRequestProperty(HTTPConstants.HEADER_CONTENT_TYPE));
+ }
private void checkContentTypeUrlEncoded(HttpURLConnection conn) {
assertEquals(HTTPConstants.APPLICATION_X_WWW_FORM_URLENCODED, conn.getRequestProperty(HTTPConstants.HEADER_CONTENT_TYPE));
}