Bug 1305162: Part 1c - Fix devtools tests that expect headers in upload stream. r=ochameau

MozReview-Commit-ID: BirgY62GRn7

--HG--
extra : rebase_source : bede12f4c42cc48edbf8de2b6f5b22185bb55dd3
extra : source : d1095e03dfc600771f54c7ff2dc5fd294ca1ab28
This commit is contained in:
Kris Maglione 2017-01-10 14:24:45 -08:00
parent a877454fe6
commit 48b5adb85c
2 changed files with 24 additions and 6 deletions

View File

@ -41,10 +41,15 @@ add_task(function* () {
data = yield createCurlData(requests.multipart, gNetwork);
testIsMultipartRequest(data);
testGetMultipartBoundary(data);
testMultiPartHeaders(data);
testRemoveBinaryDataFromMultipartText(data);
data = yield createCurlData(requests.multipartForm, gNetwork);
testGetHeadersFromMultipartText(data);
testMultiPartHeaders(data);
testGetHeadersFromMultipartText({
postDataText: "Content-Type: text/plain\r\n\r\n",
});
if (Services.appinfo.OS != "WINNT") {
testEscapeStringPosix();
@ -79,6 +84,14 @@ function testFindHeader(data) {
"Should return null when a header is not found.");
}
function testMultiPartHeaders(data) {
let headers = data.headers;
let contentType = CurlUtils.findHeader(headers, "Content-Type");
ok(contentType.startsWith("multipart/form-data; boundary="),
"Multi-part content type header is present in headers array");
}
function testWritePostDataTextParams(data) {
let params = CurlUtils.writePostDataTextParams(data.postDataText);
is(params, "param1=value1&param2=value2&param3=value3",

View File

@ -118,14 +118,19 @@ add_task(function* testFormSubmission() {
let client = hud.ui.webConsoleClient;
const postData = yield client.getRequestPostData(request.actor);
const requestHeaders = yield client.getRequestHeaders(request.actor);
const responseContent = yield client.getResponseContent(request.actor);
let getHeader = name => {
let header = requestHeaders.headers.find(h => h.name == name);
return header && header.value;
};
is(request.request.method, "POST", "Method is correct");
isnot(postData.postData.text
.indexOf("Content-Type: application/x-www-form-urlencoded"), -1,
"Content-Type is correct");
isnot(postData.postData.text
.indexOf("Content-Length: 20"), -1, "Content-length is correct");
is(getHeader("Content-Type"), "application/x-www-form-urlencoded",
"Content-Type is correct");
is(getHeader("Content-Length"), "20",
"Content-length is correct");
isnot(postData.postData.text
.indexOf("name=foo+bar&age=144"), -1, "Form data is correct");
is(responseContent.content.text.indexOf("<!DOCTYPE HTML>"), 0,