diff --git a/accessible/tests/mochitest/events/slow_image.sjs b/accessible/tests/mochitest/events/slow_image.sjs index a6636f34a70c..19b93e691c10 100644 --- a/accessible/tests/mochitest/events/slow_image.sjs +++ b/accessible/tests/mochitest/events/slow_image.sjs @@ -12,7 +12,10 @@ const IMG_BYTES = atob( // stolen from file_blocked_script.sjs function setGlobalState(data, key) { - x = { data: data, QueryInterface: function(iid) { return this } }; + x = { + data, + QueryInterface: ChromeUtils.generateQI([]), + }; x.wrappedJSObject = x; setObjectState(key, x); } diff --git a/browser/base/content/test/about/csp_iframe.sjs b/browser/base/content/test/about/csp_iframe.sjs index 72aa06920d00..f53ed8498fd9 100644 --- a/browser/base/content/test/about/csp_iframe.sjs +++ b/browser/base/content/test/about/csp_iframe.sjs @@ -3,7 +3,11 @@ function handleRequest(request, response) { // let's enjoy the amazing CSP setting - response.setHeader("Content-Security-Policy", "frame-ancestors 'self'", false); + response.setHeader( + "Content-Security-Policy", + "frame-ancestors 'self'", + false + ); // let's avoid caching issues response.setHeader("Pragma", "no-cache"); @@ -18,8 +22,8 @@ function handleRequest(request, response) { let cookie = request.hasHeader("Cookie") ? request.getHeader("Cookie") : "" + - "

No same site strict cookie header

" + - ""; + "

No same site strict cookie header

" + + ""; response.write(cookie); if (!request.hasHeader("Cookie")) { diff --git a/browser/base/content/test/about/print_postdata.sjs b/browser/base/content/test/about/print_postdata.sjs index 4175a248055c..0e3ef38419cb 100644 --- a/browser/base/content/test/about/print_postdata.sjs +++ b/browser/base/content/test/about/print_postdata.sjs @@ -1,7 +1,9 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); function handleRequest(request, response) { response.setHeader("Content-Type", "text/plain", false); @@ -13,8 +15,9 @@ function handleRequest(request, response) { var avail; var bytes = []; - while ((avail = body.available()) > 0) + while ((avail = body.available()) > 0) { Array.prototype.push.apply(bytes, body.readByteArray(avail)); + } var data = String.fromCharCode.apply(null, bytes); response.bodyOutputStream.write(data, data.length); diff --git a/browser/base/content/test/about/xfo_iframe.sjs b/browser/base/content/test/about/xfo_iframe.sjs index d7d99e31c336..e8a6352ce038 100644 --- a/browser/base/content/test/about/xfo_iframe.sjs +++ b/browser/base/content/test/about/xfo_iframe.sjs @@ -13,7 +13,8 @@ function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 200); response.setHeader("Content-Type", "text/html", false); - let txt = "XFO page" + + let txt = + "XFO page" + "

" + "XFO blocked page opened in new window!" + "

"; @@ -22,8 +23,8 @@ function handleRequest(request, response) { let cookie = request.hasHeader("Cookie") ? request.getHeader("Cookie") : "" + - "

No same site strict cookie header

" + - ""; + "

No same site strict cookie header

" + + ""; response.write(cookie); if (!request.hasHeader("Cookie")) { diff --git a/browser/base/content/test/favicons/cookie_favicon.sjs b/browser/base/content/test/favicons/cookie_favicon.sjs index a3b697011a62..bee75ab176ed 100644 --- a/browser/base/content/test/favicons/cookie_favicon.sjs +++ b/browser/base/content/test/favicons/cookie_favicon.sjs @@ -17,6 +17,9 @@ function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 302, "Moved Temporarily"); response.setHeader("Set-Cookie", `faviconCookie=${++state}`); - response.setHeader("Location", "http://example.com/browser/browser/base/content/test/favicons/moz.png"); + response.setHeader( + "Location", + "http://example.com/browser/browser/base/content/test/favicons/moz.png" + ); setState("cache_cookie", `${state}`); } diff --git a/browser/base/content/test/general/browser_star_hsts.sjs b/browser/base/content/test/general/browser_star_hsts.sjs index 10c7aae12894..64c4235288c3 100644 --- a/browser/base/content/test/general/browser_star_hsts.sjs +++ b/browser/base/content/test/general/browser_star_hsts.sjs @@ -2,8 +2,7 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this file, * You can obtain one at http://mozilla.org/MPL/2.0/. */ -function handleRequest(request, response) -{ +function handleRequest(request, response) { let page = "

HSTS page

"; response.setStatusLine(request.httpVersion, "200", "OK"); response.setHeader("Strict-Transport-Security", "max-age=60"); diff --git a/browser/base/content/test/general/bug792517.sjs b/browser/base/content/test/general/bug792517.sjs index 91e5aa23fee3..c1f2b282fb8b 100644 --- a/browser/base/content/test/general/bug792517.sjs +++ b/browser/base/content/test/general/bug792517.sjs @@ -3,11 +3,11 @@ */ function handleRequest(aRequest, aResponse) { - aResponse.setStatusLine(aRequest.httpVersion, 200); - if (aRequest.hasHeader('Cookie')) { - aResponse.write("cookie-present"); - } else { - aResponse.setHeader("Set-Cookie", "foopy=1"); - aResponse.write("cookie-not-present"); - } + aResponse.setStatusLine(aRequest.httpVersion, 200); + if (aRequest.hasHeader("Cookie")) { + aResponse.write("cookie-present"); + } else { + aResponse.setHeader("Set-Cookie", "foopy=1"); + aResponse.write("cookie-not-present"); + } } diff --git a/browser/base/content/test/general/download_with_content_disposition_header.sjs b/browser/base/content/test/general/download_with_content_disposition_header.sjs index d8398282f390..26be6c44b7fa 100644 --- a/browser/base/content/test/general/download_with_content_disposition_header.sjs +++ b/browser/base/content/test/general/download_with_content_disposition_header.sjs @@ -2,20 +2,17 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this file, * You can obtain one at http://mozilla.org/MPL/2.0/. */ -function handleRequest(request, response) -{ +function handleRequest(request, response) { let page = "download"; response.setStatusLine(request.httpVersion, "200", "OK"); - let [first, second] = request.queryString.split('='); + let [first, second] = request.queryString.split("="); let headerStr = first; if (second !== "none") { headerStr += "; filename=" + second; } - response.setHeader( - "Content-Disposition", - headerStr); + response.setHeader("Content-Disposition", headerStr); response.setHeader("Content-Type", "text/plain", false); response.setHeader("Content-Length", page.length + "", false); response.write(page); diff --git a/browser/base/content/test/general/print_postdata.sjs b/browser/base/content/test/general/print_postdata.sjs index 4175a248055c..0e3ef38419cb 100644 --- a/browser/base/content/test/general/print_postdata.sjs +++ b/browser/base/content/test/general/print_postdata.sjs @@ -1,7 +1,9 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); function handleRequest(request, response) { response.setHeader("Content-Type", "text/plain", false); @@ -13,8 +15,9 @@ function handleRequest(request, response) { var avail; var bytes = []; - while ((avail = body.available()) > 0) + while ((avail = body.available()) > 0) { Array.prototype.push.apply(bytes, body.readByteArray(avail)); + } var data = String.fromCharCode.apply(null, bytes); response.bodyOutputStream.write(data, data.length); diff --git a/browser/base/content/test/general/redirect_download.sjs b/browser/base/content/test/general/redirect_download.sjs index 56f9d55bd8f3..c2857b93380d 100644 --- a/browser/base/content/test/general/redirect_download.sjs +++ b/browser/base/content/test/general/redirect_download.sjs @@ -5,5 +5,7 @@ function handleRequest(request, response) { response.setStatusLine("1.1", 302, "Found"); response.setHeader( "Location", - `download_with_content_disposition_header.sjs?${queryStr}`, false); + `download_with_content_disposition_header.sjs?${queryStr}`, + false + ); } diff --git a/browser/base/content/test/general/refresh_header.sjs b/browser/base/content/test/general/refresh_header.sjs index 327372f9b3a6..6848e9627505 100644 --- a/browser/base/content/test/general/refresh_header.sjs +++ b/browser/base/content/test/general/refresh_header.sjs @@ -21,4 +21,4 @@ function handleRequest(request, response) { response.setStatusLine(request.httpVersion, "200", "Found"); response.setHeader("refresh", `${delay}; url=${page}`); response.write("OK"); -} \ No newline at end of file +} diff --git a/browser/base/content/test/general/refresh_meta.sjs b/browser/base/content/test/general/refresh_meta.sjs index 648fac1a3da3..4ab39c0b5b10 100644 --- a/browser/base/content/test/general/refresh_meta.sjs +++ b/browser/base/content/test/general/refresh_meta.sjs @@ -33,4 +33,4 @@ function handleRequest(request, response) { response.setStatusLine(request.httpVersion, "200", "Found"); response.setHeader("Cache-Control", "no-cache", false); response.write(html); -} \ No newline at end of file +} diff --git a/browser/base/content/test/permissions/browser_autoplay_blocked_slow.sjs b/browser/base/content/test/permissions/browser_autoplay_blocked_slow.sjs index 901fce7d7eab..12929760f787 100644 --- a/browser/base/content/test/permissions/browser_autoplay_blocked_slow.sjs +++ b/browser/base/content/test/permissions/browser_autoplay_blocked_slow.sjs @@ -25,8 +25,12 @@ function handleRequest(req, resp) { let timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); resp.write(AUTOPLAY_HTML); - timer.init(() => { - resp.write(""); - resp.finish(); - }, DELAY_MS, Ci.nsITimer.TYPE_ONE_SHOT); + timer.init( + () => { + resp.write(""); + resp.finish(); + }, + DELAY_MS, + Ci.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/browser/base/content/test/protectionsUI/cookieServer.sjs b/browser/base/content/test/protectionsUI/cookieServer.sjs index 91e30de0c10d..44341b9a716e 100644 --- a/browser/base/content/test/protectionsUI/cookieServer.sjs +++ b/browser/base/content/test/protectionsUI/cookieServer.sjs @@ -4,13 +4,17 @@ // A 1x1 PNG image. // Source: https://commons.wikimedia.org/wiki/File:1x1.png (Public Domain) -const IMAGE = atob("iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAA" + - "ACnej3aAAAAAXRSTlMAQObYZgAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII="); +const IMAGE = atob( + "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAA" + + "ACnej3aAAAAAXRSTlMAQObYZgAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=" +); function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 200); - if (request.queryString && - request.queryString.includes("type=image-no-cookie")) { + if ( + request.queryString && + request.queryString.includes("type=image-no-cookie") + ) { response.setHeader("Content-Type", "image/png", false); response.write(IMAGE); } else { diff --git a/browser/base/content/test/referrer/file_referrer_policyserver.sjs b/browser/base/content/test/referrer/file_referrer_policyserver.sjs index 963e0bb77a50..91a8e6cb4e7f 100644 --- a/browser/base/content/test/referrer/file_referrer_policyserver.sjs +++ b/browser/base/content/test/referrer/file_referrer_policyserver.sjs @@ -3,8 +3,7 @@ * Used in browser_referrer_*.js, bug 1113431. * Arguments: ?scheme=http://&policy=origin&rel=noreferrer */ -function handleRequest(request, response) -{ +function handleRequest(request, response) { Components.utils.importGlobalProperties(["URLSearchParams"]); let query = new URLSearchParams(request.queryString); @@ -14,11 +13,14 @@ function handleRequest(request, response) let cross = query.get("cross"); let host = cross ? "example.com" : "test1.example.com"; - let linkUrl = scheme + host + - "/browser/browser/base/content/test/referrer/" + - "file_referrer_testserver.sjs"; - let metaReferrerTag = - policy ? `` : ""; + let linkUrl = + scheme + + host + + "/browser/browser/base/content/test/referrer/" + + "file_referrer_testserver.sjs"; + let metaReferrerTag = policy + ? `` + : ""; let html = ` diff --git a/browser/base/content/test/referrer/file_referrer_policyserver_attr.sjs b/browser/base/content/test/referrer/file_referrer_policyserver_attr.sjs index e5591f8fb3c2..820774fbd51c 100644 --- a/browser/base/content/test/referrer/file_referrer_policyserver_attr.sjs +++ b/browser/base/content/test/referrer/file_referrer_policyserver_attr.sjs @@ -3,8 +3,7 @@ * Used in browser_referrer_*.js, bug 1113431. * Arguments: ?scheme=http://&policy=origin&rel=noreferrer */ -function handleRequest(request, response) -{ +function handleRequest(request, response) { Components.utils.importGlobalProperties(["URLSearchParams"]); let query = new URLSearchParams(request.queryString); @@ -14,12 +13,13 @@ function handleRequest(request, response) let cross = query.get("cross"); let host = cross ? "example.com" : "test1.example.com"; - let linkUrl = scheme + host + - "/browser/browser/base/content/test/referrer/" + - "file_referrer_testserver.sjs"; + let linkUrl = + scheme + + host + + "/browser/browser/base/content/test/referrer/" + + "file_referrer_testserver.sjs"; - let referrerPolicy = - policy ? `referrerpolicy="${policy}"` : ""; + let referrerPolicy = policy ? `referrerpolicy="${policy}"` : ""; let html = ` @@ -28,7 +28,9 @@ function handleRequest(request, response) Test referrer - + referrer test link `; diff --git a/browser/base/content/test/referrer/file_referrer_testserver.sjs b/browser/base/content/test/referrer/file_referrer_testserver.sjs index 0cfc53b2c3e4..b98f62805377 100644 --- a/browser/base/content/test/referrer/file_referrer_testserver.sjs +++ b/browser/base/content/test/referrer/file_referrer_testserver.sjs @@ -2,8 +2,7 @@ * Renders the HTTP Referer header up to the second path slash. * Used in browser_referrer_*.js, bug 1113431. */ -function handleRequest(request, response) -{ +function handleRequest(request, response) { let referrer = ""; try { referrer = request.getHeader("referer"); @@ -12,7 +11,10 @@ function handleRequest(request, response) } // Strip it past the first path slash. Makes tests easier to read. - referrer = referrer.split("/").slice(0, 4).join("/"); + referrer = referrer + .split("/") + .slice(0, 4) + .join("/"); let html = ` diff --git a/browser/base/content/test/siteIdentity/file_bug906190.sjs b/browser/base/content/test/siteIdentity/file_bug906190.sjs index 003b57d745a8..088153d671ed 100644 --- a/browser/base/content/test/siteIdentity/file_bug906190.sjs +++ b/browser/base/content/test/siteIdentity/file_bug906190.sjs @@ -1,9 +1,10 @@ function handleRequest(request, response) { var page = "bug 906190"; - var path = "https://test1.example.com/browser/browser/base/content/test/siteIdentity/"; + var path = + "https://test1.example.com/browser/browser/base/content/test/siteIdentity/"; var url; - if (request.queryString.includes('bad-redirection=1')) { + if (request.queryString.includes("bad-redirection=1")) { url = path + "this_page_does_not_exist.html"; } else { url = path + "file_bug906190_redirected.html"; diff --git a/browser/base/content/test/siteIdentity/test_mcb_redirect.sjs b/browser/base/content/test/siteIdentity/test_mcb_redirect.sjs index a7e3a31021d8..7a2a0f8a0a21 100644 --- a/browser/base/content/test/siteIdentity/test_mcb_redirect.sjs +++ b/browser/base/content/test/siteIdentity/test_mcb_redirect.sjs @@ -1,14 +1,17 @@ function handleRequest(request, response) { - var page = "bug 418354 and bug 1082837"; + var page = + "bug 418354 and bug 1082837"; - if (request.queryString === "script") { - var redirect = "http://example.com/browser/browser/base/content/test/siteIdentity/test_mcb_redirect.js"; + if (request.queryString === "script") { + var redirect = + "http://example.com/browser/browser/base/content/test/siteIdentity/test_mcb_redirect.js"; response.setHeader("Cache-Control", "no-cache", false); } else if (request.queryString === "image_http") { var redirect = "http://example.com/tests/image/test/mochitest/blue.png"; response.setHeader("Cache-Control", "max-age=3600", false); } else if (request.queryString === "image_redirect_http_sjs") { - var redirect = "http://example.com/browser/browser/base/content/test/siteIdentity/test_mcb_redirect.sjs?image_redirect_https"; + var redirect = + "http://example.com/browser/browser/base/content/test/siteIdentity/test_mcb_redirect.sjs?image_redirect_https"; response.setHeader("Cache-Control", "max-age=3600", false); } else if (request.queryString === "image_redirect_https") { var redirect = "https://example.com/tests/image/test/mochitest/blue.png"; diff --git a/browser/components/contextualidentity/test/browser/saveLink.sjs b/browser/components/contextualidentity/test/browser/saveLink.sjs index 728a700eb015..de8d54ebf314 100644 --- a/browser/components/contextualidentity/test/browser/saveLink.sjs +++ b/browser/components/contextualidentity/test/browser/saveLink.sjs @@ -1,6 +1,7 @@ const HTTP_ORIGIN = "http://example.com"; const HTTPS_ORIGIN = "https://example.com"; -const URI_PATH = "/browser/browser/components/contextualidentity/test/browser/saveLink.sjs"; +const URI_PATH = + "/browser/browser/components/contextualidentity/test/browser/saveLink.sjs"; Components.utils.importGlobalProperties(["URLSearchParams"]); @@ -11,7 +12,12 @@ function handleRequest(aRequest, aResponse) { if (params.has("UCI")) { aResponse.setStatusLine(aRequest.httpVersion, 200); aResponse.setHeader("Set-Cookie", "UCI=" + params.get("UCI")); - aResponse.write("this is a link"); + aResponse.write( + "this is a link" + ); return; } @@ -19,7 +25,11 @@ function handleRequest(aRequest, aResponse) { // if we are able to follow it. if (params.has("redirect")) { aResponse.setStatusLine(aRequest.httpVersion, 302, "Found"); - aResponse.setHeader("Location", HTTP_ORIGIN + URI_PATH + "?download=1", false); + aResponse.setHeader( + "Location", + HTTP_ORIGIN + URI_PATH + "?download=1", + false + ); aResponse.write("Redirect!"); return; } diff --git a/browser/components/enterprisepolicies/tests/browser/404.sjs b/browser/components/enterprisepolicies/tests/browser/404.sjs index 9f77c5ae65ac..923e8082b158 100644 --- a/browser/components/enterprisepolicies/tests/browser/404.sjs +++ b/browser/components/enterprisepolicies/tests/browser/404.sjs @@ -1,3 +1,3 @@ -function handleRequest(request, response) { - response.setStatusLine(request.httpVersion, 404, "Not Found"); -} +function handleRequest(request, response) { + response.setStatusLine(request.httpVersion, 404, "Not Found"); +} diff --git a/browser/components/extensions/test/browser/authenticate.sjs b/browser/components/extensions/test/browser/authenticate.sjs index f70cd9f5932e..316489843800 100644 --- a/browser/components/extensions/test/browser/authenticate.sjs +++ b/browser/components/extensions/test/browser/authenticate.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { var match; var requestAuth = true; @@ -9,23 +8,27 @@ function handleRequest(request, response) // at the beginning of the query string. var query = "?" + request.queryString; - var expected_user = "test", expected_pass = "testpass", realm = "mochitest"; + var expected_user = "test", + expected_pass = "testpass", + realm = "mochitest"; // user=xxx match = /[^_]user=([^&]*)/.exec(query); - if (match) + if (match) { expected_user = match[1]; + } // pass=xxx match = /[^_]pass=([^&]*)/.exec(query); - if (match) + if (match) { expected_pass = match[1]; + } // realm=xxx match = /[^_]realm=([^&]*)/.exec(query); - if (match) + if (match) { realm = match[1]; - + } // Look for an authentication header, if any, in the request. // @@ -34,51 +37,59 @@ function handleRequest(request, response) // This test only supports Basic auth. The value sent by the client is // "username:password", obscured with base64 encoding. - var actual_user = "", actual_pass = "", authHeader, authPresent = false; + var actual_user = "", + actual_pass = "", + authHeader, + authPresent = false; if (request.hasHeader("Authorization")) { authPresent = true; authHeader = request.getHeader("Authorization"); match = /Basic (.+)/.exec(authHeader); - if (match.length != 2) - throw new Error("Couldn't parse auth header: " + authHeader); + if (match.length != 2) { + throw new Error("Couldn't parse auth header: " + authHeader); + } var userpass = base64ToString(match[1]); // no atob() :-( match = /(.*):(.*)/.exec(userpass); - if (match.length != 3) - throw new Error("Couldn't decode auth header: " + userpass); + if (match.length != 3) { + throw new Error("Couldn't decode auth header: " + userpass); + } actual_user = match[1]; actual_pass = match[2]; } // Don't request authentication if the credentials we got were what we // expected. - if (expected_user == actual_user && - expected_pass == actual_pass) { + if (expected_user == actual_user && expected_pass == actual_pass) { requestAuth = false; } if (requestAuth) { response.setStatusLine("1.0", 401, "Authentication required"); - response.setHeader("WWW-Authenticate", "basic realm=\"" + realm + "\"", true); + response.setHeader("WWW-Authenticate", 'basic realm="' + realm + '"', true); } else { response.setStatusLine("1.0", 200, "OK"); } response.setHeader("Content-Type", "application/xhtml+xml", false); response.write(""); - response.write("

Login: " + (requestAuth ? "FAIL" : "PASS") + "

\n"); + response.write( + "

Login: " + + (requestAuth ? "FAIL" : "PASS") + + "

\n" + ); response.write("

Auth: " + authHeader + "

\n"); response.write("

User: " + actual_user + "

\n"); response.write("

Pass: " + actual_pass + "

\n"); response.write(""); } - // base64 decoder // // Yoinked from extensions/xml-rpc/src/nsXmlRpcClient.js because btoa() // doesn't seem to exist. :-( /* Convert Base64 data to a string */ +/* eslint-disable prettier/prettier */ const toBinaryTable = [ -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, @@ -89,38 +100,42 @@ const toBinaryTable = [ -1,26,27,28, 29,30,31,32, 33,34,35,36, 37,38,39,40, 41,42,43,44, 45,46,47,48, 49,50,51,-1, -1,-1,-1,-1 ]; -const base64Pad = '='; +/* eslint-enable prettier/prettier */ +const base64Pad = "="; function base64ToString(data) { + var result = ""; + var leftbits = 0; // number of bits decoded, but yet to be appended + var leftdata = 0; // bits decoded, but yet to be appended - var result = ''; - var leftbits = 0; // number of bits decoded, but yet to be appended - var leftdata = 0; // bits decoded, but yet to be appended - - // Convert one by one. - for (var i = 0; i < data.length; i++) { - var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; - var padding = (data[i] == base64Pad); - // Skip illegal characters and whitespace - if (c == -1) continue; - - // Collect data into leftdata, update bitcount - leftdata = (leftdata << 6) | c; - leftbits += 6; - - // If we have 8 or more bits, append 8 bits to the result - if (leftbits >= 8) { - leftbits -= 8; - // Append if not padding. - if (!padding) - result += String.fromCharCode((leftdata >> leftbits) & 0xff); - leftdata &= (1 << leftbits) - 1; - } + // Convert one by one. + for (var i = 0; i < data.length; i++) { + var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; + var padding = data[i] == base64Pad; + // Skip illegal characters and whitespace + if (c == -1) { + continue; } - // If there are any bits left, the base64 string was corrupted - if (leftbits) - throw Components.Exception('Corrupted base64 string'); + // Collect data into leftdata, update bitcount + leftdata = (leftdata << 6) | c; + leftbits += 6; - return result; + // If we have 8 or more bits, append 8 bits to the result + if (leftbits >= 8) { + leftbits -= 8; + // Append if not padding. + if (!padding) { + result += String.fromCharCode((leftdata >> leftbits) & 0xff); + } + leftdata &= (1 << leftbits) - 1; + } + } + + // If there are any bits left, the base64 string was corrupted + if (leftbits) { + throw Components.Exception("Corrupted base64 string"); + } + + return result; } diff --git a/browser/components/extensions/test/browser/file_bypass_cache.sjs b/browser/components/extensions/test/browser/file_bypass_cache.sjs index c91c76b88e98..eed8a6ef4959 100644 --- a/browser/components/extensions/test/browser/file_bypass_cache.sjs +++ b/browser/components/extensions/test/browser/file_bypass_cache.sjs @@ -6,6 +6,8 @@ function handleRequest(request, response) { response.setHeader("Content-Type", "text/plain; charset=UTF-8", false); if (request.hasHeader("pragma") && request.hasHeader("cache-control")) { - response.write(`${request.getHeader("pragma")}:${request.getHeader("cache-control")}`); + response.write( + `${request.getHeader("pragma")}:${request.getHeader("cache-control")}` + ); } -} \ No newline at end of file +} diff --git a/browser/components/extensions/test/browser/file_slowed_document.sjs b/browser/components/extensions/test/browser/file_slowed_document.sjs index bdf36c1cf2b6..8c42fcc96677 100644 --- a/browser/components/extensions/test/browser/file_slowed_document.sjs +++ b/browser/components/extensions/test/browser/file_slowed_document.sjs @@ -11,7 +11,11 @@ const URL = "file_slowed_document.sjs"; const DELAY = 2 * 1000; // Delay two seconds before completing the request. -let nsTimer = Components.Constructor("@mozilla.org/timer;1", "nsITimer", "initWithCallback"); +let nsTimer = Components.Constructor( + "@mozilla.org/timer;1", + "nsITimer", + "initWithCallback" +); let timer; @@ -31,11 +35,15 @@ function handleRequest(request, response) { // Note: We need to store a reference to the timer to prevent it from being // canceled when it's GCed. - timer = new nsTimer(() => { - if (request.queryString.includes("with-iframe")) { - response.write(``); - } - response.write(``); - response.finish(); - }, DELAY, Ci.nsITimer.TYPE_ONE_SHOT); + timer = new nsTimer( + () => { + if (request.queryString.includes("with-iframe")) { + response.write(``); + } + response.write(``); + response.finish(); + }, + DELAY, + Ci.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/browser/components/originattributes/test/browser/file_saveAs.sjs b/browser/components/originattributes/test/browser/file_saveAs.sjs index 7be893bf4711..b0d33f2d14a7 100644 --- a/browser/components/originattributes/test/browser/file_saveAs.sjs +++ b/browser/components/originattributes/test/browser/file_saveAs.sjs @@ -6,7 +6,7 @@ const LINK_PATH = `${URI_PATH}file_saveAs.sjs`; const VIDEO_PATH = `${URI_PATH}file_thirdPartyChild.video.ogv`; // Reusing existing png file for testing. const IMAGE_PATH = `${URI_PATH}file_favicon.png`; -const FRAME_PATH = `${SECOND_ORIGIN}${URI_PATH}file_saveAs.sjs?image=1` +const FRAME_PATH = `${SECOND_ORIGIN}${URI_PATH}file_saveAs.sjs?image=1`; Components.utils.importGlobalProperties(["URLSearchParams"]); diff --git a/browser/components/privatebrowsing/test/browser/title.sjs b/browser/components/privatebrowsing/test/browser/title.sjs index 568e235be192..817f12488899 100644 --- a/browser/components/privatebrowsing/test/browser/title.sjs +++ b/browser/components/privatebrowsing/test/browser/title.sjs @@ -11,10 +11,11 @@ function handleRequest(request, response) { var cookie = "name=value"; var title = "No Cookie"; - if (request.hasHeader("Cookie") && request.getHeader("Cookie") == cookie) + if (request.hasHeader("Cookie") && request.getHeader("Cookie") == cookie) { title = "Cookie"; - else + } else { response.setHeader("Set-Cookie", cookie, false); + } response.write(""); response.write(title); diff --git a/browser/components/resistfingerprinting/test/browser/browser_navigator_header.sjs b/browser/components/resistfingerprinting/test/browser/browser_navigator_header.sjs index 7a6200d7ecb0..db19f83ff101 100644 --- a/browser/components/resistfingerprinting/test/browser/browser_navigator_header.sjs +++ b/browser/components/resistfingerprinting/test/browser/browser_navigator_header.sjs @@ -8,4 +8,4 @@ function handleRequest(request, response) { } else { response.write("no user agent header"); } -} \ No newline at end of file +} diff --git a/browser/components/resistfingerprinting/test/browser/coop_header.sjs b/browser/components/resistfingerprinting/test/browser/coop_header.sjs index 66be3812f437..1582f5111ba9 100644 --- a/browser/components/resistfingerprinting/test/browser/coop_header.sjs +++ b/browser/components/resistfingerprinting/test/browser/coop_header.sjs @@ -55,8 +55,7 @@ const WORKER = ` }; `; -function handleRequest(request, response) -{ +function handleRequest(request, response) { Components.utils.importGlobalProperties(["URLSearchParams"]); let query = new URLSearchParams(request.queryString); diff --git a/browser/components/sessionstore/test/browser_637020_slow.sjs b/browser/components/sessionstore/test/browser_637020_slow.sjs index 63953b762fa9..abb1dee829c5 100644 --- a/browser/components/sessionstore/test/browser_637020_slow.sjs +++ b/browser/components/sessionstore/test/browser_637020_slow.sjs @@ -11,8 +11,12 @@ function handleRequest(req, resp) { resp.setHeader("Content-Type", "text/html;charset=utf-8", false); timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); - timer.init(() => { - resp.write("hi"); - resp.finish(); - }, DELAY_MS, Ci.nsITimer.TYPE_ONE_SHOT); + timer.init( + () => { + resp.write("hi"); + resp.finish(); + }, + DELAY_MS, + Ci.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/browser/components/sessionstore/test/browser_sessionHistory_slow.sjs b/browser/components/sessionstore/test/browser_sessionHistory_slow.sjs index 63953b762fa9..abb1dee829c5 100644 --- a/browser/components/sessionstore/test/browser_sessionHistory_slow.sjs +++ b/browser/components/sessionstore/test/browser_sessionHistory_slow.sjs @@ -11,8 +11,12 @@ function handleRequest(req, resp) { resp.setHeader("Content-Type", "text/html;charset=utf-8", false); timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); - timer.init(() => { - resp.write("hi"); - resp.finish(); - }, DELAY_MS, Ci.nsITimer.TYPE_ONE_SHOT); + timer.init( + () => { + resp.write("hi"); + resp.finish(); + }, + DELAY_MS, + Ci.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/browser/components/sessionstore/test/coopHeaderCommon.sjs b/browser/components/sessionstore/test/coopHeaderCommon.sjs index fc3059b2350d..94a6c2512fa9 100644 --- a/browser/components/sessionstore/test/coopHeaderCommon.sjs +++ b/browser/components/sessionstore/test/coopHeaderCommon.sjs @@ -1,6 +1,6 @@ function handleRequest(request, response) { Components.utils.importGlobalProperties(["URLSearchParams"]); - Components.utils.import("resource://gre/modules/NetUtil.jsm"); + let { NetUtil } = ChromeUtils.import("resource://gre/modules/NetUtil.jsm"); let query = new URLSearchParams(request.queryString); response.setHeader("Cross-Origin-Opener-Policy", "same-origin", false); @@ -15,8 +15,9 @@ function handleRequest(request, response) { }); // Set up the file streams to read in the file as UTF-8 - let fstream = Components.classes["@mozilla.org/network/file-input-stream;1"]. - createInstance(Components.interfaces.nsIFileInputStream); + let fstream = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); fstream.init(file, -1, 0, 0); diff --git a/browser/components/translation/test/bing.sjs b/browser/components/translation/test/bing.sjs index 2545b8088a2c..83aaec83308f 100644 --- a/browser/components/translation/test/bing.sjs +++ b/browser/components/translation/test/bing.sjs @@ -5,9 +5,11 @@ "use strict"; const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); Cu.importGlobalProperties(["DOMParser"]); function handleRequest(req, res) { @@ -33,7 +35,7 @@ const statusCodes = { 405: "Method Not Allowed", 500: "Internal Server Error", 501: "Not Implemented", - 503: "Service Unavailable" + 503: "Service Unavailable", }; function HTTPError(code = 500, message) { @@ -46,8 +48,10 @@ HTTPError.prototype.constructor = HTTPError; function sendError(res, err) { if (!(err instanceof HTTPError)) { - err = new HTTPError(typeof err == "number" ? err : 500, - err.message || typeof err == "string" ? err : ""); + err = new HTTPError( + typeof err == "number" ? err : 500, + err.message || typeof err == "string" ? err : "" + ); } res.setStatusLine("1.1", err.code, err.name); res.write(err.message); @@ -57,8 +61,9 @@ function parseQuery(query) { let ret = {}; for (let param of query.replace(/^[?&]/, "").split("&")) { param = param.split("="); - if (!param[0]) + if (!param[0]) { continue; + } ret[unescape(param[0])] = unescape(param[1]); } return ret; @@ -69,22 +74,23 @@ function getRequestBody(req) { let bytes = []; let body = new BinaryInputStream(req.bodyInputStream); - while ((avail = body.available()) > 0) + while ((avail = body.available()) > 0) { Array.prototype.push.apply(bytes, body.readByteArray(avail)); + } return String.fromCharCode.apply(null, bytes); } function sha1(str) { - let converter = Cc["@mozilla.org/intl/scriptableunicodeconverter"] - .createInstance(Ci.nsIScriptableUnicodeConverter); + let converter = Cc[ + "@mozilla.org/intl/scriptableunicodeconverter" + ].createInstance(Ci.nsIScriptableUnicodeConverter); converter.charset = "UTF-8"; // `result` is an out parameter, `result.value` will contain the array length. let result = {}; // `data` is an array of bytes. let data = converter.convertToByteArray(str, result); - let ch = Cc["@mozilla.org/security/hash;1"] - .createInstance(Ci.nsICryptoHash); + let ch = Cc["@mozilla.org/security/hash;1"].createInstance(Ci.nsICryptoHash); ch.init(ch.SHA1); ch.update(data, data.length); let hash = ch.finish(false); @@ -101,19 +107,22 @@ function sha1(str) { function parseXml(body) { let parser = new DOMParser(); let xml = parser.parseFromString(body, "text/xml"); - if (xml.documentElement.localName == "parsererror") + if (xml.documentElement.localName == "parsererror") { throw new Error("Invalid XML"); + } return xml; } function getInputStream(path) { let file = Cc["@mozilla.org/file/directory_service;1"] - .getService(Ci.nsIProperties) - .get("CurWorkD", Ci.nsIFile); - for (let part of path.split("/")) + .getService(Ci.nsIProperties) + .get("CurWorkD", Ci.nsIFile); + for (let part of path.split("/")) { file.append(part); - let fileStream = Cc["@mozilla.org/network/file-input-stream;1"] - .createInstance(Ci.nsIFileInputStream); + } + let fileStream = Cc[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Ci.nsIFileInputStream); fileStream.init(file, 1, 0, false); return fileStream; } @@ -122,25 +131,33 @@ function checkAuth(req) { let err = new Error("Authorization failed"); err.code = 401; - if (!req.hasHeader("Authorization")) + if (!req.hasHeader("Authorization")) { throw new HTTPError(401, "No Authorization header provided."); + } let auth = req.getHeader("Authorization"); - if (!auth.startsWith("Bearer ")) - throw new HTTPError(401, "Invalid Authorization header content: '" + auth + "'"); + if (!auth.startsWith("Bearer ")) { + throw new HTTPError( + 401, + "Invalid Authorization header content: '" + auth + "'" + ); + } // Rejecting inactive subscriptions. if (auth.includes("inactive")) { - const INACTIVE_STATE_RESPONSE = "<html><body><h1>TranslateApiException</h1><p>Method: TranslateArray()</p><p>Message: The Azure Market Place Translator Subscription associated with the request credentials is not in an active state.</p><code></code><p>message id=5641.V2_Rest.TranslateArray.48CC6470</p></body></html>"; + const INACTIVE_STATE_RESPONSE = + "<html><body><h1>TranslateApiException</h1><p>Method: TranslateArray()</p><p>Message: The Azure Market Place Translator Subscription associated with the request credentials is not in an active state.</p><code></code><p>message id=5641.V2_Rest.TranslateArray.48CC6470</p></body></html>"; throw new HTTPError(401, INACTIVE_STATE_RESPONSE); } - } function reallyHandleRequest(req, res) { log("method: " + req.method); if (req.method != "POST") { - sendError(res, "Bing only deals with POST requests, not '" + req.method + "'."); + sendError( + res, + "Bing only deals with POST requests, not '" + req.method + "'." + ); return; } @@ -148,7 +165,9 @@ function reallyHandleRequest(req, res) { log("body: " + body); // First, we'll see if we're dealing with an XML body: - let contentType = req.hasHeader("Content-Type") ? req.getHeader("Content-Type") : null; + let contentType = req.hasHeader("Content-Type") + ? req.getHeader("Content-Type") + : null; log("contentType: " + contentType); if (contentType.startsWith("text/xml")) { @@ -161,10 +180,11 @@ function reallyHandleRequest(req, res) { let method = xml.documentElement.localName; log("invoking method: " + method); // If the requested method is supported, delegate it to its handler. - if (methodHandlers[method]) + if (methodHandlers[method]) { methodHandlers[method](res, xml); - else + } else { throw new HTTPError(501); + } } catch (ex) { sendError(res, ex, ex.code); } @@ -173,15 +193,16 @@ function reallyHandleRequest(req, res) { let params = parseQuery(body); // Delegate an authentication request to the correct handler. - if ("grant_type" in params && params.grant_type == "client_credentials") + if ("grant_type" in params && params.grant_type == "client_credentials") { methodHandlers.authenticate(res, params); - else + } else { sendError(res, 501); + } } } const methodHandlers = { - authenticate: function(res, params) { + authenticate(res, params) { // Validate a few required parameters. if (params.scope != "http://api.microsofttranslator.com") { sendError(res, "Invalid scope."); @@ -198,16 +219,16 @@ const methodHandlers = { // Defines the tokens for certain client ids. const TOKEN_MAP = { - 'testInactive' : 'inactive', - 'testClient' : 'test' + testInactive: "inactive", + testClient: "test", }; - let token = 'test'; // Default token. - if((params.client_id in TOKEN_MAP)){ + let token = "test"; // Default token. + if (params.client_id in TOKEN_MAP) { token = TOKEN_MAP[params.client_id]; } let content = JSON.stringify({ access_token: token, - expires_in: 600 + expires_in: 600, }); res.setStatusLine("1.1", 200, "OK"); @@ -216,9 +237,9 @@ const methodHandlers = { res.write(content); }, - TranslateArrayRequest: function(res, xml, body) { + TranslateArrayRequest(res, xml, body) { let from = xml.querySelector("From").firstChild.nodeValue; - let to = xml.querySelector("To").firstChild.nodeValue + let to = xml.querySelector("To").firstChild.nodeValue; log("translating from '" + from + "' to '" + to + "'"); res.setStatusLine("1.1", 200, "OK"); @@ -227,8 +248,11 @@ const methodHandlers = { let hash = sha1(body).substr(0, 10); log("SHA1 hash of content: " + hash); let inputStream = getInputStream( - "browser/browser/components/translation/test/fixtures/result-" + hash + ".txt"); + "browser/browser/components/translation/test/fixtures/result-" + + hash + + ".txt" + ); res.bodyOutputStream.writeFrom(inputStream, inputStream.available()); inputStream.close(); - } + }, }; diff --git a/browser/components/translation/test/yandex.sjs b/browser/components/translation/test/yandex.sjs index 62a4d64d307f..84c413340921 100644 --- a/browser/components/translation/test/yandex.sjs +++ b/browser/components/translation/test/yandex.sjs @@ -5,9 +5,11 @@ "use strict"; const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); function handleRequest(req, res) { try { @@ -34,7 +36,7 @@ const statusCodes = { 422: "The text could not be translated", 500: "Internal Server Error", 501: "The specified translation direction is not supported", - 503: "Service Unavailable" + 503: "Service Unavailable", }; function HTTPError(code = 500, message) { @@ -47,8 +49,10 @@ HTTPError.prototype.constructor = HTTPError; function sendError(res, err) { if (!(err instanceof HTTPError)) { - err = new HTTPError(typeof err == "number" ? err : 500, - err.message || typeof err == "string" ? err : ""); + err = new HTTPError( + typeof err == "number" ? err : 500, + err.message || typeof err == "string" ? err : "" + ); } res.setStatusLine("1.1", err.code, err.name); res.write(err.message); @@ -58,19 +62,22 @@ function sendError(res, err) { // http://stackoverflow.com/questions/901115/how-can-i-get-query-string-values-in-javascript function parseQuery(query) { let match, - params = {}, - pl = /\+/g, - search = /([^&=]+)=?([^&]*)/g, - decode = function (s) { return decodeURIComponent(s.replace(pl, " ")); }; + params = {}, + pl = /\+/g, + search = /([^&=]+)=?([^&]*)/g, + decode = function(s) { + return decodeURIComponent(s.replace(pl, " ")); + }; - while (match = search.exec(query)) { + while ((match = search.exec(query))) { let k = decode(match[1]), - v = decode(match[2]); + v = decode(match[2]); if (k in params) { - if(params[k] instanceof Array) + if (params[k] instanceof Array) { params[k].push(v); - else + } else { params[k] = [params[k], v]; + } } else { params[k] = v; } @@ -80,15 +87,15 @@ function parseQuery(query) { } function sha1(str) { - let converter = Cc["@mozilla.org/intl/scriptableunicodeconverter"] - .createInstance(Ci.nsIScriptableUnicodeConverter); + let converter = Cc[ + "@mozilla.org/intl/scriptableunicodeconverter" + ].createInstance(Ci.nsIScriptableUnicodeConverter); converter.charset = "UTF-8"; // `result` is an out parameter, `result.value` will contain the array length. let result = {}; // `data` is an array of bytes. let data = converter.convertToByteArray(str, result); - let ch = Cc["@mozilla.org/security/hash;1"] - .createInstance(Ci.nsICryptoHash); + let ch = Cc["@mozilla.org/security/hash;1"].createInstance(Ci.nsICryptoHash); ch.init(ch.SHA1); ch.update(data, data.length); let hash = ch.finish(false); @@ -107,20 +114,23 @@ function getRequestBody(req) { let bytes = []; let body = new BinaryInputStream(req.bodyInputStream); - while ((avail = body.available()) > 0) + while ((avail = body.available()) > 0) { Array.prototype.push.apply(bytes, body.readByteArray(avail)); + } return String.fromCharCode.apply(null, bytes); } function getInputStream(path) { let file = Cc["@mozilla.org/file/directory_service;1"] - .getService(Ci.nsIProperties) - .get("CurWorkD", Ci.nsIFile); - for (let part of path.split("/")) + .getService(Ci.nsIProperties) + .get("CurWorkD", Ci.nsIFile); + for (let part of path.split("/")) { file.append(part); - let fileStream = Cc["@mozilla.org/network/file-input-stream;1"] - .createInstance(Ci.nsIFileInputStream); + } + let fileStream = Cc[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Ci.nsIFileInputStream); fileStream.init(file, 1, 0, false); return fileStream; } @@ -138,33 +148,34 @@ function getInputStream(path) { * If any other key is used the server reponds with 401 error code. */ function checkAuth(params) { - if(!("key" in params)) + if (!("key" in params)) { throw new HTTPError(400); + } let key = params.key; - if(key === "yandexValidKey") + if (key === "yandexValidKey") { return true; + } let invalidKeys = { - "yandexInvalidKey" : 401, - "yandexBlockedKey" : 402, - "yandexOutOfRequestsKey" : 403, - "yandexOutOfCharsKey" : 404, + yandexInvalidKey: 401, + yandexBlockedKey: 402, + yandexOutOfRequestsKey: 403, + yandexOutOfCharsKey: 404, }; - if(key in invalidKeys) + if (key in invalidKeys) { throw new HTTPError(invalidKeys[key]); + } throw new HTTPError(401); } function reallyHandleRequest(req, res) { - try { - // Preparing the query parameters. let params = {}; - if(req.method == 'POST') { + if (req.method == "POST") { params = parseQuery(getRequestBody(req)); } @@ -172,28 +183,28 @@ function reallyHandleRequest(req, res) { log(JSON.stringify(params)); checkAuth(params); - methodHandlers['translate'](res, params); - + methodHandlers.translate(res, params); } catch (ex) { sendError(res, ex, ex.code); } - } const methodHandlers = { - translate: function(res, params) { + translate(res, params) { res.setStatusLine("1.1", 200, "OK"); res.setHeader("Content-Type", "application/json"); let hash = sha1(JSON.stringify(params)).substr(0, 10); log("SHA1 hash of content: " + hash); - let fixture = "browser/browser/components/translation/test/fixtures/result-yandex-" + hash + ".json"; + let fixture = + "browser/browser/components/translation/test/fixtures/result-yandex-" + + hash + + ".json"; log("PATH: " + fixture); let inputStream = getInputStream(fixture); res.bodyOutputStream.writeFrom(inputStream, inputStream.available()); inputStream.close(); - } - + }, }; diff --git a/browser/components/urlbar/tests/browser/authenticate.sjs b/browser/components/urlbar/tests/browser/authenticate.sjs index 58da655cf98f..6c98ae03c560 100644 --- a/browser/components/urlbar/tests/browser/authenticate.sjs +++ b/browser/components/urlbar/tests/browser/authenticate.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { try { reallyHandleRequest(request, response); } catch (e) { @@ -8,10 +7,10 @@ function handleRequest(request, response) } } - function reallyHandleRequest(request, response) { var match; - var requestAuth = true, requestProxyAuth = true; + var requestAuth = true, + requestProxyAuth = true; // Allow the caller to drive how authentication is processed via the query. // Eg, http://localhost:8888/authenticate.sjs?user=foo&realm=bar @@ -19,133 +18,178 @@ function reallyHandleRequest(request, response) { // at the beginning of the query string. var query = "?" + request.queryString; - var expected_user = "", expected_pass = "", realm = "mochitest"; - var proxy_expected_user = "", proxy_expected_pass = "", proxy_realm = "mochi-proxy"; - var huge = false, plugin = false, anonymous = false; + var expected_user = "", + expected_pass = "", + realm = "mochitest"; + var proxy_expected_user = "", + proxy_expected_pass = "", + proxy_realm = "mochi-proxy"; + var huge = false, + plugin = false, + anonymous = false; var authHeaderCount = 1; // user=xxx match = /[^_]user=([^&]*)/.exec(query); - if (match) + if (match) { expected_user = match[1]; + } // pass=xxx match = /[^_]pass=([^&]*)/.exec(query); - if (match) + if (match) { expected_pass = match[1]; + } // realm=xxx match = /[^_]realm=([^&]*)/.exec(query); - if (match) + if (match) { realm = match[1]; + } // proxy_user=xxx match = /proxy_user=([^&]*)/.exec(query); - if (match) + if (match) { proxy_expected_user = match[1]; + } // proxy_pass=xxx match = /proxy_pass=([^&]*)/.exec(query); - if (match) + if (match) { proxy_expected_pass = match[1]; + } // proxy_realm=xxx match = /proxy_realm=([^&]*)/.exec(query); - if (match) + if (match) { proxy_realm = match[1]; + } // huge=1 match = /huge=1/.exec(query); - if (match) + if (match) { huge = true; + } // plugin=1 match = /plugin=1/.exec(query); - if (match) + if (match) { plugin = true; + } // multiple=1 match = /multiple=([^&]*)/.exec(query); - if (match) - authHeaderCount = match[1]+0; + if (match) { + authHeaderCount = match[1] + 0; + } // anonymous=1 match = /anonymous=1/.exec(query); - if (match) + if (match) { anonymous = true; + } // Look for an authentication header, if any, in the request. // // EG: Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ== - // + // // This test only supports Basic auth. The value sent by the client is // "username:password", obscured with base64 encoding. - var actual_user = "", actual_pass = "", authHeader, authPresent = false; + var actual_user = "", + actual_pass = "", + authHeader, + authPresent = false; if (request.hasHeader("Authorization")) { authPresent = true; authHeader = request.getHeader("Authorization"); match = /Basic (.+)/.exec(authHeader); - if (match.length != 2) - throw "Couldn't parse auth header: " + authHeader; + if (match.length != 2) { + throw "Couldn't parse auth header: " + authHeader; + } var userpass = base64ToString(match[1]); // no atob() :-( match = /(.*):(.*)/.exec(userpass); - if (match.length != 3) - throw "Couldn't decode auth header: " + userpass; + if (match.length != 3) { + throw "Couldn't decode auth header: " + userpass; + } actual_user = match[1]; actual_pass = match[2]; - } + } - var proxy_actual_user = "", proxy_actual_pass = ""; + var proxy_actual_user = "", + proxy_actual_pass = ""; if (request.hasHeader("Proxy-Authorization")) { authHeader = request.getHeader("Proxy-Authorization"); match = /Basic (.+)/.exec(authHeader); - if (match.length != 2) - throw "Couldn't parse auth header: " + authHeader; + if (match.length != 2) { + throw "Couldn't parse auth header: " + authHeader; + } var userpass = base64ToString(match[1]); // no atob() :-( match = /(.*):(.*)/.exec(userpass); - if (match.length != 3) - throw "Couldn't decode auth header: " + userpass; + if (match.length != 3) { + throw "Couldn't decode auth header: " + userpass; + } proxy_actual_user = match[1]; proxy_actual_pass = match[2]; } // Don't request authentication if the credentials we got were what we // expected. - if (expected_user == actual_user && - expected_pass == actual_pass) { + if (expected_user == actual_user && expected_pass == actual_pass) { requestAuth = false; } - if (proxy_expected_user == proxy_actual_user && - proxy_expected_pass == proxy_actual_pass) { + if ( + proxy_expected_user == proxy_actual_user && + proxy_expected_pass == proxy_actual_pass + ) { requestProxyAuth = false; } if (anonymous) { if (authPresent) { - response.setStatusLine("1.0", 400, "Unexpected authorization header found"); + response.setStatusLine( + "1.0", + 400, + "Unexpected authorization header found" + ); } else { response.setStatusLine("1.0", 200, "Authorization header not found"); } - } else { - if (requestProxyAuth) { - response.setStatusLine("1.0", 407, "Proxy authentication required"); - for (i = 0; i < authHeaderCount; ++i) - response.setHeader("Proxy-Authenticate", "basic realm=\"" + proxy_realm + "\"", true); - } else if (requestAuth) { - response.setStatusLine("1.0", 401, "Authentication required"); - for (i = 0; i < authHeaderCount; ++i) - response.setHeader("WWW-Authenticate", "basic realm=\"" + realm + "\"", true); - } else { - response.setStatusLine("1.0", 200, "OK"); + } else if (requestProxyAuth) { + response.setStatusLine("1.0", 407, "Proxy authentication required"); + for (i = 0; i < authHeaderCount; ++i) { + response.setHeader( + "Proxy-Authenticate", + 'basic realm="' + proxy_realm + '"', + true + ); } + } else if (requestAuth) { + response.setStatusLine("1.0", 401, "Authentication required"); + for (i = 0; i < authHeaderCount; ++i) { + response.setHeader( + "WWW-Authenticate", + 'basic realm="' + realm + '"', + true + ); + } + } else { + response.setStatusLine("1.0", 200, "OK"); } response.setHeader("Content-Type", "application/xhtml+xml", false); response.write("<html xmlns='http://www.w3.org/1999/xhtml'>"); - response.write("<p>Login: <span id='ok'>" + (requestAuth ? "FAIL" : "PASS") + "</span></p>\n"); - response.write("<p>Proxy: <span id='proxy'>" + (requestProxyAuth ? "FAIL" : "PASS") + "</span></p>\n"); + response.write( + "<p>Login: <span id='ok'>" + + (requestAuth ? "FAIL" : "PASS") + + "</span></p>\n" + ); + response.write( + "<p>Proxy: <span id='proxy'>" + + (requestProxyAuth ? "FAIL" : "PASS") + + "</span></p>\n" + ); response.write("<p>Auth: <span id='auth'>" + authHeader + "</span></p>\n"); response.write("<p>User: <span id='user'>" + actual_user + "</span></p>\n"); response.write("<p>Pass: <span id='pass'>" + actual_pass + "</span></p>\n"); @@ -156,23 +200,27 @@ function reallyHandleRequest(request, response) { response.write("123456789\n"); } response.write("</div>"); - response.write("<span id='footnote'>This is a footnote after the huge content fill</span>"); + response.write( + "<span id='footnote'>This is a footnote after the huge content fill</span>" + ); } if (plugin) { - response.write("<embed id='embedtest' style='width: 400px; height: 100px;' " + - "type='application/x-test'></embed>\n"); + response.write( + "<embed id='embedtest' style='width: 400px; height: 100px;' " + + "type='application/x-test'></embed>\n" + ); } response.write("</html>"); } - // base64 decoder // // Yoinked from extensions/xml-rpc/src/nsXmlRpcClient.js because btoa() // doesn't seem to exist. :-( /* Convert Base64 data to a string */ +/* eslint-disable prettier/prettier */ const toBinaryTable = [ -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, @@ -183,38 +231,42 @@ const toBinaryTable = [ -1,26,27,28, 29,30,31,32, 33,34,35,36, 37,38,39,40, 41,42,43,44, 45,46,47,48, 49,50,51,-1, -1,-1,-1,-1 ]; -const base64Pad = '='; +/* eslint-enable prettier/prettier */ +const base64Pad = "="; function base64ToString(data) { + var result = ""; + var leftbits = 0; // number of bits decoded, but yet to be appended + var leftdata = 0; // bits decoded, but yet to be appended - var result = ''; - var leftbits = 0; // number of bits decoded, but yet to be appended - var leftdata = 0; // bits decoded, but yet to be appended - - // Convert one by one. - for (var i = 0; i < data.length; i++) { - var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; - var padding = (data[i] == base64Pad); - // Skip illegal characters and whitespace - if (c == -1) continue; - - // Collect data into leftdata, update bitcount - leftdata = (leftdata << 6) | c; - leftbits += 6; - - // If we have 8 or more bits, append 8 bits to the result - if (leftbits >= 8) { - leftbits -= 8; - // Append if not padding. - if (!padding) - result += String.fromCharCode((leftdata >> leftbits) & 0xff); - leftdata &= (1 << leftbits) - 1; - } + // Convert one by one. + for (var i = 0; i < data.length; i++) { + var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; + var padding = data[i] == base64Pad; + // Skip illegal characters and whitespace + if (c == -1) { + continue; } - // If there are any bits left, the base64 string was corrupted - if (leftbits) - throw Components.Exception('Corrupted base64 string'); + // Collect data into leftdata, update bitcount + leftdata = (leftdata << 6) | c; + leftbits += 6; - return result; + // If we have 8 or more bits, append 8 bits to the result + if (leftbits >= 8) { + leftbits -= 8; + // Append if not padding. + if (!padding) { + result += String.fromCharCode((leftdata >> leftbits) & 0xff); + } + leftdata &= (1 << leftbits) - 1; + } + } + + // If there are any bits left, the base64 string was corrupted + if (leftbits) { + throw Components.Exception("Corrupted base64 string"); + } + + return result; } diff --git a/browser/components/urlbar/tests/browser/print_postdata.sjs b/browser/components/urlbar/tests/browser/print_postdata.sjs index 4175a248055c..0e3ef38419cb 100644 --- a/browser/components/urlbar/tests/browser/print_postdata.sjs +++ b/browser/components/urlbar/tests/browser/print_postdata.sjs @@ -1,7 +1,9 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); function handleRequest(request, response) { response.setHeader("Content-Type", "text/plain", false); @@ -13,8 +15,9 @@ function handleRequest(request, response) { var avail; var bytes = []; - while ((avail = body.available()) > 0) + while ((avail = body.available()) > 0) { Array.prototype.push.apply(bytes, body.readByteArray(avail)); + } var data = String.fromCharCode.apply(null, bytes); response.bodyOutputStream.write(data, data.length); diff --git a/browser/components/urlbar/tests/browser/redirect_error.sjs b/browser/components/urlbar/tests/browser/redirect_error.sjs index 64c6f143b054..a3937b0e7a3a 100644 --- a/browser/components/urlbar/tests/browser/redirect_error.sjs +++ b/browser/components/urlbar/tests/browser/redirect_error.sjs @@ -5,12 +5,12 @@ const REDIRECT_TO = "https://www.bank1.com/"; // Bad-cert host. function handleRequest(aRequest, aResponse) { - // Set HTTP Status - aResponse.setStatusLine(aRequest.httpVersion, 301, "Moved Permanently"); + // Set HTTP Status + aResponse.setStatusLine(aRequest.httpVersion, 301, "Moved Permanently"); - // Set redirect URI, mirroring the hash value. - let hash = (/\#.+/.test(aRequest.path))? - "#" + aRequest.path.split("#")[1]: - ""; - aResponse.setHeader("Location", REDIRECT_TO + hash); + // Set redirect URI, mirroring the hash value. + let hash = /\#.+/.test(aRequest.path) + ? "#" + aRequest.path.split("#")[1] + : ""; + aResponse.setHeader("Location", REDIRECT_TO + hash); } diff --git a/browser/components/urlbar/tests/browser/searchSuggestionEngine.sjs b/browser/components/urlbar/tests/browser/searchSuggestionEngine.sjs index 770474e7455a..145392fcf2ee 100644 --- a/browser/components/urlbar/tests/browser/searchSuggestionEngine.sjs +++ b/browser/components/urlbar/tests/browser/searchSuggestionEngine.sjs @@ -18,15 +18,19 @@ function handleRequest(req, resp) { return memo; }, {}); - let timeout = parseInt(params["timeout"]); + let timeout = parseInt(params.timeout); if (timeout) { // Write the response after a timeout. resp.processAsync(); gTimer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); - gTimer.init(() => { - writeResponse(params, resp); - resp.finish(); - }, timeout, Ci.nsITimer.TYPE_ONE_SHOT); + gTimer.init( + () => { + writeResponse(params, resp); + resp.finish(); + }, + timeout, + Ci.nsITimer.TYPE_ONE_SHOT + ); return; } @@ -36,14 +40,14 @@ function handleRequest(req, resp) { function writeResponse(params, resp) { // Echo back the search string with "foo" and "bar" appended. let suffixes = ["foo", "bar"]; - if (params["count"]) { + if (params.count) { // Add more suffixes. let serial = 0; - while (suffixes.length < params["count"]) { + while (suffixes.length < params.count) { suffixes.push(++serial); } } - let data = [params["query"], suffixes.map(s => params["query"] + s)]; + let data = [params.query, suffixes.map(s => params.query + s)]; resp.setHeader("Content-Type", "application/json", false); resp.write(JSON.stringify(data)); } diff --git a/caps/tests/mochitest/file_bug1367586-redirect.sjs b/caps/tests/mochitest/file_bug1367586-redirect.sjs index 0f99404e8739..12a980155f9b 100644 --- a/caps/tests/mochitest/file_bug1367586-redirect.sjs +++ b/caps/tests/mochitest/file_bug1367586-redirect.sjs @@ -1,5 +1,8 @@ function handleRequest(aRequest, aResponse) { - aResponse.setStatusLine(aRequest.httpVersion, 302, "Moved"); - aResponse.setHeader("Location", "http://mochi.test:8888/tests/caps/tests/mochitest/file_bug1367586-target.html"); - aResponse.write("To be redirected to target"); + aResponse.setStatusLine(aRequest.httpVersion, 302, "Moved"); + aResponse.setHeader( + "Location", + "http://mochi.test:8888/tests/caps/tests/mochitest/file_bug1367586-target.html" + ); + aResponse.write("To be redirected to target"); } diff --git a/devtools/client/framework/test/browser_toolbox_options_disable_cache.css.sjs b/devtools/client/framework/test/browser_toolbox_options_disable_cache.css.sjs index 59012aec8856..0b5932ca02a8 100644 --- a/devtools/client/framework/test/browser_toolbox_options_disable_cache.css.sjs +++ b/devtools/client/framework/test/browser_toolbox_options_disable_cache.css.sjs @@ -1,9 +1,9 @@ - /* Any copyright is dedicated to the Public Domain. +/* Any copyright is dedicated to the Public Domain. http://creativecommons.org/publicdomain/zero/1.0/ */ function handleRequest(request, response) { // This returns always new and different CSS content. - const page = `body::before { content: "${ Date.now() }"; }`; + const page = `body::before { content: "${Date.now()}"; }`; response.setHeader("Content-Type", "text/css; charset=utf-8", false); response.setHeader("Content-Length", page.length + "", false); response.write(page); diff --git a/devtools/client/framework/test/browser_toolbox_options_disable_cache.sjs b/devtools/client/framework/test/browser_toolbox_options_disable_cache.sjs index c6c336981a01..e26d7ae53faa 100644 --- a/devtools/client/framework/test/browser_toolbox_options_disable_cache.sjs +++ b/devtools/client/framework/test/browser_toolbox_options_disable_cache.sjs @@ -1,20 +1,22 @@ - /* Any copyright is dedicated to the Public Domain. +/* Any copyright is dedicated to the Public Domain. http://creativecommons.org/publicdomain/zero/1.0/ */ function handleRequest(request, response) { - let Etag = '"4d881ab-b03-435f0a0f9ef00"'; - let IfNoneMatch = request.hasHeader("If-None-Match") - ? request.getHeader("If-None-Match") - : ""; + const Etag = '"4d881ab-b03-435f0a0f9ef00"'; + const IfNoneMatch = request.hasHeader("If-None-Match") + ? request.getHeader("If-None-Match") + : ""; - let guid = 'xxxxxxxx-xxxx-xxxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) { - let r = Math.random() * 16 | 0; - let v = c === "x" ? r : (r & 0x3 | 0x8); + const guid = "xxxxxxxx-xxxx-xxxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function( + c + ) { + const r = (Math.random() * 16) | 0; + const v = c === "x" ? r : (r & 0x3) | 0x8; return v.toString(16); }); - let page = "<!DOCTYPE html><html><body><h1>" + guid + "</h1></body></html>"; + const page = "<!DOCTYPE html><html><body><h1>" + guid + "</h1></body></html>"; response.setHeader("Etag", Etag, false); diff --git a/devtools/client/framework/test/sjs_code_bundle_reload_map.sjs b/devtools/client/framework/test/sjs_code_bundle_reload_map.sjs index 40f62034aa72..b5028f228727 100644 --- a/devtools/client/framework/test/sjs_code_bundle_reload_map.sjs +++ b/devtools/client/framework/test/sjs_code_bundle_reload_map.sjs @@ -13,12 +13,15 @@ function handleRequest(request, response) { response.setHeader("Access-Control-Allow-Origin", "*", false); // Redirect to a different file each time. - let counter = 1 + (+getState("counter") % 2); + const counter = 1 + (+getState("counter") % 2); - let index = request.path.lastIndexOf("/"); - let newPath = request.path.substr(0, index + 1) + - "code_bundle_reload_" + counter + ".js.map"; - let newUrl = request.scheme + "://" + request.host + newPath; + const index = request.path.lastIndexOf("/"); + const newPath = + request.path.substr(0, index + 1) + + "code_bundle_reload_" + + counter + + ".js.map"; + const newUrl = request.scheme + "://" + request.host + newPath; response.setStatusLine(request.httpVersion, 302, "Found"); response.setHeader("Location", newUrl); diff --git a/devtools/client/framework/test/sjs_code_reload.sjs b/devtools/client/framework/test/sjs_code_reload.sjs index b48884e3df5f..9d24abe6482a 100644 --- a/devtools/client/framework/test/sjs_code_reload.sjs +++ b/devtools/client/framework/test/sjs_code_reload.sjs @@ -13,12 +13,12 @@ function handleRequest(request, response) { response.setHeader("Access-Control-Allow-Origin", "*", false); // Redirect to a different file each time. - let counter = 1 + (+getState("counter") % 2); + const counter = 1 + (+getState("counter") % 2); - let index = request.path.lastIndexOf("/"); - let newPath = request.path.substr(0, index + 1) + - "code_bundle_reload_" + counter + ".js"; - let newUrl = request.scheme + "://" + request.host + newPath; + const index = request.path.lastIndexOf("/"); + const newPath = + request.path.substr(0, index + 1) + "code_bundle_reload_" + counter + ".js"; + const newUrl = request.scheme + "://" + request.host + newPath; response.setStatusLine(request.httpVersion, 302, "Found"); response.setHeader("Location", newUrl); diff --git a/devtools/client/jsonview/test/chunked_json.sjs b/devtools/client/jsonview/test/chunked_json.sjs index 498789124bda..67db17d3d066 100644 --- a/devtools/client/jsonview/test/chunked_json.sjs +++ b/devtools/client/jsonview/test/chunked_json.sjs @@ -7,12 +7,14 @@ function setResponse(response) { } function getResponse() { let response; - getObjectState(key, v => { response = v }); + getObjectState(key, v => { + response = v; + }); return response; } function handleRequest(request, response) { - let {queryString} = request; + const { queryString } = request; if (!queryString) { response.processAsync(); setResponse(response); @@ -21,7 +23,7 @@ function handleRequest(request, response) { response.write(" "); return; } - let [command, value] = queryString.split('='); + const [command, value] = queryString.split("="); switch (command) { case "write": getResponse().write(value); diff --git a/devtools/client/netmonitor/src/har/test/sjs_cache-test-server.sjs b/devtools/client/netmonitor/src/har/test/sjs_cache-test-server.sjs index 9fd90277a8e0..9d3162d18bd5 100644 --- a/devtools/client/netmonitor/src/har/test/sjs_cache-test-server.sjs +++ b/devtools/client/netmonitor/src/har/test/sjs_cache-test-server.sjs @@ -3,7 +3,10 @@ function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 304, "Not Modified"); - response.setHeader("Cache-Control", "no-transform,public,max-age=300,s-maxage=900"); + response.setHeader( + "Cache-Control", + "no-transform,public,max-age=300,s-maxage=900" + ); response.setHeader("Expires", "Thu, 01 Dec 2100 20:00:00 GMT"); response.setHeader("Content-Type", "text/plain; charset=utf-8", false); response.write("Hello from cache!"); diff --git a/devtools/client/netmonitor/test/sjs_content-type-test-server.sjs b/devtools/client/netmonitor/test/sjs_content-type-test-server.sjs index 63c62998a522..4533e91eb717 100644 --- a/devtools/client/netmonitor/test/sjs_content-type-test-server.sjs +++ b/devtools/client/netmonitor/test/sjs_content-type-test-server.sjs @@ -4,16 +4,22 @@ Cu.importGlobalProperties(["TextEncoder"]); function gzipCompressString(string, obs) { - - let scs = Cc["@mozilla.org/streamConverters;1"] - .getService(Ci.nsIStreamConverterService); - let listener = Cc["@mozilla.org/network/stream-loader;1"] - .createInstance(Ci.nsIStreamLoader); + const scs = Cc["@mozilla.org/streamConverters;1"].getService( + Ci.nsIStreamConverterService + ); + const listener = Cc["@mozilla.org/network/stream-loader;1"].createInstance( + Ci.nsIStreamLoader + ); listener.init(obs); - let converter = scs.asyncConvertData("uncompressed", "gzip", - listener, null); - let stringStream = Cc["@mozilla.org/io/string-input-stream;1"] - .createInstance(Ci.nsIStringInputStream); + const converter = scs.asyncConvertData( + "uncompressed", + "gzip", + listener, + null + ); + const stringStream = Cc[ + "@mozilla.org/io/string-input-stream;1" + ].createInstance(Ci.nsIStringInputStream); stringStream.data = string; converter.onStartRequest(null); converter.onDataAvailable(null, stringStream, 0, string.length); @@ -21,11 +27,11 @@ function gzipCompressString(string, obs) { } function doubleGzipCompressString(string, observer) { - let observer2 = { + const observer2 = { onStreamComplete: function(loader, context, status, length, result) { - let buffer = String.fromCharCode.apply(this, result); + const buffer = String.fromCharCode.apply(this, result); gzipCompressString(buffer, observer); - } + }, }; gzipCompressString(string, observer2); } @@ -33,18 +39,25 @@ function doubleGzipCompressString(string, observer) { function handleRequest(request, response) { response.processAsync(); - let params = request.queryString.split("&"); - let format = (params.filter((s) => s.includes("fmt="))[0] || "").split("=")[1]; - let status = (params.filter((s) => s.includes("sts="))[0] || "").split("=")[1] || 200; - let cookies = (params.filter((s) => s.includes("cookies="))[0] || "").split("=")[1] || 0; - let cors = request.queryString.includes("cors=1"); + const params = request.queryString.split("&"); + const format = (params.filter(s => s.includes("fmt="))[0] || "").split( + "=" + )[1]; + const status = + (params.filter(s => s.includes("sts="))[0] || "").split("=")[1] || 200; + const cookies = + (params.filter(s => s.includes("cookies="))[0] || "").split("=")[1] || 0; + const cors = request.queryString.includes("cors=1"); let cachedCount = 0; - let cacheExpire = 60; // seconds + const cacheExpire = 60; // seconds function setCacheHeaders() { if (status != 304) { - response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); + response.setHeader( + "Cache-Control", + "no-cache, no-store, must-revalidate" + ); response.setHeader("Pragma", "no-cache"); response.setHeader("Expires", "0"); return; @@ -53,15 +66,27 @@ function handleRequest(request, response) { if (cachedCount % 2) { response.setHeader("Cache-Control", "max-age=" + cacheExpire, false); } else { - response.setHeader("Expires", Date(Date.now() + cacheExpire * 1000), false); + response.setHeader( + "Expires", + Date(Date.now() + cacheExpire * 1000), + false + ); } cachedCount++; } function setCookieHeaders() { if (cookies) { - response.setHeader("Set-Cookie", "name1=value1; Domain=.foo.example.com", true); - response.setHeader("Set-Cookie", "name2=value2; Domain=.example.com", true); + response.setHeader( + "Set-Cookie", + "name1=value1; Domain=.foo.example.com", + true + ); + response.setHeader( + "Set-Cookie", + "name2=value2; Domain=.example.com", + true + ); } } @@ -72,248 +97,296 @@ function handleRequest(request, response) { } let timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); - timer.initWithCallback(() => { - // to avoid garbage collection - timer = null; - switch (format) { - case "txt": { - response.setStatusLine(request.httpVersion, status, "DA DA DA"); - response.setHeader("Content-Type", "text/plain", false); - setCacheHeaders(); + timer.initWithCallback( + () => { + // to avoid garbage collection + timer = null; + switch (format) { + case "txt": { + response.setStatusLine(request.httpVersion, status, "DA DA DA"); + response.setHeader("Content-Type", "text/plain", false); + setCacheHeaders(); - function convertToUtf8(str) { - return String.fromCharCode(...new TextEncoder().encode(str)); - } - - // This script must be evaluated as UTF-8 for this to write out the - // bytes of the string in UTF-8. If it's evaluated as Latin-1, the - // written bytes will be the result of UTF-8-encoding this string - // *twice*. - let data = "Братан, ты вообще качаешься?"; - let stringOfUtf8Bytes = convertToUtf8(data); - response.write(stringOfUtf8Bytes); - - response.finish(); - break; - } - case "xml": { - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "text/xml; charset=utf-8", false); - setCacheHeaders(); - response.write("<label value='greeting'>Hello XML!</label>"); - response.finish(); - break; - } - case "html": { - let content = (params.filter((s) => s.includes("res="))[0] || "").split("=")[1]; - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "text/html; charset=utf-8", false); - setAllowOriginHeaders(); - setCacheHeaders(); - setCookieHeaders(); - response.write(content || "<p>Hello HTML!</p>"); - response.finish(); - break; - } - case "html-long": { - let str = new Array(102400 /* 100 KB in bytes */).join("."); - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "text/html; charset=utf-8", false); - setCacheHeaders(); - response.write("<p>" + str + "</p>"); - response.finish(); - break; - } - case "css": { - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "text/css; charset=utf-8", false); - setCacheHeaders(); - response.write("body:pre { content: 'Hello CSS!' }"); - response.finish(); - break; - } - case "js": { - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "application/javascript; charset=utf-8", false); - setCacheHeaders(); - response.write("function() { return 'Hello JS!'; }"); - response.finish(); - break; - } - case "json": { - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "application/json; charset=utf-8", false); - setCacheHeaders(); - response.write("{ \"greeting\": \"Hello JSON!\" }"); - response.finish(); - break; - } - case "jsonp": { - let fun = (params.filter((s) => s.includes("jsonp="))[0] || "").split("=")[1]; - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "text/json; charset=utf-8", false); - setCacheHeaders(); - response.write(fun + "({ \"greeting\": \"Hello JSONP!\" })"); - response.finish(); - break; - } - case "jsonp2": { - let fun = (params.filter((s) => s.includes("jsonp="))[0] || "").split("=")[1]; - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "text/json; charset=utf-8", false); - setCacheHeaders(); - response.write(" " + fun + " ( { \"greeting\": \"Hello weird JSONP!\" } ) ; "); - response.finish(); - break; - } - case "json-b64": { - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "text/json; charset=utf-8", false); - setCacheHeaders(); - response.write(btoa("{ \"greeting\": \"This is a base 64 string.\" }")); - response.finish(); - break; - } - case "json-long": { - let str = "{ \"greeting\": \"Hello long string JSON!\" },"; - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "text/json; charset=utf-8", false); - setCacheHeaders(); - response.write("[" + new Array(2048).join(str).slice(0, -1) + "]"); - response.finish(); - break; - } - case "json-malformed": { - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "text/json; charset=utf-8", false); - setCacheHeaders(); - response.write("{ \"greeting\": \"Hello malformed JSON!\" },"); - response.finish(); - break; - } - case "json-text-mime": { - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "text/plain; charset=utf-8", false); - setCacheHeaders(); - response.write("{ \"greeting\": \"Hello third-party JSON!\" }"); - response.finish(); - break; - } - case "json-custom-mime": { - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "text/x-bigcorp-json; charset=utf-8", false); - setCacheHeaders(); - response.write("{ \"greeting\": \"Hello oddly-named JSON!\" }"); - response.finish(); - break; - } - case "font": { - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "font/woff", false); - setAllowOriginHeaders(); - setCacheHeaders(); - response.finish(); - break; - } - case "image": { - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "image/png", false); - setCacheHeaders(); - response.finish(); - break; - } - case "audio": { - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "audio/ogg", false); - setCacheHeaders(); - response.finish(); - break; - } - case "video": { - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "video/webm", false); - setCacheHeaders(); - response.finish(); - break; - } - case "flash": { - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "application/x-shockwave-flash", false); - setCacheHeaders(); - response.finish(); - break; - } - case "ws": { - response.setStatusLine(request.httpVersion, 101, "Switching Protocols"); - response.setHeader("Connection", "upgrade", false); - response.setHeader("Upgrade", "websocket", false); - setCacheHeaders(); - response.finish(); - break; - } - case "gzip": { - // Note: we're doing a double gzip encoding to test multiple - // converters in network monitor. - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "text/plain", false); - response.setHeader("Content-Encoding", "gzip\t ,gzip", false); - setCacheHeaders(); - let observer = { - onStreamComplete: function(loader, context, status, length, result) { - let buffer = String.fromCharCode.apply(this, result); - response.setHeader("Content-Length", "" + buffer.length, false); - response.write(buffer); - response.finish(); + function convertToUtf8(str) { + return String.fromCharCode(...new TextEncoder().encode(str)); } - }; - let data = new Array(1000).join("Hello gzip!"); - doubleGzipCompressString(data, observer); - break; + + // This script must be evaluated as UTF-8 for this to write out the + // bytes of the string in UTF-8. If it's evaluated as Latin-1, the + // written bytes will be the result of UTF-8-encoding this string + // *twice*. + const data = "Братан, ты вообще качаешься?"; + const stringOfUtf8Bytes = convertToUtf8(data); + response.write(stringOfUtf8Bytes); + + response.finish(); + break; + } + case "xml": { + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader("Content-Type", "text/xml; charset=utf-8", false); + setCacheHeaders(); + response.write("<label value='greeting'>Hello XML!</label>"); + response.finish(); + break; + } + case "html": { + const content = ( + params.filter(s => s.includes("res="))[0] || "" + ).split("=")[1]; + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader("Content-Type", "text/html; charset=utf-8", false); + setAllowOriginHeaders(); + setCacheHeaders(); + setCookieHeaders(); + response.write(content || "<p>Hello HTML!</p>"); + response.finish(); + break; + } + case "html-long": { + const str = new Array(102400 /* 100 KB in bytes */).join("."); + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader("Content-Type", "text/html; charset=utf-8", false); + setCacheHeaders(); + response.write("<p>" + str + "</p>"); + response.finish(); + break; + } + case "css": { + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader("Content-Type", "text/css; charset=utf-8", false); + setCacheHeaders(); + response.write("body:pre { content: 'Hello CSS!' }"); + response.finish(); + break; + } + case "js": { + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader( + "Content-Type", + "application/javascript; charset=utf-8", + false + ); + setCacheHeaders(); + response.write("function() { return 'Hello JS!'; }"); + response.finish(); + break; + } + case "json": { + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader( + "Content-Type", + "application/json; charset=utf-8", + false + ); + setCacheHeaders(); + response.write('{ "greeting": "Hello JSON!" }'); + response.finish(); + break; + } + case "jsonp": { + const fun = (params.filter(s => s.includes("jsonp="))[0] || "").split( + "=" + )[1]; + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader("Content-Type", "text/json; charset=utf-8", false); + setCacheHeaders(); + response.write(fun + '({ "greeting": "Hello JSONP!" })'); + response.finish(); + break; + } + case "jsonp2": { + const fun = (params.filter(s => s.includes("jsonp="))[0] || "").split( + "=" + )[1]; + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader("Content-Type", "text/json; charset=utf-8", false); + setCacheHeaders(); + response.write( + " " + fun + ' ( { "greeting": "Hello weird JSONP!" } ) ; ' + ); + response.finish(); + break; + } + case "json-b64": { + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader("Content-Type", "text/json; charset=utf-8", false); + setCacheHeaders(); + response.write(btoa('{ "greeting": "This is a base 64 string." }')); + response.finish(); + break; + } + case "json-long": { + const str = '{ "greeting": "Hello long string JSON!" },'; + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader("Content-Type", "text/json; charset=utf-8", false); + setCacheHeaders(); + response.write("[" + new Array(2048).join(str).slice(0, -1) + "]"); + response.finish(); + break; + } + case "json-malformed": { + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader("Content-Type", "text/json; charset=utf-8", false); + setCacheHeaders(); + response.write('{ "greeting": "Hello malformed JSON!" },'); + response.finish(); + break; + } + case "json-text-mime": { + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader( + "Content-Type", + "text/plain; charset=utf-8", + false + ); + setCacheHeaders(); + response.write('{ "greeting": "Hello third-party JSON!" }'); + response.finish(); + break; + } + case "json-custom-mime": { + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader( + "Content-Type", + "text/x-bigcorp-json; charset=utf-8", + false + ); + setCacheHeaders(); + response.write('{ "greeting": "Hello oddly-named JSON!" }'); + response.finish(); + break; + } + case "font": { + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader("Content-Type", "font/woff", false); + setAllowOriginHeaders(); + setCacheHeaders(); + response.finish(); + break; + } + case "image": { + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader("Content-Type", "image/png", false); + setCacheHeaders(); + response.finish(); + break; + } + case "audio": { + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader("Content-Type", "audio/ogg", false); + setCacheHeaders(); + response.finish(); + break; + } + case "video": { + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader("Content-Type", "video/webm", false); + setCacheHeaders(); + response.finish(); + break; + } + case "flash": { + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader( + "Content-Type", + "application/x-shockwave-flash", + false + ); + setCacheHeaders(); + response.finish(); + break; + } + case "ws": { + response.setStatusLine( + request.httpVersion, + 101, + "Switching Protocols" + ); + response.setHeader("Connection", "upgrade", false); + response.setHeader("Upgrade", "websocket", false); + setCacheHeaders(); + response.finish(); + break; + } + case "gzip": { + // Note: we're doing a double gzip encoding to test multiple + // converters in network monitor. + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader("Content-Type", "text/plain", false); + response.setHeader("Content-Encoding", "gzip\t ,gzip", false); + setCacheHeaders(); + const observer = { + onStreamComplete: function( + loader, + context, + status, + length, + result + ) { + const buffer = String.fromCharCode.apply(this, result); + response.setHeader("Content-Length", "" + buffer.length, false); + response.write(buffer); + response.finish(); + }, + }; + const data = new Array(1000).join("Hello gzip!"); + doubleGzipCompressString(data, observer); + break; + } + case "br": { + response.setStatusLine(request.httpVersion, status, "Connected"); + response.setHeader("Content-Type", "text/plain", false); + response.setHeader("Content-Encoding", "br", false); + setCacheHeaders(); + response.setHeader("Content-Length", "10", false); + // Use static data since we cannot encode brotli. + response.write("\x1b\x3f\x00\x00\x24\xb0\xe2\x99\x80\x12"); + response.finish(); + break; + } + case "hls-m3u8": { + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader("Content-Type", "application/x-mpegurl", false); + setCacheHeaders(); + response.write("#EXTM3U\n"); + response.finish(); + break; + } + case "hls-m3u8-alt-mime-type": { + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader( + "Content-Type", + "application/vnd.apple.mpegurl", + false + ); + setCacheHeaders(); + response.write("#EXTM3U\n"); + response.finish(); + break; + } + case "mpeg-dash": { + response.setStatusLine(request.httpVersion, status, "OK"); + response.setHeader("Content-Type", "video/vnd.mpeg.dash.mpd", false); + setCacheHeaders(); + response.write('<?xml version="1.0" encoding="UTF-8"?>\n'); + response.write( + '<MPD xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"></MPD>\n' + ); + response.finish(); + break; + } + default: { + response.setStatusLine(request.httpVersion, 404, "Not Found"); + response.setHeader("Content-Type", "text/html; charset=utf-8", false); + setCacheHeaders(); + response.write("<blink>Not Found</blink>"); + response.finish(); + break; + } } - case "br": { - response.setStatusLine(request.httpVersion, status, "Connected"); - response.setHeader("Content-Type", "text/plain", false); - response.setHeader("Content-Encoding", "br", false); - setCacheHeaders(); - response.setHeader("Content-Length", "10", false); - // Use static data since we cannot encode brotli. - response.write("\x1b\x3f\x00\x00\x24\xb0\xe2\x99\x80\x12"); - response.finish(); - break; - } - case "hls-m3u8": { - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "application/x-mpegurl", false); - setCacheHeaders(); - response.write("#EXTM3U\n"); - response.finish(); - break; - } - case "hls-m3u8-alt-mime-type": { - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "application/vnd.apple.mpegurl", false); - setCacheHeaders(); - response.write("#EXTM3U\n"); - response.finish(); - break; - } - case "mpeg-dash": { - response.setStatusLine(request.httpVersion, status, "OK"); - response.setHeader("Content-Type", "video/vnd.mpeg.dash.mpd", false); - setCacheHeaders(); - response.write('<?xml version="1.0" encoding="UTF-8"?>\n'); - response.write('<MPD xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"></MPD>\n'); - response.finish(); - break; - } - default: { - response.setStatusLine(request.httpVersion, 404, "Not Found"); - response.setHeader("Content-Type", "text/html; charset=utf-8", false); - setCacheHeaders(); - response.write("<blink>Not Found</blink>"); - response.finish(); - break; - } - } - }, 10, Ci.nsITimer.TYPE_ONE_SHOT); // Make sure this request takes a few ms. + }, + 10, + Ci.nsITimer.TYPE_ONE_SHOT + ); // Make sure this request takes a few ms. } diff --git a/devtools/client/netmonitor/test/sjs_https-redirect-test-server.sjs b/devtools/client/netmonitor/test/sjs_https-redirect-test-server.sjs index 14ea345591e2..492a51beacd1 100644 --- a/devtools/client/netmonitor/test/sjs_https-redirect-test-server.sjs +++ b/devtools/client/netmonitor/test/sjs_https-redirect-test-server.sjs @@ -15,5 +15,4 @@ function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 200, "OK"); response.write("Page was accessed over HTTPS!"); } - } diff --git a/devtools/client/netmonitor/test/sjs_json-test-server.sjs b/devtools/client/netmonitor/test/sjs_json-test-server.sjs index 0bda7c0af35f..3c72e2cb36e6 100644 --- a/devtools/client/netmonitor/test/sjs_json-test-server.sjs +++ b/devtools/client/netmonitor/test/sjs_json-test-server.sjs @@ -2,7 +2,6 @@ http://creativecommons.org/publicdomain/zero/1.0/ */ function handleRequest(request, response) { - response.setStatusLine(request.httpVersion, 200, "OK"); response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); response.setHeader("Pragma", "no-cache"); @@ -12,14 +11,14 @@ function handleRequest(request, response) { // This server checks the name parameter from the request to decide which JSON object to // return. - let params = request.queryString.split("&"); - let name = (params.filter((s) => s.includes("name="))[0] || "").split("=")[1]; + const params = request.queryString.split("&"); + const name = (params.filter(s => s.includes("name="))[0] || "").split("=")[1]; switch (name) { case "null": - response.write("{ \"greeting\": null }"); + response.write('{ "greeting": null }'); break; case "nogrip": - response.write("{\"obj\": {\"type\": \"string\" }}"); + response.write('{"obj": {"type": "string" }}'); break; case "empty": response.write("{}"); diff --git a/devtools/client/netmonitor/test/sjs_method-test-server.sjs b/devtools/client/netmonitor/test/sjs_method-test-server.sjs index 246d819380c7..17e63742158f 100644 --- a/devtools/client/netmonitor/test/sjs_method-test-server.sjs +++ b/devtools/client/netmonitor/test/sjs_method-test-server.sjs @@ -3,9 +3,11 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", "nsIBinaryInputStream", - "setInputStream"); + "setInputStream" +); function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 200, "Och Aye"); @@ -14,12 +16,18 @@ function handleRequest(request, response) { var body = ""; if (request.method == "POST") { var bodyStream = new BinaryInputStream(request.bodyInputStream); - var bytes = [], avail = 0; + var bytes = [], + avail = 0; while ((avail = bodyStream.available()) > 0) { - body += String.fromCharCode.apply(String, bodyStream.readByteArray(avail)); + body += String.fromCharCode.apply( + String, + bodyStream.readByteArray(avail) + ); } } - var contentType = request.hasHeader("content-type") ? request.getHeader("content-type") : "" + var contentType = request.hasHeader("content-type") + ? request.getHeader("content-type") + : ""; var bodyOutput = [request.method, contentType, body].join("\n"); response.bodyOutputStream.write(bodyOutput, bodyOutput.length); diff --git a/devtools/client/netmonitor/test/sjs_slow-script-server.sjs b/devtools/client/netmonitor/test/sjs_slow-script-server.sjs index 36601d158edd..6b1f13ef4668 100644 --- a/devtools/client/netmonitor/test/sjs_slow-script-server.sjs +++ b/devtools/client/netmonitor/test/sjs_slow-script-server.sjs @@ -9,9 +9,13 @@ const DELAY_MS = 2000; function handleRequest(request, response) { response.processAsync(); timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); - timer.init(() => { - response.setHeader("Content-Type", "text/javascript", false); - response.write("console.log('script loaded')\n"); - response.finish(); - }, DELAY_MS, Ci.nsITimer.TYPE_ONE_SHOT); + timer.init( + () => { + response.setHeader("Content-Type", "text/javascript", false); + response.write("console.log('script loaded')\n"); + response.finish(); + }, + DELAY_MS, + Ci.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/devtools/client/netmonitor/test/sjs_slow-test-server.sjs b/devtools/client/netmonitor/test/sjs_slow-test-server.sjs index 363260dc8bc6..aeb9b16fa766 100644 --- a/devtools/client/netmonitor/test/sjs_slow-test-server.sjs +++ b/devtools/client/netmonitor/test/sjs_slow-test-server.sjs @@ -9,9 +9,15 @@ const DELAY_MS = 10000; function handleRequest(request, response) { response.processAsync(); timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); - timer.init(() => { - response.setHeader("Content-Type", "text/html", false); - response.write("<body>Slow loading page for netmonitor test. You should never see this.</body>"); - response.finish(); - }, DELAY_MS, Ci.nsITimer.TYPE_ONE_SHOT); + timer.init( + () => { + response.setHeader("Content-Type", "text/html", false); + response.write( + "<body>Slow loading page for netmonitor test. You should never see this.</body>" + ); + response.finish(); + }, + DELAY_MS, + Ci.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/devtools/client/netmonitor/test/sjs_sorting-test-server.sjs b/devtools/client/netmonitor/test/sjs_sorting-test-server.sjs index 535c446819d4..cc7d8d388e08 100644 --- a/devtools/client/netmonitor/test/sjs_sorting-test-server.sjs +++ b/devtools/client/netmonitor/test/sjs_sorting-test-server.sjs @@ -4,21 +4,32 @@ function handleRequest(request, response) { response.processAsync(); - let params = request.queryString.split("&"); - let index = params.filter((s) => s.includes("index="))[0].split("=")[1]; + const params = request.queryString.split("&"); + const index = params.filter(s => s.includes("index="))[0].split("=")[1]; let timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); - timer.initWithCallback(() => { - // to avoid garbage collection - timer = null; - response.setStatusLine(request.httpVersion, index == 1 ? 101 : index * 100, "Meh"); + timer.initWithCallback( + () => { + // to avoid garbage collection + timer = null; + response.setStatusLine( + request.httpVersion, + index == 1 ? 101 : index * 100, + "Meh" + ); - response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); - response.setHeader("Pragma", "no-cache"); - response.setHeader("Expires", "0"); + response.setHeader( + "Cache-Control", + "no-cache, no-store, must-revalidate" + ); + response.setHeader("Pragma", "no-cache"); + response.setHeader("Expires", "0"); - response.setHeader("Content-Type", "text/" + index, false); - response.write(new Array(index * 10).join(index)); // + 0.01 KB - response.finish(); - }, 10, Ci.nsITimer.TYPE_ONE_SHOT); // Make sure this request takes a few ms. + response.setHeader("Content-Type", "text/" + index, false); + response.write(new Array(index * 10).join(index)); // + 0.01 KB + response.finish(); + }, + 10, + Ci.nsITimer.TYPE_ONE_SHOT + ); // Make sure this request takes a few ms. } diff --git a/devtools/client/netmonitor/test/sjs_sse-test-server.sjs b/devtools/client/netmonitor/test/sjs_sse-test-server.sjs index 5978dd960964..5a7a9655b6e5 100644 --- a/devtools/client/netmonitor/test/sjs_sse-test-server.sjs +++ b/devtools/client/netmonitor/test/sjs_sse-test-server.sjs @@ -1,6 +1,6 @@ -function handleRequest(request, response) { - response.processAsync(); - response.setHeader("Content-Type", "text/event-stream"); - response.write("data: Why so serious?\n\n"); - response.finish(); -} +function handleRequest(request, response) { + response.processAsync(); + response.setHeader("Content-Type", "text/event-stream"); + response.write("data: Why so serious?\n\n"); + response.finish(); +} diff --git a/devtools/client/netmonitor/test/sjs_status-codes-test-server.sjs b/devtools/client/netmonitor/test/sjs_status-codes-test-server.sjs index 3e90acfbd46b..2e11d0945aaf 100644 --- a/devtools/client/netmonitor/test/sjs_status-codes-test-server.sjs +++ b/devtools/client/netmonitor/test/sjs_status-codes-test-server.sjs @@ -4,54 +4,67 @@ function handleRequest(request, response) { response.processAsync(); - let params = request.queryString.split("&"); - let status = params.filter(s => s.includes("sts="))[0].split("=")[1]; - let cached = params.filter(s => s === 'cached').length !== 0; + const params = request.queryString.split("&"); + const status = params.filter(s => s.includes("sts="))[0].split("=")[1]; + const cached = params.filter(s => s === "cached").length !== 0; let timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); - timer.initWithCallback(() => { - // to avoid garbage collection - timer = null; - switch (status) { - case "100": - response.setStatusLine(request.httpVersion, 101, "Switching Protocols"); - break; - case "200": - response.setStatusLine(request.httpVersion, 202, "Created"); - break; - case "300": - response.setStatusLine(request.httpVersion, 303, "See Other"); - break; - case "304": - response.setStatusLine(request.httpVersion, 304, "Not Modified"); - break; - case "400": - response.setStatusLine(request.httpVersion, 404, "Not Found"); - break; - case "500": - response.setStatusLine(request.httpVersion, 501, "Not Implemented"); - break; - case "ok": - response.setStatusLine(request.httpVersion, 200, "OK"); - break; - case "redirect": - response.setStatusLine(request.httpVersion, 301, "Moved Permanently"); - response.setHeader("Location", "http://example.com/redirected"); - break; - } + timer.initWithCallback( + () => { + // to avoid garbage collection + timer = null; + switch (status) { + case "100": + response.setStatusLine( + request.httpVersion, + 101, + "Switching Protocols" + ); + break; + case "200": + response.setStatusLine(request.httpVersion, 202, "Created"); + break; + case "300": + response.setStatusLine(request.httpVersion, 303, "See Other"); + break; + case "304": + response.setStatusLine(request.httpVersion, 304, "Not Modified"); + break; + case "400": + response.setStatusLine(request.httpVersion, 404, "Not Found"); + break; + case "500": + response.setStatusLine(request.httpVersion, 501, "Not Implemented"); + break; + case "ok": + response.setStatusLine(request.httpVersion, 200, "OK"); + break; + case "redirect": + response.setStatusLine(request.httpVersion, 301, "Moved Permanently"); + response.setHeader("Location", "http://example.com/redirected"); + break; + } - if(!cached) { - response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); - response.setHeader("Pragma", "no-cache"); - response.setHeader("Expires", "0"); - } - else { - response.setHeader("Cache-Control", "no-transform,public,max-age=300,s-maxage=900"); - response.setHeader("Expires", "Thu, 01 Dec 2100 20:00:00 GMT"); - } + if (!cached) { + response.setHeader( + "Cache-Control", + "no-cache, no-store, must-revalidate" + ); + response.setHeader("Pragma", "no-cache"); + response.setHeader("Expires", "0"); + } else { + response.setHeader( + "Cache-Control", + "no-transform,public,max-age=300,s-maxage=900" + ); + response.setHeader("Expires", "Thu, 01 Dec 2100 20:00:00 GMT"); + } - response.setHeader("Content-Type", "text/plain; charset=utf-8", false); - response.write("Hello status code " + status + "!"); - response.finish(); - }, 10, Ci.nsITimer.TYPE_ONE_SHOT); // Make sure this request takes a few ms. + response.setHeader("Content-Type", "text/plain; charset=utf-8", false); + response.write("Hello status code " + status + "!"); + response.finish(); + }, + 10, + Ci.nsITimer.TYPE_ONE_SHOT + ); // Make sure this request takes a few ms. } diff --git a/devtools/client/netmonitor/test/sjs_timings-test-server.sjs b/devtools/client/netmonitor/test/sjs_timings-test-server.sjs index e874e27631bf..15525392a5b3 100644 --- a/devtools/client/netmonitor/test/sjs_timings-test-server.sjs +++ b/devtools/client/netmonitor/test/sjs_timings-test-server.sjs @@ -2,13 +2,13 @@ http://creativecommons.org/publicdomain/zero/1.0/ */ var trailerServerTiming = [ - {metric:"metric3", duration:"99789.11", description:"time3"}, - {metric:"metric4", duration:"1112.13", description:"time4"} + { metric: "metric3", duration: "99789.11", description: "time3" }, + { metric: "metric4", duration: "1112.13", description: "time4" }, ]; var responseServerTiming = [ - {metric:"metric1", duration:"123.4", description:"time1"}, - {metric:"metric2", duration:"0", description:"time2"} + { metric: "metric1", duration: "123.4", description: "time1" }, + { metric: "metric2", duration: "0", description: "time2" }, ]; function handleRequest(request, response) { @@ -29,9 +29,16 @@ function handleRequest(request, response) { function createServerTimingHeader(headerData) { var header = ""; for (var i = 0; i < headerData.length; i++) { - header += "Server-Timing: " + headerData[i].metric + ";" + - "dur=" + headerData[i].duration + ";" + - "desc=" + headerData[i].description + "\r\n"; + header += + "Server-Timing: " + + headerData[i].metric + + ";" + + "dur=" + + headerData[i].duration + + ";" + + "desc=" + + headerData[i].description + + "\r\n"; } return header; } diff --git a/devtools/client/netmonitor/test/sjs_truncate-test-server.sjs b/devtools/client/netmonitor/test/sjs_truncate-test-server.sjs index 54db23d9a90a..f68512fcf371 100644 --- a/devtools/client/netmonitor/test/sjs_truncate-test-server.sjs +++ b/devtools/client/netmonitor/test/sjs_truncate-test-server.sjs @@ -2,8 +2,10 @@ http://creativecommons.org/publicdomain/zero/1.0/ */ function handleRequest(request, response) { - let params = request.queryString.split("&"); - let limit = (params.filter((s) => s.includes("limit="))[0] || "").split("=")[1]; + const params = request.queryString.split("&"); + const limit = (params.filter(s => s.includes("limit="))[0] || "").split( + "=" + )[1]; response.setStatusLine(request.httpVersion, 200, "Och Aye"); diff --git a/devtools/client/webconsole/test/browser/test_hsts-invalid-headers.sjs b/devtools/client/webconsole/test/browser/test_hsts-invalid-headers.sjs index 9e3ea7624055..dae4cbb1948f 100644 --- a/devtools/client/webconsole/test/browser/test_hsts-invalid-headers.sjs +++ b/devtools/client/webconsole/test/browser/test_hsts-invalid-headers.sjs @@ -1,14 +1,13 @@ /* Any copyright is dedicated to the Public Domain. * http://creativecommons.org/publicdomain/zero/1.0/ */ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/plain; charset=utf-8", false); let issue; switch (request.queryString) { case "badSyntax": - response.setHeader("Strict-Transport-Security", "\""); + response.setHeader("Strict-Transport-Security", '"'); issue = "is not syntactically correct."; break; case "noMaxAge": @@ -24,13 +23,17 @@ function handleRequest(request, response) issue = "includes an invalid max-age directive."; break; case "multipleIncludeSubDomains": - response.setHeader("Strict-Transport-Security", - "includeSubDomains; includeSubDomains"); + response.setHeader( + "Strict-Transport-Security", + "includeSubDomains; includeSubDomains" + ); issue = "includes multiple includeSubDomains directives."; break; case "multipleMaxAge": - response.setHeader("Strict-Transport-Security", - "max-age=444; max-age=999"); + response.setHeader( + "Strict-Transport-Security", + "max-age=444; max-age=999" + ); issue = "includes multiple max-age directives."; break; } diff --git a/devtools/server/tests/chrome/inspector-delay-image-response.sjs b/devtools/server/tests/chrome/inspector-delay-image-response.sjs index d8de8577513e..014695c84a6f 100644 --- a/devtools/server/tests/chrome/inspector-delay-image-response.sjs +++ b/devtools/server/tests/chrome/inspector-delay-image-response.sjs @@ -5,16 +5,18 @@ // A 1x1 PNG image. // Source: https://commons.wikimedia.org/wiki/File:1x1.png (Public Domain) -const IMAGE = atob("iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAA" + - "ACnej3aAAAAAXRSTlMAQObYZgAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII="); +const IMAGE = atob( + "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAA" + + "ACnej3aAAAAAXRSTlMAQObYZgAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=" +); // To avoid GC. let timer = null; function handleRequest(request, response) { - let query = {}; + const query = {}; request.queryString.split("&").forEach(function(val) { - let [name, value] = val.split("="); + const [name, value] = val.split("="); query[name] = unescape(value); }); @@ -33,8 +35,12 @@ function handleRequest(request, response) { const nsITimer = Components.interfaces.nsITimer; timer = Components.classes["@mozilla.org/timer;1"].createInstance(nsITimer); - timer.initWithCallback(function() { - response.write(IMAGE); - response.finish(); - }, query.delay, nsITimer.TYPE_ONE_SHOT); + timer.initWithCallback( + function() { + response.write(IMAGE); + response.finish(); + }, + query.delay, + nsITimer.TYPE_ONE_SHOT + ); } diff --git a/devtools/shared/commands/inspected-window/tests/inspectedwindow-reload-target.sjs b/devtools/shared/commands/inspected-window/tests/inspectedwindow-reload-target.sjs index dc2206228905..716635dc54fb 100644 --- a/devtools/shared/commands/inspected-window/tests/inspectedwindow-reload-target.sjs +++ b/devtools/shared/commands/inspected-window/tests/inspectedwindow-reload-target.sjs @@ -1,9 +1,9 @@ Components.utils.importGlobalProperties(["URLSearchParams"]); function handleRequest(request, response) { - let params = new URLSearchParams(request.queryString); + const params = new URLSearchParams(request.queryString); - switch(params.get("test")) { + switch (params.get("test")) { case "cache": handleCacheTestRequest(request, response); break; @@ -22,7 +22,9 @@ function handleCacheTestRequest(request, response) { response.setHeader("Content-Type", "text/plain; charset=UTF-8", false); if (request.hasHeader("pragma") && request.hasHeader("cache-control")) { - response.write(`${request.getHeader("pragma")}:${request.getHeader("cache-control")}`); + response.write( + `${request.getHeader("pragma")}:${request.getHeader("cache-control")}` + ); } else { response.write("empty cache headers"); } @@ -47,11 +49,12 @@ function handleInjectedScriptTestRequest(request, response, params) { if (frames > 0) { // Output an iframe in seamless mode, so that there is an higher chance that in case // of test failures we get a screenshot where the nested iframes are all visible. - content = `<iframe seamless src="?test=injected-script&frames=${frames - 1}"></iframe>`; + content = `<iframe seamless src="?test=injected-script&frames=${frames - + 1}"></iframe>`; } else { // Output an about:srcdoc frame to be sure that inspectedWindow.eval is able to // evaluate js code into it. - let srcdoc = ` + const srcdoc = ` <pre>injected script NOT executed</pre> <script>window.pageScriptExecutedFirst = true</script> `; @@ -80,4 +83,4 @@ function handleInjectedScriptTestRequest(request, response, params) { </body> </html> `); -} \ No newline at end of file +} diff --git a/devtools/shared/commands/resource/tests/sse_backend.sjs b/devtools/shared/commands/resource/tests/sse_backend.sjs index c6dbf9f24ed6..5a7a9655b6e5 100644 --- a/devtools/shared/commands/resource/tests/sse_backend.sjs +++ b/devtools/shared/commands/resource/tests/sse_backend.sjs @@ -1,6 +1,6 @@ -function handleRequest(request, response) { - response.processAsync(); - response.setHeader("Content-Type", "text/event-stream"); - response.write("data: Why so serious?\n\n"); - response.finish(); -} +function handleRequest(request, response) { + response.processAsync(); + response.setHeader("Content-Type", "text/event-stream"); + response.write("data: Why so serious?\n\n"); + response.finish(); +} diff --git a/devtools/shared/commands/target/tests/incremental-js-value-script.sjs b/devtools/shared/commands/target/tests/incremental-js-value-script.sjs index dbdc1f3e1db0..e2fe351b2fc5 100644 --- a/devtools/shared/commands/target/tests/incremental-js-value-script.sjs +++ b/devtools/shared/commands/target/tests/incremental-js-value-script.sjs @@ -1,11 +1,11 @@ function handleRequest(request, response) { - let Etag = '"4d881ab-b03-435f0a0f9ef00"'; - let IfNoneMatch = request.hasHeader("If-None-Match") - ? request.getHeader("If-None-Match") - : ""; + const Etag = '"4d881ab-b03-435f0a0f9ef00"'; + const IfNoneMatch = request.hasHeader("If-None-Match") + ? request.getHeader("If-None-Match") + : ""; var counter = getState("cache-counter") || 1; - let page = "<script>var jsValue = '" + counter + "';</script>" + counter; + const page = "<script>var jsValue = '" + counter + "';</script>" + counter; setState("cache-counter", "" + (parseInt(counter) + 1)); diff --git a/docshell/test/browser/file_bug1688368-1.sjs b/docshell/test/browser/file_bug1688368-1.sjs index a14ff296f3d9..0693b7970ccd 100644 --- a/docshell/test/browser/file_bug1688368-1.sjs +++ b/docshell/test/browser/file_bug1688368-1.sjs @@ -2,7 +2,11 @@ const DELAY = 1 * 1000; // Delay one second before completing the request. -let nsTimer = Components.Constructor("@mozilla.org/timer;1", "nsITimer", "initWithCallback"); +let nsTimer = Components.Constructor( + "@mozilla.org/timer;1", + "nsITimer", + "initWithCallback" +); let timer; @@ -20,13 +24,21 @@ function handleRequest(request, response) { // Note: We need to store a reference to the timer to prevent it from being // canceled when it's GCed. - timer = new nsTimer(() => { - var snowmen = "\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083"; - response.write(snowmen + ` + timer = new nsTimer( + () => { + var snowmen = + "\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083\u00E2\u0098\u0083"; + response.write( + snowmen + + ` </body> </html> -`); - response.finish(); - }, DELAY, Ci.nsITimer.TYPE_ONE_SHOT); +` + ); + response.finish(); + }, + DELAY, + Ci.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/docshell/test/browser/file_bug1716290-1.sjs b/docshell/test/browser/file_bug1716290-1.sjs index f4bcc554782a..83e6eede3dba 100644 --- a/docshell/test/browser/file_bug1716290-1.sjs +++ b/docshell/test/browser/file_bug1716290-1.sjs @@ -1,7 +1,10 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { if (getState("reloaded") == "reloaded") { - response.setHeader("Content-Type", "text/html; charset=windows-1254", false); + response.setHeader( + "Content-Type", + "text/html; charset=windows-1254", + false + ); response.write("\u00E4"); } else { response.setHeader("Content-Type", "text/html; charset=Shift_JIS", false); diff --git a/docshell/test/browser/file_bug1716290-2.sjs b/docshell/test/browser/file_bug1716290-2.sjs index d1e73b6d7034..e695259e3008 100644 --- a/docshell/test/browser/file_bug1716290-2.sjs +++ b/docshell/test/browser/file_bug1716290-2.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { if (getState("reloaded") == "reloaded") { response.setHeader("Content-Type", "text/html", false); response.write("<meta charset=iso-2022-kr>\u00E4"); diff --git a/docshell/test/browser/file_bug1716290-3.sjs b/docshell/test/browser/file_bug1716290-3.sjs index 705f16564969..7a302e05e44a 100644 --- a/docshell/test/browser/file_bug1716290-3.sjs +++ b/docshell/test/browser/file_bug1716290-3.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { if (getState("reloaded") == "reloaded") { response.setHeader("Content-Type", "text/html; charset=iso-2022-kr", false); response.write("\u00E4"); diff --git a/docshell/test/browser/file_bug1716290-4.sjs b/docshell/test/browser/file_bug1716290-4.sjs index b15fd8f4e9b2..36753ef5328a 100644 --- a/docshell/test/browser/file_bug1716290-4.sjs +++ b/docshell/test/browser/file_bug1716290-4.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { if (getState("reloaded") == "reloaded") { response.setHeader("Content-Type", "text/html", false); response.write("\u00FE\u00FF\u00E4"); diff --git a/docshell/test/browser/print_postdata.sjs b/docshell/test/browser/print_postdata.sjs index 4175a248055c..0e3ef38419cb 100644 --- a/docshell/test/browser/print_postdata.sjs +++ b/docshell/test/browser/print_postdata.sjs @@ -1,7 +1,9 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); function handleRequest(request, response) { response.setHeader("Content-Type", "text/plain", false); @@ -13,8 +15,9 @@ function handleRequest(request, response) { var avail; var bytes = []; - while ((avail = body.available()) > 0) + while ((avail = body.available()) > 0) { Array.prototype.push.apply(bytes, body.readByteArray(avail)); + } var data = String.fromCharCode.apply(null, bytes); response.bodyOutputStream.write(data, data.length); diff --git a/docshell/test/chrome/bug89419.sjs b/docshell/test/chrome/bug89419.sjs index c075b1e504ea..7172690a9aff 100644 --- a/docshell/test/chrome/bug89419.sjs +++ b/docshell/test/chrome/bug89419.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { var redirectstate = "/docshell/test/chrome/bug89419.sjs"; response.setStatusLine("1.1", 302, "Found"); if (getState(redirectstate) == "") { diff --git a/docshell/test/mochitest/bug413310-post.sjs b/docshell/test/mochitest/bug413310-post.sjs index b8d85dd3cf24..f87937ab564f 100644 --- a/docshell/test/mochitest/bug413310-post.sjs +++ b/docshell/test/mochitest/bug413310-post.sjs @@ -1,7 +1,10 @@ function handleRequest(request, response) { response.setHeader("Content-Type", "text/html"); - response.write("<body onload='window.parent.onloadCount++'>" + - request.method + " " + - Date.now() + - "</body>"); + response.write( + "<body onload='window.parent.onloadCount++'>" + + request.method + + " " + + Date.now() + + "</body>" + ); } diff --git a/docshell/test/mochitest/bug530396-noref.sjs b/docshell/test/mochitest/bug530396-noref.sjs index 1ed5f7aa21bf..6a65882160ea 100644 --- a/docshell/test/mochitest/bug530396-noref.sjs +++ b/docshell/test/mochitest/bug530396-noref.sjs @@ -3,14 +3,16 @@ function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache"); response.write("<body onload='"); - if (!request.hasHeader('Referer')) { + if (!request.hasHeader("Referer")) { response.write("window.parent.onloadCount++;"); } if (request.queryString == "newwindow") { - response.write("if (window.opener) { window.opener.parent.onloadCount++; window.opener.parent.doNextStep(); }"); - response.write("if (!window.opener) window.close();"); - response.write("'>"); + response.write( + "if (window.opener) { window.opener.parent.onloadCount++; window.opener.parent.doNextStep(); }" + ); + response.write("if (!window.opener) window.close();"); + response.write("'>"); } else { response.write("window.parent.doNextStep();'>"); } diff --git a/docshell/test/mochitest/double_submit.sjs b/docshell/test/mochitest/double_submit.sjs index 542c81c3e341..b686c2a15522 100644 --- a/docshell/test/mochitest/double_submit.sjs +++ b/docshell/test/mochitest/double_submit.sjs @@ -2,7 +2,8 @@ let self = this; -Cu.import("resource://gre/modules/Timer.jsm"); +// eslint-disable-next-line mozilla/use-chromeutils-import +let { setTimeout } = Cu.import("resource://gre/modules/Timer.jsm"); const CC = Components.Constructor; const BinaryInputStream = CC( @@ -18,7 +19,7 @@ const BinaryOutputStream = CC( ); function log(str) { -// dump(`LOG: ${str}\n`); + // dump(`LOG: ${str}\n`); } function* generateBody(fragments, size) { @@ -26,7 +27,7 @@ function* generateBody(fragments, size) { let chunkSize = (size / fragments) | 0; let remaining = size; - log(`Chunk size ${chunkSize}`) + log(`Chunk size ${chunkSize}`); while (remaining > 0) { let data = new Uint8Array(Math.min(remaining, chunkSize)); for (let i = 0; i < data.length; ++i) { @@ -35,7 +36,7 @@ function* generateBody(fragments, size) { } yield data; - log(`Remaining to chunk ${remaining}`) + log(`Remaining to chunk ${remaining}`); remaining -= data.length; } } @@ -47,7 +48,7 @@ function readStream(inputStream) { result.push(inputStream.readBytes(available)); } - return result.join(''); + return result.join(""); } function now() { @@ -68,7 +69,9 @@ async function handleRequest(request, response) { message = "bad"; } else { log("Read POST body"); - let body = new URLSearchParams(readStream(new BinaryInputStream(request.bodyInputStream))); + let body = new URLSearchParams( + readStream(new BinaryInputStream(request.bodyInputStream)) + ); message = body.get("token") || "bad"; log(`The result was ${message}`); } @@ -81,17 +84,21 @@ async function handleRequest(request, response) { let header = "<!doctype html><!-- "; let footer = ` --><script>"use strict"; let target = (opener || parent); target.postMessage('${message}', '*');</script>`; - log("Set headers") + log("Set headers"); response.setHeader("Content-Type", "text/html", false); - response.setHeader("Content-Length", `${size + header.length + footer.length}`, false); + response.setHeader( + "Content-Length", + `${size + header.length + footer.length}`, + false + ); response.setStatusLine(request.httpVersion, "200", "OK"); response.processAsync(); log("Write header"); response.write(header); - log("Write body") + log("Write body"); for (let data of generateBody(fragments, size)) { - delay = Math.max(0, delayUntil - now()) + delay = Math.max(0, delayUntil - now()); log(`Delay sending fragment for ${delay / fragments}`); let failed = false; await new Promise(resolve => { @@ -112,10 +119,10 @@ async function handleRequest(request, response) { } fragments = Math.max(--fragments, 1); - log(`Fragments left ${fragments}`) + log(`Fragments left ${fragments}`); } - log("Write footer") + log("Write footer"); response.write(footer); response.finish(); diff --git a/docshell/test/mochitest/file_bug475636.sjs b/docshell/test/mochitest/file_bug475636.sjs index 38da6a6a50d5..a4a98d68c6c0 100644 --- a/docshell/test/mochitest/file_bug475636.sjs +++ b/docshell/test/mochitest/file_bug475636.sjs @@ -1,10 +1,17 @@ -jsURL = "javascript:" + escape('window.parent.postMessage("JS uri ran", "*");\ +jsURL = + "javascript:" + + escape( + 'window.parent.postMessage("JS uri ran", "*");\ return \'\ <script>\ window.parent.postMessage("Able to access private: " +\ window.parent.private, "*");\ -</script>\''); -dataURL = "data:text/html," + escape('<!DOCTYPE HTML>\ +</script>\'' + ); +dataURL = + "data:text/html," + + escape( + '<!DOCTYPE HTML>\ <script>\ try {\ window.parent.postMessage("Able to access private: " +\ @@ -13,11 +20,12 @@ try {\ catch (e) {\ window.parent.postMessage("pass", "*");\ }\ -</script>'); +</script>' + ); tests = [ -// Plain document should work as normal -'<!DOCTYPE HTML>\ + // Plain document should work as normal + '<!DOCTYPE HTML>\ <script>\ try {\ window.parent.private;\ @@ -28,62 +36,62 @@ catch (e) {\ }\ </script>', -// refresh to plain doc -{ refresh: "file_bug475636.sjs?1", - doc: '<!DOCTYPE HTML>' }, + // refresh to plain doc + { refresh: "file_bug475636.sjs?1", doc: "<!DOCTYPE HTML>" }, -// meta-refresh to plain doc -'<!DOCTYPE HTML>\ + // meta-refresh to plain doc + '<!DOCTYPE HTML>\ <head>\ <meta http-equiv="refresh" content="0; url=file_bug475636.sjs?1">\ </head>', -// refresh to data url -{ refresh: dataURL, - doc: '<!DOCTYPE HTML>' }, + // refresh to data url + { refresh: dataURL, doc: "<!DOCTYPE HTML>" }, -// meta-refresh to data url -'<!DOCTYPE HTML>\ + // meta-refresh to data url + '<!DOCTYPE HTML>\ <head>\ - <meta http-equiv="refresh" content="0; url=' + dataURL + '">\ + <meta http-equiv="refresh" content="0; url=' + + dataURL + + '">\ </head>', -// refresh to js url should not be followed -{ refresh: jsURL, - doc: -'<!DOCTYPE HTML>\ + // refresh to js url should not be followed + { + refresh: jsURL, + doc: + '<!DOCTYPE HTML>\ <script>\ setTimeout(function() {\ window.parent.postMessage("pass", "*");\ }, 2000);\ -</script>' }, +</script>', + }, -// meta refresh to js url should not be followed -'<!DOCTYPE HTML>\ + // meta refresh to js url should not be followed + '<!DOCTYPE HTML>\ <head>\ - <meta http-equiv="refresh" content="0; url=' + jsURL + '">\ + <meta http-equiv="refresh" content="0; url=' + + jsURL + + '">\ </head>\ <script>\ setTimeout(function() {\ window.parent.postMessage("pass", "*");\ }, 2000);\ -</script>' +</script>', ]; - -function handleRequest(request, response) -{ +function handleRequest(request, response) { dump("@@@@@@@@@hi there: " + request.queryString + "\n"); test = tests[parseInt(request.queryString, 10) - 1]; response.setHeader("Content-Type", "text/html"); if (!test) { response.write('<script>parent.postMessage("done", "*");</script>'); - } - else if (typeof test == "string") { + } else if (typeof test == "string") { response.write(test); - } - else if (test.refresh) { + } else if (test.refresh) { response.setHeader("Refresh", "0; url=" + test.refresh); response.write(test.doc); } diff --git a/docshell/test/mochitest/file_bug580069_2.sjs b/docshell/test/mochitest/file_bug580069_2.sjs index 0c76c1f16e5f..ff03c74e68cf 100644 --- a/docshell/test/mochitest/file_bug580069_2.sjs +++ b/docshell/test/mochitest/file_bug580069_2.sjs @@ -1,5 +1,8 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/html", false); - response.write('<html><body onload=\'parent.page2Load("' + request.method + '")\'>file_bug580069_2.sjs</body></html>'); + response.write( + "<html><body onload='parent.page2Load(\"" + + request.method + + "\")'>file_bug580069_2.sjs</body></html>" + ); } diff --git a/docshell/test/mochitest/file_bug669671.sjs b/docshell/test/mochitest/file_bug669671.sjs index b6fd1ec7c512..5871419de871 100644 --- a/docshell/test/mochitest/file_bug669671.sjs +++ b/docshell/test/mochitest/file_bug669671.sjs @@ -1,14 +1,17 @@ -function handleRequest(request, response) -{ - var count = parseInt(getState('count')); - if (!count || request.queryString == 'countreset') +function handleRequest(request, response) { + var count = parseInt(getState("count")); + if (!count || request.queryString == "countreset") { count = 0; + } - setState('count', count + 1 + ''); + setState("count", count + 1 + ""); - response.setHeader('Content-Type', 'text/html', false); - response.setHeader('Cache-Control', 'max-age=0'); - response.write('<html><body onload="opener.onChildLoad()" ' + - 'onunload="parseInt(\'0\')">' + - count + '</body></html>'); + response.setHeader("Content-Type", "text/html", false); + response.setHeader("Cache-Control", "max-age=0"); + response.write( + '<html><body onload="opener.onChildLoad()" ' + + "onunload=\"parseInt('0')\">" + + count + + "</body></html>" + ); } diff --git a/docshell/test/mochitest/form_submit.sjs b/docshell/test/mochitest/form_submit.sjs index 8f22caf4e677..6361f05646e6 100644 --- a/docshell/test/mochitest/form_submit.sjs +++ b/docshell/test/mochitest/form_submit.sjs @@ -1,7 +1,5 @@ "use strict"; -Cu.import("resource://gre/modules/Timer.jsm"); - const CC = Components.Constructor; const BinaryInputStream = CC( "@mozilla.org/binaryinputstream;1", @@ -23,7 +21,7 @@ async function handleRequest(request, response) { if (request.method !== "POST") { message = "bad"; } else { - log("Reading request") + log("Reading request"); let available = 0; let inputStream = new BinaryInputStream(request.bodyInputStream); while ((available = inputStream.available()) > 0) { @@ -31,10 +29,12 @@ async function handleRequest(request, response) { } } - log("Setting Headers") + log("Setting Headers"); response.setHeader("Content-Type", "text/html", false); response.setStatusLine(request.httpVersion, "200", "OK"); log("Writing body"); - response.write('<script>"use strict"; let target = opener ? opener : parent; target.postMessage("done", "*");</script>'); - log("Done") + response.write( + '<script>"use strict"; let target = opener ? opener : parent; target.postMessage("done", "*");</script>' + ); + log("Done"); } diff --git a/docshell/test/navigation/file_fragment_handling_during_load_frame2.sjs b/docshell/test/navigation/file_fragment_handling_during_load_frame2.sjs index e00d89694753..82ccac77553d 100644 --- a/docshell/test/navigation/file_fragment_handling_during_load_frame2.sjs +++ b/docshell/test/navigation/file_fragment_handling_during_load_frame2.sjs @@ -7,7 +7,7 @@ function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); // Wait a bit. var s = Date.now(); - while (Date.now() - s < 1000); + while (Date.now() - s < 1000) {} response.write(`<!DOCTYPE HTML> <html> @@ -16,4 +16,4 @@ function handleRequest(request, response) { </body> </html> `); -} \ No newline at end of file +} diff --git a/docshell/test/navigation/redirect_handlers.sjs b/docshell/test/navigation/redirect_handlers.sjs index 462ae77e5f45..c2b39e61c990 100644 --- a/docshell/test/navigation/redirect_handlers.sjs +++ b/docshell/test/navigation/redirect_handlers.sjs @@ -20,7 +20,10 @@ function handleRequest(request, response) { setState("sessionhistory_do_redirect", ""); response.setStatusLine("1.1", 302, "Found"); - response.setHeader("Location", - "file_session_history_on_redirect_2.html", false); + response.setHeader( + "Location", + "file_session_history_on_redirect_2.html", + false + ); } } diff --git a/docshell/test/navigation/slow.sjs b/docshell/test/navigation/slow.sjs index 89313e0534eb..5c6b9788308d 100644 --- a/docshell/test/navigation/slow.sjs +++ b/docshell/test/navigation/slow.sjs @@ -1,12 +1,16 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.processAsync(); - timer = Components.classes["@mozilla.org/timer;1"]. - createInstance(Components.interfaces.nsITimer); - timer.init(function() { - response.finish(); - }, 5000, Components.interfaces.nsITimer.TYPE_ONE_SHOT); + timer = Components.classes["@mozilla.org/timer;1"].createInstance( + Components.interfaces.nsITimer + ); + timer.init( + function() { + response.finish(); + }, + 5000, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); response.setStatusLine(null, 200, "OK"); response.setHeader("Content-Type", "text/plain", false); diff --git a/dom/abort/tests/slow.sjs b/dom/abort/tests/slow.sjs index feab0f1fceb6..d929f7abb007 100644 --- a/dom/abort/tests/slow.sjs +++ b/dom/abort/tests/slow.sjs @@ -1,11 +1,15 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.processAsync(); - timer = Components.classes["@mozilla.org/timer;1"]. - createInstance(Components.interfaces.nsITimer); - timer.init(function() { - response.write("Here the content. But slowly."); - response.finish(); - }, 1000, Components.interfaces.nsITimer.TYPE_ONE_SHOT); + timer = Components.classes["@mozilla.org/timer;1"].createInstance( + Components.interfaces.nsITimer + ); + timer.init( + function() { + response.write("Here the content. But slowly."); + response.finish(); + }, + 1000, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/dom/base/test/bug1576154.sjs b/dom/base/test/bug1576154.sjs index 2b05e5cdd3a0..d18151a8b461 100644 --- a/dom/base/test/bug1576154.sjs +++ b/dom/base/test/bug1576154.sjs @@ -1,8 +1,8 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine("1.1", 500, "Internal Server Error"); response.setHeader("Content-Type", "image/svg+xml", false); - let body = "<svg xmlns='http://www.w3.org/2000/svg' width='70' height='0'></svg>"; + let body = + "<svg xmlns='http://www.w3.org/2000/svg' width='70' height='0'></svg>"; response.bodyOutputStream.write(body, body.length); } diff --git a/dom/base/test/bug282547.sjs b/dom/base/test/bug282547.sjs index 8476a61724cd..a57a176038ca 100644 --- a/dom/base/test/bug282547.sjs +++ b/dom/base/test/bug282547.sjs @@ -1,8 +1,7 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(null, 401, "Unauthorized"); - response.setHeader("WWW-Authenticate", "basic realm=\"restricted\"", false); + response.setHeader("WWW-Authenticate", 'basic realm="restricted"', false); response.setHeader("Access-Control-Allow-Origin", "*", false); response.setHeader("Access-Control-Allow-Credentials", "true", false); diff --git a/dom/base/test/bug435425.sjs b/dom/base/test/bug435425.sjs index 3ef8c656ac1f..0e3ef38419cb 100644 --- a/dom/base/test/bug435425.sjs +++ b/dom/base/test/bug435425.sjs @@ -1,10 +1,11 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/plain", false); if (request.method == "GET") { response.write(request.queryString); @@ -14,11 +15,11 @@ function handleRequest(request, response) var avail; var bytes = []; - while ((avail = body.available()) > 0) + while ((avail = body.available()) > 0) { Array.prototype.push.apply(bytes, body.readByteArray(avail)); + } var data = String.fromCharCode.apply(null, bytes); response.bodyOutputStream.write(data, data.length); } } - diff --git a/dom/base/test/bug435425_redirect.sjs b/dom/base/test/bug435425_redirect.sjs index e8c8f2aa4a77..14fec62331c8 100644 --- a/dom/base/test/bug435425_redirect.sjs +++ b/dom/base/test/bug435425_redirect.sjs @@ -1,6 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(null, 302, "Moved"); response.setHeader("Location", "http://nosuchdomain.localhost", false); } - diff --git a/dom/base/test/bug444546.sjs b/dom/base/test/bug444546.sjs index b98588d40242..5861eeb25ce0 100644 --- a/dom/base/test/bug444546.sjs +++ b/dom/base/test/bug444546.sjs @@ -1,20 +1,21 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/plain", false); var body = new BinaryInputStream(request.bodyInputStream); var avail; var bytes = []; - while ((avail = body.available()) > 0) + while ((avail = body.available()) > 0) { Array.prototype.push.apply(bytes, body.readByteArray(avail)); + } var data = String.fromCharCode.apply(null, bytes); response.bodyOutputStream.write(data, data.length); } - diff --git a/dom/base/test/bug457746.sjs b/dom/base/test/bug457746.sjs index 02135c0a5c23..caa4433cdedc 100644 --- a/dom/base/test/bug457746.sjs +++ b/dom/base/test/bug457746.sjs @@ -1,11 +1,10 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/plain; charset=ISO-8859-1", false); - const body = [0xC1]; - var bos = Components.classes["@mozilla.org/binaryoutputstream;1"] - .createInstance(Components.interfaces.nsIBinaryOutputStream); + const body = [0xc1]; + var bos = Components.classes[ + "@mozilla.org/binaryoutputstream;1" + ].createInstance(Components.interfaces.nsIBinaryOutputStream); bos.setOutputStream(response.bodyOutputStream); bos.writeByteArray(body); } - diff --git a/dom/base/test/bug461735-redirect1.sjs b/dom/base/test/bug461735-redirect1.sjs index a31eb066a3ba..cf00e8b8c43c 100644 --- a/dom/base/test/bug461735-redirect1.sjs +++ b/dom/base/test/bug461735-redirect1.sjs @@ -1,4 +1,8 @@ function handleRequest(request, response) { response.setStatusLine(null, 302, "Found"); - response.setHeader("Location", "http://example.com/tests/dom/base/test/bug461735-post-redirect.js", false); + response.setHeader( + "Location", + "http://example.com/tests/dom/base/test/bug461735-post-redirect.js", + false + ); } diff --git a/dom/base/test/bug461735-redirect2.sjs b/dom/base/test/bug461735-redirect2.sjs index cfd9299785cc..416882003c26 100644 --- a/dom/base/test/bug461735-redirect2.sjs +++ b/dom/base/test/bug461735-redirect2.sjs @@ -1,4 +1,8 @@ function handleRequest(request, response) { response.setStatusLine(null, 302, "Found"); - response.setHeader("Location", "http://mochi.test:8888/tests/dom/base/test/bug461735-post-redirect.js", false); + response.setHeader( + "Location", + "http://mochi.test:8888/tests/dom/base/test/bug461735-post-redirect.js", + false + ); } diff --git a/dom/base/test/bug466080.sjs b/dom/base/test/bug466080.sjs index 11646fa0f056..df3687000b12 100644 --- a/dom/base/test/bug466080.sjs +++ b/dom/base/test/bug466080.sjs @@ -1,18 +1,14 @@ +function handleRequest(request, response) { + var body = "loaded"; + var origin = "localhost"; + try { + var origin = request.getHeader("Origin"); + } catch (e) {} -function handleRequest(request, response) -{ - var body = "loaded"; - var origin = "localhost"; - try { - var origin = request.getHeader("Origin"); - } catch(e) {} - - response.setHeader("Access-Control-Allow-Origin", - origin, - false); - response.setHeader("Access-Control-Allow-Credentials", "true", false); - response.setHeader("Access-Control-Allow-Methods", "XMETHOD", false); - response.setHeader("Connection", "Keep-alive", false); + response.setHeader("Access-Control-Allow-Origin", origin, false); + response.setHeader("Access-Control-Allow-Credentials", "true", false); + response.setHeader("Access-Control-Allow-Methods", "XMETHOD", false); + response.setHeader("Connection", "Keep-alive", false); - response.bodyOutputStream.write(body, body.length); + response.bodyOutputStream.write(body, body.length); } diff --git a/dom/base/test/bug475156.sjs b/dom/base/test/bug475156.sjs index e64863616056..9c54b69f657d 100644 --- a/dom/base/test/bug475156.sjs +++ b/dom/base/test/bug475156.sjs @@ -1,27 +1,23 @@ -function handleRequest(request, response) -{ - if (request.queryString == "") - { - var etag = request.hasHeader("If-Match") ? request.getHeader("If-Match") : null; - if (!etag || etag == getState("etag")) - { +function handleRequest(request, response) { + if (request.queryString == "") { + var etag = request.hasHeader("If-Match") + ? request.getHeader("If-Match") + : null; + if (!etag || etag == getState("etag")) { response.setStatusLine(request.httpVersion, 200, "Ok"); response.setHeader("Content-Type", "text/html"); response.setHeader("ETag", getState("etag")); response.setHeader("Cache-control", "max-age=36000"); response.write(getState("etag")); + } else if (etag) { + response.setStatusLine(request.httpVersion, 412, "Precondition Failed"); } - else if (etag) - { - response.setStatusLine(request.httpVersion, 412, "Precondition Failed"); - } - } - else - { + } else { var etag = request.queryString.match(/^etag=(.*)$/); - if (etag) + if (etag) { setState("etag", etag[1]); - + } + response.setStatusLine(request.httpVersion, 204, "No content"); } } diff --git a/dom/base/test/bug482935.sjs b/dom/base/test/bug482935.sjs index daadb5ab2fae..b480c40e411d 100644 --- a/dom/base/test/bug482935.sjs +++ b/dom/base/test/bug482935.sjs @@ -3,7 +3,7 @@ function handleRequest(request, response) { try { body = request.getHeader("X-Request"); - } catch(e) { + } catch (e) { body = "request.getHeader() failed! Exception: " + e; } diff --git a/dom/base/test/bug540854.sjs b/dom/base/test/bug540854.sjs index 3c147a135e9a..5861eeb25ce0 100644 --- a/dom/base/test/bug540854.sjs +++ b/dom/base/test/bug540854.sjs @@ -1,18 +1,20 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/plain", false); var body = new BinaryInputStream(request.bodyInputStream); var avail; var bytes = []; - while ((avail = body.available()) > 0) + while ((avail = body.available()) > 0) { Array.prototype.push.apply(bytes, body.readByteArray(avail)); + } var data = String.fromCharCode.apply(null, bytes); response.bodyOutputStream.write(data, data.length); diff --git a/dom/base/test/bug638112.sjs b/dom/base/test/bug638112.sjs index 36812ce4bcb1..3fb6fb90f0d3 100644 --- a/dom/base/test/bug638112.sjs +++ b/dom/base/test/bug638112.sjs @@ -1,26 +1,24 @@ -function getInputStream(path) -{ - var file = Components.classes["@mozilla.org/file/directory_service;1"]. - getService(Components.interfaces.nsIProperties). - get("CurWorkD", Components.interfaces.nsIFile); - var fis = Components.classes['@mozilla.org/network/file-input-stream;1']. - createInstance(Components.interfaces.nsIFileInputStream); +function getInputStream(path) { + var file = Components.classes["@mozilla.org/file/directory_service;1"] + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); + var fis = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); var split = path.split("/"); - for(var i = 0; i < split.length; ++i) { + for (var i = 0; i < split.length; ++i) { file.append(split[i]); } fis.init(file, -1, -1, false); return fis; } - - -function handleRequest(request, response) -{ - var inputStream = getInputStream("tests/dom/base/test/bug638112-response.txt") +function handleRequest(request, response) { + var inputStream = getInputStream( + "tests/dom/base/test/bug638112-response.txt" + ); response.seizePower(); - response.bodyOutputStream.writeFrom(inputStream, - inputStream.available()); + response.bodyOutputStream.writeFrom(inputStream, inputStream.available()); response.finish(); inputStream.close(); } diff --git a/dom/base/test/bug704320.sjs b/dom/base/test/bug704320.sjs index e0f54953328d..f63b5d3a7e5d 100644 --- a/dom/base/test/bug704320.sjs +++ b/dom/base/test/bug704320.sjs @@ -1,20 +1,46 @@ -var BASE_URL = 'example.com/tests/dom/base/test/bug704320.sjs'; +var BASE_URL = "example.com/tests/dom/base/test/bug704320.sjs"; function createTestUrl(schemeFrom, schemeTo, policy, action, type) { - return schemeTo + '://' + BASE_URL + '?' + - 'action=' + action + '&' + - 'scheme=' + schemeFrom + '-to-' + schemeTo + '&' + - 'policy=' + policy + '&' + - 'type=' + type; + return ( + schemeTo + + "://" + + BASE_URL + + "?" + + "action=" + + action + + "&" + + "scheme=" + + schemeFrom + + "-to-" + + schemeTo + + "&" + + "policy=" + + policy + + "&" + + "type=" + + type + ); } function create2ndLevelIframeUrl(schemeFrom, schemeTo, policy, type) { - return schemeFrom + '://' + BASE_URL + '?' + - 'action=create-2nd-level-iframe&' + - 'scheme-from=' + schemeFrom + '&' + - 'scheme-to=' + schemeTo + '&' + - 'policy=' + policy + '&' + - 'type=' + type; + return ( + schemeFrom + + "://" + + BASE_URL + + "?" + + "action=create-2nd-level-iframe&" + + "scheme-from=" + + schemeFrom + + "&" + + "scheme-to=" + + schemeTo + + "&" + + "policy=" + + policy + + "&" + + "type=" + + type + ); } // Creates the following test cases for the specified scheme and referrer @@ -46,68 +72,113 @@ function create2ndLevelIframeUrl(schemeFrom, schemeTo, policy, type) { // results. function createTest(schemeFrom, schemeTo, policy, optionalEarlierPolicy) { var _createTestUrl = createTestUrl.bind( - null, schemeFrom, schemeTo, policy, 'test'); + null, + schemeFrom, + schemeTo, + policy, + "test" + ); var _create2ndLevelIframeUrl = create2ndLevelIframeUrl.bind( - null, schemeFrom, schemeTo, policy); + null, + schemeFrom, + schemeTo, + policy + ); - var metaReferrerPolicyString = ''; - if (optionalEarlierPolicy && optionalEarlierPolicy != '') { - metaReferrerPolicyString += '<meta name="referrer" content="' + optionalEarlierPolicy + '">\n'; + var metaReferrerPolicyString = ""; + if (optionalEarlierPolicy && optionalEarlierPolicy != "") { + metaReferrerPolicyString += + '<meta name="referrer" content="' + optionalEarlierPolicy + '">\n'; } metaReferrerPolicyString += '<meta name="referrer" content="' + policy + '">'; - return '<!DOCTYPE HTML>\n\ + return ( + "<!DOCTYPE HTML>\n\ <html>\n\ <head>\n\ - '+metaReferrerPolicyString+'\n\ - <link rel="stylesheet" type="text/css" href="' + _createTestUrl('stylesheet') + '">\n\ + " + + metaReferrerPolicyString + + '\n\ + <link rel="stylesheet" type="text/css" href="' + + _createTestUrl("stylesheet") + + '">\n\ <style type="text/css">\n\ - @import "' + _createTestUrl('import-css') + '";\n\ + @import "' + + _createTestUrl("import-css") + + '";\n\ @font-face {\n\ font-family: "Fake Serif Bold";\n\ - src: url("' + _createTestUrl('font-face') + '");\n\ + src: url("' + + _createTestUrl("font-face") + + '");\n\ }\n\ body {\n\ font-family: "Fake Serif Bold", serif;\n\ - background: url("' + _createTestUrl('bg-url') + '");\n\ + background: url("' + + _createTestUrl("bg-url") + + '");\n\ }\n\ </style>\n\ </head>\n\ <body>\n\ - <script src="' + _createTestUrl('script') + '"></script>\n\ - <img src="' + _createTestUrl('img') + '"></img>\n\ - <iframe src="' + _createTestUrl('iframe') + '"></iframe>\n\ - <audio src="' + _createTestUrl('audio') + '"></audio>\n\ - <video src="' + _createTestUrl('video') + '"></video>\n\ - <object type="bogus" data="' + _createTestUrl('object') + '"></object>\n\ - <object type="image/svg+xml" data="' + _createTestUrl('object-svg') + '"></object>\n\ - <a id="link" href="' + _createTestUrl('link') + '" ping="' + _createTestUrl('link-ping') + '"></a>\n\ - <iframe src="' + _create2ndLevelIframeUrl('form') + '"></iframe>\n\ - <iframe src="' + _create2ndLevelIframeUrl('window.location') + '"></iframe>\n\ + <script src="' + + _createTestUrl("script") + + '"></script>\n\ + <img src="' + + _createTestUrl("img") + + '"></img>\n\ + <iframe src="' + + _createTestUrl("iframe") + + '"></iframe>\n\ + <audio src="' + + _createTestUrl("audio") + + '"></audio>\n\ + <video src="' + + _createTestUrl("video") + + '"></video>\n\ + <object type="bogus" data="' + + _createTestUrl("object") + + '"></object>\n\ + <object type="image/svg+xml" data="' + + _createTestUrl("object-svg") + + '"></object>\n\ + <a id="link" href="' + + _createTestUrl("link") + + '" ping="' + + _createTestUrl("link-ping") + + '"></a>\n\ + <iframe src="' + + _create2ndLevelIframeUrl("form") + + '"></iframe>\n\ + <iframe src="' + + _create2ndLevelIframeUrl("window.location") + + '"></iframe>\n\ <script>\n\ var _testFinished = 0\n\ (function() {\n\ var x = new XMLHttpRequest();\n\ - x.open("GET", "' + _createTestUrl('xmlhttprequest') + '");\n\ + x.open("GET", "' + + _createTestUrl("xmlhttprequest") + + '");\n\ x.send();\n\ })();\n\ (function() {\n\ - var eventSource = new EventSource("' + _createTestUrl('eventsource') + '");\n\ + var eventSource = new EventSource("' + + _createTestUrl("eventsource") + + '");\n\ })();' + - - // LOAD EVENT (most of the tests) - // fires when the resources for the page are loaded - 'var _isLoaded = false;\n\ + // LOAD EVENT (most of the tests) + // fires when the resources for the page are loaded + 'var _isLoaded = false;\n\ window.addEventListener("load", function() {\n\ this._isLoaded = true;\n\ this.checkForFinish();\n\ }.bind(window), false);' + - - // WINDOW.OPEN test - // listen for incoming status from window.open, close the window - // and check if we're done. - 'var _openedWindowLoaded = false;\n\ + // WINDOW.OPEN test + // listen for incoming status from window.open, close the window + // and check if we're done. + 'var _openedWindowLoaded = false;\n\ window.addEventListener("message", function(message) {\n\ if (message.data == "window.open") {\n\ this._openedWindowLoaded = true;\n\ @@ -115,13 +186,14 @@ function createTest(schemeFrom, schemeTo, policy, optionalEarlierPolicy) { this.checkForFinish();\n\ }\n\ }.bind(window), false);\n\ - var win = window.open("' + _createTestUrl('window.open') + '", "");' + - - // called by the two things that must complete: window.open page - // and the window load event. When both are complete, this - // "finishes" the iframe subtest by clicking the link. - // _testFinished avoids calling this function twice (which may happen) - 'function checkForFinish() {\n\ + var win = window.open("' + + _createTestUrl("window.open") + + '", "");' + + // called by the two things that must complete: window.open page + // and the window load event. When both are complete, this + // "finishes" the iframe subtest by clicking the link. + // _testFinished avoids calling this function twice (which may happen) + 'function checkForFinish() {\n\ if (window._isLoaded && window._openedWindowLoaded && !window._testFinished) {\n\ window._testFinished = 1;\n\ document.getElementById("link").click();\n\ @@ -129,59 +201,87 @@ function createTest(schemeFrom, schemeTo, policy, optionalEarlierPolicy) { }\n\ </script>\n\ </body>\n\ - </html>'; + </html>' + ); } function createIframedFormTest(schemeFrom, schemeTo, policy) { - var actionUrl = schemeTo + '://' + BASE_URL; + var actionUrl = schemeTo + "://" + BASE_URL; - return '<!DOCTYPE HTML>\n\ + return ( + '<!DOCTYPE HTML>\n\ <html>\n\ <head>\n\ - <meta name="referrer" content="' + policy + '">\n\ + <meta name="referrer" content="' + + policy + + '">\n\ </head>\n\ <body>\n\ - <form id="form" action="' + actionUrl + '">\n\ + <form id="form" action="' + + actionUrl + + '">\n\ <input type="hidden" name="action" value="test">\n\ - <input type="hidden" name="scheme" value="' + schemeFrom + '-to-' + schemeTo + '">\n\ - <input type="hidden" name="policy" value="' + policy + '">\n\ + <input type="hidden" name="scheme" value="' + + schemeFrom + + "-to-" + + schemeTo + + '">\n\ + <input type="hidden" name="policy" value="' + + policy + + '">\n\ <input type="hidden" name="type" value="form">\n\ </form>\n\ <script>\n\ document.getElementById("form").submit();\n\ </script>\n\ </body>\n\ - </html>'; + </html>' + ); } function createIframedWindowLocationTest(schemeFrom, schemeTo, policy) { var url = createTestUrl( - schemeFrom, schemeTo, policy, 'test', 'window.location'); + schemeFrom, + schemeTo, + policy, + "test", + "window.location" + ); - return '<!DOCTYPE HTML>\n\ + return ( + '<!DOCTYPE HTML>\n\ <html>\n\ <head>\n\ - <meta name="referrer" content="' + policy + '">\n\ + <meta name="referrer" content="' + + policy + + '">\n\ </head>\n\ <body>\n\ <script>\n\ - window.location = "' + url + '";\n\ + window.location = "' + + url + + '";\n\ </script>\n\ </body>\n\ - </html>'; + </html>' + ); } function createPolicyTest(policy, optionalEarlierPolicy) { - var metaReferrerPolicyString = ''; - if (optionalEarlierPolicy && optionalEarlierPolicy != '') { - metaReferrerPolicyString += '<meta name="referrer" content="' + optionalEarlierPolicy + '">\n'; + var metaReferrerPolicyString = ""; + if (optionalEarlierPolicy && optionalEarlierPolicy != "") { + metaReferrerPolicyString += + '<meta name="referrer" content="' + optionalEarlierPolicy + '">\n'; } metaReferrerPolicyString += '<meta name="referrer" content="' + policy + '">'; - return '<!DOCTYPE HTML>\n\ + return ( + "<!DOCTYPE HTML>\n\ <html>\n\ <head>\n\ - '+metaReferrerPolicyString+'\n\ + " + + metaReferrerPolicyString + + '\n\ <script type="text/javascript" src="/tests/dom/base/test/file_bug704320_preload_common.js"></script>\n\ </head>\n\ <body>\n\ @@ -190,53 +290,55 @@ function createPolicyTest(policy, optionalEarlierPolicy) { <img src="http://example.com/tests/dom/base/test/bug704320_counter.sjs?type=img"\n\ onload="incrementLoad2(\'img\', 2);">\n\ </body>\n\ - </html>'; + </html>' + ); } function handleRequest(request, response) { - var sharedKey = 'bug704320.sjs'; - var params = request.queryString.split('&'); - var action = params[0].split('=')[1]; + var sharedKey = "bug704320.sjs"; + var params = request.queryString.split("&"); + var action = params[0].split("=")[1]; - if (action === 'create-1st-level-iframe') { + if (action === "create-1st-level-iframe") { // ?action=create-1st-level-iframe&scheme-from=http&scheme-to=https&policy=origin - var schemeFrom = params[1].split('=')[1]; - var schemeTo = params[2].split('=')[1]; - var policy = params[3].split('=')[1]; - var optionalEarlierPolicy = ''; + var schemeFrom = params[1].split("=")[1]; + var schemeTo = params[2].split("=")[1]; + var policy = params[3].split("=")[1]; + var optionalEarlierPolicy = ""; if (params[4]) { - optionalEarlierPolicy = params[4].split('=')[1]; + optionalEarlierPolicy = params[4].split("=")[1]; } - response.setHeader('Content-Type', 'text/html; charset=utf-8', false); - response.setHeader('Cache-Control', 'no-cache', false); - response.write(createTest(schemeFrom, schemeTo, policy, optionalEarlierPolicy)); - } - else if (action === 'create-2nd-level-iframe') { + response.setHeader("Content-Type", "text/html; charset=utf-8", false); + response.setHeader("Cache-Control", "no-cache", false); + response.write( + createTest(schemeFrom, schemeTo, policy, optionalEarlierPolicy) + ); + } else if (action === "create-2nd-level-iframe") { // ?action=create-2nd-level-iframe&scheme-from=http&scheme-to=https&policy=origin&type=form" - var schemeFrom = params[1].split('=')[1]; - var schemeTo = params[2].split('=')[1]; - var policy = params[3].split('=')[1]; - var type = params[4].split('=')[1]; + var schemeFrom = params[1].split("=")[1]; + var schemeTo = params[2].split("=")[1]; + var policy = params[3].split("=")[1]; + var type = params[4].split("=")[1]; - response.setHeader('Content-Type', 'text/html; charset=utf-8', false); - response.setHeader('Cache-Control', 'no-cache', false); + response.setHeader("Content-Type", "text/html; charset=utf-8", false); + response.setHeader("Cache-Control", "no-cache", false); - if (type === 'form') { + if (type === "form") { response.write(createIframedFormTest(schemeFrom, schemeTo, policy)); - } else if (type === 'window.location') { - response.write(createIframedWindowLocationTest( - schemeFrom, schemeTo, policy)); + } else if (type === "window.location") { + response.write( + createIframedWindowLocationTest(schemeFrom, schemeTo, policy) + ); } - } - else if (action === 'test') { + } else if (action === "test") { // ?action=test&scheme=http-to-https&policy=origin&type=img - var scheme = params[1].split('=')[1]; - var policy = params[2].split('=')[1]; - var type = params[3].split('=')[1]; + var scheme = params[1].split("=")[1]; + var policy = params[2].split("=")[1]; + var type = params[3].split("=")[1]; var result = getSharedState(sharedKey); - if (result === '') { + if (result === "") { result = {}; } else { result = JSON.parse(result); @@ -250,42 +352,43 @@ function handleRequest(request, response) { result[type][scheme] = {}; } - if (request.hasHeader('Referer')) { - result[type][scheme][policy] = request.getHeader('Referer'); + if (request.hasHeader("Referer")) { + result[type][scheme][policy] = request.getHeader("Referer"); } else { - result[type][scheme][policy] = ''; + result[type][scheme][policy] = ""; } setSharedState(sharedKey, JSON.stringify(result)); - if (type === 'link') { - var loc = 'https://example.com/tests/dom/base/test/file_bug704320_redirect.html'; - response.setStatusLine('1.1', 302, 'Found'); - response.setHeader('Location', loc, false); + if (type === "link") { + var loc = + "https://example.com/tests/dom/base/test/file_bug704320_redirect.html"; + response.setStatusLine("1.1", 302, "Found"); + response.setHeader("Location", loc, false); } - if (type === 'window.open') { - response.setHeader('Cache-Control', 'no-cache', false); - response.setHeader('Content-Type', 'text/html', false); - response.write('<html><body><script>' - + 'window.opener.postMessage("window.open", "*");' - + '</script></body></html>'); + if (type === "window.open") { + response.setHeader("Cache-Control", "no-cache", false); + response.setHeader("Content-Type", "text/html", false); + response.write( + "<html><body><script>" + + 'window.opener.postMessage("window.open", "*");' + + "</script></body></html>" + ); } - } - else if (action === 'get-test-results') { + } else if (action === "get-test-results") { // ?action=get-result - response.setHeader('Cache-Control', 'no-cache', false); - response.setHeader('Content-Type', 'text/plain', false); + response.setHeader("Cache-Control", "no-cache", false); + response.setHeader("Content-Type", "text/plain", false); response.write(getSharedState(sharedKey)); - } - else if (action === 'generate-policy-test') { + } else if (action === "generate-policy-test") { // ?action=generate-policy-test&policy=b64-encoded-string - response.setHeader('Cache-Control', 'no-cache', false); - response.setHeader('Content-Type', 'text/html', false); - var policy = unescape(params[1].split('=')[1]); - var optionalEarlierPolicy = ''; + response.setHeader("Cache-Control", "no-cache", false); + response.setHeader("Content-Type", "text/html", false); + var policy = unescape(params[1].split("=")[1]); + var optionalEarlierPolicy = ""; if (params[2]) { - optionalEarlierPolicy = params[2].split('=')[1]; + optionalEarlierPolicy = params[2].split("=")[1]; } response.write(createPolicyTest(policy, optionalEarlierPolicy)); diff --git a/dom/base/test/bug704320_counter.sjs b/dom/base/test/bug704320_counter.sjs index 907d2249328a..1cd3fe8ff838 100644 --- a/dom/base/test/bug704320_counter.sjs +++ b/dom/base/test/bug704320_counter.sjs @@ -1,44 +1,47 @@ // Handle counting loads for bug 704320. -const SHARED_KEY="bug704320_counter"; -const DEFAULT_STATE = {'css': {'count': 0, 'referrers': []}, - 'img': {'count': 0, 'referrers': []}, - 'js': {'count': 0, 'referrers': []}}; -const TYPE_MAP = {'css': 'text/css', - 'js': 'application/javascript', - 'img': 'image/png', - 'html': 'text/html'}; +const SHARED_KEY = "bug704320_counter"; +const DEFAULT_STATE = { + css: { count: 0, referrers: [] }, + img: { count: 0, referrers: [] }, + js: { count: 0, referrers: [] }, +}; +const TYPE_MAP = { + css: "text/css", + js: "application/javascript", + img: "image/png", + html: "text/html", +}; // Writes an image to the response -function WriteOutImage(response) -{ +function WriteOutImage(response) { var file = Components.classes["@mozilla.org/file/directory_service;1"] - .getService(Components.interfaces.nsIProperties) - .get("CurWorkD", Components.interfaces.nsIFile); + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); file.append("tests"); file.append("image"); file.append("test"); file.append("mochitest"); - file.append('blue.png'); + file.append("blue.png"); - var fileStream = Components.classes['@mozilla.org/network/file-input-stream;1'] - .createInstance(Components.interfaces.nsIFileInputStream); + var fileStream = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); fileStream.init(file, 1, 0, false); response.bodyOutputStream.writeFrom(fileStream, fileStream.available()); } -function handleRequest(request, response) -{ +function handleRequest(request, response) { var query = {}; - request.queryString.split('&').forEach(function (val) { - var [name, value] = val.split('='); + request.queryString.split("&").forEach(function(val) { + var [name, value] = val.split("="); query[name] = unescape(value); }); var referrerLevel = "none"; - if (request.hasHeader('Referer')) { - let referrer = request.getHeader('Referer'); + if (request.hasHeader("Referer")) { + let referrer = request.getHeader("Referer"); if (referrer.indexOf("bug704320") > 0) { referrerLevel = "full"; } else if (referrer == "http://mochi.test:8888/") { @@ -47,7 +50,7 @@ function handleRequest(request, response) } var state = getSharedState(SHARED_KEY); - if (state === '') { + if (state === "") { state = DEFAULT_STATE; } else { state = JSON.parse(state); @@ -55,7 +58,6 @@ function handleRequest(request, response) response.setStatusLine(request.httpVersion, 200, "OK"); - //avoid confusing cache behaviors response.setHeader("Cache-Control", "no-cache", false); @@ -73,20 +75,20 @@ function handleRequest(request, response) return; } - if ('type' in query) { + if ("type" in query) { state[query.type].count++; response.setHeader("Content-Type", TYPE_MAP[query.type], false); if (state[query.type].referrers.indexOf(referrerLevel) < 0) { state[query.type].referrers.push(referrerLevel); } - if (query.type == 'img') { + if (query.type == "img") { WriteOutImage(response); } } - if ('content' in query) { - response.write(unescape(query['content'])); + if ("content" in query) { + response.write(unescape(query.content)); } setSharedState(SHARED_KEY, JSON.stringify(state)); diff --git a/dom/base/test/bug819051.sjs b/dom/base/test/bug819051.sjs index 07f6a041d6f6..b880d4efe39a 100644 --- a/dom/base/test/bug819051.sjs +++ b/dom/base/test/bug819051.sjs @@ -1,7 +1,9 @@ -function handleRequest(request, response) -{ - response.setStatusLine(request.httpVersion, 200, "Ok"); - response.setHeader("X-appended-result", request.getHeader("X-appended-to-this")); - response.setHeader("X-Accept-Result", request.getHeader("Accept")); - response.write(""); +function handleRequest(request, response) { + response.setStatusLine(request.httpVersion, 200, "Ok"); + response.setHeader( + "X-appended-result", + request.getHeader("X-appended-to-this") + ); + response.setHeader("X-Accept-Result", request.getHeader("Accept")); + response.write(""); } diff --git a/dom/base/test/chrome/bug421622-referer.sjs b/dom/base/test/chrome/bug421622-referer.sjs index 850b320a2346..14cab00de405 100644 --- a/dom/base/test/chrome/bug421622-referer.sjs +++ b/dom/base/test/chrome/bug421622-referer.sjs @@ -2,7 +2,8 @@ function handleRequest(request, response) { response.setHeader("Content-Type", "text/plain", false); response.setHeader("Cache-Control", "no-cache", false); - var referer = request.hasHeader("Referer") ? request.getHeader("Referer") - : ""; + var referer = request.hasHeader("Referer") + ? request.getHeader("Referer") + : ""; response.write("Referer: " + referer); } diff --git a/dom/base/test/chrome/bug884693.sjs b/dom/base/test/chrome/bug884693.sjs index 0b865d7e528d..f2650753f26a 100644 --- a/dom/base/test/chrome/bug884693.sjs +++ b/dom/base/test/chrome/bug884693.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { let [status, statusText, encodedBody] = request.queryString.split("&"); let body = decodeURIComponent(encodedBody); response.setStatusLine(request.httpVersion, status, statusText); diff --git a/dom/base/test/delayedServerEvents.sjs b/dom/base/test/delayedServerEvents.sjs index 5d79b6b69c1a..364898ee9524 100644 --- a/dom/base/test/delayedServerEvents.sjs +++ b/dom/base/test/delayedServerEvents.sjs @@ -1,10 +1,18 @@ // this will take strings_to_send.length*500 ms = 5 sec var timer = null; -var strings_to_send = ["retry:999999999\ndata\r\n\nda", "ta", ":", "de", "layed1\n\n", - "", - "", - "data:delayed2\n\n", "", ""]; +var strings_to_send = [ + "retry:999999999\ndata\r\n\nda", + "ta", + ":", + "de", + "layed1\n\n", + "", + "", + "data:delayed2\n\n", + "", + "", +]; var resp = null; function sendNextString() { @@ -29,7 +37,7 @@ function handleRequest(request, response) { var bytes = strings_to_send.reduce((len, s) => len + s.length, 0); response.seizePower(); - response.write("HTTP/1.1 200 OK\r\n") + response.write("HTTP/1.1 200 OK\r\n"); response.write(`Content-Length: ${bytes}\r\n`); response.write("Content-Type: text/event-stream; charset=utf-8\r\n"); response.write("Cache-Control: no-cache, must-revalidate\r\n"); @@ -37,6 +45,12 @@ function handleRequest(request, response) { resp = response; - timer = Components.classes["@mozilla.org/timer;1"].createInstance(Components.interfaces.nsITimer); - timer.initWithCallback(sendNextString, 500, Components.interfaces.nsITimer.TYPE_REPEATING_SLACK); + timer = Components.classes["@mozilla.org/timer;1"].createInstance( + Components.interfaces.nsITimer + ); + timer.initWithCallback( + sendNextString, + 500, + Components.interfaces.nsITimer.TYPE_REPEATING_SLACK + ); } diff --git a/dom/base/test/file_bug1250148.sjs b/dom/base/test/file_bug1250148.sjs index a85347896bc3..63e645389a07 100644 --- a/dom/base/test/file_bug1250148.sjs +++ b/dom/base/test/file_bug1250148.sjs @@ -1,7 +1,9 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); function utf8decode(s) { return decodeURIComponent(escape(s)); @@ -23,35 +25,46 @@ function handleRequest(request, response) { if (request.method == "POST") { var contentTypeParams = {}; - request.getHeader("Content-Type").split(/\s*\;\s*/).forEach(function(s) { - if (s.indexOf('=') >= 0) { - let [name, value] = s.split('='); - contentTypeParams[name] = value; - } - else { - contentTypeParams[''] = s; - } - }); - - if (contentTypeParams[''] == "multipart/form-data" && - request.queryString == "") { - requestBody.split("--" + contentTypeParams.boundary).slice(1, -1).forEach(function (s) { - - let headers = {}; - let headerEnd = s.indexOf("\r\n\r\n"); - s.substr(2, headerEnd-2).split("\r\n").forEach(function(s) { - // We're assuming UTF8 for now - let [name, value] = s.split(': '); - headers[name] = utf8decode(value); - }); - - let body = s.substring(headerEnd + 4, s.length - 2); - if (!headers["Content-Type"] || headers["Content-Type"] == "text/plain") { - // We're assuming UTF8 for now - body = utf8decode(body); + request + .getHeader("Content-Type") + .split(/\s*\;\s*/) + .forEach(function(s) { + if (s.indexOf("=") >= 0) { + let [name, value] = s.split("="); + contentTypeParams[name] = value; + } else { + contentTypeParams[""] = s; } - result.push({ headers: headers, body: body}); }); + + if ( + contentTypeParams[""] == "multipart/form-data" && + request.queryString == "" + ) { + requestBody + .split("--" + contentTypeParams.boundary) + .slice(1, -1) + .forEach(function(s) { + let headers = {}; + let headerEnd = s.indexOf("\r\n\r\n"); + s.substr(2, headerEnd - 2) + .split("\r\n") + .forEach(function(s) { + // We're assuming UTF8 for now + let [name, value] = s.split(": "); + headers[name] = utf8decode(value); + }); + + let body = s.substring(headerEnd + 4, s.length - 2); + if ( + !headers["Content-Type"] || + headers["Content-Type"] == "text/plain" + ) { + // We're assuming UTF8 for now + body = utf8decode(body); + } + result.push({ headers, body }); + }); } } diff --git a/dom/base/test/file_bug1268962.sjs b/dom/base/test/file_bug1268962.sjs index 42b1ecef3d3e..1aa06fadaa23 100644 --- a/dom/base/test/file_bug1268962.sjs +++ b/dom/base/test/file_bug1268962.sjs @@ -1,90 +1,92 @@ // Test server for bug 1268962 -'use strict'; +"use strict"; Components.utils.importGlobalProperties(["URLSearchParams"]); const HTTPStatus = new Map([ - [100, 'Continue'], - [101, 'Switching Protocol'], - [200, 'OK'], - [201, 'Created'], - [202, 'Accepted'], - [203, 'Non-Authoritative Information'], - [204, 'No Content'], - [205, 'Reset Content'], - [206, 'Partial Content'], - [300, 'Multiple Choice'], - [301, 'Moved Permanently'], - [302, 'Found'], - [303, 'See Other'], - [304, 'Not Modified'], - [305, 'Use Proxy'], - [306, 'unused'], - [307, 'Temporary Redirect'], - [308, 'Permanent Redirect'], - [400, 'Bad Request'], - [401, 'Unauthorized'], - [402, 'Payment Required'], - [403, 'Forbidden'], - [404, 'Not Found'], - [405, 'Method Not Allowed'], - [406, 'Not Acceptable'], - [407, 'Proxy Authentication Required'], - [408, 'Request Timeout'], - [409, 'Conflict'], - [410, 'Gone'], - [411, 'Length Required'], - [412, 'Precondition Failed'], - [413, 'Request Entity Too Large'], - [414, 'Request-URI Too Long'], - [415, 'Unsupported Media Type'], - [416, 'Requested Range Not Satisfiable'], - [417, 'Expectation Failed'], - [500, 'Internal Server Error'], - [501, 'Not Implemented'], - [502, 'Bad Gateway'], - [503, 'Service Unavailable'], - [504, 'Gateway Timeout'], - [505, 'HTTP Version Not Supported'] + [100, "Continue"], + [101, "Switching Protocol"], + [200, "OK"], + [201, "Created"], + [202, "Accepted"], + [203, "Non-Authoritative Information"], + [204, "No Content"], + [205, "Reset Content"], + [206, "Partial Content"], + [300, "Multiple Choice"], + [301, "Moved Permanently"], + [302, "Found"], + [303, "See Other"], + [304, "Not Modified"], + [305, "Use Proxy"], + [306, "unused"], + [307, "Temporary Redirect"], + [308, "Permanent Redirect"], + [400, "Bad Request"], + [401, "Unauthorized"], + [402, "Payment Required"], + [403, "Forbidden"], + [404, "Not Found"], + [405, "Method Not Allowed"], + [406, "Not Acceptable"], + [407, "Proxy Authentication Required"], + [408, "Request Timeout"], + [409, "Conflict"], + [410, "Gone"], + [411, "Length Required"], + [412, "Precondition Failed"], + [413, "Request Entity Too Large"], + [414, "Request-URI Too Long"], + [415, "Unsupported Media Type"], + [416, "Requested Range Not Satisfiable"], + [417, "Expectation Failed"], + [500, "Internal Server Error"], + [501, "Not Implemented"], + [502, "Bad Gateway"], + [503, "Service Unavailable"], + [504, "Gateway Timeout"], + [505, "HTTP Version Not Supported"], ]); -const SAME_ORIGIN = 'http://mochi.test:8888/tests/dom/base/test/file_bug1268962.sjs'; -const CROSS_ORIGIN = 'http://example.com/tests/dom/base/test/file_bug1268962.sjs'; +const SAME_ORIGIN = + "http://mochi.test:8888/tests/dom/base/test/file_bug1268962.sjs"; +const CROSS_ORIGIN = + "http://example.com/tests/dom/base/test/file_bug1268962.sjs"; function handleRequest(request, response) { const queryMap = new URLSearchParams(request.queryString); // Check redirection before everything else. - if (queryMap.has('redirect')) { - let redirect = queryMap.get('redirect'); + if (queryMap.has("redirect")) { + let redirect = queryMap.get("redirect"); let location; - if (redirect == 'sameorigin') { + if (redirect == "sameorigin") { location = SAME_ORIGIN; - } else if (redirect == 'crossorigin') { + } else if (redirect == "crossorigin") { location = CROSS_ORIGIN; } if (location) { // Use HTTP 302 redirection. - response.setStatusLine('1.1', 302, HTTPStatus.get(302)); + response.setStatusLine("1.1", 302, HTTPStatus.get(302)); // Forward query strings except the redirect option. - queryMap.delete('redirect'); - response.setHeader('Location', location + '?' + queryMap.toString()); + queryMap.delete("redirect"); + response.setHeader("Location", location + "?" + queryMap.toString()); return; } } - if (queryMap.has('statusCode')) { - let statusCode = parseInt(queryMap.get('statusCode')); + if (queryMap.has("statusCode")) { + let statusCode = parseInt(queryMap.get("statusCode")); let statusText = HTTPStatus.get(statusCode); - response.setStatusLine('1.1', statusCode, statusText); + response.setStatusLine("1.1", statusCode, statusText); } - if (queryMap.has('cacheControl')) { - let cacheControl = queryMap.get('cacheControl'); - response.setHeader('Cache-Control', cacheControl); + if (queryMap.has("cacheControl")) { + let cacheControl = queryMap.get("cacheControl"); + response.setHeader("Cache-Control", cacheControl); } - if (queryMap.has('allowOrigin')) { - let allowOrigin = queryMap.get('allowOrigin'); - response.setHeader('Access-Control-Allow-Origin', allowOrigin); + if (queryMap.has("allowOrigin")) { + let allowOrigin = queryMap.get("allowOrigin"); + response.setHeader("Access-Control-Allow-Origin", allowOrigin); } } diff --git a/dom/base/test/file_bug28293.sjs b/dom/base/test/file_bug28293.sjs index 0954ec105eed..1b3e19402d2c 100644 --- a/dom/base/test/file_bug28293.sjs +++ b/dom/base/test/file_bug28293.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/plain", false); response.write(decodeURIComponent(request.queryString)); } diff --git a/dom/base/test/file_bug503473-frame.sjs b/dom/base/test/file_bug503473-frame.sjs index 5a78292fb4c3..f642241091a3 100644 --- a/dom/base/test/file_bug503473-frame.sjs +++ b/dom/base/test/file_bug503473-frame.sjs @@ -5,19 +5,18 @@ function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); response.write( - '<!DOCTYPE html>' + - '<div></div>' + - '<script>' + - 'function doWrite() {' + - ' document.write("<p></p>");' + - ' parent.done();' + - ' document.close();' + - '}' + - 'setTimeout(doWrite, 0);' + - '</script>' + "<!DOCTYPE html>" + + "<div></div>" + + "<script>" + + "function doWrite() {" + + ' document.write("<p></p>");' + + " parent.done();" + + " document.close();" + + "}" + + "setTimeout(doWrite, 0);" + + "</script>" ); response.bodyOutputStream.flush(); // leave the stream open } - diff --git a/dom/base/test/file_bug503481.sjs b/dom/base/test/file_bug503481.sjs index 917208b4b3eb..97efbe0d3e53 100644 --- a/dom/base/test/file_bug503481.sjs +++ b/dom/base/test/file_bug503481.sjs @@ -5,22 +5,28 @@ const nsITimer = Components.interfaces.nsITimer; function attemptUnblock(s) { try { let blockedResponse = null; - getObjectState("bug503481_" + s, function(x) {blockedResponse = x.wrappedJSObject.r}); + getObjectState("bug503481_" + s, function(x) { + blockedResponse = x.wrappedJSObject.r; + }); blockedResponse.finish(); setObjectState("bug503481_" + s, null); - } catch(e) { + } catch (e) { dump("unable to unblock " + s + "retrying in half a second\n"); - timer = Components.classes["@mozilla.org/timer;1"] - .createInstance(nsITimer); - timer.initWithCallback(function () { attemptUnblock(s) }, 500, nsITimer.TYPE_ONE_SHOT); + timer = Components.classes["@mozilla.org/timer;1"].createInstance(nsITimer); + timer.initWithCallback( + function() { + attemptUnblock(s); + }, + 500, + nsITimer.TYPE_ONE_SHOT + ); } } -function handleRequest(request, response) -{ +function handleRequest(request, response) { var query = {}; - request.queryString.split('&').forEach(function (val) { - var [name, value] = val.split('='); + request.queryString.split("&").forEach(function(val) { + var [name, value] = val.split("="); query[name] = unescape(value); }); @@ -32,7 +38,12 @@ function handleRequest(request, response) if (query.blockOn) { response.processAsync(); - x = { r: response, QueryInterface: function(iid) { return this } }; + x = { + r: response, + QueryInterface(iid) { + return this; + }, + }; x.wrappedJSObject = x; setObjectState("bug503481_" + query.blockOn, x); } diff --git a/dom/base/test/file_bug622088.sjs b/dom/base/test/file_bug622088.sjs index 8619f10b1907..87acdc3b8b16 100644 --- a/dom/base/test/file_bug622088.sjs +++ b/dom/base/test/file_bug622088.sjs @@ -1,6 +1,5 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { // Echos the referrer back to the requester. - response.setHeader('Content-Type', 'text/plain', false); - response.write(request.getHeader('Referer')); + response.setHeader("Content-Type", "text/plain", false); + response.write(request.getHeader("Referer")); } diff --git a/dom/base/test/file_bug675121.sjs b/dom/base/test/file_bug675121.sjs index 45ad03d7f6a9..467c4f8553fb 100644 --- a/dom/base/test/file_bug675121.sjs +++ b/dom/base/test/file_bug675121.sjs @@ -1,15 +1,19 @@ var timer; -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); response.setHeader("Content-Type", "text/plain", false); response.write("Responded"); response.processAsync(); - timer = Components.classes["@mozilla.org/timer;1"] - .createInstance(Components.interfaces.nsITimer); - timer.initWithCallback(function() { + timer = Components.classes["@mozilla.org/timer;1"].createInstance( + Components.interfaces.nsITimer + ); + timer.initWithCallback( + function() { response.finish(); - // 50ms certainly be enough for one refresh driver firing to happen! - }, 50, Components.interfaces.nsITimer.TYPE_ONE_SHOT); + // 50ms certainly be enough for one refresh driver firing to happen! + }, + 50, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/dom/base/test/file_bug787778.sjs b/dom/base/test/file_bug787778.sjs index 84c674422596..d22d67d9c9f9 100644 --- a/dom/base/test/file_bug787778.sjs +++ b/dom/base/test/file_bug787778.sjs @@ -1,8 +1,7 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.processAsync(); response.setHeader("Content-Type", "text/plain", false); response.setHeader("X-Frame-Options", "DENY", false); - + response.finish(); } diff --git a/dom/base/test/file_explicit_user_agent.sjs b/dom/base/test/file_explicit_user_agent.sjs index 7a5a595b96ea..33b9a5c5054a 100644 --- a/dom/base/test/file_explicit_user_agent.sjs +++ b/dom/base/test/file_explicit_user_agent.sjs @@ -1,8 +1,6 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { if (request.hasHeader("User-Agent")) { - response.setHeader("Result-User-Agent", - request.getHeader("User-Agent")); + response.setHeader("Result-User-Agent", request.getHeader("User-Agent")); } response.write(""); } diff --git a/dom/base/test/file_restrictedEventSource.sjs b/dom/base/test/file_restrictedEventSource.sjs index a48eb3900817..b7ca11002a4c 100644 --- a/dom/base/test/file_restrictedEventSource.sjs +++ b/dom/base/test/file_restrictedEventSource.sjs @@ -1,48 +1,69 @@ -function handleRequest(request, response) -{ - if ((request.queryString == "test=user1_xhr" && - request.hasHeader("Authorization") && - request.getHeader("Authorization") == "Basic dXNlciAxOnBhc3N3b3JkIDE=") || - (request.queryString == "test=user1_evtsrc" && - request.hasHeader("Authorization") && - request.getHeader("Authorization") == "Basic dXNlciAxOnBhc3N3b3JkIDE=")) { +function handleRequest(request, response) { + if ( + (request.queryString == "test=user1_xhr" && + request.hasHeader("Authorization") && + request.getHeader("Authorization") == "Basic dXNlciAxOnBhc3N3b3JkIDE=") || + (request.queryString == "test=user1_evtsrc" && + request.hasHeader("Authorization") && + request.getHeader("Authorization") == "Basic dXNlciAxOnBhc3N3b3JkIDE=") + ) { response.setStatusLine(null, 200, "OK"); response.setHeader("Content-Type", "text/event-stream", false); - response.setHeader("Access-Control-Allow-Origin", "http://mochi.test:8888", false); + response.setHeader( + "Access-Control-Allow-Origin", + "http://mochi.test:8888", + false + ); response.setHeader("Access-Control-Allow-Credentials", "true", false); response.setHeader("Cache-Control", "no-cache, must-revalidate", false); if (request.queryString == "test=user1_xhr") { response.setHeader("Set-Cookie", "test=5c", false); } response.write("event: message\ndata: 1\n\n"); - } else if ((request.queryString == "test=user2_xhr" && - request.hasHeader("Authorization") && - request.getHeader("Authorization") == "Basic dXNlciAyOnBhc3N3b3JkIDI=") || - (request.queryString == "test=user2_evtsrc" && - request.hasHeader("Authorization") && - request.getHeader("Authorization") == "Basic dXNlciAyOnBhc3N3b3JkIDI=" && - request.hasHeader("Cookie") && - request.getHeader("Cookie") == "test=5d")) { + } else if ( + (request.queryString == "test=user2_xhr" && + request.hasHeader("Authorization") && + request.getHeader("Authorization") == "Basic dXNlciAyOnBhc3N3b3JkIDI=") || + (request.queryString == "test=user2_evtsrc" && + request.hasHeader("Authorization") && + request.getHeader("Authorization") == "Basic dXNlciAyOnBhc3N3b3JkIDI=" && + request.hasHeader("Cookie") && + request.getHeader("Cookie") == "test=5d") + ) { response.setStatusLine(null, 200, "OK"); response.setHeader("Content-Type", "text/event-stream", false); - response.setHeader("Access-Control-Allow-Origin", "http://mochi.test:8888", false); + response.setHeader( + "Access-Control-Allow-Origin", + "http://mochi.test:8888", + false + ); response.setHeader("Access-Control-Allow-Credentials", "true", false); response.setHeader("Cache-Control", "no-cache, must-revalidate", false); if (request.queryString == "test=user2_xhr") { response.setHeader("Set-Cookie", "test=5d", false); } response.write("event: message\ndata: 1\n\n"); - } else if (request.queryString == "test=user1_xhr" || - request.queryString == "test=user2_xhr") { + } else if ( + request.queryString == "test=user1_xhr" || + request.queryString == "test=user2_xhr" + ) { response.setStatusLine(null, 401, "Unauthorized"); - response.setHeader("WWW-Authenticate", "basic realm=\"restricted\"", false); - response.setHeader("Access-Control-Allow-Origin", "http://mochi.test:8888", false); + response.setHeader("WWW-Authenticate", 'basic realm="restricted"', false); + response.setHeader( + "Access-Control-Allow-Origin", + "http://mochi.test:8888", + false + ); response.setHeader("Access-Control-Allow-Credentials", "true", false); response.write("Unauthorized"); } else { response.setStatusLine(null, 403, "Forbidden"); - response.setHeader("Access-Control-Allow-Origin", "http://mochi.test:8888", false); + response.setHeader( + "Access-Control-Allow-Origin", + "http://mochi.test:8888", + false + ); response.setHeader("Access-Control-Allow-Credentials", "true", false); response.write("Forbidden"); } -} \ No newline at end of file +} diff --git a/dom/base/test/file_x-frame-options_page.sjs b/dom/base/test/file_x-frame-options_page.sjs index af1a81329cda..ab72a36f6501 100644 --- a/dom/base/test/file_x-frame-options_page.sjs +++ b/dom/base/test/file_x-frame-options_page.sjs @@ -1,15 +1,18 @@ // SJS file for X-Frame-Options mochitests -function handleRequest(request, response) -{ +function handleRequest(request, response) { var query = {}; var BOUNDARY = "BOUNDARYOMG3984"; - request.queryString.split('&').forEach(function (val) { - var [name, value] = val.split('='); + request.queryString.split("&").forEach(function(val) { + var [name, value] = val.split("="); query[name] = unescape(value); }); - if (query['multipart'] == "1") { - response.setHeader("Content-Type", "multipart/x-mixed-replace;boundary=" + BOUNDARY, false); + if (query.multipart == "1") { + response.setHeader( + "Content-Type", + "multipart/x-mixed-replace;boundary=" + BOUNDARY, + false + ); response.setHeader("Cache-Control", "no-cache", false); response.setStatusLine(request.httpVersion, 200, "OK"); response.write("--" + BOUNDARY + "\r\n"); @@ -20,45 +23,45 @@ function handleRequest(request, response) } var testHeaders = { - "deny": "DENY", - "sameorigin": "SAMEORIGIN", - "sameorigin2": "SAMEORIGIN, SAMEORIGIN", - "sameorigin3": "SAMEORIGIN,SAMEORIGIN , SAMEORIGIN", - "mixedpolicy": "DENY,SAMEORIGIN", + deny: "DENY", + sameorigin: "SAMEORIGIN", + sameorigin2: "SAMEORIGIN, SAMEORIGIN", + sameorigin3: "SAMEORIGIN,SAMEORIGIN , SAMEORIGIN", + mixedpolicy: "DENY,SAMEORIGIN", /* added for bug 836132 */ - "afa": "ALLOW-FROM http://mochi.test:8888/", - "afd": "ALLOW-FROM http://example.com/", - "afa1": "ALLOW-FROM http://mochi.test:8888", - "afd1": "ALLOW-FROM:example.com", - "afd2": "ALLOW-FROM: example.com", - "afd3": "ALLOW-FROM example.com", - "afd4": "ALLOW-FROM:http://example.com", - "afd5": "ALLOW-FROM: http://example.com", - "afd6": "ALLOW-FROM http://example.com", - "afd7": "ALLOW-FROM:mochi.test:8888", - "afd8": "ALLOW-FROM: mochi.test:8888", - "afd9": "ALLOW-FROM:http://mochi.test:8888", - "afd10": "ALLOW-FROM: http://mochi.test:8888", - "afd11": "ALLOW-FROM mochi.test:8888", - "afd12": "ALLOW-FROM", - "afd13": "ALLOW-FROM ", - "afd14": "ALLOW-FROM:" + afa: "ALLOW-FROM http://mochi.test:8888/", + afd: "ALLOW-FROM http://example.com/", + afa1: "ALLOW-FROM http://mochi.test:8888", + afd1: "ALLOW-FROM:example.com", + afd2: "ALLOW-FROM: example.com", + afd3: "ALLOW-FROM example.com", + afd4: "ALLOW-FROM:http://example.com", + afd5: "ALLOW-FROM: http://example.com", + afd6: "ALLOW-FROM http://example.com", + afd7: "ALLOW-FROM:mochi.test:8888", + afd8: "ALLOW-FROM: mochi.test:8888", + afd9: "ALLOW-FROM:http://mochi.test:8888", + afd10: "ALLOW-FROM: http://mochi.test:8888", + afd11: "ALLOW-FROM mochi.test:8888", + afd12: "ALLOW-FROM", + afd13: "ALLOW-FROM ", + afd14: "ALLOW-FROM:", }; - if (testHeaders.hasOwnProperty(query['xfo'])) { - response.setHeader("X-Frame-Options", testHeaders[query['xfo']], false); + if (testHeaders.hasOwnProperty(query.xfo)) { + response.setHeader("X-Frame-Options", testHeaders[query.xfo], false); } // from the test harness we'll be checking for the presence of this element // to test if the page loaded - response.write("<h1 id=\"test\">" + query["testid"] + "</h1>"); + response.write('<h1 id="test">' + query.testid + "</h1>"); - if (query['testid'] == "postmessage") { + if (query.testid == "postmessage") { response.write("<script>parent.opener.postMessage('ok', '*');</script>"); } - if (query['multipart'] == "1") { + if (query.multipart == "1") { response.write("\r\n--" + BOUNDARY + "\r\n"); } } diff --git a/dom/base/test/iframe_meta_refresh.sjs b/dom/base/test/iframe_meta_refresh.sjs index 803b96d554f1..0d881be72b9d 100644 --- a/dom/base/test/iframe_meta_refresh.sjs +++ b/dom/base/test/iframe_meta_refresh.sjs @@ -1,11 +1,11 @@ /* -* Test server for iframe refresh from meta http-equiv -*/ + * Test server for iframe refresh from meta http-equiv + */ -const SHARED_KEY="iframe_meta_refresh"; -const DEFAULT_STATE = {'count': 0, 'referrers': []}; +const SHARED_KEY = "iframe_meta_refresh"; +const DEFAULT_STATE = { count: 0, referrers: [] }; const REFRESH_PAGE = -"http://example.com/tests/dom/base/test/iframe_meta_refresh.sjs?action=test"; + "http://example.com/tests/dom/base/test/iframe_meta_refresh.sjs?action=test"; function createContent(refresh) { let metaRefresh = ""; @@ -35,16 +35,15 @@ function createContent(refresh) { </html>`; } -function handleRequest(request, response) -{ +function handleRequest(request, response) { Components.utils.importGlobalProperties(["URLSearchParams"]); let query = new URLSearchParams(request.queryString); let action = query.get("action"); var referrerLevel = "none"; - if (request.hasHeader('Referer')) { - let referrer = request.getHeader('Referer'); + if (request.hasHeader("Referer")) { + let referrer = request.getHeader("Referer"); if (referrer.indexOf("test_meta_refresh_referrer") > 0) { referrerLevel = "full"; } else if (referrer == "http://mochi.test:8888/") { @@ -53,7 +52,7 @@ function handleRequest(request, response) } var state = getSharedState(SHARED_KEY); - if (state === '') { + if (state === "") { state = DEFAULT_STATE; } else { state = JSON.parse(state); @@ -64,20 +63,20 @@ function handleRequest(request, response) //avoid confusing cache behaviors response.setHeader("Cache-Control", "no-cache", false); - if (action === 'results') { + if (action === "results") { response.setHeader("Content-Type", "text/plain", false); response.write(JSON.stringify(state)); return; } - if (action === 'reset') { + if (action === "reset") { //reset server state setSharedState(SHARED_KEY, JSON.stringify(DEFAULT_STATE)); response.write(""); return; } - if (action === 'test') { + if (action === "test") { let load = query.get("load"); state.count++; if (state.referrers.indexOf(referrerLevel) < 0) { diff --git a/dom/base/test/referrer_change_server.sjs b/dom/base/test/referrer_change_server.sjs index 527d1c31abb7..d37cfb1e5fcf 100644 --- a/dom/base/test/referrer_change_server.sjs +++ b/dom/base/test/referrer_change_server.sjs @@ -1,139 +1,166 @@ -var BASE_URL = 'example.com/tests/dom/base/test/referrer_change_server.sjs'; +var BASE_URL = "example.com/tests/dom/base/test/referrer_change_server.sjs"; function createTestUrl(aPolicy, aAction, aName) { - return 'http://' + BASE_URL + '?' + - 'action=' + aAction + '&' + - 'policy=' + aPolicy + '&' + - 'name=' + aName + '&' + - 'type=link'; + return ( + "http://" + + BASE_URL + + "?" + + "action=" + + aAction + + "&" + + "policy=" + + aPolicy + + "&" + + "name=" + + aName + + "&" + + "type=link" + ); } function createTest(aMetaPolicy, aReferrerPolicy, aName) { - return '<!DOCTYPE HTML>\n\ - <html>'+ - '<meta name="referrer" content="' + aMetaPolicy + '">' + - '<body>' + - '<a href="' + createTestUrl(aReferrerPolicy, 'test', aName + aReferrerPolicy) + '" id="link">' + aReferrerPolicy + '</a>' + - '<script>' + - - // LOAD EVENT (of the test) - // fires when the page is loaded, then click link - // first change meta referrer, then click link - 'window.addEventListener("load", function() {\n\ - document.getElementsByName("referrer")[0].content = "'+aReferrerPolicy+'";\n\ + return ( + "<!DOCTYPE HTML>\n\ + <html>" + + '<meta name="referrer" content="' + + aMetaPolicy + + '">' + + "<body>" + + '<a href="' + + createTestUrl(aReferrerPolicy, "test", aName + aReferrerPolicy) + + '" id="link">' + + aReferrerPolicy + + "</a>" + + "<script>" + + // LOAD EVENT (of the test) + // fires when the page is loaded, then click link + // first change meta referrer, then click link + 'window.addEventListener("load", function() {\n\ + document.getElementsByName("referrer")[0].content = "' + + aReferrerPolicy + + '";\n\ document.getElementById("link").click();\n\ }.bind(window), false);' + - - '</script>\n\ + "</script>\n\ </body>\n\ - </html>'; + </html>" + ); } function createTest2(aMetaPolicy, aReferrerPolicy, aName) { - return '<!DOCTYPE HTML>\n\ - <html>'+ - '<meta name="referrer" content="' + aMetaPolicy + '">' + - '<body>' + - '<a href="' + createTestUrl(aReferrerPolicy, 'test', aName + aReferrerPolicy) + '" id="link">' + aReferrerPolicy + '</a>' + - '<script>' + - - // LOAD EVENT (of the test) - // fires when the page is loaded, then click link - // first change meta referrer, then click link - 'window.addEventListener("load", function() {\n\ - document.getElementsByName("referrer")[0].setAttribute("content", "'+aReferrerPolicy+'");\n\ + return ( + "<!DOCTYPE HTML>\n\ + <html>" + + '<meta name="referrer" content="' + + aMetaPolicy + + '">' + + "<body>" + + '<a href="' + + createTestUrl(aReferrerPolicy, "test", aName + aReferrerPolicy) + + '" id="link">' + + aReferrerPolicy + + "</a>" + + "<script>" + + // LOAD EVENT (of the test) + // fires when the page is loaded, then click link + // first change meta referrer, then click link + 'window.addEventListener("load", function() {\n\ + document.getElementsByName("referrer")[0].setAttribute("content", "' + + aReferrerPolicy + + '");\n\ document.getElementById("link").click();\n\ }.bind(window), false);' + - - '</script>\n\ + "</script>\n\ </body>\n\ - </html>'; + </html>" + ); } function handleRequest(request, response) { - var sharedKey = 'referrer_change_server.sjs'; - var params = request.queryString.split('&'); - var action = params[0].split('=')[1]; + var sharedKey = "referrer_change_server.sjs"; + var params = request.queryString.split("&"); + var action = params[0].split("=")[1]; - if (action === 'resetState') { + if (action === "resetState") { var state = getSharedState(sharedKey); state = {}; setSharedState(sharedKey, JSON.stringify(state)); response.write(""); return; - } else if (action === 'test') { + } else if (action === "test") { // ?action=test&policy=origin&name=name - var policy = params[1].split('=')[1]; - var name = params[2].split('=')[1]; - var type = params[3].split('=')[1]; + var policy = params[1].split("=")[1]; + var name = params[2].split("=")[1]; + var type = params[3].split("=")[1]; var result = getSharedState(sharedKey); - if (result === '') { + if (result === "") { result = {}; } else { result = JSON.parse(result); } - if (!result["tests"]) { - result["tests"] = {}; + if (!result.tests) { + result.tests = {}; } var referrerLevel = "none"; - var test = {} - if (request.hasHeader('Referer')) { - let referrer = request.getHeader('Referer'); - if (referrer.indexOf("referrer_change_server") > 0) { - referrerLevel = "full"; - } else if (referrer == "http://mochi.test:8888") { - referrerLevel = "origin"; - } - test.referrer = request.getHeader('Referer'); + var test = {}; + if (request.hasHeader("Referer")) { + let referrer = request.getHeader("Referer"); + if (referrer.indexOf("referrer_change_server") > 0) { + referrerLevel = "full"; + } else if (referrer == "http://mochi.test:8888") { + referrerLevel = "origin"; + } + test.referrer = request.getHeader("Referer"); } else { - test.referrer = ''; + test.referrer = ""; } test.policy = referrerLevel; test.expected = policy; - result["tests"][name] = test; + result.tests[name] = test; setSharedState(sharedKey, JSON.stringify(result)); // forward link click to redirect URL to finish test - if (type === 'link') { - var loc = 'https://example.com/tests/dom/base/test/file_change_policy_redirect.html'; - response.setStatusLine('1.1', 302, 'Found'); - response.setHeader('Location', loc, false); + if (type === "link") { + var loc = + "https://example.com/tests/dom/base/test/file_change_policy_redirect.html"; + response.setStatusLine("1.1", 302, "Found"); + response.setHeader("Location", loc, false); } return; - } else if (action === 'get-test-results') { + } else if (action === "get-test-results") { // ?action=get-result - response.setHeader('Cache-Control', 'no-cache', false); - response.setHeader('Content-Type', 'text/plain', false); + response.setHeader("Cache-Control", "no-cache", false); + response.setHeader("Content-Type", "text/plain", false); response.write(getSharedState(sharedKey)); return; - } else if (action === 'generate-policy-test') { + } else if (action === "generate-policy-test") { // ?action=generate-policy-test&referrerPolicy=b64-encoded-string&name=name&newPolicy=b64-encoded-string - response.setHeader('Cache-Control', 'no-cache', false); - response.setHeader('Content-Type', 'text/html; charset=utf-8', false); - var referrerPolicy = unescape(params[1].split('=')[1]); - var name = unescape(params[2].split('=')[1]); - var newPolicy = params[3].split('=')[1]; + response.setHeader("Cache-Control", "no-cache", false); + response.setHeader("Content-Type", "text/html; charset=utf-8", false); + var referrerPolicy = unescape(params[1].split("=")[1]); + var name = unescape(params[2].split("=")[1]); + var newPolicy = params[3].split("=")[1]; response.write(createTest(referrerPolicy, newPolicy, name)); return; - } else if (action === 'generate-policy-test2') { + } else if (action === "generate-policy-test2") { // ?action=generate-policy-test2&referrerPolicy=b64-encoded-string&name=name&newPolicy=b64-encoded-string - response.setHeader('Cache-Control', 'no-cache', false); - response.setHeader('Content-Type', 'text/html; charset=utf-8', false); - var referrerPolicy = unescape(params[1].split('=')[1]); - var name = unescape(params[2].split('=')[1]); - var newPolicy = params[3].split('=')[1]; + response.setHeader("Cache-Control", "no-cache", false); + response.setHeader("Content-Type", "text/html; charset=utf-8", false); + var referrerPolicy = unescape(params[1].split("=")[1]); + var name = unescape(params[2].split("=")[1]); + var newPolicy = params[3].split("=")[1]; response.write(createTest2(referrerPolicy, newPolicy, name)); return; } else { - response.write("I don't know action "+action); + response.write("I don't know action " + action); return; } } diff --git a/dom/base/test/referrer_header.sjs b/dom/base/test/referrer_header.sjs index 021e6cac4467..29c324b8f64d 100644 --- a/dom/base/test/referrer_header.sjs +++ b/dom/base/test/referrer_header.sjs @@ -1,6 +1,6 @@ - function handleRequest(request, response) { response.setHeader("Referrer-Policy", "same-origin"); - response.write('<!DOCTYPE HTML><html><body>Loaded</body><script>parent.postMessage(document.referrer, "*");</script></html>'); + response.write( + '<!DOCTYPE HTML><html><body>Loaded</body><script>parent.postMessage(document.referrer, "*");</script></html>' + ); } - diff --git a/dom/base/test/referrer_testserver.sjs b/dom/base/test/referrer_testserver.sjs index 85e0ff0dd78f..aa074bfb8419 100644 --- a/dom/base/test/referrer_testserver.sjs +++ b/dom/base/test/referrer_testserver.sjs @@ -1,14 +1,14 @@ /* -* Test server for iframe, anchor, and area referrer attributes. -* https://bugzilla.mozilla.org/show_bug.cgi?id=1175736 -* Also server for further referrer tests such as redirecting tests -* bug 1174913, bug 1175736, bug 1184781 -*/ + * Test server for iframe, anchor, and area referrer attributes. + * https://bugzilla.mozilla.org/show_bug.cgi?id=1175736 + * Also server for further referrer tests such as redirecting tests + * bug 1174913, bug 1175736, bug 1184781 + */ Components.utils.importGlobalProperties(["URLSearchParams"]); const SJS = "referrer_testserver.sjs?"; const SJS_PATH = "/tests/dom/base/test/"; -const BASE_ORIGIN = "example.com" +const BASE_ORIGIN = "example.com"; const BASE_URL = BASE_ORIGIN + SJS_PATH + SJS; const SHARED_KEY = SJS; const SAME_ORIGIN = "mochi.test:8888" + SJS_PATH + SJS; @@ -16,29 +16,57 @@ const CROSS_ORIGIN_URL = "test1.example.com" + SJS_PATH + SJS; const IMG_BYTES = atob( "iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12" + - "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="); + "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" +); -function createTestUrl(aPolicy, aAction, aName, aType, aSchemeFrom, aSchemeTo, - crossOrigin, referrerPolicyHeader) { +function createTestUrl( + aPolicy, + aAction, + aName, + aType, + aSchemeFrom, + aSchemeTo, + crossOrigin, + referrerPolicyHeader +) { var schemeTo = aSchemeTo || "http"; var schemeFrom = aSchemeFrom || "http"; var rpHeader = referrerPolicyHeader || ""; var url = schemeTo + "://"; - url += (crossOrigin ? CROSS_ORIGIN_URL : BASE_URL); + url += crossOrigin ? CROSS_ORIGIN_URL : BASE_URL; url += - "ACTION=" + aAction + "&" + - "policy=" + aPolicy + "&" + - "NAME=" + aName + "&" + - "type=" + aType + "&" + - "RP_HEADER=" + rpHeader + "&" + - "SCHEME_FROM=" + schemeFrom; + "ACTION=" + + aAction + + "&" + + "policy=" + + aPolicy + + "&" + + "NAME=" + + aName + + "&" + + "type=" + + aType + + "&" + + "RP_HEADER=" + + rpHeader + + "&" + + "SCHEME_FROM=" + + schemeFrom; return url; - } +} // test page using iframe referrer attribute // if aParams are set this creates a test where the iframe url is a redirect -function createIframeTestPageUsingRefferer(aMetaPolicy, aAttributePolicy, aNewAttributePolicy, aName, aParams, - aSchemeFrom, aSchemeTo, aChangingMethod) { +function createIframeTestPageUsingRefferer( + aMetaPolicy, + aAttributePolicy, + aNewAttributePolicy, + aName, + aParams, + aSchemeFrom, + aSchemeTo, + aChangingMethod +) { var metaString = ""; if (aMetaPolicy) { metaString = `<meta name="referrer" content="${aMetaPolicy}">`; @@ -49,14 +77,23 @@ function createIframeTestPageUsingRefferer(aMetaPolicy, aAttributePolicy, aNewAt } else if (aChangingMethod === "property") { changeString = `document.getElementById("myframe").referrerPolicy = "${aNewAttributePolicy}"`; } - var iFrameString = `<iframe src="" id="myframe" ${aAttributePolicy ? ` referrerpolicy="${aAttributePolicy}"` : ""}>iframe</iframe>`; + var iFrameString = `<iframe src="" id="myframe" ${ + aAttributePolicy ? ` referrerpolicy="${aAttributePolicy}"` : "" + }>iframe</iframe>`; var iframeUrl = ""; if (aParams) { aParams.delete("ACTION"); aParams.append("ACTION", "redirectIframe"); iframeUrl = "http://" + CROSS_ORIGIN_URL + aParams.toString(); } else { - iframeUrl = createTestUrl(aAttributePolicy, "test", aName, "iframe", aSchemeFrom, aSchemeTo); + iframeUrl = createTestUrl( + aAttributePolicy, + "test", + aName, + "iframe", + aSchemeFrom, + aSchemeTo + ); } return `<!DOCTYPE HTML> @@ -79,20 +116,62 @@ function createIframeTestPageUsingRefferer(aMetaPolicy, aAttributePolicy, aNewAt </html>`; } -function buildAnchorString(aMetaPolicy, aReferrerPolicy, aName, aRelString, aSchemeFrom, aSchemeTo){ +function buildAnchorString( + aMetaPolicy, + aReferrerPolicy, + aName, + aRelString, + aSchemeFrom, + aSchemeTo +) { if (aReferrerPolicy) { - return `<a href="${createTestUrl(aReferrerPolicy, 'test', aName, 'link', aSchemeFrom, aSchemeTo)}" referrerpolicy="${aReferrerPolicy}" id="link" ${aRelString}>${aReferrerPolicy}</a>`; + return `<a href="${createTestUrl( + aReferrerPolicy, + "test", + aName, + "link", + aSchemeFrom, + aSchemeTo + )}" referrerpolicy="${aReferrerPolicy}" id="link" ${aRelString}>${aReferrerPolicy}</a>`; } - return `<a href="${createTestUrl(aMetaPolicy, 'test', aName, 'link', aSchemeFrom, aSchemeTo)}" id="link" ${aRelString}>link</a>`; + return `<a href="${createTestUrl( + aMetaPolicy, + "test", + aName, + "link", + aSchemeFrom, + aSchemeTo + )}" id="link" ${aRelString}>link</a>`; } -function buildAreaString(aMetaPolicy, aReferrerPolicy, aName, aRelString, aSchemeFrom, aSchemeTo){ +function buildAreaString( + aMetaPolicy, + aReferrerPolicy, + aName, + aRelString, + aSchemeFrom, + aSchemeTo +) { var result = `<img src="file_mozfiledataurl_img.jpg" alt="image" usemap="#imageMap">`; result += `<map name="imageMap">`; if (aReferrerPolicy) { - result += `<area shape="circle" coords="1,1,1" href="${createTestUrl(aReferrerPolicy, 'test', aName, 'link', aSchemeFrom, aSchemeTo)}" alt="theArea" referrerpolicy="${aReferrerPolicy}" id="link" ${aRelString}>`; + result += `<area shape="circle" coords="1,1,1" href="${createTestUrl( + aReferrerPolicy, + "test", + aName, + "link", + aSchemeFrom, + aSchemeTo + )}" alt="theArea" referrerpolicy="${aReferrerPolicy}" id="link" ${aRelString}>`; } else { - result += `<area shape="circle" coords="1,1,1" href="${createTestUrl(aMetaPolicy, 'test', aName, 'link', aSchemeFrom, aSchemeTo)}" alt="theArea" id="link" ${aRelString}>`; + result += `<area shape="circle" coords="1,1,1" href="${createTestUrl( + aMetaPolicy, + "test", + aName, + "link", + aSchemeFrom, + aSchemeTo + )}" alt="theArea" id="link" ${aRelString}>`; } result += `</map>`; @@ -100,7 +179,17 @@ function buildAreaString(aMetaPolicy, aReferrerPolicy, aName, aRelString, aSchem } // test page using anchor or area referrer attribute -function createAETestPageUsingRefferer(aMetaPolicy, aAttributePolicy, aNewAttributePolicy, aName, aRel, aStringBuilder, aSchemeFrom, aSchemeTo, aChangingMethod) { +function createAETestPageUsingRefferer( + aMetaPolicy, + aAttributePolicy, + aNewAttributePolicy, + aName, + aRel, + aStringBuilder, + aSchemeFrom, + aSchemeTo, + aChangingMethod +) { var metaString = ""; if (aMetaPolicy) { metaString = `<head><meta name="referrer" content="${aMetaPolicy}"></head>`; @@ -115,7 +204,14 @@ function createAETestPageUsingRefferer(aMetaPolicy, aAttributePolicy, aNewAttrib if (aRel) { relString = `rel="noreferrer"`; } - var elementString = aStringBuilder(aMetaPolicy, aAttributePolicy, aName, relString, aSchemeFrom, aSchemeTo); + var elementString = aStringBuilder( + aMetaPolicy, + aAttributePolicy, + aName, + relString, + aSchemeFrom, + aSchemeTo + ); return `<!DOCTYPE HTML> <html> @@ -133,13 +229,26 @@ function createAETestPageUsingRefferer(aMetaPolicy, aAttributePolicy, aNewAttrib } // test page using anchor target=_blank rel=noopener -function createTargetBlankRefferer(aMetaPolicy, aName, aSchemeFrom, - aSchemeTo, aRpHeader) { +function createTargetBlankRefferer( + aMetaPolicy, + aName, + aSchemeFrom, + aSchemeTo, + aRpHeader +) { var metaString = ""; if (aMetaPolicy) { metaString = `<head><meta name="referrer" content="${aMetaPolicy}"></head>`; } - var elementString = `<a href="${createTestUrl(aMetaPolicy, 'test', aName, 'link', aSchemeFrom, aSchemeTo, aRpHeader)}" target=_blank rel="noopener" id="link">link</a>`; + var elementString = `<a href="${createTestUrl( + aMetaPolicy, + "test", + aName, + "link", + aSchemeFrom, + aSchemeTo, + aRpHeader + )}" target=_blank rel="noopener" id="link">link</a>`; return `<!DOCTYPE HTML> <html> @@ -161,7 +270,9 @@ function createTargetBlankRefferer(aMetaPolicy, aName, aSchemeFrom, function createRedirectImgTestCase(aParams, aAttributePolicy) { var metaString = ""; if (aParams.has("META_POLICY")) { - metaString = `<meta name="referrer" content="${aParams.get('META_POLICY')}">`; + metaString = `<meta name="referrer" content="${aParams.get( + "META_POLICY" + )}">`; } aParams.delete("ACTION"); aParams.append("ACTION", "redirectImg"); @@ -175,7 +286,9 @@ function createRedirectImgTestCase(aParams, aAttributePolicy) { <title>Test referrer policies on redirect (img) - + '); + response.write( + '' + ); return; } - if (action === "redirectImg"){ + if (action === "redirectImg") { params.delete("ACTION"); params.append("ACTION", "test"); params.append("type", "img"); // 302 found, 301 Moved Permanently, 303 See Other, 307 Temporary Redirect response.setStatusLine("1.1", 302, "found"); - response.setHeader("Location", "http://" + CROSS_ORIGIN_URL + params.toString(), false); + response.setHeader( + "Location", + "http://" + CROSS_ORIGIN_URL + params.toString(), + false + ); return; } - if (action === "redirectIframe"){ + if (action === "redirectIframe") { params.delete("ACTION"); params.append("ACTION", "test"); params.append("type", "iframe"); // 302 found, 301 Moved Permanently, 303 See Other, 307 Temporary Redirect response.setStatusLine("1.1", 302, "found"); - response.setHeader("Location", "http://" + CROSS_ORIGIN_URL + params.toString(), false); + response.setHeader( + "Location", + "http://" + CROSS_ORIGIN_URL + params.toString(), + false + ); return; } if (action === "test") { @@ -322,7 +503,7 @@ function handleRequest(request, response) { result = result ? JSON.parse(result) : {}; var referrerLevel = "none"; - var test = {} + var test = {}; if (request.hasHeader("Referer")) { var referrer = request.getHeader("Referer"); if (referrer.indexOf("referrer_testserver") > 0) { @@ -375,8 +556,20 @@ function handleRequest(request, response) { var name = params.get("NAME"); // anchor & area - var _getPage = createAETestPageUsingRefferer.bind(null, metaPolicy, attributePolicy, newAttributePolicy, name, rel); - var _getAnchorPage = _getPage.bind(null, buildAnchorString, schemeFrom, schemeTo); + var _getPage = createAETestPageUsingRefferer.bind( + null, + metaPolicy, + attributePolicy, + newAttributePolicy, + name, + rel + ); + var _getAnchorPage = _getPage.bind( + null, + buildAnchorString, + schemeFrom, + schemeTo + ); var _getAreaPage = _getPage.bind(null, buildAreaString, schemeFrom, schemeTo); // aMetaPolicy, aAttributePolicy, aNewAttributePolicy, aName, aChangingMethod, aStringBuilder @@ -405,13 +598,29 @@ function handleRequest(request, response) { return; } if (action === "generate-anchor-target-blank-policy-test") { - response.write(createTargetBlankRefferer(metaPolicy, name, schemeFrom, schemeTo, referrerPolicyHeader)); + response.write( + createTargetBlankRefferer( + metaPolicy, + name, + schemeFrom, + schemeTo, + referrerPolicyHeader + ) + ); return; } // iframe - _getPage = createIframeTestPageUsingRefferer.bind(null, metaPolicy, attributePolicy, newAttributePolicy, name, "", - schemeFrom, schemeTo); + _getPage = createIframeTestPageUsingRefferer.bind( + null, + metaPolicy, + attributePolicy, + newAttributePolicy, + name, + "", + schemeFrom, + schemeTo + ); // aMetaPolicy, aAttributePolicy, aNewAttributePolicy, aName, aChangingMethod if (action === "generate-iframe-policy-test") { @@ -433,12 +642,28 @@ function handleRequest(request, response) { return; } if (action === "generate-iframe-redirect-policy-test") { - response.write(createIframeTestPageUsingRefferer(metaPolicy, attributePolicy, newAttributePolicy, name, params, - schemeFrom, schemeTo)); + response.write( + createIframeTestPageUsingRefferer( + metaPolicy, + attributePolicy, + newAttributePolicy, + name, + params, + schemeFrom, + schemeTo + ) + ); return; } - var _getPage = createLinkPageUsingRefferer.bind(null, metaPolicy, attributePolicy, newAttributePolicy, name, rel); + var _getPage = createLinkPageUsingRefferer.bind( + null, + metaPolicy, + attributePolicy, + newAttributePolicy, + name, + rel + ); var _getLinkPage = _getPage.bind(null, buildLinkString, schemeFrom, schemeTo); // link @@ -456,7 +681,9 @@ function handleRequest(request, response) { } if (action === "generate-fetch-user-control-policy-test") { - response.write(createFetchUserControlRPTestCase(name, schemeFrom, schemeTo, crossOrigin)); + response.write( + createFetchUserControlRPTestCase(name, schemeFrom, schemeTo, crossOrigin) + ); return; } diff --git a/dom/base/test/script-1_bug597345.sjs b/dom/base/test/script-1_bug597345.sjs index 50d23b7127e8..09810f0fb67b 100644 --- a/dom/base/test/script-1_bug597345.sjs +++ b/dom/base/test/script-1_bug597345.sjs @@ -1,16 +1,22 @@ // timer has to be alive so it can't be eaten by the GC. var timer; -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); response.setHeader("Content-Type", "text/javascript", false); // The "stray" open comment at the end of the write is important! - response.write("document.write(\"PASS\r\n'; + var r = + "HTTP/1.1 200 OK\r\n" + + "Content-Type: text/html\r\n" + + 'Link: < \014>; rel="stylesheet"\r\n' + + "\r\n" + + "PASS\r\n"; response.bodyOutputStream.write(r, r.length); response.bodyOutputStream.flush(); response.finish(); diff --git a/dom/html/test/bug649134/file_bug649134-2.sjs b/dom/html/test/bug649134/file_bug649134-2.sjs index 7f005eda61a4..3cbacf71840e 100644 --- a/dom/html/test/bug649134/file_bug649134-2.sjs +++ b/dom/html/test/bug649134/file_bug649134-2.sjs @@ -1,11 +1,11 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.seizePower(); - var r = 'HTTP/1.1 200 OK\r\n' + - 'Content-Type: text/html\r\n' + - 'Link: < \014>; rel="stylesheet",\r\n' + - '\r\n' + - 'PASS\r\n'; + var r = + "HTTP/1.1 200 OK\r\n" + + "Content-Type: text/html\r\n" + + 'Link: < \014>; rel="stylesheet",\r\n' + + "\r\n" + + "PASS\r\n"; response.bodyOutputStream.write(r, r.length); response.bodyOutputStream.flush(); response.finish(); diff --git a/dom/html/test/form_submit_server.sjs b/dom/html/test/form_submit_server.sjs index 95c019d16201..d7be8b0b9de7 100644 --- a/dom/html/test/form_submit_server.sjs +++ b/dom/html/test/form_submit_server.sjs @@ -1,7 +1,9 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); function utf8decode(s) { return decodeURIComponent(escape(s)); @@ -11,57 +13,70 @@ function utf8encode(s) { return unescape(encodeURIComponent(s)); } -function handleRequest(request, response) -{ +function handleRequest(request, response) { var bodyStream = new BinaryInputStream(request.bodyInputStream); var result = []; var requestBody = ""; - while ((bodyAvail = bodyStream.available()) > 0) + while ((bodyAvail = bodyStream.available()) > 0) { requestBody += bodyStream.readBytes(bodyAvail); + } if (request.method == "POST") { - var contentTypeParams = {}; - request.getHeader("Content-Type").split(/\s*\;\s*/).forEach(function(s) { - if (s.indexOf('=') >= 0) { - let [name, value] = s.split('='); - contentTypeParams[name] = value; - } - else { - contentTypeParams[''] = s; - } - }); - - if (contentTypeParams[''] == "multipart/form-data" && - request.queryString == "") { - requestBody.split("--" + contentTypeParams.boundary).slice(1, -1).forEach(function (s) { - - let headers = {}; - let headerEnd = s.indexOf("\r\n\r\n"); - s.substr(2, headerEnd-2).split("\r\n").forEach(function(s) { - // We're assuming UTF8 for now - let [name, value] = s.split(': '); - headers[name] = utf8decode(value); - }); - - let body = s.substring(headerEnd + 4, s.length - 2); - if (!headers["Content-Type"] || headers["Content-Type"] == "text/plain") { - // We're assuming UTF8 for now - body = utf8decode(body); + request + .getHeader("Content-Type") + .split(/\s*\;\s*/) + .forEach(function(s) { + if (s.indexOf("=") >= 0) { + let [name, value] = s.split("="); + contentTypeParams[name] = value; + } else { + contentTypeParams[""] = s; } - result.push({ headers: headers, body: body}); }); + + if ( + contentTypeParams[""] == "multipart/form-data" && + request.queryString == "" + ) { + requestBody + .split("--" + contentTypeParams.boundary) + .slice(1, -1) + .forEach(function(s) { + let headers = {}; + let headerEnd = s.indexOf("\r\n\r\n"); + s.substr(2, headerEnd - 2) + .split("\r\n") + .forEach(function(s) { + // We're assuming UTF8 for now + let [name, value] = s.split(": "); + headers[name] = utf8decode(value); + }); + + let body = s.substring(headerEnd + 4, s.length - 2); + if ( + !headers["Content-Type"] || + headers["Content-Type"] == "text/plain" + ) { + // We're assuming UTF8 for now + body = utf8decode(body); + } + result.push({ headers, body }); + }); } - if (contentTypeParams[''] == "text/plain" && - request.queryString == "plain") { + if ( + contentTypeParams[""] == "text/plain" && + request.queryString == "plain" + ) { result = utf8decode(requestBody); } - if (contentTypeParams[''] == "application/x-www-form-urlencoded" && - request.queryString == "url") { + if ( + contentTypeParams[""] == "application/x-www-form-urlencoded" && + request.queryString == "url" + ) { result = requestBody; } - } - else if (request.method == "GET") { + } else if (request.method == "GET") { result = request.queryString; } diff --git a/dom/html/test/forms/save_restore_radio_groups.sjs b/dom/html/test/forms/save_restore_radio_groups.sjs index f0e36cb524f2..b4c9c4401a8a 100644 --- a/dom/html/test/forms/save_restore_radio_groups.sjs +++ b/dom/html/test/forms/save_restore_radio_groups.sjs @@ -1,17 +1,17 @@ var pages = [ "" + - "" + - "
" + - "" + - "
" + - "", + "" + + "
" + + "" + + "
" + + "", "" + - "" + - "
" + - "" + - "
" + - "", - ]; + "" + + "
" + + "" + + "
" + + "", +]; /** * This SJS is going to send the same page the two first times it will be called @@ -21,8 +21,7 @@ var pages = [ * once. */ -function handleRequest(request, response) -{ +function handleRequest(request, response) { var counter = +getState("counter"); // convert to number; +"" === 0 response.setStatusLine(request.httpVersion, 200, "Ok"); @@ -47,4 +46,3 @@ function handleRequest(request, response) setState("counter", "" + ++counter); } } - diff --git a/dom/html/test/forms/submit_invalid_file.sjs b/dom/html/test/forms/submit_invalid_file.sjs index 8f8b46957c51..3b4b576ec63d 100644 --- a/dom/html/test/forms/submit_invalid_file.sjs +++ b/dom/html/test/forms/submit_invalid_file.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 200, "Ok"); response.setHeader("Content-Type", "text/html"); response.setHeader("Cache-Control", "no-cache"); diff --git a/dom/ipc/tests/blob_verify.sjs b/dom/ipc/tests/blob_verify.sjs index cf50371c8a95..2eb2b6d4e8d2 100644 --- a/dom/ipc/tests/blob_verify.sjs +++ b/dom/ipc/tests/blob_verify.sjs @@ -1,16 +1,21 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); -const BinaryOutputStream = CC("@mozilla.org/binaryoutputstream;1", - "nsIBinaryOutputStream", - "setOutputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); +const BinaryOutputStream = CC( + "@mozilla.org/binaryoutputstream;1", + "nsIBinaryOutputStream", + "setOutputStream" +); function handleRequest(request, response) { var bodyStream = new BinaryInputStream(request.bodyInputStream); var bodyBytes = []; - while ((bodyAvail = bodyStream.available()) > 0) + while ((bodyAvail = bodyStream.available()) > 0) { Array.prototype.push.apply(bodyBytes, bodyStream.readByteArray(bodyAvail)); + } var bos = new BinaryOutputStream(response.bodyOutputStream); diff --git a/dom/manifest/test/cookie_checker.sjs b/dom/manifest/test/cookie_checker.sjs index 55820ea731bb..fa5df00d44ea 100644 --- a/dom/manifest/test/cookie_checker.sjs +++ b/dom/manifest/test/cookie_checker.sjs @@ -1,5 +1,5 @@ "use strict"; -Components.utils.import("resource://gre/modules/NetUtil.jsm"); +let { NetUtil } = ChromeUtils.import("resource://gre/modules/NetUtil.jsm"); function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 200); @@ -8,7 +8,9 @@ function handleRequest(request, response) { response.setHeader("Content-Type", "application/json", false); // CORS stuff - const origin = request.hasHeader("Origin") ? request.getHeader("Origin") : null; + const origin = request.hasHeader("Origin") + ? request.getHeader("Origin") + : null; if (origin) { response.setHeader("Access-Control-Allow-Origin", origin); response.setHeader("Access-Control-Allow-Credentials", "true"); diff --git a/dom/manifest/test/file_testserver.sjs b/dom/manifest/test/file_testserver.sjs index 2d8f39f3e290..94c78416667e 100644 --- a/dom/manifest/test/file_testserver.sjs +++ b/dom/manifest/test/file_testserver.sjs @@ -1,25 +1,26 @@ "use strict"; -Components.utils.import("resource://gre/modules/NetUtil.jsm"); +let { NetUtil } = ChromeUtils.import("resource://gre/modules/NetUtil.jsm"); Components.utils.importGlobalProperties(["URLSearchParams"]); function loadHTMLFromFile(path) { // Load the HTML to return in the response from file. // Since it's relative to the cwd of the test runner, we start there and // append to get to the actual path of the file. - const testHTMLFile = - Components.classes["@mozilla.org/file/directory_service;1"]. - getService(Components.interfaces.nsIProperties). - get("CurWorkD", Components.interfaces.nsIFile); + const testHTMLFile = Components.classes[ + "@mozilla.org/file/directory_service;1" + ] + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); - const testHTMLFileStream = - Components.classes["@mozilla.org/network/file-input-stream;1"]. - createInstance(Components.interfaces.nsIFileInputStream); + const testHTMLFileStream = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); path .split("/") .filter(path => path) .reduce((file, path) => { - testHTMLFile.append(path) + testHTMLFile.append(path); return testHTMLFile; }, testHTMLFile); testHTMLFileStream.init(testHTMLFile, -1, 0, 0); @@ -34,17 +35,21 @@ function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); // Deliver the CSP policy encoded in the URL - if(query.has("csp")){ + if (query.has("csp")) { response.setHeader("Content-Security-Policy", query.get("csp"), false); } // Deliver the CSPRO policy encoded in the URL - if(query.has("cspro")){ - response.setHeader("Content-Security-Policy-Report-Only", query.get("cspro"), false); + if (query.has("cspro")) { + response.setHeader( + "Content-Security-Policy-Report-Only", + query.get("cspro"), + false + ); } // Deliver the CORS header in the URL - if(query.has("cors")){ + if (query.has("cors")) { response.setHeader("Access-Control-Allow-Origin", query.get("cors"), false); } diff --git a/dom/manifest/test/resource.sjs b/dom/manifest/test/resource.sjs index ec7804d3f66a..05163bc47740 100644 --- a/dom/manifest/test/resource.sjs +++ b/dom/manifest/test/resource.sjs @@ -19,64 +19,64 @@ *

hello

*/ //global handleRequest -'use strict'; +"use strict"; Components.utils.importGlobalProperties(["URLSearchParams"]); const HTTPStatus = new Map([ - [100, 'Continue'], - [101, 'Switching Protocol'], - [200, 'OK'], - [201, 'Created'], - [202, 'Accepted'], - [203, 'Non-Authoritative Information'], - [204, 'No Content'], - [205, 'Reset Content'], - [206, 'Partial Content'], - [300, 'Multiple Choice'], - [301, 'Moved Permanently'], - [302, 'Found'], - [303, 'See Other'], - [304, 'Not Modified'], - [305, 'Use Proxy'], - [306, 'unused'], - [307, 'Temporary Redirect'], - [308, 'Permanent Redirect'], - [400, 'Bad Request'], - [401, 'Unauthorized'], - [402, 'Payment Required'], - [403, 'Forbidden'], - [404, 'Not Found'], - [405, 'Method Not Allowed'], - [406, 'Not Acceptable'], - [407, 'Proxy Authentication Required'], - [408, 'Request Timeout'], - [409, 'Conflict'], - [410, 'Gone'], - [411, 'Length Required'], - [412, 'Precondition Failed'], - [413, 'Request Entity Too Large'], - [414, 'Request-URI Too Long'], - [415, 'Unsupported Media Type'], - [416, 'Requested Range Not Satisfiable'], - [417, 'Expectation Failed'], - [500, 'Internal Server Error'], - [501, 'Not Implemented'], - [502, 'Bad Gateway'], - [503, 'Service Unavailable'], - [504, 'Gateway Timeout'], - [505, 'HTTP Version Not Supported'] + [100, "Continue"], + [101, "Switching Protocol"], + [200, "OK"], + [201, "Created"], + [202, "Accepted"], + [203, "Non-Authoritative Information"], + [204, "No Content"], + [205, "Reset Content"], + [206, "Partial Content"], + [300, "Multiple Choice"], + [301, "Moved Permanently"], + [302, "Found"], + [303, "See Other"], + [304, "Not Modified"], + [305, "Use Proxy"], + [306, "unused"], + [307, "Temporary Redirect"], + [308, "Permanent Redirect"], + [400, "Bad Request"], + [401, "Unauthorized"], + [402, "Payment Required"], + [403, "Forbidden"], + [404, "Not Found"], + [405, "Method Not Allowed"], + [406, "Not Acceptable"], + [407, "Proxy Authentication Required"], + [408, "Request Timeout"], + [409, "Conflict"], + [410, "Gone"], + [411, "Length Required"], + [412, "Precondition Failed"], + [413, "Request Entity Too Large"], + [414, "Request-URI Too Long"], + [415, "Unsupported Media Type"], + [416, "Requested Range Not Satisfiable"], + [417, "Expectation Failed"], + [500, "Internal Server Error"], + [501, "Not Implemented"], + [502, "Bad Gateway"], + [503, "Service Unavailable"], + [504, "Gateway Timeout"], + [505, "HTTP Version Not Supported"], ]); function handleRequest(request, response) { const queryMap = new URLSearchParams(request.queryString); - if (queryMap.has('statusCode')) { - let statusCode = parseInt(queryMap.get('statusCode')); + if (queryMap.has("statusCode")) { + let statusCode = parseInt(queryMap.get("statusCode")); let statusText = HTTPStatus.get(statusCode); - queryMap.delete('statusCode'); - response.setStatusLine('1.1', statusCode, statusText); + queryMap.delete("statusCode"); + response.setStatusLine("1.1", statusCode, statusText); } - if (queryMap.has('body')) { - let body = queryMap.get('body') || ''; - queryMap.delete('body'); + if (queryMap.has("body")) { + let body = queryMap.get("body") || ""; + queryMap.delete("body"); response.write(decodeURIComponent(body)); } for (let [key, value] of queryMap.entries()) { diff --git a/dom/media/test/allowed.sjs b/dom/media/test/allowed.sjs index 176a1a24a92b..0ce10b566118 100644 --- a/dom/media/test/allowed.sjs +++ b/dom/media/test/allowed.sjs @@ -1,13 +1,16 @@ function parseQuery(request, key) { - var params = request.queryString.split('&'); + var params = request.queryString.split("&"); for (var j = 0; j < params.length; ++j) { var p = params[j]; - if (p == key) - return true; - if (p.indexOf(key + "=") == 0) - return p.substring(key.length + 1); - if (p.indexOf("=") < 0 && key == "") - return p; + if (p == key) { + return true; + } + if (p.indexOf(key + "=") == 0) { + return p.substring(key.length + 1); + } + if (p.indexOf("=") < 0 && key == "") { + return p; + } } return false; } @@ -20,25 +23,26 @@ var types = { ogv: "video/ogg", oga: "audio/ogg", webm: "video/webm", - wav: "audio/x-wav" + wav: "audio/x-wav", }; // Return file with name as per the query string with access control // allow headers. -function handleRequest(request, response) -{ +function handleRequest(request, response) { var resource = parseQuery(request, ""); - var file = Components.classes["@mozilla.org/file/directory_service;1"]. - getService(Components.interfaces.nsIProperties). - get("CurWorkD", Components.interfaces.nsIFile); - var fis = Components.classes['@mozilla.org/network/file-input-stream;1']. - createInstance(Components.interfaces.nsIFileInputStream); - var bis = Components.classes["@mozilla.org/binaryinputstream;1"]. - createInstance(Components.interfaces.nsIBinaryInputStream); + var file = Components.classes["@mozilla.org/file/directory_service;1"] + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); + var fis = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); + var bis = Components.classes[ + "@mozilla.org/binaryinputstream;1" + ].createInstance(Components.interfaces.nsIBinaryInputStream); var paths = "tests/dom/media/test/" + resource; var split = paths.split("/"); - for(var i = 0; i < split.length; ++i) { + for (var i = 0; i < split.length; ++i) { file.append(split[i]); } fis.init(file, -1, -1, false); @@ -46,9 +50,12 @@ function handleRequest(request, response) bis.setInputStream(fis); var bytes = bis.readBytes(bis.available()); response.setStatusLine(request.httpVersion, 206, "Partial Content"); - response.setHeader("Content-Range", "bytes 0-" + (bytes.length - 1) + "/" + bytes.length); - response.setHeader("Content-Length", ""+bytes.length, false); - var ext = resource.substring(resource.lastIndexOf(".")+1); + response.setHeader( + "Content-Range", + "bytes 0-" + (bytes.length - 1) + "/" + bytes.length + ); + response.setHeader("Content-Length", "" + bytes.length, false); + var ext = resource.substring(resource.lastIndexOf(".") + 1); response.setHeader("Content-Type", types[ext], false); response.setHeader("Access-Control-Allow-Origin", "*"); response.write(bytes, bytes.length); diff --git a/dom/media/test/cancellable_request.sjs b/dom/media/test/cancellable_request.sjs index 9a4a12076e0a..3f355d1f83fa 100644 --- a/dom/media/test/cancellable_request.sjs +++ b/dom/media/test/cancellable_request.sjs @@ -1,13 +1,16 @@ function parseQuery(request, key) { - var params = request.queryString.split('&'); + var params = request.queryString.split("&"); for (var j = 0; j < params.length; ++j) { var p = params[j]; - if (p == key) - return true; - if (p.indexOf(key + "=") == 0) - return p.substring(key.length + 1); - if (p.indexOf("=") < 0 && key == "") - return p; + if (p == key) { + return true; + } + if (p.indexOf(key + "=") == 0) { + return p.substring(key.length + 1); + } + if (p.indexOf("=") < 0 && key == "") { + return p; + } } return false; } @@ -16,18 +19,18 @@ function push32BE(array, input) { array.push(String.fromCharCode((input >> 24) & 0xff)); array.push(String.fromCharCode((input >> 16) & 0xff)); array.push(String.fromCharCode((input >> 8) & 0xff)); - array.push(String.fromCharCode((input) & 0xff)); + array.push(String.fromCharCode(input & 0xff)); } function push32LE(array, input) { - array.push(String.fromCharCode((input) & 0xff)); + array.push(String.fromCharCode(input & 0xff)); array.push(String.fromCharCode((input >> 8) & 0xff)); array.push(String.fromCharCode((input >> 16) & 0xff)); array.push(String.fromCharCode((input >> 24) & 0xff)); } function push16LE(array, input) { - array.push(String.fromCharCode((input) & 0xff)); + array.push(String.fromCharCode(input & 0xff)); array.push(String.fromCharCode((input >> 8) & 0xff)); } @@ -60,19 +63,26 @@ function buildWave(samples, sample_rate) { const CC = Components.Constructor; const Timer = CC("@mozilla.org/timer;1", "nsITimer", "initWithCallback"); -const BinaryOutputStream = CC("@mozilla.org/binaryoutputstream;1", - "nsIBinaryOutputStream", - "setOutputStream"); +const BinaryOutputStream = CC( + "@mozilla.org/binaryoutputstream;1", + "nsIBinaryOutputStream", + "setOutputStream" +); function poll(f) { if (f()) { return; } - new Timer(function() { poll(f); }, 100, Ci.nsITimer.TYPE_ONE_SHOT); + new Timer( + function() { + poll(f); + }, + 100, + Ci.nsITimer.TYPE_ONE_SHOT + ); } -function handleRequest(request, response) -{ +function handleRequest(request, response) { var cancel = parseQuery(request, "cancelkey"); if (cancel) { setState(cancel[1], "cancelled"); @@ -89,47 +99,46 @@ function handleRequest(request, response) var key = parseQuery(request, "key"); response.setHeader("Content-Type", "audio/x-wav"); - response.setHeader("Content-Length", ""+bytes.length, false); + response.setHeader("Content-Length", "" + bytes.length, false); var out = new BinaryOutputStream(response.bodyOutputStream); - var start = 0, end = bytes.length - 1; - if (request.hasHeader("Range")) - { + var start = 0, + end = bytes.length - 1; + if (request.hasHeader("Range")) { var rangeMatch = request.getHeader("Range").match(/^bytes=(\d+)?-(\d+)?$/); - if (rangeMatch[1] !== undefined) + if (rangeMatch[1] !== undefined) { start = parseInt(rangeMatch[1], 10); + } - if (rangeMatch[2] !== undefined) + if (rangeMatch[2] !== undefined) { end = parseInt(rangeMatch[2], 10); + } // No start given, so the end is really the count of bytes from the // end of the file. - if (start === undefined) - { + if (start === undefined) { start = Math.max(0, bytes.length - end); - end = bytes.length - 1; + end = bytes.length - 1; } // start and end are inclusive - if (end === undefined || end >= bytes.length) + if (end === undefined || end >= bytes.length) { end = bytes.length - 1; + } - if (end < start) - { + if (end < start) { response.setStatusLine(request.httpVersion, 200, "OK"); start = 0; end = bytes.length - 1; - } - else - { + } else { response.setStatusLine(request.httpVersion, 206, "Partial Content"); var contentRange = "bytes " + start + "-" + end + "/" + bytes.length; response.setHeader("Content-Range", contentRange); } } - + if (start > 0) { // Send all requested data out.write(bytes.slice(start, end + 1), end + 1 - start); diff --git a/dom/media/test/contentType.sjs b/dom/media/test/contentType.sjs index a7a0caf6691b..23b3ce878ccc 100644 --- a/dom/media/test/contentType.sjs +++ b/dom/media/test/contentType.sjs @@ -1,15 +1,18 @@ // Parse the query string, and give us the value for a certain key, or false if // it does not exist. function parseQuery(request, key) { - var params = request.queryString.split('?')[0].split('&'); + var params = request.queryString.split("?")[0].split("&"); for (var j = 0; j < params.length; ++j) { var p = params[j]; - if (p == key) + if (p == key) { return true; - if (p.indexOf(key + "=") == 0) + } + if (p.indexOf(key + "=") == 0) { return p.substring(key.length + 1); - if (p.indexOf("=") < 0 && key == "") + } + if (p.indexOf("=") < 0 && key == "") { return p; + } } return false; } @@ -20,27 +23,31 @@ function handleRequest(request, response) { var filename = parseQuery(request, "file"); const CC = Components.Constructor; - const BinaryOutputStream = CC("@mozilla.org/binaryoutputstream;1", - "nsIBinaryOutputStream", - "setOutputStream"); - var file = Components.classes["@mozilla.org/file/directory_service;1"]. - getService(Components.interfaces.nsIProperties). - get("CurWorkD", Components.interfaces.nsIFile); - var fis = Components.classes['@mozilla.org/network/file-input-stream;1']. - createInstance(Components.interfaces.nsIFileInputStream); - var bis = Components.classes["@mozilla.org/binaryinputstream;1"]. - createInstance(Components.interfaces.nsIBinaryInputStream); + const BinaryOutputStream = CC( + "@mozilla.org/binaryoutputstream;1", + "nsIBinaryOutputStream", + "setOutputStream" + ); + var file = Components.classes["@mozilla.org/file/directory_service;1"] + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); + var fis = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); + var bis = Components.classes[ + "@mozilla.org/binaryinputstream;1" + ].createInstance(Components.interfaces.nsIBinaryInputStream); var paths = "tests/dom/media/test/" + filename; - dump(paths + '\n'); + dump(paths + "\n"); var split = paths.split("/"); - for(var i = 0; i < split.length; ++i) { + for (var i = 0; i < split.length; ++i) { file.append(split[i]); } fis.init(file, -1, -1, false); // handle range requests var partialstart = 0, - partialend = file.fileSize - 1; + partialend = file.fileSize - 1; if (request.hasHeader("Range")) { var range = request.getHeader("Range"); var parts = range.replace(/bytes=/, "").split("-"); @@ -50,7 +57,8 @@ function handleRequest(request, response) { partialend = file.fileSize - 1; } response.setStatusLine(request.httpVersion, 206, "Partial Content"); - var contentRange = "bytes " + partialstart + "-" + partialend + "/" + file.fileSize; + var contentRange = + "bytes " + partialstart + "-" + partialend + "/" + file.fileSize; response.setHeader("Content-Range", contentRange); } @@ -62,16 +70,16 @@ function handleRequest(request, response) { var contentType = parseQuery(request, "type"); if (contentType == false) { // This should not happen. - dump("No type specified without having \'nomime\' in parameters."); + dump("No type specified without having 'nomime' in parameters."); return; } response.setHeader("Content-Type", contentType, false); } - response.setHeader("Content-Length", ""+bis.available(), false); + response.setHeader("Content-Length", "" + bis.available(), false); var bytes = bis.readBytes(bis.available()); response.write(bytes, bytes.length); } catch (e) { - dump ("ERROR : " + e + "\n"); + dump("ERROR : " + e + "\n"); } } diff --git a/dom/media/test/dash_detect_stream_switch.sjs b/dom/media/test/dash_detect_stream_switch.sjs index a8abf6f2e565..02c66993193c 100644 --- a/dom/media/test/dash_detect_stream_switch.sjs +++ b/dom/media/test/dash_detect_stream_switch.sjs @@ -15,55 +15,64 @@ var DEBUG = false; function parseQuery(request, key) { - var params = request.queryString.split('&'); + var params = request.queryString.split("&"); if (DEBUG) { - dump("DASH-SJS: request params = \"" + params + "\"\n"); + dump('DASH-SJS: request params = "' + params + '"\n'); } for (var j = 0; j < params.length; ++j) { var p = params[j]; - if (p == key) - return true; - if (p.indexOf(key + "=") === 0) - return p.substring(key.length + 1); - if (p.indexOf("=") < 0 && key === "") - return p; + if (p == key) { + return true; + } + if (p.indexOf(key + "=") === 0) { + return p.substring(key.length + 1); + } + if (p.indexOf("=") < 0 && key === "") { + return p; + } } return false; } -function handleRequest(request, response) -{ +function handleRequest(request, response) { try { var name = parseQuery(request, "name"); - var range = request.hasHeader("Range") ? request.getHeader("Range") - : undefined; - + var range = request.hasHeader("Range") + ? request.getHeader("Range") + : undefined; + // Should not get request for 1st subsegment from 2nd stream, nor 2nd // subsegment from 1st stream. - if (name == "dash-webm-video-320x180.webm" && range == "bytes=25514-32767" || - name == "dash-webm-video-428x240.webm" && range == "bytes=228-35852") - { + if ( + (name == "dash-webm-video-320x180.webm" && + range == "bytes=25514-32767") || + (name == "dash-webm-video-428x240.webm" && range == "bytes=228-35852") + ) { throw "Should not request " + name + " with byte-range " + range; } else { var rangeSplit = range.split("="); if (rangeSplit.length != 2) { - throw "DASH-SJS: ERROR: invalid number of tokens (" + rangeSplit.length + - ") delimited by \'=\' in \'Range\' header."; + throw "DASH-SJS: ERROR: invalid number of tokens (" + + rangeSplit.length + + ") delimited by '=' in 'Range' header."; } var offsets = rangeSplit[1].split("-"); if (offsets.length != 2) { - throw "DASH-SJS: ERROR: invalid number of tokens (" + offsets.length + - ") delimited by \'-\' in \'Range\' header."; + throw "DASH-SJS: ERROR: invalid number of tokens (" + + offsets.length + + ") delimited by '-' in 'Range' header."; } var startOffset = parseInt(offsets[0]); var endOffset = parseInt(offsets[1]); - var file = Components.classes["@mozilla.org/file/directory_service;1"]. - getService(Components.interfaces.nsIProperties). - get("CurWorkD", Components.interfaces.nsIFile); - var fis = Components.classes['@mozilla.org/network/file-input-stream;1']. - createInstance(Components.interfaces.nsIFileInputStream); - var bis = Components.classes["@mozilla.org/binaryinputstream;1"]. - createInstance(Components.interfaces.nsIBinaryInputStream); + var file = Components.classes["@mozilla.org/file/directory_service;1"] + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); + var fis = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); + var bis = Components.classes[ + "@mozilla.org/binaryinputstream;1" + ].createInstance(Components.interfaces.nsIBinaryInputStream); var paths = "tests/dom/media/test/" + name; var split = paths.split("/"); @@ -74,41 +83,58 @@ function handleRequest(request, response) fis.init(file, -1, -1, false); // Exception: start offset should be within file bounds. if (startOffset > file.fileSize) { - throw "Starting offset [" + startOffset + "] is after end of file [" + - file.fileSize + "]."; + throw "Starting offset [" + + startOffset + + "] is after end of file [" + + file.fileSize + + "]."; } // End offset may be too large in the MPD. Real world HTTP servers just // return what data they can; do the same here - reduce the end offset. if (endOffset >= file.fileSize) { if (DEBUG) { - dump("DASH-SJS: reducing endOffset [" + endOffset + "] to fileSize [" + - (file.fileSize-1) + "]\n"); + dump( + "DASH-SJS: reducing endOffset [" + + endOffset + + "] to fileSize [" + + (file.fileSize - 1) + + "]\n" + ); } - endOffset = file.fileSize-1; + endOffset = file.fileSize - 1; } - fis.seek(Components.interfaces.nsISeekableStream.NS_SEEK_SET, startOffset); + fis.seek( + Components.interfaces.nsISeekableStream.NS_SEEK_SET, + startOffset + ); bis.setInputStream(fis); - + var byteLengthToRead = endOffset + 1 - startOffset; var totalBytesExpected = byteLengthToRead + startOffset; if (DEBUG) { - dump("DASH-SJS: byteLengthToRead = " + byteLengthToRead + - " byteLengthToRead+startOffset = " + totalBytesExpected + - " fileSize = " + file.fileSize + "\n"); + dump( + "DASH-SJS: byteLengthToRead = " + + byteLengthToRead + + " byteLengthToRead+startOffset = " + + totalBytesExpected + + " fileSize = " + + file.fileSize + + "\n" + ); } var bytes = bis.readBytes(byteLengthToRead); response.setStatusLine(request.httpVersion, 206, "Partial Content"); - response.setHeader("Content-Length", ""+bytes.length, false); + response.setHeader("Content-Length", "" + bytes.length, false); response.setHeader("Content-Type", "application/dash+xml", false); - var contentRange = "bytes " + startOffset + "-" + endOffset + "/" + - file.fileSize; + var contentRange = + "bytes " + startOffset + "-" + endOffset + "/" + file.fileSize; response.setHeader("Content-Range", contentRange, false); response.write(bytes, bytes.length); bis.close(); } } catch (e) { - dump ("DASH-SJS-ERROR: " + e + "\n"); + dump("DASH-SJS-ERROR: " + e + "\n"); response.setStatusLine(request.httpVersion, 404, "Not found"); } } diff --git a/dom/media/test/dynamic_resource.sjs b/dom/media/test/dynamic_resource.sjs index 7731612184fa..77640d5fb0d9 100644 --- a/dom/media/test/dynamic_resource.sjs +++ b/dom/media/test/dynamic_resource.sjs @@ -1,21 +1,23 @@ function parseQuery(request, key) { - var params = request.queryString.split('&'); + var params = request.queryString.split("&"); for (var j = 0; j < params.length; ++j) { var p = params[j]; - if (p == key) - return true; - if (p.indexOf(key + "=") == 0) - return p.substring(key.length + 1); - if (p.indexOf("=") < 0 && key == "") - return p; + if (p == key) { + return true; + } + if (p.indexOf(key + "=") == 0) { + return p.substring(key.length + 1); + } + if (p.indexOf("=") < 0 && key == "") { + return p; + } } return false; } // Return resource1 file content for the first request with a given key. // All subsequent requests return resource2. Both must be video/ogg. -function handleRequest(request, response) -{ +function handleRequest(request, response) { var key = parseQuery(request, "key"); var resource1 = parseQuery(request, "res1"); var resource2 = parseQuery(request, "res2"); @@ -23,16 +25,18 @@ function handleRequest(request, response) var resource = getState(key) == "2" ? resource2 : resource1; setState(key, "2"); - var file = Components.classes["@mozilla.org/file/directory_service;1"]. - getService(Components.interfaces.nsIProperties). - get("CurWorkD", Components.interfaces.nsIFile); - var fis = Components.classes['@mozilla.org/network/file-input-stream;1']. - createInstance(Components.interfaces.nsIFileInputStream); - var bis = Components.classes["@mozilla.org/binaryinputstream;1"]. - createInstance(Components.interfaces.nsIBinaryInputStream); + var file = Components.classes["@mozilla.org/file/directory_service;1"] + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); + var fis = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); + var bis = Components.classes[ + "@mozilla.org/binaryinputstream;1" + ].createInstance(Components.interfaces.nsIBinaryInputStream); var paths = "tests/dom/media/test/" + resource; var split = paths.split("/"); - for(var i = 0; i < split.length; ++i) { + for (var i = 0; i < split.length; ++i) { file.append(split[i]); } fis.init(file, -1, -1, false); @@ -40,8 +44,11 @@ function handleRequest(request, response) bis.setInputStream(fis); var bytes = bis.readBytes(bis.available()); response.setStatusLine(request.httpVersion, 206, "Partial Content"); - response.setHeader("Content-Range", "bytes 0-" + (bytes.length - 1) + "/" + bytes.length); - response.setHeader("Content-Length", ""+bytes.length, false); + response.setHeader( + "Content-Range", + "bytes 0-" + (bytes.length - 1) + "/" + bytes.length + ); + response.setHeader("Content-Length", "" + bytes.length, false); response.setHeader("Content-Type", "video/ogg", false); response.write(bytes, bytes.length); bis.close(); diff --git a/dom/media/test/gzipped_mp4.sjs b/dom/media/test/gzipped_mp4.sjs index 132b87e851bd..ff66cdbd1aa6 100644 --- a/dom/media/test/gzipped_mp4.sjs +++ b/dom/media/test/gzipped_mp4.sjs @@ -1,27 +1,25 @@ -function getGzippedFileBytes() -{ - var file; - getObjectState("SERVER_ROOT", function(serverRoot) { - file = serverRoot.getFile("tests/dom/media/test/short.mp4.gz"); - }); - var fileInputStream = - Components.classes['@mozilla.org/network/file-input-stream;1'] - .createInstance(Components.interfaces.nsIFileInputStream); - var binaryInputStream = - Components.classes["@mozilla.org/binaryinputstream;1"] - .createInstance(Components.interfaces.nsIBinaryInputStream); - fileInputStream.init(file, -1, -1, 0); - binaryInputStream.setInputStream(fileInputStream); - return binaryInputStream.readBytes(binaryInputStream.available()); -} - -function handleRequest(request, response) -{ - var bytes = getGzippedFileBytes(); - response.setHeader("Content-Length", String(bytes.length), false); - response.setHeader("Content-Type", "video/mp4", false); - response.setHeader("Access-Control-Allow-Origin", "*", false); - response.setHeader("Content-Encoding", "gzip", false); - response.setHeader("Cache-Control", "no-cache", false); - response.write(bytes, bytes.length); -} +function getGzippedFileBytes() { + var file; + getObjectState("SERVER_ROOT", function(serverRoot) { + file = serverRoot.getFile("tests/dom/media/test/short.mp4.gz"); + }); + var fileInputStream = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); + var binaryInputStream = Components.classes[ + "@mozilla.org/binaryinputstream;1" + ].createInstance(Components.interfaces.nsIBinaryInputStream); + fileInputStream.init(file, -1, -1, 0); + binaryInputStream.setInputStream(fileInputStream); + return binaryInputStream.readBytes(binaryInputStream.available()); +} + +function handleRequest(request, response) { + var bytes = getGzippedFileBytes(); + response.setHeader("Content-Length", String(bytes.length), false); + response.setHeader("Content-Type", "video/mp4", false); + response.setHeader("Access-Control-Allow-Origin", "*", false); + response.setHeader("Content-Encoding", "gzip", false); + response.setHeader("Cache-Control", "no-cache", false); + response.write(bytes, bytes.length); +} diff --git a/dom/media/test/midflight-redirect.sjs b/dom/media/test/midflight-redirect.sjs index d4dae537a00f..cc5de0b64fad 100644 --- a/dom/media/test/midflight-redirect.sjs +++ b/dom/media/test/midflight-redirect.sjs @@ -1,5 +1,5 @@ function parseQuery(query, key) { - for (let p of query.split('&')) { + for (let p of query.split("&")) { if (p == key) { return true; } @@ -12,21 +12,22 @@ function parseQuery(query, key) { // Return the first few bytes in a short byte range response. When Firefox // requests subsequent bytes in a second range request, respond with a // redirect. Requests after the first redirected are serviced as expected. -function handleRequest(request, response) -{ +function handleRequest(request, response) { var query = request.queryString; var resource = parseQuery(query, "resource"); var type = parseQuery(query, "type") || "application/octet-stream"; var redirected = parseQuery(query, "redirected") || false; var useCors = parseQuery(query, "cors") || false; - var file = Components.classes["@mozilla.org/file/directory_service;1"]. - getService(Components.interfaces.nsIProperties). - get("CurWorkD", Components.interfaces.nsIFile); - var fis = Components.classes['@mozilla.org/network/file-input-stream;1']. - createInstance(Components.interfaces.nsIFileInputStream); - var bis = Components.classes["@mozilla.org/binaryinputstream;1"]. - createInstance(Components.interfaces.nsIBinaryInputStream); + var file = Components.classes["@mozilla.org/file/directory_service;1"] + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); + var fis = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); + var bis = Components.classes[ + "@mozilla.org/binaryinputstream;1" + ].createInstance(Components.interfaces.nsIBinaryInputStream); var paths = "tests/dom/media/test/" + resource; var split = paths.split("/"); for (var i = 0; i < split.length; ++i) { @@ -36,13 +37,21 @@ function handleRequest(request, response) bis.setInputStream(fis); var bytes = bis.readBytes(bis.available()); - let [from, to] = request.getHeader("range").split("=")[1].split("-").map(s => parseInt(s)); + let [from, to] = request + .getHeader("range") + .split("=")[1] + .split("-") + .map(s => parseInt(s)); if (!redirected && from > 0) { - var origin = request.host == "mochi.test" ? "example.org" : "mochi.test:8888"; + var origin = + request.host == "mochi.test" ? "example.org" : "mochi.test:8888"; response.setStatusLine(request.httpVersion, 303, "See Other"); - let url = "http://" + origin + - "/tests/dom/media/test/midflight-redirect.sjs?redirected&" + query; + let url = + "http://" + + origin + + "/tests/dom/media/test/midflight-redirect.sjs?redirected&" + + query; response.setHeader("Location", url); response.setHeader("Content-Type", "text/html"); return; @@ -53,7 +62,8 @@ function handleRequest(request, response) } if (from == 0 && !redirected) { - to = parseInt(parseQuery(query, "redirectAt")) || Math.floor(bytes.length / 4); + to = + parseInt(parseQuery(query, "redirectAt")) || Math.floor(bytes.length / 4); } to = Math.min(to, bytes.length - 1); diff --git a/dom/media/test/redirect.sjs b/dom/media/test/redirect.sjs index 1653e8efc076..12456e115c36 100644 --- a/dom/media/test/redirect.sjs +++ b/dom/media/test/redirect.sjs @@ -1,26 +1,35 @@ function parseQuery(request, key) { - var params = request.queryString.split('&'); + var params = request.queryString.split("&"); for (var j = 0; j < params.length; ++j) { var p = params[j]; - if (p == key) - return true; - if (p.indexOf(key + "=") == 0) - return p.substring(key.length + 1); - if (p.indexOf("=") < 0 && key == "") - return p; + if (p == key) { + return true; + } + if (p.indexOf(key + "=") == 0) { + return p.substring(key.length + 1); + } + if (p.indexOf("=") < 0 && key == "") { + return p; + } } return false; } // Return file content for the first request with a given key. // All subsequent requests return a redirect to a different-origin resource. -function handleRequest(request, response) -{ +function handleRequest(request, response) { var domain = parseQuery(request, "domain"); var file = parseQuery(request, "file"); var allowed = parseQuery(request, "allowed"); response.setStatusLine(request.httpVersion, 303, "See Other"); - response.setHeader("Location", "http://" + domain + "/tests/dom/media/test/" + (allowed ? "allowed.sjs?" : "") + file); + response.setHeader( + "Location", + "http://" + + domain + + "/tests/dom/media/test/" + + (allowed ? "allowed.sjs?" : "") + + file + ); response.setHeader("Content-Type", "text/html"); } diff --git a/dom/media/test/referer.sjs b/dom/media/test/referer.sjs index 69c27afe9aae..9601da119706 100644 --- a/dom/media/test/referer.sjs +++ b/dom/media/test/referer.sjs @@ -1,45 +1,51 @@ function parseQuery(request, key) { - var params = request.queryString.split('&'); + var params = request.queryString.split("&"); for (var j = 0; j < params.length; ++j) { var p = params[j]; - if (p == key) - return true; - if (p.indexOf(key + "=") == 0) - return p.substring(key.length + 1); - if (p.indexOf("=") < 0 && key == "") - return p; + if (p == key) { + return true; + } + if (p.indexOf(key + "=") == 0) { + return p.substring(key.length + 1); + } + if (p.indexOf("=") < 0 && key == "") { + return p; + } } return false; } -function handleRequest(request, response) -{ - var referer = request.hasHeader("Referer") ? request.getHeader("Referer") - : undefined; - if (referer == "http://mochi.test:8888/tests/dom/media/test/test_referer.html") { +function handleRequest(request, response) { + var referer = request.hasHeader("Referer") + ? request.getHeader("Referer") + : undefined; + if ( + referer == "http://mochi.test:8888/tests/dom/media/test/test_referer.html" + ) { var name = parseQuery(request, "name"); - var type = parseQuery(request, "type"); - var file = Components.classes["@mozilla.org/file/directory_service;1"]. - getService(Components.interfaces.nsIProperties). - get("CurWorkD", Components.interfaces.nsIFile); - var fis = Components.classes['@mozilla.org/network/file-input-stream;1']. - createInstance(Components.interfaces.nsIFileInputStream); - var bis = Components.classes["@mozilla.org/binaryinputstream;1"]. - createInstance(Components.interfaces.nsIBinaryInputStream); + var type = parseQuery(request, "type"); + var file = Components.classes["@mozilla.org/file/directory_service;1"] + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); + var fis = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); + var bis = Components.classes[ + "@mozilla.org/binaryinputstream;1" + ].createInstance(Components.interfaces.nsIBinaryInputStream); var paths = "tests/dom/media/test/" + name; var split = paths.split("/"); - for(var i = 0; i < split.length; ++i) { + for (var i = 0; i < split.length; ++i) { file.append(split[i]); } fis.init(file, -1, -1, false); bis.setInputStream(fis); var bytes = bis.readBytes(bis.available()); - response.setHeader("Content-Length", ""+bytes.length, false); + response.setHeader("Content-Length", "" + bytes.length, false); response.setHeader("Content-Type", type, false); response.write(bytes, bytes.length); bis.close(); - } - else { + } else { response.setStatusLine(request.httpVersion, 404, "Not found"); } } diff --git a/dom/media/test/seekLies.sjs b/dom/media/test/seekLies.sjs index 3277950b080d..bd91177665cc 100644 --- a/dom/media/test/seekLies.sjs +++ b/dom/media/test/seekLies.sjs @@ -1,21 +1,22 @@ -function handleRequest(request, response) -{ - var file = Components.classes["@mozilla.org/file/directory_service;1"]. - getService(Components.interfaces.nsIProperties). - get("CurWorkD", Components.interfaces.nsIFile); - var fis = Components.classes['@mozilla.org/network/file-input-stream;1']. - createInstance(Components.interfaces.nsIFileInputStream); - var bis = Components.classes["@mozilla.org/binaryinputstream;1"]. - createInstance(Components.interfaces.nsIBinaryInputStream); +function handleRequest(request, response) { + var file = Components.classes["@mozilla.org/file/directory_service;1"] + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); + var fis = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); + var bis = Components.classes[ + "@mozilla.org/binaryinputstream;1" + ].createInstance(Components.interfaces.nsIBinaryInputStream); var paths = "tests/dom/media/test/seek.ogv"; var split = paths.split("/"); - for(var i = 0; i < split.length; ++i) { + for (var i = 0; i < split.length; ++i) { file.append(split[i]); } fis.init(file, -1, -1, false); bis.setInputStream(fis); var bytes = bis.readBytes(bis.available()); - response.setHeader("Content-Length", ""+bytes.length, false); + response.setHeader("Content-Length", "" + bytes.length, false); response.setHeader("Content-Type", "video/ogg", false); response.setHeader("Accept-Ranges", "bytes", false); response.write(bytes, bytes.length); diff --git a/dom/media/webaudio/test/corsServer.sjs b/dom/media/webaudio/test/corsServer.sjs index 46478e0b64fd..45c694cf08e7 100644 --- a/dom/media/webaudio/test/corsServer.sjs +++ b/dom/media/webaudio/test/corsServer.sjs @@ -1,22 +1,23 @@ -function handleRequest(request, response) -{ - var file = Components.classes["@mozilla.org/file/directory_service;1"]. - getService(Components.interfaces.nsIProperties). - get("CurWorkD", Components.interfaces.nsIFile); - var fis = Components.classes['@mozilla.org/network/file-input-stream;1']. - createInstance(Components.interfaces.nsIFileInputStream); - var bis = Components.classes["@mozilla.org/binaryinputstream;1"]. - createInstance(Components.interfaces.nsIBinaryInputStream); +function handleRequest(request, response) { + var file = Components.classes["@mozilla.org/file/directory_service;1"] + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); + var fis = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); + var bis = Components.classes[ + "@mozilla.org/binaryinputstream;1" + ].createInstance(Components.interfaces.nsIBinaryInputStream); var paths = "tests/dom/media/webaudio/test/small-shot.ogg"; var split = paths.split("/"); - for(var i = 0; i < split.length; ++i) { + for (var i = 0; i < split.length; ++i) { file.append(split[i]); } fis.init(file, -1, -1, false); bis.setInputStream(fis); var bytes = bis.readBytes(bis.available()); response.setHeader("Content-Type", "video/ogg", false); - response.setHeader("Content-Length", ""+ bytes.length, false); + response.setHeader("Content-Length", "" + bytes.length, false); response.setHeader("Access-Control-Allow-Origin", "*", false); response.write(bytes, bytes.length); response.processAsync(); diff --git a/dom/media/webrtc/tests/mochitests/identity/idp.sjs b/dom/media/webrtc/tests/mochitests/identity/idp.sjs index b6313297bc2b..e1a245be780e 100644 --- a/dom/media/webrtc/tests/mochitests/identity/idp.sjs +++ b/dom/media/webrtc/tests/mochitests/identity/idp.sjs @@ -1,18 +1,18 @@ function handleRequest(request, response) { - var key = '/.well-known/idp-proxy/' + request.queryString; - dump(getState(key) + '\n'); - if (request.method === 'GET') { + var key = "/.well-known/idp-proxy/" + request.queryString; + dump(getState(key) + "\n"); + if (request.method === "GET") { if (getState(key)) { - response.setStatusLine(request.httpVersion, 200, 'OK'); + response.setStatusLine(request.httpVersion, 200, "OK"); } else { - response.setStatusLine(request.httpVersion, 404, 'Not Found'); + response.setStatusLine(request.httpVersion, 404, "Not Found"); } - } else if (request.method === 'PUT') { - setState(key, 'OK'); - response.setStatusLine(request.httpVersion, 200, 'OK'); + } else if (request.method === "PUT") { + setState(key, "OK"); + response.setStatusLine(request.httpVersion, 200, "OK"); } else { - response.setStatusLine(request.httpVersion, 406, 'Method Not Allowed'); + response.setStatusLine(request.httpVersion, 406, "Method Not Allowed"); } - response.setHeader('Content-Type', 'text/plain;charset=UTF-8'); - response.write('OK'); + response.setHeader("Content-Type", "text/plain;charset=UTF-8"); + response.write("OK"); } diff --git a/dom/media/webspeech/recognition/test/http_requesthandler.sjs b/dom/media/webspeech/recognition/test/http_requesthandler.sjs index 13095ff1210f..2a432a86f9f1 100644 --- a/dom/media/webspeech/recognition/test/http_requesthandler.sjs +++ b/dom/media/webspeech/recognition/test/http_requesthandler.sjs @@ -1,77 +1,85 @@ -const CC = Components.Constructor; - -// Context structure - we need to set this up properly to pass to setObjectState -const ctx = { - QueryInterface: function(iid) { - if (iid.equals(Components.interfaces.nsISupports)) - return this; - throw Components.results.NS_ERROR_NO_INTERFACE; - } -}; - -function setRequest(request) { - setObjectState(key, request); -} -function getRequest() { - let request; - getObjectState(v => { request = v }); - return request; -} - -function handleRequest(request, response) { - response.processAsync(); - if (request.queryString == "save") { - // Get the context structure and finish the old request - getObjectState("context", function(obj) { - savedCtx = obj.wrappedJSObject; - request = savedCtx.request; - - response.setHeader("Content-Type", "application/octet-stream", false); - response.setHeader("Access-Control-Allow-Origin", "*", false); - response.setHeader("Cache-Control", "no-cache", false); - response.setStatusLine(request.httpVersion, 200, "OK"); - - const input = request.bodyInputStream; - const output = response.bodyOutputStream; - let bodyAvail; - while ((bodyAvail = input.available()) > 0) { - output.writeFrom(input, bodyAvail); - } - response.finish(); - }); - return; - } else if (request.queryString == "malformedresult=1" || request.queryString == "emptyresult=1") { - jsonOK = request.queryString == "malformedresult=1" ? '{"status":"ok","dat' : '{"status":"ok","data":[]}' - response.setHeader("Content-Length", String(jsonOK.length), false); - response.setHeader("Content-Type", "application/json", false); - response.setHeader("Access-Control-Allow-Origin", "*", false); - response.setHeader("Cache-Control", "no-cache", false); - response.setStatusLine(request.httpVersion, 200, "OK"); - response.write(jsonOK, jsonOK.length); - response.finish(); - } else if (request.queryString == "hangup=1") { - response.finish(); - } else if (request.queryString == "return400=1") { - jsonOK = "{'message':'Bad header:accept-language-stt'}"; - response.setHeader("Content-Length", String(jsonOK.length), false); - response.setHeader("Content-Type", "application/json", false); - response.setHeader("Access-Control-Allow-Origin", "*", false); - response.setHeader("Cache-Control", "no-cache", false); - response.setStatusLine(request.httpVersion, 400, "Bad Request"); - response.write(jsonOK, jsonOK.length); - response.finish(); - } - else { - ctx.wrappedJSObject = ctx; - ctx.request = request; - setObjectState("context", ctx); - jsonOK = '{"status":"ok","data":[{"confidence":0.9085610,"text":"hello"}]}'; - response.setHeader("Content-Length", String(jsonOK.length), false); - response.setHeader("Content-Type", "application/json", false); - response.setHeader("Access-Control-Allow-Origin", "*", false); - response.setHeader("Cache-Control", "no-cache", false); - response.setStatusLine(request.httpVersion, 200, "OK"); - response.write(jsonOK, jsonOK.length); - response.finish(); - } -} +const CC = Components.Constructor; + +// Context structure - we need to set this up properly to pass to setObjectState +const ctx = { + QueryInterface(iid) { + if (iid.equals(Components.interfaces.nsISupports)) { + return this; + } + throw Components.Exception("", Components.results.NS_ERROR_NO_INTERFACE); + }, +}; + +function setRequest(request) { + setObjectState(key, request); +} +function getRequest() { + let request; + getObjectState(v => { + request = v; + }); + return request; +} + +function handleRequest(request, response) { + response.processAsync(); + if (request.queryString == "save") { + // Get the context structure and finish the old request + getObjectState("context", function(obj) { + savedCtx = obj.wrappedJSObject; + request = savedCtx.request; + + response.setHeader("Content-Type", "application/octet-stream", false); + response.setHeader("Access-Control-Allow-Origin", "*", false); + response.setHeader("Cache-Control", "no-cache", false); + response.setStatusLine(request.httpVersion, 200, "OK"); + + const input = request.bodyInputStream; + const output = response.bodyOutputStream; + let bodyAvail; + while ((bodyAvail = input.available()) > 0) { + output.writeFrom(input, bodyAvail); + } + response.finish(); + }); + return; + } else if ( + request.queryString == "malformedresult=1" || + request.queryString == "emptyresult=1" + ) { + jsonOK = + request.queryString == "malformedresult=1" + ? '{"status":"ok","dat' + : '{"status":"ok","data":[]}'; + response.setHeader("Content-Length", String(jsonOK.length), false); + response.setHeader("Content-Type", "application/json", false); + response.setHeader("Access-Control-Allow-Origin", "*", false); + response.setHeader("Cache-Control", "no-cache", false); + response.setStatusLine(request.httpVersion, 200, "OK"); + response.write(jsonOK, jsonOK.length); + response.finish(); + } else if (request.queryString == "hangup=1") { + response.finish(); + } else if (request.queryString == "return400=1") { + jsonOK = "{'message':'Bad header:accept-language-stt'}"; + response.setHeader("Content-Length", String(jsonOK.length), false); + response.setHeader("Content-Type", "application/json", false); + response.setHeader("Access-Control-Allow-Origin", "*", false); + response.setHeader("Cache-Control", "no-cache", false); + response.setStatusLine(request.httpVersion, 400, "Bad Request"); + response.write(jsonOK, jsonOK.length); + response.finish(); + } else { + ctx.wrappedJSObject = ctx; + ctx.request = request; + setObjectState("context", ctx); + jsonOK = '{"status":"ok","data":[{"confidence":0.9085610,"text":"hello"}]}'; + response.setHeader("Content-Length", String(jsonOK.length), false); + response.setHeader("Content-Type", "application/json", false); + response.setHeader("Access-Control-Allow-Origin", "*", false); + response.setHeader("Cache-Control", "no-cache", false); + response.setStatusLine(request.httpVersion, 200, "OK"); + response.write(jsonOK, jsonOK.length); + response.finish(); + } +} diff --git a/dom/performance/tests/serverTiming.sjs b/dom/performance/tests/serverTiming.sjs index 73028a004d9a..8a93829fa544 100644 --- a/dom/performance/tests/serverTiming.sjs +++ b/dom/performance/tests/serverTiming.sjs @@ -1,21 +1,30 @@ - -var responseServerTiming = [{metric:"metric1", duration:"123.4", description:"description1"}, - {metric:"metric2", duration:"456.78", description:"description2"}]; -var trailerServerTiming = [{metric:"metric3", duration:"789.11", description:"description3"}, - {metric:"metric4", duration:"1112.13", description:"description4"}]; +var responseServerTiming = [ + { metric: "metric1", duration: "123.4", description: "description1" }, + { metric: "metric2", duration: "456.78", description: "description2" }, +]; +var trailerServerTiming = [ + { metric: "metric3", duration: "789.11", description: "description3" }, + { metric: "metric4", duration: "1112.13", description: "description4" }, +]; function createServerTimingHeader(headerData) { var header = ""; for (var i = 0; i < headerData.length; i++) { - header += "Server-Timing:" + headerData[i].metric + ";" + - "dur=" + headerData[i].duration + ";" + - "desc=" + headerData[i].description + "\r\n"; + header += + "Server-Timing:" + + headerData[i].metric + + ";" + + "dur=" + + headerData[i].duration + + ";" + + "desc=" + + headerData[i].description + + "\r\n"; } return header; } -function handleRequest(request, response) -{ +function handleRequest(request, response) { var body = "c\r\ndata reached\r\n3\r\nhej\r\n0\r\n"; response.seizePower(); diff --git a/dom/performance/tests/test_worker_performance_entries.sjs b/dom/performance/tests/test_worker_performance_entries.sjs index 2d4f6fd866a9..62f00c22bcef 100644 --- a/dom/performance/tests/test_worker_performance_entries.sjs +++ b/dom/performance/tests/test_worker_performance_entries.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/html"); if (request.queryString == "redirect") { diff --git a/dom/plugins/test/mochitest/mixed_case_mime.sjs b/dom/plugins/test/mochitest/mixed_case_mime.sjs index 1901bb74d8f8..57b48b4b9670 100644 --- a/dom/plugins/test/mochitest/mixed_case_mime.sjs +++ b/dom/plugins/test/mochitest/mixed_case_mime.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.processAsync(); response.setHeader("Content-Type", "image/pNG", false); diff --git a/dom/reporting/tests/delivering.sjs b/dom/reporting/tests/delivering.sjs index 058adf593ea5..ac5b438b03bf 100644 --- a/dom/reporting/tests/delivering.sjs +++ b/dom/reporting/tests/delivering.sjs @@ -1,7 +1,9 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); Components.utils.importGlobalProperties(["URLSearchParams"]); @@ -22,12 +24,15 @@ function handleRequest(aRequest, aResponse) { let body = { max_age: 1, - endpoints: [{ - url: "https://example.org/tests/dom/reporting/tests/delivering.sjs" + - (extraParams.length ? "?" + extraParams.join("&") : ""), - priority: 1, - weight: 1, - }] + endpoints: [ + { + url: + "https://example.org/tests/dom/reporting/tests/delivering.sjs" + + (extraParams.length ? "?" + extraParams.join("&") : ""), + priority: 1, + weight: 1, + }, + ], }; aResponse.setStatusLine(aRequest.httpVersion, 200, "OK"); @@ -68,26 +73,30 @@ function handleRequest(aRequest, aResponse) { var bytes = []; while ((avail = body.available()) > 0) { Array.prototype.push.apply(bytes, body.readByteArray(avail)); - } + } - let reports = getState("report"); - if (!reports) { - reports = []; - } else { - reports = JSON.parse(reports); - } + let reports = getState("report"); + if (!reports) { + reports = []; + } else { + reports = JSON.parse(reports); + } - const incoming_reports = JSON.parse(String.fromCharCode.apply(null, bytes)); - for (let report of incoming_reports) { + const incoming_reports = JSON.parse(String.fromCharCode.apply(null, bytes)); + for (let report of incoming_reports) { let data = { contentType: aRequest.getHeader("content-type"), origin: aRequest.getHeader("origin"), body: report, - url: aRequest.scheme + "://" + aRequest.host + aRequest.path + - (aRequest.queryString ? "&" + aRequest.queryString : ""), - } + url: + aRequest.scheme + + "://" + + aRequest.host + + aRequest.path + + (aRequest.queryString ? "&" + aRequest.queryString : ""), + }; reports.push(data); - } + } setState("report", JSON.stringify(reports)); diff --git a/dom/security/test/cors/bug1456721.sjs b/dom/security/test/cors/bug1456721.sjs index 01c6d57c6367..de8bd5a7f4f4 100644 --- a/dom/security/test/cors/bug1456721.sjs +++ b/dom/security/test/cors/bug1456721.sjs @@ -1,4 +1,3 @@ - function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); let queryStr = request.queryString; diff --git a/dom/security/test/cors/file_CrossSiteXHR_cache_server.sjs b/dom/security/test/cors/file_CrossSiteXHR_cache_server.sjs index 431559d50409..ac47fbbcd68a 100644 --- a/dom/security/test/cors/file_CrossSiteXHR_cache_server.sjs +++ b/dom/security/test/cors/file_CrossSiteXHR_cache_server.sjs @@ -1,16 +1,17 @@ Cu.import("resource://gre/modules/Services.jsm"); -function handleRequest(request, response) -{ +function handleRequest(request, response) { var query = {}; - request.queryString.split('&').forEach(function (val) { - var [name, value] = val.split('='); + request.queryString.split("&").forEach(function(val) { + var [name, value] = val.split("="); query[name] = unescape(value); }); if ("setState" in query) { - setState("test/dom/security/test_CrossSiteXHR_cache:secData", - query.setState); + setState( + "test/dom/security/test_CrossSiteXHR_cache:secData", + query.setState + ); response.setHeader("Cache-Control", "no-cache", false); response.setHeader("Content-Type", "text/plain", false); @@ -23,24 +24,33 @@ function handleRequest(request, response) // Send response - secData = - JSON.parse(getState("test/dom/security/test_CrossSiteXHR_cache:secData")); + secData = JSON.parse( + getState("test/dom/security/test_CrossSiteXHR_cache:secData") + ); - if (secData.allowOrigin) + if (secData.allowOrigin) { response.setHeader("Access-Control-Allow-Origin", secData.allowOrigin); + } - if (secData.withCred) + if (secData.withCred) { response.setHeader("Access-Control-Allow-Credentials", "true"); + } if (isPreflight) { - if (secData.allowHeaders) + if (secData.allowHeaders) { response.setHeader("Access-Control-Allow-Headers", secData.allowHeaders); + } - if (secData.allowMethods) + if (secData.allowMethods) { response.setHeader("Access-Control-Allow-Methods", secData.allowMethods); + } - if (secData.cacheTime) - response.setHeader("Access-Control-Max-Age", secData.cacheTime.toString()); + if (secData.cacheTime) { + response.setHeader( + "Access-Control-Max-Age", + secData.cacheTime.toString() + ); + } return; } diff --git a/dom/security/test/cors/file_CrossSiteXHR_inner_data.sjs b/dom/security/test/cors/file_CrossSiteXHR_inner_data.sjs index 50356239f4d1..4a030c4211aa 100644 --- a/dom/security/test/cors/file_CrossSiteXHR_inner_data.sjs +++ b/dom/security/test/cors/file_CrossSiteXHR_inner_data.sjs @@ -1,4 +1,5 @@ -var data = '\n\ +var data = + '\n\ \n\ \n\ \n\ @@ -92,10 +93,9 @@ function trimString(stringValue) {\n\ \n\ Inner page\n\ \n\ -' +'; -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(null, 302, "Follow me"); response.setHeader("Location", "data:text/html," + escape(data)); response.setHeader("Content-Type", "text/plain"); diff --git a/dom/security/test/cors/file_CrossSiteXHR_server.sjs b/dom/security/test/cors/file_CrossSiteXHR_server.sjs index 143561a25ae6..e37e57dcc766 100644 --- a/dom/security/test/cors/file_CrossSiteXHR_server.sjs +++ b/dom/security/test/cors/file_CrossSiteXHR_server.sjs @@ -1,15 +1,16 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); Cu.import("resource://gre/modules/Services.jsm"); Services.prefs.setBoolPref("security.allow_eval_with_system_principal", true); -function handleRequest(request, response) -{ +function handleRequest(request, response) { var query = {}; - request.queryString.split('&').forEach(function (val) { - var [name, value] = val.split('='); + request.queryString.split("&").forEach(function(val) { + var [name, value] = val.split("="); query[name] = unescape(value); }); @@ -17,11 +18,13 @@ function handleRequest(request, response) var bodyStream = new BinaryInputStream(request.bodyInputStream); var bodyBytes = []; - while ((bodyAvail = bodyStream.available()) > 0) + while ((bodyAvail = bodyStream.available()) > 0) { Array.prototype.push.apply(bodyBytes, bodyStream.readByteArray(bodyAvail)); + } var body = decodeURIComponent( - escape(String.fromCharCode.apply(null, bodyBytes))); + escape(String.fromCharCode.apply(null, bodyBytes)) + ); if (query.hop) { query.hop = parseInt(query.hop, 10); @@ -44,74 +47,112 @@ function handleRequest(request, response) // Check that request was correct if (!isPreflight && query.body && body != query.body) { - sendHttp500(response, "Wrong body. Expected " + query.body + " got " + - body); + sendHttp500( + response, + "Wrong body. Expected " + query.body + " got " + body + ); return; } if (!isPreflight && "headers" in query) { headers = JSON.parse(query.headers); - for(headerName in headers) { - // Content-Type is changed if there was a body - if (!(headerName == "Content-Type" && body) && - (!request.hasHeader(headerName) || - request.getHeader(headerName) != headers[headerName])) { - var actual = request.hasHeader(headerName) ? request.getHeader(headerName) - : ""; - sendHttp500(response, - "Header " + headerName + " had wrong value. Expected " + - headers[headerName] + " got " + actual); + for (headerName in headers) { + // Content-Type is changed if there was a body + if ( + !(headerName == "Content-Type" && body) && + (!request.hasHeader(headerName) || + request.getHeader(headerName) != headers[headerName]) + ) { + var actual = request.hasHeader(headerName) + ? request.getHeader(headerName) + : ""; + sendHttp500( + response, + "Header " + + headerName + + " had wrong value. Expected " + + headers[headerName] + + " got " + + actual + ); return; } } } - if (isPreflight && "requestHeaders" in query && - request.getHeader("Access-Control-Request-Headers") != query.requestHeaders) { - sendHttp500(response, + if ( + isPreflight && + "requestHeaders" in query && + request.getHeader("Access-Control-Request-Headers") != query.requestHeaders + ) { + sendHttp500( + response, "Access-Control-Request-Headers had wrong value. Expected " + - query.requestHeaders + " got " + - request.getHeader("Access-Control-Request-Headers")); + query.requestHeaders + + " got " + + request.getHeader("Access-Control-Request-Headers") + ); return; } - if (isPreflight && "requestMethod" in query && - request.getHeader("Access-Control-Request-Method") != query.requestMethod) { - sendHttp500(response, + if ( + isPreflight && + "requestMethod" in query && + request.getHeader("Access-Control-Request-Method") != query.requestMethod + ) { + sendHttp500( + response, "Access-Control-Request-Method had wrong value. Expected " + - query.requestMethod + " got " + - request.getHeader("Access-Control-Request-Method")); + query.requestMethod + + " got " + + request.getHeader("Access-Control-Request-Method") + ); return; } if ("origin" in query && request.getHeader("Origin") != query.origin) { - sendHttp500(response, - "Origin had wrong value. Expected " + query.origin + " got " + - request.getHeader("Origin")); + sendHttp500( + response, + "Origin had wrong value. Expected " + + query.origin + + " got " + + request.getHeader("Origin") + ); return; } if ("cookie" in query) { cookies = {}; - request.getHeader("Cookie").split(/ *; */).forEach(function (val) { - var [name, value] = val.split('='); - cookies[name] = unescape(value); - }); - - query.cookie.split(",").forEach(function (val) { - var [name, value] = val.split('='); + request + .getHeader("Cookie") + .split(/ *; */) + .forEach(function(val) { + var [name, value] = val.split("="); + cookies[name] = unescape(value); + }); + + query.cookie.split(",").forEach(function(val) { + var [name, value] = val.split("="); if (cookies[name] != value) { - sendHttp500(response, - "Cookie " + name + " had wrong value. Expected " + value + - " got " + cookies[name]); + sendHttp500( + response, + "Cookie " + + name + + " had wrong value. Expected " + + value + + " got " + + cookies[name] + ); return; } }); } if (query.noCookie && request.hasHeader("Cookie")) { - sendHttp500(response, - "Got cookies when didn't expect to: " + request.getHeader("Cookie")); + sendHttp500( + response, + "Got cookies when didn't expect to: " + request.getHeader("Cookie") + ); return; } @@ -123,24 +164,28 @@ function handleRequest(request, response) if (isPreflight && query.preflightStatus) { response.setStatusLine(null, query.preflightStatus, "preflight status"); } - - if (query.allowOrigin && (!isPreflight || !query.noAllowPreflight)) + + if (query.allowOrigin && (!isPreflight || !query.noAllowPreflight)) { response.setHeader("Access-Control-Allow-Origin", query.allowOrigin); + } - if (query.allowCred) + if (query.allowCred) { response.setHeader("Access-Control-Allow-Credentials", "true"); + } - if (query.setCookie) + if (query.setCookie) { response.setHeader("Set-Cookie", query.setCookie + "; path=/"); + } if (isPreflight) { - if (query.allowHeaders) + if (query.allowHeaders) { response.setHeader("Access-Control-Allow-Headers", query.allowHeaders); + } - if (query.allowMethods) + if (query.allowMethods) { response.setHeader("Access-Control-Allow-Methods", query.allowMethods); - } - else { + } + } else { if (query.responseHeaders) { let responseHeaders = JSON.parse(query.responseHeaders); for (let responseHeader in responseHeaders) { @@ -148,14 +193,19 @@ function handleRequest(request, response) } } - if (query.exposeHeaders) + if (query.exposeHeaders) { response.setHeader("Access-Control-Expose-Headers", query.exposeHeaders); + } } if (!isPreflight && query.hop && query.hop < hops.length) { - newURL = hops[query.hop].server + - "/tests/dom/security/test/cors/file_CrossSiteXHR_server.sjs?" + - "hop=" + (query.hop + 1) + "&hops=" + escape(query.hops); + newURL = + hops[query.hop].server + + "/tests/dom/security/test/cors/file_CrossSiteXHR_server.sjs?" + + "hop=" + + (query.hop + 1) + + "&hops=" + + escape(query.hops); if ("headers" in query) { newURL += "&headers=" + escape(query.headers); } diff --git a/dom/security/test/csp/file_CSP.sjs b/dom/security/test/csp/file_CSP.sjs index 85c2df3ba474..834f7e13eada 100644 --- a/dom/security/test/csp/file_CSP.sjs +++ b/dom/security/test/csp/file_CSP.sjs @@ -1,26 +1,24 @@ // SJS file for CSP mochitests -function handleRequest(request, response) -{ +function handleRequest(request, response) { var query = {}; - request.queryString.split('&').forEach(function (val) { - var [name, value] = val.split('='); + request.queryString.split("&").forEach(function(val) { + var [name, value] = val.split("="); query[name] = unescape(value); }); var isPreflight = request.method == "OPTIONS"; - //avoid confusing cache behaviors response.setHeader("Cache-Control", "no-cache", false); if ("type" in query) { - response.setHeader("Content-Type", unescape(query['type']), false); + response.setHeader("Content-Type", unescape(query.type), false); } else { response.setHeader("Content-Type", "text/html", false); } if ("content" in query) { - response.write(unescape(query['content'])); + response.write(unescape(query.content)); } } diff --git a/dom/security/test/csp/file_base_uri_server.sjs b/dom/security/test/csp/file_base_uri_server.sjs index dfba2a0612fb..ba130e99e4ce 100644 --- a/dom/security/test/csp/file_base_uri_server.sjs +++ b/dom/security/test/csp/file_base_uri_server.sjs @@ -10,7 +10,7 @@ const PRE_BASE = ` Bug 1045897 - Test CSP base-uri directive`; -const REGULAR_POST_BASE =` +const REGULAR_POST_BASE = ` @@ -39,10 +39,8 @@ function handleRequest(request, response) { // Send HTML to test allowed/blocked behaviors response.setHeader("Content-Type", "text/html", false); response.write(PRE_BASE); - var base1 = - ""; - var base2 = - ""; + var base1 = ''; + var base2 = ''; response.write(base1 + base2); if (query.get("action") === "enforce-csp") { diff --git a/dom/security/test/csp/file_block_all_mcb.sjs b/dom/security/test/csp/file_block_all_mcb.sjs index 731553dd7d63..003c9df57cc3 100644 --- a/dom/security/test/csp/file_block_all_mcb.sjs +++ b/dom/security/test/csp/file_block_all_mcb.sjs @@ -3,26 +3,26 @@ const HEAD = "" + - "" + + '' + "Bug 1122236 - CSP: Implement block-all-mixed-content" + ""; const CSP_ALLOW = - ""; + ''; const CSP_BLOCK = - ""; + ''; const BODY = "" + - "" + - "" + "" + @@ -32,24 +32,23 @@ const BODY = // actual network load rather than loading the image from the cache. const BODY_CSPRO = "" + - "" + - "" + "" + ""; -function handleRequest(request, response) -{ +function handleRequest(request, response) { // avoid confusing cache behaviors response.setHeader("Cache-Control", "no-cache", false); - + var queryString = request.queryString; if (queryString === "csp-block") { @@ -66,11 +65,14 @@ function handleRequest(request, response) } if (queryString === "cspro-block") { // CSP RO is not supported in meta tag, let's use the header - response.setHeader("Content-Security-Policy-Report-Only", "block-all-mixed-content", false); + response.setHeader( + "Content-Security-Policy-Report-Only", + "block-all-mixed-content", + false + ); response.write(HEAD + BODY_CSPRO); return; } // we should never get here but just in case return something unexpected response.write("do'h"); - } diff --git a/dom/security/test/csp/file_blocked_uri_in_violation_event_after_redirects.sjs b/dom/security/test/csp/file_blocked_uri_in_violation_event_after_redirects.sjs index 6efd6f766bd9..faf400d6d6a0 100644 --- a/dom/security/test/csp/file_blocked_uri_in_violation_event_after_redirects.sjs +++ b/dom/security/test/csp/file_blocked_uri_in_violation_event_after_redirects.sjs @@ -5,8 +5,7 @@ let REDIRECT_302_URI = "http://test1.example.com/tests/dom/security/test/csp/file_blocked_uri_in_violation_event_after_redirects.sjs?test1b#ref1b"; -let JS_REDIRECT = - ` +let JS_REDIRECT = ` " + - "" + - ""; + var html = + "" + + "" + + "" + + "Testpage for Bug 1036399" + + "" + + "" + + "
blocked
" + + "" + + "" + + ""; response.write(html); } diff --git a/dom/security/test/csp/file_fontloader.sjs b/dom/security/test/csp/file_fontloader.sjs index 06f6e752db12..b9b5e602fe53 100644 --- a/dom/security/test/csp/file_fontloader.sjs +++ b/dom/security/test/csp/file_fontloader.sjs @@ -3,14 +3,14 @@ const PRE_HEAD = "" + - "" + + '' + "Bug 1195172 - CSP should block font from cache"; const CSP_BLOCK = - ""; + ''; const CSP_ALLOW = - ""; + ''; const CSS = "' + - '
test
'; + if (query.testid == "font-src") { + var resp = + '' + + '
test
'; response.write(resp); return; } // iframe that redirects to another site - if (query["testid"] == "frame-src") { - response.write(''); + if (query.testid == "frame-src") { + response.write( + '' + ); return; } // image that redirects to another site - if (query["testid"] == "img-src") { - response.write(''); + if (query.testid == "img-src") { + response.write( + '' + ); return; } // video content that redirects to another site - if (query["testid"] == "media-src") { - response.write(''); + if (query.testid == "media-src") { + response.write( + '' + ); return; } // object content that redirects to another site - if (query["testid"] == "object-src") { - response.write(''); + if (query.testid == "object-src") { + response.write( + '' + ); return; } // external script that redirects to another site - if (query["testid"] == "script-src") { - response.write(''); + if (query.testid == "script-src") { + response.write( + '' + ); return; } // external stylesheet that redirects to another site - if (query["testid"] == "style-src") { - response.write(''); + if (query.testid == "style-src") { + response.write( + '' + ); return; } // script that XHR's to a resource that redirects to another site - if (query["testid"] == "xhr-src") { - response.write(''); + if (query.testid == "xhr-src") { + response.write(''); return; } // for bug949706 - if (query["testid"] == "img-src-from-css") { + if (query.testid == "img-src-from-css") { // loads a stylesheet, which in turn loads an image that redirects. - response.write(''); + response.write( + '' + ); return; } - if (query["testid"] == "from-worker") { + if (query.testid == "from-worker") { // loads a script; launches a worker; that worker uses importscript; which then gets redirected // So it's: // '); + response.write( + '' + ); return; } - if (query["testid"] == "from-blob-worker") { + if (query.testid == "from-blob-worker") { // loads a script; launches a worker; that worker uses importscript; which then gets redirected // So it's: // '); + response.write( + '' + ); return; } } diff --git a/dom/security/test/csp/file_redirects_resource.sjs b/dom/security/test/csp/file_redirects_resource.sjs index da138630fdcd..f1bb86c2cd8e 100644 --- a/dom/security/test/csp/file_redirects_resource.sjs +++ b/dom/security/test/csp/file_redirects_resource.sjs @@ -1,11 +1,10 @@ // SJS file to serve resources for CSP redirect tests // This file mimics serving resources, e.g. fonts, images, etc., which a CSP // can include. The resource may redirect to a different resource, if specified. -function handleRequest(request, response) -{ +function handleRequest(request, response) { var query = {}; - request.queryString.split('&').forEach(function (val) { - var [name, value] = val.split('='); + request.queryString.split("&").forEach(function(val) { + var [name, value] = val.split("="); query[name] = unescape(value); }); @@ -16,16 +15,17 @@ function handleRequest(request, response) response.setHeader("Cache-Control", "no-cache", false); // redirect to a resource on this site - if (query["redir"] == "same") { - var loc = thisSite+resource+"?res="+query["res"]+"&testid="+query["id"]; + if (query.redir == "same") { + var loc = thisSite + resource + "?res=" + query.res + "&testid=" + query.id; response.setStatusLine("1.1", 302, "Found"); response.setHeader("Location", loc, false); return; } // redirect to a resource on a different site - else if (query["redir"] == "other") { - var loc = otherSite+resource+"?res="+query["res"]+"&testid="+query["id"]; + else if (query.redir == "other") { + var loc = + otherSite + resource + "?res=" + query.res + "&testid=" + query.id; response.setStatusLine("1.1", 302, "Found"); response.setHeader("Location", loc, false); return; @@ -36,7 +36,7 @@ function handleRequest(request, response) // the request for the content was sent or not. // downloadable font - if (query["res"] == "font") { + if (query.res == "font") { response.setHeader("Access-Control-Allow-Origin", "*", false); response.setHeader("Content-Type", "text/plain", false); response.write("font data..."); @@ -44,50 +44,50 @@ function handleRequest(request, response) } // iframe with arbitrary content - if (query["res"] == "iframe") { + if (query.res == "iframe") { response.setHeader("Content-Type", "text/html", false); response.write("iframe content..."); return; } // image - if (query["res"] == "image") { + if (query.res == "image") { response.setHeader("Content-Type", "image/gif", false); response.write("image data..."); return; } // media content, e.g. Ogg video - if (query["res"] == "media") { + if (query.res == "media") { response.setHeader("Content-Type", "video/ogg", false); response.write("video data..."); return; } // plugin content, e.g. - if (query["res"] == "object") { + if (query.res == "object") { response.setHeader("Content-Type", "text/html", false); response.write("object data..."); return; } // script - if (query["res"] == "script") { + if (query.res == "script") { response.setHeader("Content-Type", "application/javascript", false); response.write("some script..."); return; } // external stylesheet - if (query["res"] == "style") { + if (query.res == "style") { response.setHeader("Content-Type", "text/css", false); response.write("css data..."); return; } // internal stylesheet that loads an image from an external site - if (query["res"] == "cssLoader") { - let bgURL = thisSite + resource + '?redir=other&res=image&id=' + query["id"]; + if (query.res == "cssLoader") { + let bgURL = thisSite + resource + "?redir=other&res=image&id=" + query.id; response.setHeader("Content-Type", "text/css", false); response.write("body { background:url('" + bgURL + "'); }"); return; @@ -95,9 +95,10 @@ function handleRequest(request, response) // script that loads an internal worker that uses importScripts on a redirect // to an external script. - if (query["res"] == "loadWorkerThatMakesRequests") { + if (query.res == "loadWorkerThatMakesRequests") { // this creates a worker (same origin) that imports a redirecting script. - let workerURL = thisSite + resource + '?res=makeRequestsWorker&id=' + query["id"]; + let workerURL = + thisSite + resource + "?res=makeRequestsWorker&id=" + query.id; response.setHeader("Content-Type", "application/javascript", false); response.write("new Worker('" + workerURL + "');"); return; @@ -105,45 +106,67 @@ function handleRequest(request, response) // script that loads an internal worker that uses importScripts on a redirect // to an external script. - if (query["res"] == "loadBlobWorkerThatMakesRequests") { + if (query.res == "loadBlobWorkerThatMakesRequests") { // this creates a worker (same origin) that imports a redirecting script. - let workerURL = thisSite + resource + '?res=makeRequestsWorker&id=' + query["id"]; + let workerURL = + thisSite + resource + "?res=makeRequestsWorker&id=" + query.id; response.setHeader("Content-Type", "application/javascript", false); - response.write("var x = new XMLHttpRequest(); x.open('GET', '" + workerURL + "'); "); + response.write( + "var x = new XMLHttpRequest(); x.open('GET', '" + workerURL + "'); " + ); response.write("x.responseType = 'blob'; x.send(); "); - response.write("x.onload = () => { new Worker(URL.createObjectURL(x.response)); };"); + response.write( + "x.onload = () => { new Worker(URL.createObjectURL(x.response)); };" + ); return; } // source for a worker that simply calls importScripts on a script that // redirects. - if (query["res"] == "makeRequestsWorker") { + if (query.res == "makeRequestsWorker") { // this is code for a worker that imports a redirected script. - let scriptURL = thisSite + resource + "?redir=other&res=script&id=script-src-redir-" + query["id"]; - let xhrURL = thisSite + resource + "?redir=other&res=xhr-resp&id=xhr-src-redir-" + query["id"]; - let fetchURL = thisSite + resource + "?redir=other&res=xhr-resp&id=fetch-src-redir-" + query["id"]; + let scriptURL = + thisSite + + resource + + "?redir=other&res=script&id=script-src-redir-" + + query.id; + let xhrURL = + thisSite + + resource + + "?redir=other&res=xhr-resp&id=xhr-src-redir-" + + query.id; + let fetchURL = + thisSite + + resource + + "?redir=other&res=xhr-resp&id=fetch-src-redir-" + + query.id; response.setHeader("Content-Type", "application/javascript", false); response.write("try { importScripts('" + scriptURL + "'); } catch(ex) {} "); - response.write("var x = new XMLHttpRequest(); x.open('GET', '" + xhrURL + "'); x.send();"); + response.write( + "var x = new XMLHttpRequest(); x.open('GET', '" + xhrURL + "'); x.send();" + ); response.write("fetch('" + fetchURL + "');"); return; } // script that invokes XHR - if (query["res"] == "xhr") { + if (query.res == "xhr") { response.setHeader("Content-Type", "application/javascript", false); - var resp = 'var x = new XMLHttpRequest();x.open("GET", "' + thisSite + - resource+'?redir=other&res=xhr-resp&id=xhr-src-redir", false);\n' + - 'x.send(null);'; + var resp = + 'var x = new XMLHttpRequest();x.open("GET", "' + + thisSite + + resource + + '?redir=other&res=xhr-resp&id=xhr-src-redir", false);\n' + + "x.send(null);"; response.write(resp); return; } // response to XHR - if (query["res"] == "xhr-resp") { + if (query.res == "xhr-resp") { response.setHeader("Access-Control-Allow-Origin", "*", false); response.setHeader("Content-Type", "text/html", false); - response.write('XHR response...'); + response.write("XHR response..."); return; } } diff --git a/dom/security/test/csp/file_reloadInFreshProcess.sjs b/dom/security/test/csp/file_reloadInFreshProcess.sjs index 97e0bcc582e5..cd65266b6373 100644 --- a/dom/security/test/csp/file_reloadInFreshProcess.sjs +++ b/dom/security/test/csp/file_reloadInFreshProcess.sjs @@ -1,7 +1,6 @@ "use strict"; -const TESTFRAME_QUERY_LARGE_ALLOCATION_WITH_NO_CSP = - ` +const TESTFRAME_QUERY_LARGE_ALLOCATION_WITH_NO_CSP = ` Bug 1555050 - Test CSP Navigation using ReloadInFreshProcess @@ -16,8 +15,7 @@ const TESTFRAME_QUERY_LARGE_ALLOCATION_WITH_NO_CSP = `; -const TESTFRAME_QUERY_LARGE_ALLOCATION_WITH_CSP = - ` +const TESTFRAME_QUERY_LARGE_ALLOCATION_WITH_CSP = ` Bug 1555050 - Test CSP Navigation using ReloadInFreshProcess @@ -32,8 +30,7 @@ const TESTFRAME_QUERY_LARGE_ALLOCATION_WITH_CSP = `; -const LARGE_ALLOCATION = - ` +const LARGE_ALLOCATION = ` Bug 1555050 - Test CSP Navigation using ReloadInFreshProcess @@ -46,15 +43,18 @@ const LARGE_ALLOCATION = `; -function handleRequest(request, response) -{ +function handleRequest(request, response) { // avoid confusing cache behaviors response.setHeader("Cache-Control", "no-cache", false); - + var queryString = request.queryString; if (queryString == "testframe_with_csp") { - response.setHeader("Content-Security-Policy", "upgrade-insecure-requests", false); + response.setHeader( + "Content-Security-Policy", + "upgrade-insecure-requests", + false + ); response.write(TESTFRAME_QUERY_LARGE_ALLOCATION_WITH_NO_CSP); return; } @@ -65,7 +65,11 @@ function handleRequest(request, response) } if (queryString == "largeAllocation_with_csp") { - response.setHeader("Content-Security-Policy", "upgrade-insecure-requests", false); + response.setHeader( + "Content-Security-Policy", + "upgrade-insecure-requests", + false + ); response.setHeader("Large-Allocation", "0", false); response.write(LARGE_ALLOCATION); return; diff --git a/dom/security/test/csp/file_report_for_import_server.sjs b/dom/security/test/csp/file_report_for_import_server.sjs index e69852b1b791..c54093548741 100644 --- a/dom/security/test/csp/file_report_for_import_server.sjs +++ b/dom/security/test/csp/file_report_for_import_server.sjs @@ -2,12 +2,13 @@ // Bug 1048048 - CSP violation report not sent for @import const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); -function handleRequest(request, response) -{ +function handleRequest(request, response) { // avoid confusing cache behaviors response.setHeader("Cache-Control", "no-cache", false); response.setHeader("Content-Type", "text/html", false); diff --git a/dom/security/test/csp/file_scheme_relative_sources.sjs b/dom/security/test/csp/file_scheme_relative_sources.sjs index 7319b68bee8c..c32f77348492 100644 --- a/dom/security/test/csp/file_scheme_relative_sources.sjs +++ b/dom/security/test/csp/file_scheme_relative_sources.sjs @@ -3,36 +3,39 @@ * Bug 921493 - CSP: test allowlisting of scheme-relative sources */ -function handleRequest(request, response) -{ +function handleRequest(request, response) { Components.utils.importGlobalProperties(["URLSearchParams"]); let query = new URLSearchParams(request.queryString); let scheme = query.get("scheme"); let policy = query.get("policy"); - let linkUrl = scheme + - "://example.com/tests/dom/security/test/csp/file_scheme_relative_sources.js"; + let linkUrl = + scheme + + "://example.com/tests/dom/security/test/csp/file_scheme_relative_sources.js"; - let html = "" + - "" + - "" + - "test schemeless sources within CSP" + - "" + - " " + - "
blocked
" + - // try to load a scheme relative script - "" + - // have an inline script that reports back to the parent whether - // the script got loaded or not from within the sandboxed iframe. - "" + - "" + - ""; + let html = + "" + + "" + + "" + + "test schemeless sources within CSP" + + "" + + " " + + "
blocked
" + + // try to load a scheme relative script + "" + + // have an inline script that reports back to the parent whether + // the script got loaded or not from within the sandboxed iframe. + "" + + "" + + ""; response.setHeader("Cache-Control", "no-cache", false); response.setHeader("Content-Type", "text/html", false); diff --git a/dom/security/test/csp/file_svg_inline_style_server.sjs b/dom/security/test/csp/file_svg_inline_style_server.sjs index c6eac84beaf0..5acdbbd1558d 100644 --- a/dom/security/test/csp/file_svg_inline_style_server.sjs +++ b/dom/security/test/csp/file_svg_inline_style_server.sjs @@ -1,8 +1,6 @@ - "use strict"; -const SVG_IMG = - ` +const SVG_IMG = ` `; -const SVG_IMG_NO_INLINE_STYLE = - ` +const SVG_IMG_NO_INLINE_STYLE = ` `; diff --git a/dom/security/test/csp/file_testserver.sjs b/dom/security/test/csp/file_testserver.sjs index 19c82e6a02ff..c6fbfa200ff0 100644 --- a/dom/security/test/csp/file_testserver.sjs +++ b/dom/security/test/csp/file_testserver.sjs @@ -7,20 +7,21 @@ function loadHTMLFromFile(path) { // Load the HTML to return in the response from file. // Since it's relative to the cwd of the test runner, we start there and // append to get to the actual path of the file. - const testHTMLFile = - Components.classes["@mozilla.org/file/directory_service;1"]. - getService(Components.interfaces.nsIProperties). - get("CurWorkD", Components.interfaces.nsIFile); + const testHTMLFile = Components.classes[ + "@mozilla.org/file/directory_service;1" + ] + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); - const testHTMLFileStream = - Components.classes["@mozilla.org/network/file-input-stream;1"]. - createInstance(Components.interfaces.nsIFileInputStream); + const testHTMLFileStream = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); path .split("/") .filter(path => path) .reduce((file, path) => { - testHTMLFile.append(path) + testHTMLFile.append(path); return testHTMLFile; }, testHTMLFile); testHTMLFileStream.init(testHTMLFile, -1, 0, 0); @@ -35,17 +36,21 @@ function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); // Deliver the CSP policy encoded in the URL - if(query.has("csp")){ + if (query.has("csp")) { response.setHeader("Content-Security-Policy", query.get("csp"), false); } // Deliver the CSP report-only policy encoded in the URI - if(query.has("cspRO")){ - response.setHeader("Content-Security-Policy-Report-Only", query.get("cspRO"), false); + if (query.has("cspRO")) { + response.setHeader( + "Content-Security-Policy-Report-Only", + query.get("cspRO"), + false + ); } // Deliver the CORS header in the URL - if(query.has("cors")){ + if (query.has("cors")) { response.setHeader("Access-Control-Allow-Origin", query.get("cors"), false); } @@ -56,7 +61,7 @@ function handleRequest(request, response) { } response.setHeader("Content-Type", type, false); - if(query.has("file")){ + if (query.has("file")) { response.write(loadHTMLFromFile(query.get("file"))); } } diff --git a/dom/security/test/csp/file_upgrade_insecure_cors_server.sjs b/dom/security/test/csp/file_upgrade_insecure_cors_server.sjs index 33f6c3b23463..83957560c31a 100644 --- a/dom/security/test/csp/file_upgrade_insecure_cors_server.sjs +++ b/dom/security/test/csp/file_upgrade_insecure_cors_server.sjs @@ -1,8 +1,7 @@ // Custom *.sjs file specifically for the needs of Bug: // Bug 1139297 - Implement CSP upgrade-insecure-requests directive -function handleRequest(request, response) -{ +function handleRequest(request, response) { // avoid confusing cache behaviors response.setHeader("Cache-Control", "no-cache", false); diff --git a/dom/security/test/csp/file_upgrade_insecure_docwrite_iframe.sjs b/dom/security/test/csp/file_upgrade_insecure_docwrite_iframe.sjs index 6870a57bbd19..a7fb0a2176da 100644 --- a/dom/security/test/csp/file_upgrade_insecure_docwrite_iframe.sjs +++ b/dom/security/test/csp/file_upgrade_insecure_docwrite_iframe.sjs @@ -5,7 +5,8 @@ const IFRAME_URL = "http://example.com/tests/dom/security/test/csp/file_upgrade_insecure_docwrite_iframe.sjs?docwriteframe"; -const TEST_FRAME = ` +const TEST_FRAME = + ` TEST_FRAME @@ -13,12 +14,13 @@ const TEST_FRAME = ` `; - // doc.write(iframe) sends a post message to the parent indicating the current // location so the parent can make sure the request was upgraded to *https*. const DOC_WRITE_FRAME = ` @@ -30,8 +32,7 @@ const DOC_WRITE_FRAME = ` `; -function handleRequest(request, response) -{ +function handleRequest(request, response) { // avoid confusing cache behaviors response.setHeader("Cache-Control", "no-cache", false); response.setHeader("Content-Type", "text/html", false); diff --git a/dom/security/test/csp/file_upgrade_insecure_loopback_server.sjs b/dom/security/test/csp/file_upgrade_insecure_loopback_server.sjs index eba5b33f8db6..ff7931a1d4f5 100644 --- a/dom/security/test/csp/file_upgrade_insecure_loopback_server.sjs +++ b/dom/security/test/csp/file_upgrade_insecure_loopback_server.sjs @@ -1,8 +1,7 @@ // Custom *.sjs file specifically for the needs of Bug: // Bug 1447784 - Implement CSP upgrade-insecure-requests directive -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Access-Control-Allow-Headers", "content-type", false); response.setHeader("Access-Control-Allow-Methods", "GET", false); response.setHeader("Access-Control-Allow-Origin", "*", false); diff --git a/dom/security/test/csp/file_upgrade_insecure_navigation_redirect.sjs b/dom/security/test/csp/file_upgrade_insecure_navigation_redirect.sjs index 9e0f3a329a3f..3f7f8158e0ba 100644 --- a/dom/security/test/csp/file_upgrade_insecure_navigation_redirect.sjs +++ b/dom/security/test/csp/file_upgrade_insecure_navigation_redirect.sjs @@ -36,8 +36,10 @@ function handleRequest(request, response) { return; } - if (query === "finaldoc_same_origin_redirect" || - query === "finaldoc_cross_origin_redirect") { + if ( + query === "finaldoc_same_origin_redirect" || + query === "finaldoc_cross_origin_redirect" + ) { response.write(FINAL_DOCUMENT); return; } diff --git a/dom/security/test/csp/file_upgrade_insecure_reporting_server.sjs b/dom/security/test/csp/file_upgrade_insecure_reporting_server.sjs index b1f9440964a7..0cc332d01094 100644 --- a/dom/security/test/csp/file_upgrade_insecure_reporting_server.sjs +++ b/dom/security/test/csp/file_upgrade_insecure_reporting_server.sjs @@ -6,35 +6,38 @@ Components.utils.import("resource://gre/modules/NetUtil.jsm"); // small red image const IMG_BYTES = atob( "iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12" + - "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="); + "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" +); -const REPORT_URI = "https://example.com/tests/dom/security/test/csp/file_upgrade_insecure_reporting_server.sjs?report"; +const REPORT_URI = + "https://example.com/tests/dom/security/test/csp/file_upgrade_insecure_reporting_server.sjs?report"; const POLICY = "upgrade-insecure-requests; default-src https: 'unsafe-inline'"; -const POLICY_RO = "default-src https: 'unsafe-inline'; report-uri " + REPORT_URI; +const POLICY_RO = + "default-src https: 'unsafe-inline'; report-uri " + REPORT_URI; function loadHTMLFromFile(path) { // Load the HTML to return in the response from file. // Since it's relative to the cwd of the test runner, we start there and // append to get to the actual path of the file. - var testHTMLFile = - Components.classes["@mozilla.org/file/directory_service;1"]. - getService(Components.interfaces.nsIProperties). - get("CurWorkD", Components.interfaces.nsIFile); + var testHTMLFile = Components.classes["@mozilla.org/file/directory_service;1"] + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); var dirs = path.split("/"); for (var i = 0; i < dirs.length; i++) { testHTMLFile.append(dirs[i]); } - var testHTMLFileStream = - Components.classes["@mozilla.org/network/file-input-stream;1"]. - createInstance(Components.interfaces.nsIFileInputStream); + var testHTMLFileStream = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); testHTMLFileStream.init(testHTMLFile, -1, 0, 0); - var testHTML = NetUtil.readInputStreamToString(testHTMLFileStream, testHTMLFileStream.available()); + var testHTML = NetUtil.readInputStreamToString( + testHTMLFileStream, + testHTMLFileStream.available() + ); return testHTML; } - -function handleRequest(request, response) -{ +function handleRequest(request, response) { // avoid confusing cache behaviors response.setHeader("Cache-Control", "no-cache", false); @@ -50,8 +53,12 @@ function handleRequest(request, response) response.setHeader("Content-Security-Policy", POLICY, false); response.setHeader("Content-Security-Policy-Report-Only", POLICY_RO, false); response.setHeader("Content-Type", "text/html", false); - response.write(loadHTMLFromFile("tests/dom/security/test/csp/file_upgrade_insecure_reporting.html")); - return; + response.write( + loadHTMLFromFile( + "tests/dom/security/test/csp/file_upgrade_insecure_reporting.html" + ) + ); + return; } // (3) Return the image back to the client diff --git a/dom/security/test/csp/file_upgrade_insecure_server.sjs b/dom/security/test/csp/file_upgrade_insecure_server.sjs index e27b97830d3f..d884a9000dbf 100644 --- a/dom/security/test/csp/file_upgrade_insecure_server.sjs +++ b/dom/security/test/csp/file_upgrade_insecure_server.sjs @@ -14,11 +14,21 @@ const IFRAME_CONTENT = "" + ""; -const expectedQueries = [ "script", "style", "img", "iframe", "form", "xhr", - "media", "object", "font", "img-redir", "nested-img"]; +const expectedQueries = [ + "script", + "style", + "img", + "iframe", + "form", + "xhr", + "media", + "object", + "font", + "img-redir", + "nested-img", +]; -function handleRequest(request, response) -{ +function handleRequest(request, response) { // avoid confusing cache behaviors response.setHeader("Cache-Control", "no-cache", false); var queryString = request.queryString; @@ -50,7 +60,7 @@ function handleRequest(request, response) } // make sure all the requested queries are indeed https - queryString += (request.scheme == "https") ? "-ok" : "-error"; + queryString += request.scheme == "https" ? "-ok" : "-error"; var receivedQueries = getState("receivedQueries"); @@ -83,7 +93,7 @@ function handleRequest(request, response) // the iframe context in case of an error so we // can test both, using upgrade-insecure as well // as the base case of not using upgrade-insecure. - if ((queryString == "iframe-ok") || (queryString == "iframe-error")) { + if (queryString == "iframe-ok" || queryString == "iframe-error") { response.write(IFRAME_CONTENT); } diff --git a/dom/security/test/csp/referrerdirective.sjs b/dom/security/test/csp/referrerdirective.sjs index f238ab45255e..071def0cdbd1 100644 --- a/dom/security/test/csp/referrerdirective.sjs +++ b/dom/security/test/csp/referrerdirective.sjs @@ -1,36 +1,40 @@ // Used for bug 965727 to serve up really simple scripts reflecting the // referrer sent to load this back to the loader. - function handleRequest(request, response) { // skip speculative loads. - var splits = request.queryString.split('&'); + var splits = request.queryString.split("&"); var params = {}; splits.forEach(function(v) { - let parts = v.split('='); + let parts = v.split("="); params[parts[0]] = unescape(parts[1]); }); - var loadType = params['type']; - var referrerLevel = 'error'; + var loadType = params.type; + var referrerLevel = "error"; - if (request.hasHeader('Referer')) { - var referrer = request.getHeader('Referer'); + if (request.hasHeader("Referer")) { + var referrer = request.getHeader("Referer"); if (referrer.indexOf("file_testserver.sjs") > -1) { referrerLevel = "full"; } else { referrerLevel = "origin"; } } else { - referrerLevel = 'none'; + referrerLevel = "none"; } - var theScript = 'window.postResult("' + loadType + '", "' + referrerLevel + '");'; - response.setHeader('Content-Type', 'application/javascript; charset=utf-8', false); - response.setHeader('Cache-Control', 'no-cache', false); + var theScript = + 'window.postResult("' + loadType + '", "' + referrerLevel + '");'; + response.setHeader( + "Content-Type", + "application/javascript; charset=utf-8", + false + ); + response.setHeader("Cache-Control", "no-cache", false); if (request.method != "OPTIONS") { - response.write(theScript); + response.write(theScript); } } diff --git a/dom/security/test/csp/worker.sjs b/dom/security/test/csp/worker.sjs index 1d6452608360..e85df3382aa0 100644 --- a/dom/security/test/csp/worker.sjs +++ b/dom/security/test/csp/worker.sjs @@ -2,13 +2,11 @@ Components.utils.importGlobalProperties(["URLSearchParams"]); const SJS = "http://mochi.test:8888/tests/dom/security/test/csp/worker.sjs"; -function createFetchWorker(url) -{ - return `fetch("${url}");`; +function createFetchWorker(url) { + return `fetch("${url}");`; } -function createXHRWorker(url) -{ +function createXHRWorker(url) { return ` try { var xhr = new XMLHttpRequest(); @@ -18,8 +16,7 @@ function createXHRWorker(url) `; } -function createImportScriptsWorker(url) -{ +function createImportScriptsWorker(url) { return ` try { importScripts("${url}"); @@ -27,14 +24,12 @@ function createImportScriptsWorker(url) `; } -function createChildWorkerURL(params) -{ +function createChildWorkerURL(params) { let url = SJS + "?" + params.toString(); return `new Worker("${url}");`; } -function createChildWorkerBlob(params) -{ +function createChildWorkerBlob(params) { let url = SJS + "?" + params.toString(); return ` try { @@ -48,8 +43,7 @@ function createChildWorkerBlob(params) `; } -function handleRequest(request, response) -{ +function handleRequest(request, response) { let params = new URLSearchParams(request.queryString); let id = params.get("id"); @@ -61,8 +55,12 @@ function handleRequest(request, response) response.setHeader("Content-Type", "application/javascript"); // Deliver the CSP policy encoded in the URL - if(params.has("csp")) { - response.setHeader("Content-Security-Policy", unescape(params.get("csp")), false); + if (params.has("csp")) { + response.setHeader( + "Content-Security-Policy", + unescape(params.get("csp")), + false + ); } if (child) { diff --git a/dom/security/test/general/file_block_script_wrong_mime_server.sjs b/dom/security/test/general/file_block_script_wrong_mime_server.sjs index d6d27796cbd1..88c7540c8c07 100644 --- a/dom/security/test/general/file_block_script_wrong_mime_server.sjs +++ b/dom/security/test/general/file_block_script_wrong_mime_server.sjs @@ -27,7 +27,11 @@ function handleRequest(request, response) { response.write(WORKER); break; case "worker-import": - response.write(`importScripts("file_block_script_wrong_mime_server.sjs?type=script&mime=${query.get("mime")}");`); + response.write( + `importScripts("file_block_script_wrong_mime_server.sjs?type=script&mime=${query.get( + "mime" + )}");` + ); response.write(WORKER); break; } diff --git a/dom/security/test/general/file_block_subresource_redir_to_data.sjs b/dom/security/test/general/file_block_subresource_redir_to_data.sjs index f8a6e9bf6d28..1e312bc81038 100644 --- a/dom/security/test/general/file_block_subresource_redir_to_data.sjs +++ b/dom/security/test/general/file_block_subresource_redir_to_data.sjs @@ -1,22 +1,30 @@ "use strict"; let SCRIPT_DATA = "alert('this alert should be blocked');"; -let WORKER_DATA = "onmessage = function(event) { postMessage('worker-loaded'); }"; +let WORKER_DATA = + "onmessage = function(event) { postMessage('worker-loaded'); }"; -function handleRequest(request, response) -{ +function handleRequest(request, response) { const query = request.queryString; response.setHeader("Cache-Control", "no-cache", false); response.setStatusLine("1.1", 302, "Found"); if (query === "script" || query === "modulescript") { - response.setHeader("Location", "data:text/javascript," + escape(SCRIPT_DATA), false); + response.setHeader( + "Location", + "data:text/javascript," + escape(SCRIPT_DATA), + false + ); return; } if (query === "worker") { - response.setHeader("Location", "data:text/javascript," + escape(WORKER_DATA), false); + response.setHeader( + "Location", + "data:text/javascript," + escape(WORKER_DATA), + false + ); return; } diff --git a/dom/security/test/general/file_block_toplevel_data_redirect.sjs b/dom/security/test/general/file_block_toplevel_data_redirect.sjs index 64e294cab162..c03ace5f237e 100644 --- a/dom/security/test/general/file_block_toplevel_data_redirect.sjs +++ b/dom/security/test/general/file_block_toplevel_data_redirect.sjs @@ -4,8 +4,7 @@ var DATA_URI = "toplevel data: URI navigations after redirect should be blocked"; -function handleRequest(request, response) -{ +function handleRequest(request, response) { // avoid confusing cache behaviors response.setHeader("Cache-Control", "no-cache", false); diff --git a/dom/security/test/general/file_cache_splitting_isloaded.sjs b/dom/security/test/general/file_cache_splitting_isloaded.sjs index b5eefb549239..c48c8a3bf751 100644 --- a/dom/security/test/general/file_cache_splitting_isloaded.sjs +++ b/dom/security/test/general/file_cache_splitting_isloaded.sjs @@ -32,5 +32,4 @@ function handleRequest(request, response) { queryResponse.write("1"); queryResponse.finish(); }); - return; } diff --git a/dom/security/test/general/file_contentpolicytype_targeted_link_iframe.sjs b/dom/security/test/general/file_contentpolicytype_targeted_link_iframe.sjs index f0084410a231..9ee73ae3c402 100644 --- a/dom/security/test/general/file_contentpolicytype_targeted_link_iframe.sjs +++ b/dom/security/test/general/file_contentpolicytype_targeted_link_iframe.sjs @@ -22,8 +22,7 @@ const INNER_FRAME = ` `; -function handleRequest(request, response) -{ +function handleRequest(request, response) { // avoid confusing cache behaviors response.setHeader("Cache-Control", "no-cache", false); response.setHeader("Content-Type", "text/html", false); diff --git a/dom/security/test/general/file_framing_error_pages.sjs b/dom/security/test/general/file_framing_error_pages.sjs index bf669283cccb..fb62a34bdb82 100644 --- a/dom/security/test/general/file_framing_error_pages.sjs +++ b/dom/security/test/general/file_framing_error_pages.sjs @@ -1,7 +1,6 @@ "use strict"; function handleRequest(request, response) { - response.setHeader("Cache-Control", "no-cache", false); response.setHeader("Content-Type", "text/html", false); @@ -13,7 +12,11 @@ function handleRequest(request, response) { } if (query === "csp") { - response.setHeader("content-security-policy", "frame-ancestors 'none'", false); + response.setHeader( + "content-security-policy", + "frame-ancestors 'none'", + false + ); response.write("csp test loaded"); return; } diff --git a/dom/security/test/general/file_gpc_server.sjs b/dom/security/test/general/file_gpc_server.sjs index 1a04d49fa2e7..d0b14215b45e 100644 --- a/dom/security/test/general/file_gpc_server.sjs +++ b/dom/security/test/general/file_gpc_server.sjs @@ -8,8 +8,7 @@ function handleRequest(request, response) { if (gpc === "1") { response.write("true"); - } - else { + } else { response.write("false"); } } diff --git a/dom/security/test/general/file_nosniff_navigation.sjs b/dom/security/test/general/file_nosniff_navigation.sjs index 8d1de13828b6..9aa955b6ab11 100644 --- a/dom/security/test/general/file_nosniff_navigation.sjs +++ b/dom/security/test/general/file_nosniff_navigation.sjs @@ -3,30 +3,28 @@ // small red image const IMG = atob( "iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12" + - "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="); + "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" +); -function getSniffableContent(selector){ - switch(selector){ - case "xml": - return ``; - case "html": - return ` Test test `; - case "css": - return `*{ color: pink !important; }`; - case 'json': +function getSniffableContent(selector) { + switch (selector) { + case "xml": + return ``; + case "html": + return ` Test test `; + case "css": + return `*{ color: pink !important; }`; + case "json": return `{ 'test':'yes' }`; - case 'img': + case "img": return IMG; } return "Basic UTF-8 Text"; } -function handleRequest(request, response) -{ +function handleRequest(request, response) { // avoid confusing cache behaviors - response.setHeader('X-Content-Type-Options', 'nosniff'); // Disable Sniffing - response.setHeader("Content-Type","*/*"); // Try Browser to force sniffing. + response.setHeader("X-Content-Type-Options", "nosniff"); // Disable Sniffing + response.setHeader("Content-Type", "*/*"); // Try Browser to force sniffing. response.write(getSniffableContent(request.queryString)); - return; } - diff --git a/dom/security/test/general/file_nosniff_navigation_garbage.sjs b/dom/security/test/general/file_nosniff_navigation_garbage.sjs index 726c6ecf9ebc..1108f2d6674c 100644 --- a/dom/security/test/general/file_nosniff_navigation_garbage.sjs +++ b/dom/security/test/general/file_nosniff_navigation_garbage.sjs @@ -3,31 +3,30 @@ // small red image const IMG = atob( "iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12" + - "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="); + "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" +); -function getSniffableContent(selector){ - switch(selector){ - case "xml": - return ``; - case "html": - return ` Test test `; - case 'js': - return `` - case "css": - return `*{ color: pink !important; }`; - case 'json': +function getSniffableContent(selector) { + switch (selector) { + case "xml": + return ``; + case "html": + return ` Test test `; + case "js": + return ``; + case "css": + return `*{ color: pink !important; }`; + case "json": return `{ 'test':'yes' }`; - case 'img': + case "img": return IMG; } return "Basic UTF-8 Text"; } -function handleRequest(request, response) -{ +function handleRequest(request, response) { // avoid confusing cache behaviors - response.setHeader('X-Content-Type-Options', 'nosniff'); // Disable Sniffing - response.setHeader("Content-Type","garbage/garbage"); // Try Browser to force sniffing. + response.setHeader("X-Content-Type-Options", "nosniff"); // Disable Sniffing + response.setHeader("Content-Type", "garbage/garbage"); // Try Browser to force sniffing. response.write(getSniffableContent(request.queryString)); - return; } diff --git a/dom/security/test/general/file_nosniff_navigation_mismatch.sjs b/dom/security/test/general/file_nosniff_navigation_mismatch.sjs index 3b34389c4bf2..d3f07d51222b 100644 --- a/dom/security/test/general/file_nosniff_navigation_mismatch.sjs +++ b/dom/security/test/general/file_nosniff_navigation_mismatch.sjs @@ -3,31 +3,30 @@ // small red image const IMG = atob( "iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12" + - "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="); + "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" +); -function getSniffableContent(selector){ - switch(selector){ - case "xml": - return ``; - case "html": - return ` Test test `; - case 'js': - return `` - case "css": - return `*{ color: pink !important; }`; - case 'json': +function getSniffableContent(selector) { + switch (selector) { + case "xml": + return ``; + case "html": + return ` Test test `; + case "js": + return ``; + case "css": + return `*{ color: pink !important; }`; + case "json": return `{ 'test':'yes' }`; - case 'img': + case "img": return IMG; } return "Basic UTF-8 Text"; } -function handleRequest(request, response) -{ +function handleRequest(request, response) { // avoid confusing cache behaviors - response.setHeader('X-Content-Type-Options', 'nosniff'); // Disable Sniffing - response.setHeader("Content-Type","image/png"); // Send a wrong mime type + response.setHeader("X-Content-Type-Options", "nosniff"); // Disable Sniffing + response.setHeader("Content-Type", "image/png"); // Send a wrong mime type response.write(getSniffableContent(request.queryString)); - return; } diff --git a/dom/security/test/general/file_nosniff_testserver.sjs b/dom/security/test/general/file_nosniff_testserver.sjs index 0cf168a3c70e..88a1f980b1b8 100644 --- a/dom/security/test/general/file_nosniff_testserver.sjs +++ b/dom/security/test/general/file_nosniff_testserver.sjs @@ -7,7 +7,8 @@ const CSS = "body { background-color: green; }"; // small red image const IMG = atob( "iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12" + - "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="); + "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" +); function handleRequest(request, response) { const query = new URLSearchParams(request.queryString); diff --git a/dom/security/test/general/file_same_site_cookies_about.sjs b/dom/security/test/general/file_same_site_cookies_about.sjs index 877ce7024a57..421eb999be73 100644 --- a/dom/security/test/general/file_same_site_cookies_about.sjs +++ b/dom/security/test/general/file_same_site_cookies_about.sjs @@ -3,19 +3,22 @@ // small red image const IMG_BYTES = atob( "iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12" + - "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="); + "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" +); -const IFRAME_INC = - ``; +const IFRAME_INC = ``; -function handleRequest(request, response) -{ +function handleRequest(request, response) { // avoid confusing cache behaviors response.setHeader("Cache-Control", "no-cache", false); // using startsWith and discard the math random if (request.queryString.startsWith("setSameSiteCookie")) { - response.setHeader("Set-Cookie", "myKey=mySameSiteAboutCookie; samesite=strict", true); + response.setHeader( + "Set-Cookie", + "myKey=mySameSiteAboutCookie; samesite=strict", + true + ); response.setHeader("Content-Type", "image/png"); response.write(IMG_BYTES); return; @@ -42,22 +45,27 @@ function handleRequest(request, response) // inclusion tets if (request.queryString.includes("loadsrcdocframeInc")) { - response.write(""); + response.write(''); return; } if (request.queryString.includes("loadblankframeInc")) { - let FRAME = ` + let FRAME = + ` \n\ + "\n\ \n\ - '; + " + ); } // Creates the following test cases for the specified referrer // policy combination: // with referrer function createTest(aPolicy, aImgPolicy, aName) { - var headString = ''; + var headString = ""; if (aPolicy) { headString += ''; } - headString += ''; + headString += ""; return createTestPage(headString, aImgPolicy, aName); } @@ -50,249 +67,271 @@ function createTest(aPolicy, aImgPolicy, aName) { // testing regular load img with referrer policy // speculative parser should not kick in here function createTest2(aImgPolicy, name) { - return createTestPage('', aImgPolicy, name); + return createTestPage("", aImgPolicy, name); } function createTest3(aImgPolicy1, aImgPolicy2, aImgPolicy3, aName) { - return '\n\ + return ( + '\n\ \n\ \n\ - \n\ - \n\ - \n\ + \n\ + \n\ + \n\ \n\ + "\n\ \n\ - '; + " + ); } function createTestPage2(aHead, aPolicy, aName) { - return '\n\ - '+ - aHead + - '\n\ - \n\ + return ( + "\n\ + " + + aHead + + '\n\ + \n\ \n\ + "\n\ \n\ - '; + " + ); } function createTestPage3(aHead, aPolicy, aName) { - return '\n\ - '+ - aHead + - '\n\ - \n\ + "\n\ \n\ - '; + " + ); } function createTestPage4(aHead, aPolicy, aName) { - return '\n\ - '+ - aHead + - '\n\ - \n\ + "\n\ \n\ - '; + " + ); } function createSetAttributeTest1(aPolicy, aImgPolicy, aName) { - var headString = ''; + var headString = ""; headString += ''; - headString += ''; + headString += ""; return createTestPage3(headString, aImgPolicy, aName); } function createSetAttributeTest2(aPolicy, aImgPolicy, aName) { - var headString = ''; + var headString = ""; headString += ''; - headString += ''; + headString += ""; return createTestPage4(headString, aImgPolicy, aName); } - function createTest4(aPolicy, aName) { - var headString = ''; + var headString = ""; headString += ''; - headString += ''; + headString += ""; return createTestPage2(headString, aPolicy, aName); } function createTest5(aPolicy, aName) { - var headString = ''; + var headString = ""; headString += ''; return createTestPage2(headString, aPolicy, aName); } function handleRequest(request, response) { - var sharedKey = 'img_referrer_testserver.sjs'; - var params = request.queryString.split('&'); - var action = params[0].split('=')[1]; + var sharedKey = "img_referrer_testserver.sjs"; + var params = request.queryString.split("&"); + var action = params[0].split("=")[1]; - response.setHeader('Cache-Control', 'no-cache', false); - response.setHeader('Content-Type', 'text/html; charset=utf-8', false); + response.setHeader("Cache-Control", "no-cache", false); + response.setHeader("Content-Type", "text/html; charset=utf-8", false); - if (action === 'resetState') { + if (action === "resetState") { var state = getSharedState(sharedKey); state = {}; setSharedState(sharedKey, JSON.stringify(state)); response.write(""); return; } - if (action === 'test') { + if (action === "test") { // ?action=test&policy=origin&name=name&content=content - var policy = params[1].split('=')[1]; - var name = params[2].split('=')[1]; - var content = params[3].split('=')[1]; + var policy = params[1].split("=")[1]; + var name = params[2].split("=")[1]; + var content = params[3].split("=")[1]; var result = getSharedState(sharedKey); - if (result === '') { + if (result === "") { result = {}; } else { result = JSON.parse(result); } - if (!result["tests"]) { - result["tests"] = {}; + if (!result.tests) { + result.tests = {}; } var referrerLevel = "none"; - var test = {} - if (request.hasHeader('Referer')) { - let referrer = request.getHeader('Referer'); + var test = {}; + if (request.hasHeader("Referer")) { + let referrer = request.getHeader("Referer"); if (referrer.indexOf("img_referrer_testserver") > 0) { referrerLevel = "full"; } else if (referrer == "http://mochi.test:8888/") { referrerLevel = "origin"; } - test.referrer = request.getHeader('Referer'); + test.referrer = request.getHeader("Referer"); } else { - test.referrer = ''; + test.referrer = ""; } test.policy = referrerLevel; test.expected = policy; - result["tests"][name] = test; + result.tests[name] = test; setSharedState(sharedKey, JSON.stringify(result)); - if (content === 'image') { + if (content === "image") { response.setHeader("Content-Type", "image/png"); response.write(IMG_BYTES); } return; } - if (action === 'get-test-results') { + if (action === "get-test-results") { // ?action=get-result response.write(getSharedState(sharedKey)); return; } - if (action === 'generate-img-policy-test') { + if (action === "generate-img-policy-test") { // ?action=generate-img-policy-test&imgPolicy=b64-encoded-string&name=name&policy=b64-encoded-string - var imgPolicy = unescape(params[1].split('=')[1]); - var name = unescape(params[2].split('=')[1]); - var metaPolicy = ''; + var imgPolicy = unescape(params[1].split("=")[1]); + var name = unescape(params[2].split("=")[1]); + var metaPolicy = ""; if (params[3]) { - metaPolicy = params[3].split('=')[1]; + metaPolicy = params[3].split("=")[1]; } response.write(createTest(metaPolicy, imgPolicy, name)); return; } - if (action === 'generate-img-policy-test2') { + if (action === "generate-img-policy-test2") { // ?action=generate-img-policy-test2&imgPolicy=b64-encoded-string&name=name - var imgPolicy = unescape(params[1].split('=')[1]); - var name = unescape(params[2].split('=')[1]); + var imgPolicy = unescape(params[1].split("=")[1]); + var name = unescape(params[2].split("=")[1]); response.write(createTest2(imgPolicy, name)); return; } - if (action === 'generate-img-policy-test3') { + if (action === "generate-img-policy-test3") { // ?action=generate-img-policy-test3&imgPolicy1=b64-encoded-string&imgPolicy2=b64-encoded-string&imgPolicy3=b64-encoded-string&name=name - var imgPolicy1 = unescape(params[1].split('=')[1]); - var imgPolicy2 = unescape(params[2].split('=')[1]); - var imgPolicy3 = unescape(params[3].split('=')[1]); - var name = unescape(params[4].split('=')[1]); + var imgPolicy1 = unescape(params[1].split("=")[1]); + var imgPolicy2 = unescape(params[2].split("=")[1]); + var imgPolicy3 = unescape(params[3].split("=")[1]); + var name = unescape(params[4].split("=")[1]); response.write(createTest3(imgPolicy1, imgPolicy2, imgPolicy3, name)); return; } - if (action === 'generate-img-policy-test4') { + if (action === "generate-img-policy-test4") { // ?action=generate-img-policy-test4&imgPolicy=b64-encoded-string&name=name - var policy = unescape(params[1].split('=')[1]); - var name = unescape(params[2].split('=')[1]); + var policy = unescape(params[1].split("=")[1]); + var name = unescape(params[2].split("=")[1]); response.write(createTest4(policy, name)); return; } - if (action === 'generate-img-policy-test5') { + if (action === "generate-img-policy-test5") { // ?action=generate-img-policy-test5&policy=b64-encoded-string&name=name - var policy = unescape(params[1].split('=')[1]); - var name = unescape(params[2].split('=')[1]); + var policy = unescape(params[1].split("=")[1]); + var name = unescape(params[2].split("=")[1]); response.write(createTest5(policy, name)); return; } - if (action === 'generate-setAttribute-test1') { + if (action === "generate-setAttribute-test1") { // ?action=generate-setAttribute-test1&policy=b64-encoded-string&name=name - var imgPolicy = unescape(params[1].split('=')[1]); - var policy = unescape(params[2].split('=')[1]); - var name = unescape(params[3].split('=')[1]); + var imgPolicy = unescape(params[1].split("=")[1]); + var policy = unescape(params[2].split("=")[1]); + var name = unescape(params[3].split("=")[1]); response.write(createSetAttributeTest1(policy, imgPolicy, name)); return; } - if (action === 'generate-setAttribute-test2') { + if (action === "generate-setAttribute-test2") { // ?action=generate-setAttribute-test2&policy=b64-encoded-string&name=name - var imgPolicy = unescape(params[1].split('=')[1]); - var policy = unescape(params[2].split('=')[1]); - var name = unescape(params[3].split('=')[1]); + var imgPolicy = unescape(params[1].split("=")[1]); + var policy = unescape(params[2].split("=")[1]); + var name = unescape(params[3].split("=")[1]); response.write(createSetAttributeTest2(policy, imgPolicy, name)); return; } - response.write("I don't know action "+action); - return; + response.write("I don't know action " + action); } diff --git a/dom/security/test/referrer-policy/referrer_header.sjs b/dom/security/test/referrer-policy/referrer_header.sjs index 021e6cac4467..29c324b8f64d 100644 --- a/dom/security/test/referrer-policy/referrer_header.sjs +++ b/dom/security/test/referrer-policy/referrer_header.sjs @@ -1,6 +1,6 @@ - function handleRequest(request, response) { response.setHeader("Referrer-Policy", "same-origin"); - response.write('Loaded'); + response.write( + 'Loaded' + ); } - diff --git a/dom/security/test/referrer-policy/referrer_page.sjs b/dom/security/test/referrer-policy/referrer_page.sjs index 307873aa3a45..afc2fb05fdff 100644 --- a/dom/security/test/referrer-policy/referrer_page.sjs +++ b/dom/security/test/referrer-policy/referrer_page.sjs @@ -6,7 +6,6 @@ function handleRequest(request, response) { let metaReferrerPolicy = params.get("meta") || ""; let showReferrer = params.has("show"); - if (referrerPolicyHeader) { response.setHeader("Referrer-Policy", referrerPolicyHeader, false); } @@ -20,7 +19,9 @@ function handleRequest(request, response) { if (showReferrer) { if (request.hasHeader("Referer")) { - resultString = `Referer Header: ${request.getHeader("Referer")}`; + resultString = `Referer Header: ${request.getHeader( + "Referer" + )}`; } else { resultString = `Referer Header: `; } @@ -35,5 +36,6 @@ function handleRequest(request, response) { ${resultString} - `); + ` + ); } diff --git a/dom/security/test/referrer-policy/referrer_testserver.sjs b/dom/security/test/referrer-policy/referrer_testserver.sjs index 198780a27fba..9880f29c07be 100644 --- a/dom/security/test/referrer-policy/referrer_testserver.sjs +++ b/dom/security/test/referrer-policy/referrer_testserver.sjs @@ -1,14 +1,14 @@ /* -* Test server for iframe, anchor, and area referrer attributes. -* https://bugzilla.mozilla.org/show_bug.cgi?id=1175736 -* Also server for further referrer tests such as redirecting tests -* bug 1174913, bug 1175736, bug 1184781 -*/ + * Test server for iframe, anchor, and area referrer attributes. + * https://bugzilla.mozilla.org/show_bug.cgi?id=1175736 + * Also server for further referrer tests such as redirecting tests + * bug 1174913, bug 1175736, bug 1184781 + */ Components.utils.importGlobalProperties(["URLSearchParams"]); const SJS = "referrer_testserver.sjs?"; const SJS_PATH = "/tests/dom/security/test/referrer-policy/"; -const BASE_ORIGIN = "example.com" +const BASE_ORIGIN = "example.com"; const BASE_URL = BASE_ORIGIN + SJS_PATH + SJS; const SHARED_KEY = SJS; const SAME_ORIGIN = "mochi.test:8888" + SJS_PATH + SJS; @@ -16,29 +16,57 @@ const CROSS_ORIGIN_URL = "test1.example.com" + SJS_PATH + SJS; const IMG_BYTES = atob( "iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12" + - "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="); + "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" +); -function createTestUrl(aPolicy, aAction, aName, aType, aSchemeFrom, aSchemeTo, - crossOrigin, referrerPolicyHeader) { +function createTestUrl( + aPolicy, + aAction, + aName, + aType, + aSchemeFrom, + aSchemeTo, + crossOrigin, + referrerPolicyHeader +) { var schemeTo = aSchemeTo || "http"; var schemeFrom = aSchemeFrom || "http"; var rpHeader = referrerPolicyHeader || ""; var url = schemeTo + "://"; - url += (crossOrigin ? CROSS_ORIGIN_URL : BASE_URL); + url += crossOrigin ? CROSS_ORIGIN_URL : BASE_URL; url += - "ACTION=" + aAction + "&" + - "policy=" + aPolicy + "&" + - "NAME=" + aName + "&" + - "type=" + aType + "&" + - "RP_HEADER=" + rpHeader + "&" + - "SCHEME_FROM=" + schemeFrom; + "ACTION=" + + aAction + + "&" + + "policy=" + + aPolicy + + "&" + + "NAME=" + + aName + + "&" + + "type=" + + aType + + "&" + + "RP_HEADER=" + + rpHeader + + "&" + + "SCHEME_FROM=" + + schemeFrom; return url; - } +} // test page using iframe referrer attribute // if aParams are set this creates a test where the iframe url is a redirect -function createIframeTestPageUsingRefferer(aMetaPolicy, aAttributePolicy, aNewAttributePolicy, aName, aParams, - aSchemeFrom, aSchemeTo, aChangingMethod) { +function createIframeTestPageUsingRefferer( + aMetaPolicy, + aAttributePolicy, + aNewAttributePolicy, + aName, + aParams, + aSchemeFrom, + aSchemeTo, + aChangingMethod +) { var metaString = ""; if (aMetaPolicy) { metaString = ``; @@ -49,14 +77,23 @@ function createIframeTestPageUsingRefferer(aMetaPolicy, aAttributePolicy, aNewAt } else if (aChangingMethod === "property") { changeString = `document.getElementById("myframe").referrerPolicy = "${aNewAttributePolicy}"`; } - var iFrameString = ``; + var iFrameString = ``; var iframeUrl = ""; if (aParams) { aParams.delete("ACTION"); aParams.append("ACTION", "redirectIframe"); iframeUrl = "http://" + CROSS_ORIGIN_URL + aParams.toString(); } else { - iframeUrl = createTestUrl(aAttributePolicy, "test", aName, "iframe", aSchemeFrom, aSchemeTo); + iframeUrl = createTestUrl( + aAttributePolicy, + "test", + aName, + "iframe", + aSchemeFrom, + aSchemeTo + ); } return ` @@ -79,20 +116,62 @@ function createIframeTestPageUsingRefferer(aMetaPolicy, aAttributePolicy, aNewAt `; } -function buildAnchorString(aMetaPolicy, aReferrerPolicy, aName, aRelString, aSchemeFrom, aSchemeTo){ +function buildAnchorString( + aMetaPolicy, + aReferrerPolicy, + aName, + aRelString, + aSchemeFrom, + aSchemeTo +) { if (aReferrerPolicy) { - return `${aReferrerPolicy}`; + return `${aReferrerPolicy}`; } - return `link`; + return `link`; } -function buildAreaString(aMetaPolicy, aReferrerPolicy, aName, aRelString, aSchemeFrom, aSchemeTo){ +function buildAreaString( + aMetaPolicy, + aReferrerPolicy, + aName, + aRelString, + aSchemeFrom, + aSchemeTo +) { var result = `image`; result += ``; if (aReferrerPolicy) { - result += `theArea`; + result += `theArea`; } else { - result += `theArea`; + result += `theArea`; } result += ``; @@ -100,7 +179,17 @@ function buildAreaString(aMetaPolicy, aReferrerPolicy, aName, aRelString, aSchem } // test page using anchor or area referrer attribute -function createAETestPageUsingRefferer(aMetaPolicy, aAttributePolicy, aNewAttributePolicy, aName, aRel, aStringBuilder, aSchemeFrom, aSchemeTo, aChangingMethod) { +function createAETestPageUsingRefferer( + aMetaPolicy, + aAttributePolicy, + aNewAttributePolicy, + aName, + aRel, + aStringBuilder, + aSchemeFrom, + aSchemeTo, + aChangingMethod +) { var metaString = ""; if (aMetaPolicy) { metaString = ``; @@ -115,7 +204,14 @@ function createAETestPageUsingRefferer(aMetaPolicy, aAttributePolicy, aNewAttrib if (aRel) { relString = `rel="noreferrer"`; } - var elementString = aStringBuilder(aMetaPolicy, aAttributePolicy, aName, relString, aSchemeFrom, aSchemeTo); + var elementString = aStringBuilder( + aMetaPolicy, + aAttributePolicy, + aName, + relString, + aSchemeFrom, + aSchemeTo + ); return ` @@ -133,13 +229,26 @@ function createAETestPageUsingRefferer(aMetaPolicy, aAttributePolicy, aNewAttrib } // test page using anchor target=_blank rel=noopener -function createTargetBlankRefferer(aMetaPolicy, aName, aSchemeFrom, - aSchemeTo, aRpHeader) { +function createTargetBlankRefferer( + aMetaPolicy, + aName, + aSchemeFrom, + aSchemeTo, + aRpHeader +) { var metaString = ""; if (aMetaPolicy) { metaString = ``; } - var elementString = `link`; + var elementString = `link`; return ` @@ -161,7 +270,9 @@ function createTargetBlankRefferer(aMetaPolicy, aName, aSchemeFrom, function createRedirectImgTestCase(aParams, aAttributePolicy) { var metaString = ""; if (aParams.has("META_POLICY")) { - metaString = ``; + metaString = ``; } aParams.delete("ACTION"); aParams.append("ACTION", "redirectImg"); @@ -175,7 +286,9 @@ function createRedirectImgTestCase(aParams, aAttributePolicy) { Test referrer policies on redirect (img) - + '); + response.write( + '' + ); return; } - if (action === "redirectImg"){ + if (action === "redirectImg") { params.delete("ACTION"); params.append("ACTION", "test"); params.append("type", "img"); // 302 found, 301 Moved Permanently, 303 See Other, 307 Temporary Redirect response.setStatusLine("1.1", 302, "found"); - response.setHeader("Location", "http://" + CROSS_ORIGIN_URL + params.toString(), false); + response.setHeader( + "Location", + "http://" + CROSS_ORIGIN_URL + params.toString(), + false + ); return; } - if (action === "redirectIframe"){ + if (action === "redirectIframe") { params.delete("ACTION"); params.append("ACTION", "test"); params.append("type", "iframe"); // 302 found, 301 Moved Permanently, 303 See Other, 307 Temporary Redirect response.setStatusLine("1.1", 302, "found"); - response.setHeader("Location", "http://" + CROSS_ORIGIN_URL + params.toString(), false); + response.setHeader( + "Location", + "http://" + CROSS_ORIGIN_URL + params.toString(), + false + ); return; } if (action === "test") { @@ -322,7 +503,7 @@ function handleRequest(request, response) { result = result ? JSON.parse(result) : {}; var referrerLevel = "none"; - var test = {} + var test = {}; if (request.hasHeader("Referer")) { var referrer = request.getHeader("Referer"); if (referrer.indexOf("referrer_testserver") > 0) { @@ -375,8 +556,20 @@ function handleRequest(request, response) { var name = params.get("NAME"); // anchor & area - var _getPage = createAETestPageUsingRefferer.bind(null, metaPolicy, attributePolicy, newAttributePolicy, name, rel); - var _getAnchorPage = _getPage.bind(null, buildAnchorString, schemeFrom, schemeTo); + var _getPage = createAETestPageUsingRefferer.bind( + null, + metaPolicy, + attributePolicy, + newAttributePolicy, + name, + rel + ); + var _getAnchorPage = _getPage.bind( + null, + buildAnchorString, + schemeFrom, + schemeTo + ); var _getAreaPage = _getPage.bind(null, buildAreaString, schemeFrom, schemeTo); // aMetaPolicy, aAttributePolicy, aNewAttributePolicy, aName, aChangingMethod, aStringBuilder @@ -405,13 +598,29 @@ function handleRequest(request, response) { return; } if (action === "generate-anchor-target-blank-policy-test") { - response.write(createTargetBlankRefferer(metaPolicy, name, schemeFrom, schemeTo, referrerPolicyHeader)); + response.write( + createTargetBlankRefferer( + metaPolicy, + name, + schemeFrom, + schemeTo, + referrerPolicyHeader + ) + ); return; } // iframe - _getPage = createIframeTestPageUsingRefferer.bind(null, metaPolicy, attributePolicy, newAttributePolicy, name, "", - schemeFrom, schemeTo); + _getPage = createIframeTestPageUsingRefferer.bind( + null, + metaPolicy, + attributePolicy, + newAttributePolicy, + name, + "", + schemeFrom, + schemeTo + ); // aMetaPolicy, aAttributePolicy, aNewAttributePolicy, aName, aChangingMethod if (action === "generate-iframe-policy-test") { @@ -433,12 +642,28 @@ function handleRequest(request, response) { return; } if (action === "generate-iframe-redirect-policy-test") { - response.write(createIframeTestPageUsingRefferer(metaPolicy, attributePolicy, newAttributePolicy, name, params, - schemeFrom, schemeTo)); + response.write( + createIframeTestPageUsingRefferer( + metaPolicy, + attributePolicy, + newAttributePolicy, + name, + params, + schemeFrom, + schemeTo + ) + ); return; } - var _getPage = createLinkPageUsingRefferer.bind(null, metaPolicy, attributePolicy, newAttributePolicy, name, rel); + var _getPage = createLinkPageUsingRefferer.bind( + null, + metaPolicy, + attributePolicy, + newAttributePolicy, + name, + rel + ); var _getLinkPage = _getPage.bind(null, buildLinkString, schemeFrom, schemeTo); // link @@ -456,10 +681,11 @@ function handleRequest(request, response) { } if (action === "generate-fetch-user-control-policy-test") { - response.write(createFetchUserControlRPTestCase(name, schemeFrom, schemeTo, crossOrigin)); + response.write( + createFetchUserControlRPTestCase(name, schemeFrom, schemeTo, crossOrigin) + ); return; } response.write("I don't know action " + action); - return; } diff --git a/dom/security/test/sec-fetch/file_no_cache.sjs b/dom/security/test/sec-fetch/file_no_cache.sjs index 9e75209e44bb..f5f9779e8056 100644 --- a/dom/security/test/sec-fetch/file_no_cache.sjs +++ b/dom/security/test/sec-fetch/file_no_cache.sjs @@ -1,4 +1,4 @@ -const MESSAGE_PAGE = function (msg) { +const MESSAGE_PAGE = function(msg) { return ` `); } else { - let baseURI = "https://example.org/" + request.path.replace(/[a-z-]*\.sjs/, "mimeme.sjs?type="); + let baseURI = + "https://example.org/" + + request.path.replace(/[a-z-]*\.sjs/, "mimeme.sjs?type="); response.write(` diff --git a/dom/tests/browser/test_largeAllocationFormSubmit.sjs b/dom/tests/browser/test_largeAllocationFormSubmit.sjs index 756ab24db605..4238942684b5 100644 --- a/dom/tests/browser/test_largeAllocationFormSubmit.sjs +++ b/dom/tests/browser/test_largeAllocationFormSubmit.sjs @@ -1,6 +1,8 @@ -const BinaryInputStream = Components.Constructor("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = Components.Constructor( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); function handleRequest(request, response) { response.setHeader("Large-Allocation", "0", false); @@ -16,8 +18,9 @@ function handleRequest(request, response) { var avail; var bytes = []; - while ((avail = body.available()) > 0) + while ((avail = body.available()) > 0) { Array.prototype.push.apply(bytes, body.readByteArray(avail)); + } var data = String.fromCharCode.apply(null, bytes); response.bodyOutputStream.write(data, data.length); diff --git a/dom/tests/mochitest/beacon/beacon-handler.sjs b/dom/tests/mochitest/beacon/beacon-handler.sjs index 6a1beff3033c..e0de09e44e8f 100644 --- a/dom/tests/mochitest/beacon/beacon-handler.sjs +++ b/dom/tests/mochitest/beacon/beacon-handler.sjs @@ -5,17 +5,23 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); -function DEBUG(str) -{ +function DEBUG(str) { // dump("********** " + str + "\n"); } function setOurState(data) { - x = { data: data, QueryInterface: function(iid) { return this } }; + x = { + data, + QueryInterface(iid) { + return this; + }, + }; x.wrappedJSObject = x; setObjectState("beacon-handler", x); DEBUG("our state is " + data); @@ -43,8 +49,8 @@ function handleRequest(request, response) { DEBUG("GET was sending : " + data + "\n"); DEBUG("GET was sending : " + mimetype + "\n"); var result = { - "data": data, - "mimetype": mimetype, + data, + mimetype, }; response.write(JSON.stringify(result)); setOurState(null); @@ -54,26 +60,30 @@ function handleRequest(request, response) { DEBUG(" ------------ GET --------------- "); response.setHeader("Content-Type", "application/json", false); switch (request.queryString) { - case "getLastBeaconCors": - // Allow CORS responses of the last beacon - var originHeader = request.getHeader("origin"); - response.setHeader("Access-Control-Allow-Headers", "content-type", false); - response.setHeader("Access-Control-Allow-Methods", "POST, GET", false); - response.setHeader("Access-Control-Allow-Origin", originHeader, false); - response.setHeader("Access-Control-Allow-Credentials", "true", false); - case "getLastBeacon": - var state = getOurState(); - if (state === "unblocked") { - finishControlResponse(response); - } else { - DEBUG("GET has arrived, but POST has not, blocking response!"); - setOurState(response); - response.processAsync(); - } - break; - default: - response.setStatusLine(request.httpVersion, 400, "Bad Request"); - break; + case "getLastBeaconCors": + // Allow CORS responses of the last beacon + var originHeader = request.getHeader("origin"); + response.setHeader( + "Access-Control-Allow-Headers", + "content-type", + false + ); + response.setHeader("Access-Control-Allow-Methods", "POST, GET", false); + response.setHeader("Access-Control-Allow-Origin", originHeader, false); + response.setHeader("Access-Control-Allow-Credentials", "true", false); + case "getLastBeacon": + var state = getOurState(); + if (state === "unblocked") { + finishControlResponse(response); + } else { + DEBUG("GET has arrived, but POST has not, blocking response!"); + setOurState(response); + response.processAsync(); + } + break; + default: + response.setStatusLine(request.httpVersion, 400, "Bad Request"); + break; } return; } @@ -89,9 +99,11 @@ function handleRequest(request, response) { } var data = ""; - for (var i=0; i < bytes.length; i++) { + for (var i = 0; i < bytes.length; i++) { // We are only passing strings at this point. - if (bytes[i] < 32) continue; + if (bytes[i] < 32) { + continue; + } var charcode = String.fromCharCode(bytes[i]); data += charcode; } @@ -103,7 +115,6 @@ function handleRequest(request, response) { // check to see if this is form data. if (mimetype.indexOf("multipart/form-data") != -1) { - // trim the mime type to make testing easier. mimetype = "multipart/form-data"; // Extract only the form-data name. @@ -118,10 +129,10 @@ function handleRequest(request, response) { setState("beaconMimetype", mimetype); response.setHeader("Content-Type", "text/plain", false); - response.write('ok'); + response.write("ok"); var blockedResponse = getOurState(); - if (typeof(blockedResponse) == "object" && blockedResponse) { + if (typeof blockedResponse == "object" && blockedResponse) { DEBUG("GET is already pending, finishing!"); finishControlResponse(blockedResponse); blockedResponse.finish(); diff --git a/dom/tests/mochitest/beacon/beacon-originheader-handler.sjs b/dom/tests/mochitest/beacon/beacon-originheader-handler.sjs index f6d70fa8a5d3..1308d79d5300 100644 --- a/dom/tests/mochitest/beacon/beacon-originheader-handler.sjs +++ b/dom/tests/mochitest/beacon/beacon-originheader-handler.sjs @@ -3,8 +3,7 @@ * Bug 1280692 - navigator.sendBeacon() should not send origin header */ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); response.setHeader("Content-Type", "text/plain", false); @@ -29,13 +28,11 @@ function handleRequest(request, response) var header = "reset"; try { header = request.getHeader("origin"); - } - catch(e) { + } catch (e) { header = "no-header"; } setState("originHeader", header); - // if there is an xhr-request waiting, return the header now. getObjectState("xhr-response", function(xhrResponse) { if (!xhrResponse) { diff --git a/dom/tests/mochitest/beacon/beacon-preflight-handler.sjs b/dom/tests/mochitest/beacon/beacon-preflight-handler.sjs index 6a760cb84ce0..f4a89b982822 100644 --- a/dom/tests/mochitest/beacon/beacon-preflight-handler.sjs +++ b/dom/tests/mochitest/beacon/beacon-preflight-handler.sjs @@ -1,39 +1,38 @@ -function handleRequest(request, response) -{ - response.setHeader("Cache-Control", "no-cache, must-revalidate", false); - - if (request.queryString === "verify") { - var preflightState = getState("preflight"); - response.write(preflightState === "done" ? "green" : "red"); - return; - } - - var originHeader = request.getHeader("origin"); - response.setHeader("Access-Control-Allow-Headers", "content-type", false); - response.setHeader("Access-Control-Allow-Methods", "POST, GET", false); - response.setHeader("Access-Control-Allow-Origin", originHeader, false); - response.setHeader("Access-Control-Allow-Credentials", "true", false); - - if (request.queryString === "beacon") { - if (request.method == "OPTIONS") { - setState("preflight", "done"); - response.setStatusLine(null, 200, "OK"); - return; - } - response.setStatusLine(null, 200, "OK"); - response.write("DONE"); - return; - } - - if (request.queryString === "fail") { - if (request.method == "OPTIONS") { - setState("preflight", "done"); - response.setStatusLine(null, 400, "Bad Request"); - return; - } - setState("preflight", "oops"); - response.setStatusLine(null, 200, "OK"); - response.write("DONE"); - return; - } -} +function handleRequest(request, response) { + response.setHeader("Cache-Control", "no-cache, must-revalidate", false); + + if (request.queryString === "verify") { + var preflightState = getState("preflight"); + response.write(preflightState === "done" ? "green" : "red"); + return; + } + + var originHeader = request.getHeader("origin"); + response.setHeader("Access-Control-Allow-Headers", "content-type", false); + response.setHeader("Access-Control-Allow-Methods", "POST, GET", false); + response.setHeader("Access-Control-Allow-Origin", originHeader, false); + response.setHeader("Access-Control-Allow-Credentials", "true", false); + + if (request.queryString === "beacon") { + if (request.method == "OPTIONS") { + setState("preflight", "done"); + response.setStatusLine(null, 200, "OK"); + return; + } + response.setStatusLine(null, 200, "OK"); + response.write("DONE"); + return; + } + + if (request.queryString === "fail") { + if (request.method == "OPTIONS") { + setState("preflight", "done"); + response.setStatusLine(null, 400, "Bad Request"); + return; + } + setState("preflight", "oops"); + response.setStatusLine(null, 200, "OK"); + response.write("DONE"); + return; + } +} diff --git a/dom/tests/mochitest/beacon/beacon-redirect-handler.sjs b/dom/tests/mochitest/beacon/beacon-redirect-handler.sjs index bb7e50dbacda..5496353588bb 100644 --- a/dom/tests/mochitest/beacon/beacon-redirect-handler.sjs +++ b/dom/tests/mochitest/beacon/beacon-redirect-handler.sjs @@ -1,47 +1,46 @@ -/* - * TestSever customized specifically for the needs of: - * Bug 1280692 - sendBeacon() should follow 30x redirect - * - * Here is a sequence of the test: - * [1] sendBeacon (identified by the queryString 'beacon') which gets redirected - * [2] redirected sendBeacon (identified by the queryString 'redirected') which - * updates the state idniciating that redirected sendBeacon succeeds. - * [3] xhr request (identified by the queryString 'verifyRedirectDidSucceed') - * which checks if the state was not changed from 'reset' to 'gree'. If the channel - * woulnd't be blocked correctly the redirected channel would set the state to 'red'. - * - */ - -function handleRequest(request, response) -{ - response.setHeader("Cache-Control", "no-cache, must-revalidate", false); - - // [Sequence 3] - if (request.queryString === "verifyRedirectDidSucceed") { - var redirectState = getState("redirectState"); - response.write(redirectState); - return; - } - - // [Sequence 1] - if (request.queryString === "beacon") { - setState("redirectState", "reset"); - var newLocation = - "http://mochi.test:8888/tests/dom/tests/mochitest/beacon/beacon-redirect-handler.sjs?redirected"; - response.setStatusLine("1.1", 302, "Found"); - response.setHeader("Location", newLocation, false); - return; - } - - // [Sequence 2] - if (request.queryString === "redirected") { - setState("redirectState", "green"); - response.setStatusLine(null, 200, "OK"); - return; - } - - // we should never get here, but just in case let's - // set the state to something unexpected - setState("redirectState", "red"); - response.setStatusLine(null, 200, "OK"); -} +/* + * TestSever customized specifically for the needs of: + * Bug 1280692 - sendBeacon() should follow 30x redirect + * + * Here is a sequence of the test: + * [1] sendBeacon (identified by the queryString 'beacon') which gets redirected + * [2] redirected sendBeacon (identified by the queryString 'redirected') which + * updates the state idniciating that redirected sendBeacon succeeds. + * [3] xhr request (identified by the queryString 'verifyRedirectDidSucceed') + * which checks if the state was not changed from 'reset' to 'gree'. If the channel + * woulnd't be blocked correctly the redirected channel would set the state to 'red'. + * + */ + +function handleRequest(request, response) { + response.setHeader("Cache-Control", "no-cache, must-revalidate", false); + + // [Sequence 3] + if (request.queryString === "verifyRedirectDidSucceed") { + var redirectState = getState("redirectState"); + response.write(redirectState); + return; + } + + // [Sequence 1] + if (request.queryString === "beacon") { + setState("redirectState", "reset"); + var newLocation = + "http://mochi.test:8888/tests/dom/tests/mochitest/beacon/beacon-redirect-handler.sjs?redirected"; + response.setStatusLine("1.1", 302, "Found"); + response.setHeader("Location", newLocation, false); + return; + } + + // [Sequence 2] + if (request.queryString === "redirected") { + setState("redirectState", "green"); + response.setStatusLine(null, 200, "OK"); + return; + } + + // we should never get here, but just in case let's + // set the state to something unexpected + setState("redirectState", "red"); + response.setStatusLine(null, 200, "OK"); +} diff --git a/dom/tests/mochitest/beacon/beacon-set-cookie.sjs b/dom/tests/mochitest/beacon/beacon-set-cookie.sjs index 341620eae867..e2dce0b3c673 100644 --- a/dom/tests/mochitest/beacon/beacon-set-cookie.sjs +++ b/dom/tests/mochitest/beacon/beacon-set-cookie.sjs @@ -1,6 +1,8 @@ -function handleRequest(request, response) -{ - response.setHeader("Set-Cookie", "cookie="+ request.host + "~" + Math.random()); +function handleRequest(request, response) { + response.setHeader( + "Set-Cookie", + "cookie=" + request.host + "~" + Math.random() + ); response.setHeader("Content-Type", "text/plain", false); response.setHeader("Cache-Control", "no-cache", false); diff --git a/dom/tests/mochitest/bugs/bug289714.sjs b/dom/tests/mochitest/bugs/bug289714.sjs index aae8247aea68..ac0f1d1f470a 100644 --- a/dom/tests/mochitest/bugs/bug289714.sjs +++ b/dom/tests/mochitest/bugs/bug289714.sjs @@ -2,12 +2,12 @@ // large enough to ensure that OnDataAvailable is called more than once (and so // the XHR will be triggered to send more than one "loading" event if desired). -function handleRequest(request, response) -{ +function handleRequest(request, response) { // Send 81920 bytes of こんにちは in Shift-JIS encoding, framed in XML. - let data = "" + - (new Array(1 << 13)).join("\x82\xb1\x82\xf1\x82\xc9\x82\xbf\x82\xcd") + - ""; + let data = + "" + + new Array(1 << 13).join("\x82\xb1\x82\xf1\x82\xc9\x82\xbf\x82\xcd") + + ""; response.processAsync(); response.setHeader("Content-Type", "text/xml", false); response.setHeader("Content-Length", "" + data.length, false); diff --git a/dom/tests/mochitest/fetch/slow.sjs b/dom/tests/mochitest/fetch/slow.sjs index feab0f1fceb6..d929f7abb007 100644 --- a/dom/tests/mochitest/fetch/slow.sjs +++ b/dom/tests/mochitest/fetch/slow.sjs @@ -1,11 +1,15 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.processAsync(); - timer = Components.classes["@mozilla.org/timer;1"]. - createInstance(Components.interfaces.nsITimer); - timer.init(function() { - response.write("Here the content. But slowly."); - response.finish(); - }, 1000, Components.interfaces.nsITimer.TYPE_ONE_SHOT); + timer = Components.classes["@mozilla.org/timer;1"].createInstance( + Components.interfaces.nsITimer + ); + timer.init( + function() { + response.write("Here the content. But slowly."); + response.finish(); + }, + 1000, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/dom/tests/mochitest/general/frameStorageNullprincipal.sjs b/dom/tests/mochitest/general/frameStorageNullprincipal.sjs index 4f58a296f67d..0157cbb3c4cf 100644 --- a/dom/tests/mochitest/general/frameStorageNullprincipal.sjs +++ b/dom/tests/mochitest/general/frameStorageNullprincipal.sjs @@ -7,15 +7,19 @@ function handleRequest(request, response) { // Get the nsIFile for frameStoragePrevented.html var file; getObjectState("SERVER_ROOT", function(serverRoot) { - file = serverRoot.getFile("/tests/dom/tests/mochitest/general/frameStoragePrevented.html"); + file = serverRoot.getFile( + "/tests/dom/tests/mochitest/general/frameStoragePrevented.html" + ); }); // Set up the file streams to read in the file as UTF-8 - let fstream = Components.classes["@mozilla.org/network/file-input-stream;1"]. - createInstance(Components.interfaces.nsIFileInputStream); + let fstream = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); fstream.init(file, -1, 0, 0); - let cstream = Components.classes["@mozilla.org/intl/converter-input-stream;1"]. - createInstance(Components.interfaces.nsIConverterInputStream); + let cstream = Components.classes[ + "@mozilla.org/intl/converter-input-stream;1" + ].createInstance(Components.interfaces.nsIConverterInputStream); cstream.init(fstream, "UTF-8", 0, 0); // Read in the file, and concatenate it onto the data string @@ -28,6 +32,9 @@ function handleRequest(request, response) { } while (read != 0); // Write out the file as a data: URI, and redirect to it - response.setStatusLine('1.1', 302, 'Found'); - response.setHeader('Location', 'data:text/html,' + encodeURIComponent(data) + "#nullprincipal"); + response.setStatusLine("1.1", 302, "Found"); + response.setHeader( + "Location", + "data:text/html," + encodeURIComponent(data) + "#nullprincipal" + ); } diff --git a/dom/tests/mochitest/general/generateCss.sjs b/dom/tests/mochitest/general/generateCss.sjs index d72ae1c07e32..3c0a2bd265dc 100644 --- a/dom/tests/mochitest/general/generateCss.sjs +++ b/dom/tests/mochitest/general/generateCss.sjs @@ -5,38 +5,43 @@ function handleRequest(request, response) { let gResponses = { // 1 - "A": "@import 'generateCss.sjs?B';", - "B": "", + A: "@import 'generateCss.sjs?B';", + B: "", // 2 - "C": "@import 'generateCss.sjs?D';", - "D": "", + C: "@import 'generateCss.sjs?D';", + D: "", // 3 - "E": "@import 'generateCss.sjs?F';", - "F": "", + E: "@import 'generateCss.sjs?F';", + F: "", // 4 - "G": "@import 'generateCss.sjs?H'; @import 'http://example.org/tests/dom/tests/mochitest/general/generateCss.sjs?K';", - "H": "@import 'http://example.com/tests/dom/tests/mochitest/general/generateCss.sjs?I';", - "I": "@import 'generateCss.sjs?J", - "J": "", - "K": "@import 'generateCss.sjs?L';", - "L": "@import 'generateCss.sjs?M", - "M": "", + G: + "@import 'generateCss.sjs?H'; @import 'http://example.org/tests/dom/tests/mochitest/general/generateCss.sjs?K';", + H: + "@import 'http://example.com/tests/dom/tests/mochitest/general/generateCss.sjs?I';", + I: "@import 'generateCss.sjs?J", + J: "", + K: "@import 'generateCss.sjs?L';", + L: "@import 'generateCss.sjs?M", + M: "", // 5 - "N": ".c1 { background-image: -moz-image-rect(url('/image/test/mochitest/blue.png'), 0, 0, 200, 200);}", + N: + ".c1 { background-image: -moz-image-rect(url('/image/test/mochitest/blue.png'), 0, 0, 200, 200);}", // 6 - "O": ".c2 { background-image: url('/image/test/mochitest/red.png');}", + O: ".c2 { background-image: url('/image/test/mochitest/red.png');}", // 7 - "P": "@font-face { font-family: Ahem; src: url('/tests/dom/base/test/Ahem.ttf'); } .c3 { font-family: Ahem; font-size: 20px; }", + P: + "@font-face { font-family: Ahem; src: url('/tests/dom/base/test/Ahem.ttf'); } .c3 { font-family: Ahem; font-size: 20px; }", // 8 - "Q": ".c4 { cursor: url('/image/test/mochitest/over.png') 2 2, auto; } ", + Q: ".c4 { cursor: url('/image/test/mochitest/over.png') 2 2, auto; } ", // 9 - "R": "#image { mask: url('/tests/dom/base/test/file_use_counter_svg_fill_pattern_data.svg'); }", + R: + "#image { mask: url('/tests/dom/base/test/file_use_counter_svg_fill_pattern_data.svg'); }", }; diff --git a/dom/tests/mochitest/geolocation/network_geolocation.sjs b/dom/tests/mochitest/geolocation/network_geolocation.sjs index 6c7ca47bedad..0cdb50cb16b4 100644 --- a/dom/tests/mochitest/geolocation/network_geolocation.sjs +++ b/dom/tests/mochitest/geolocation/network_geolocation.sjs @@ -1,57 +1,55 @@ -function parseQueryString(str) -{ - if (str == "") +function parseQueryString(str) { + if (str == "") { return {}; + } var paramArray = str.split("&"); var regex = /^([^=]+)=(.*)$/; var params = {}; - for (var i = 0, sz = paramArray.length; i < sz; i++) - { + for (var i = 0, sz = paramArray.length; i < sz; i++) { var match = regex.exec(paramArray[i]); - if (!match) + if (!match) { throw "Bad parameter in queryString! '" + paramArray[i] + "'"; + } params[decodeURIComponent(match[1])] = decodeURIComponent(match[2]); } return params; } -function getPosition(action) -{ +function getPosition(action) { var response = { status: "OK", location: { lat: 37.41857, lng: -122.08769, }, - accuracy: (action == "worse-accuracy") ? 100 : 42, + accuracy: action == "worse-accuracy" ? 100 : 42, }; return JSON.stringify(response); } var timer; -function handleRequest(request, response) -{ +function handleRequest(request, response) { var params = parseQueryString(request.queryString); if (params.action == "stop-responding") { - response.processAsync(); - return; + response.processAsync(); + return; } var position = getPosition(params.action); if (params.action == "respond-garbage") { - // better way? + // better way? var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz"; position = ""; var len = Math.floor(Math.random() * 5000); - for (var i=0; i< len; i++) { - var c = Math.floor(Math.random() * chars.length); - position += chars.substring(c, c+1); + for (var i = 0; i < len; i++) { + var c = Math.floor(Math.random() * chars.length); + position += chars.substring(c, c + 1); } } @@ -62,17 +60,22 @@ function handleRequest(request, response) response.setHeader("Content-Type", "aplication/x-javascript", false); var delay = 0; - if ('delay' in params) { + if ("delay" in params) { delay = params.delay; } if (params.action === "send404") { response.setStatusLine("1.0", 404, "Not Found"); - position = ''; + position = ""; } - timer = Components.classes["@mozilla.org/timer;1"].createInstance(Components.interfaces.nsITimer); - timer.initWithCallback(function() { - response.write(position); - response.finish(); - }, delay, timer.TYPE_ONE_SHOT); + timer = Components.classes["@mozilla.org/timer;1"].createInstance( + Components.interfaces.nsITimer + ); + timer.initWithCallback( + function() { + response.write(position); + response.finish(); + }, + delay, + timer.TYPE_ONE_SHOT + ); } - diff --git a/dom/tests/mochitest/script/file_blocked_script.sjs b/dom/tests/mochitest/script/file_blocked_script.sjs index d33db5950b89..5302995c4d93 100644 --- a/dom/tests/mochitest/script/file_blocked_script.sjs +++ b/dom/tests/mochitest/script/file_blocked_script.sjs @@ -4,15 +4,18 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -function setGlobalState(data, key) -{ - x = { data: data, QueryInterface: function(iid) { return this } }; +function setGlobalState(data, key) { + x = { + data, + QueryInterface(iid) { + return this; + }, + }; x.wrappedJSObject = x; setObjectState(key, x); } -function getGlobalState(key) -{ +function getGlobalState(key) { var data; getObjectState(key, function(x) { data = x && x.wrappedJSObject.data; @@ -20,8 +23,7 @@ function getGlobalState(key) return data; } -function finishBlockedRequest(request, response, query) -{ +function finishBlockedRequest(request, response, query) { response.setStatusLine(request.httpVersion, 200, "OK"); response.setHeader("Cache-Control", "no-cache", false); response.setHeader("Content-Type", "application/javascript", false); @@ -31,9 +33,8 @@ function finishBlockedRequest(request, response, query) setGlobalState(undefined, query[1]); } -function handleRequest(request, response) -{ - var query = request.queryString.split('&'); +function handleRequest(request, response) { + var query = request.queryString.split("&"); switch (query[0]) { case "blocked": var alreadyUnblocked = getGlobalState(query[1]); diff --git a/dom/workers/test/404_server.sjs b/dom/workers/test/404_server.sjs index f5dff1abb33b..f83281efa8f4 100644 --- a/dom/workers/test/404_server.sjs +++ b/dom/workers/test/404_server.sjs @@ -1,10 +1,9 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 404, "Not found"); // Any valid JS. - if (request.queryString == 'js') { + if (request.queryString == "js") { response.setHeader("Content-Type", "text/javascript", false); - response.write('4 + 4'); + response.write("4 + 4"); } } diff --git a/dom/workers/test/bug1063538.sjs b/dom/workers/test/bug1063538.sjs index 5d2570747be7..2fd1a1998efa 100644 --- a/dom/workers/test/bug1063538.sjs +++ b/dom/workers/test/bug1063538.sjs @@ -1,6 +1,7 @@ function handleRequest(request, response) { response.processAsync(); response.write("Hello"); - setTimeout(function() { response.finish(); }, 100000); // wait 100 seconds. + setTimeout(function() { + response.finish(); + }, 100000); // wait 100 seconds. } - diff --git a/dom/workers/test/redirect_to_foreign.sjs b/dom/workers/test/redirect_to_foreign.sjs index 1a5e24a59537..06fd12052b47 100644 --- a/dom/workers/test/redirect_to_foreign.sjs +++ b/dom/workers/test/redirect_to_foreign.sjs @@ -1,4 +1,7 @@ function handleRequest(request, response) { response.setStatusLine("1.1", 302, "Found"); - response.setHeader("Location", "http://example.org/tests/dom/workers/test/foreign.js"); + response.setHeader( + "Location", + "http://example.org/tests/dom/workers/test/foreign.js" + ); } diff --git a/dom/workers/test/referrer.sjs b/dom/workers/test/referrer.sjs index a674a7f5e491..f91c434c1679 100644 --- a/dom/workers/test/referrer.sjs +++ b/dom/workers/test/referrer.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { if (request.queryString == "result") { response.write(getState("referer")); setState("referer", "INVALID"); @@ -7,10 +6,9 @@ function handleRequest(request, response) response.setHeader("Content-Type", "text/javascript", false); response.write("onmessage = function() { postMessage(42); }"); setState("referer", request.getHeader("referer")); - } else if (request.queryString == 'import') { + } else if (request.queryString == "import") { setState("referer", request.getHeader("referer")); response.setHeader("Content-Type", "text/javascript", false); response.write("'hello world'"); } } - diff --git a/dom/workers/test/referrer_test_server.sjs b/dom/workers/test/referrer_test_server.sjs index 550fefb8a085..44ec10c456fd 100644 --- a/dom/workers/test/referrer_test_server.sjs +++ b/dom/workers/test/referrer_test_server.sjs @@ -22,7 +22,7 @@ function createUrl(aRequestType, aPolicy) { return url + searchParams.toString(); } -function createWorker (aRequestType, aPolicy) { +function createWorker(aRequestType, aPolicy) { return ` onmessage = function() { fetch("${createUrl(aRequestType, aPolicy)}").then(function () { @@ -97,5 +97,3 @@ function handleRequest(request, response) { return; } } - - diff --git a/dom/workers/test/server_fetch_synthetic.sjs b/dom/workers/test/server_fetch_synthetic.sjs index 6ad7de09328a..703b26d0d2eb 100644 --- a/dom/workers/test/server_fetch_synthetic.sjs +++ b/dom/workers/test/server_fetch_synthetic.sjs @@ -38,7 +38,7 @@ async function handleRequest(request, response) { blobContents = extractBlobFromMultipartFormData(requestBodyContents); } - log("Setting Headers") + log("Setting Headers"); response.setHeader("Content-Type", "text/html", false); response.setStatusLine(request.httpVersion, "200", "OK"); response.write(` diff --git a/dom/worklet/tests/server_import_with_cache.sjs b/dom/worklet/tests/server_import_with_cache.sjs index 79a934dd3ac7..ed34a7a72fd9 100644 --- a/dom/worklet/tests/server_import_with_cache.sjs +++ b/dom/worklet/tests/server_import_with_cache.sjs @@ -1,12 +1,11 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/javascript", false); var state = getState("alreadySent"); if (!state) { setState("alreadySent", "1"); } else { - response.setStatusLine('1.1', 404, "Not Found"); + response.setStatusLine("1.1", 404, "Not Found"); } response.write("42"); diff --git a/dom/xhr/tests/echo.sjs b/dom/xhr/tests/echo.sjs index 6e3242c9f72e..e2a1553cb46b 100644 --- a/dom/xhr/tests/echo.sjs +++ b/dom/xhr/tests/echo.sjs @@ -1,21 +1,26 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/plain"); if (request.method == "GET") { - response.write(request.queryString); - return; + response.write(request.queryString); + return; } var bodyStream = new BinaryInputStream(request.bodyInputStream); var body = ""; var bodyAvail; - while ((bodyAvail = bodyStream.available()) > 0) - body += String.fromCharCode.apply(null, bodyStream.readByteArray(bodyAvail)); - + while ((bodyAvail = bodyStream.available()) > 0) { + body += String.fromCharCode.apply( + null, + bodyStream.readByteArray(bodyAvail) + ); + } + response.write(body); } diff --git a/dom/xhr/tests/file_XHRDocURI.sjs b/dom/xhr/tests/file_XHRDocURI.sjs index 275b1e96e203..452cb77f941d 100644 --- a/dom/xhr/tests/file_XHRDocURI.sjs +++ b/dom/xhr/tests/file_XHRDocURI.sjs @@ -1,5 +1,4 @@ -function handleRequest(aRequest, aResponse) -{ +function handleRequest(aRequest, aResponse) { var url = aRequest.queryString.match(/\burl=([^#&]*)/); if (!url) { aResponse.setStatusLine(aRequest.httpVersion, 404, "Not Found"); diff --git a/dom/xhr/tests/file_XHRResponseURL.sjs b/dom/xhr/tests/file_XHRResponseURL.sjs index 5ac0a346c726..792680dfce03 100644 --- a/dom/xhr/tests/file_XHRResponseURL.sjs +++ b/dom/xhr/tests/file_XHRResponseURL.sjs @@ -1,5 +1,4 @@ -function handleRequest(aRequest, aResponse) -{ +function handleRequest(aRequest, aResponse) { var url = aRequest.queryString.match(/\burl=([^#&]*)/); if (!url) { aResponse.setStatusLine(aRequest.httpVersion, 404, "Not Found"); diff --git a/dom/xhr/tests/file_XHRSendData.sjs b/dom/xhr/tests/file_XHRSendData.sjs index 0ccbe8a457a3..3de99ecea3fb 100644 --- a/dom/xhr/tests/file_XHRSendData.sjs +++ b/dom/xhr/tests/file_XHRSendData.sjs @@ -1,21 +1,26 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); -function handleRequest(request, response) -{ - if (request.hasHeader("Content-Type")) - response.setHeader("Result-Content-Type", - request.getHeader("Content-Type")); +function handleRequest(request, response) { + if (request.hasHeader("Content-Type")) { + response.setHeader( + "Result-Content-Type", + request.getHeader("Content-Type") + ); + } response.setHeader("Content-Type", "text/plain; charset=ISO-8859-1"); var body = new BinaryInputStream(request.bodyInputStream); var avail; var bytes = []; - while ((avail = body.available()) > 0) + while ((avail = body.available()) > 0) { Array.prototype.push.apply(bytes, body.readByteArray(avail)); + } var data = String.fromCharCode.apply(null, bytes); response.setHeader("Result-Content-Length", "" + data.length); @@ -23,8 +28,7 @@ function handleRequest(request, response) var newURL = "http://" + data.split("&url=")[1]; response.setStatusLine(null, 307, "redirect"); response.setHeader("Location", newURL, false); - } - else { + } else { response.write(data); } } diff --git a/dom/xhr/tests/file_XHR_anon.sjs b/dom/xhr/tests/file_XHR_anon.sjs index 755c4cdf3e21..8440e9f0c2da 100644 --- a/dom/xhr/tests/file_XHR_anon.sjs +++ b/dom/xhr/tests/file_XHR_anon.sjs @@ -4,10 +4,10 @@ function handleRequest(request, response) { if (request.queryString == "expectAuth=true") { if (request.hasHeader("Authorization")) { - headers["authorization"] = request.getHeader("Authorization"); + headers.authorization = request.getHeader("Authorization"); } else { response.setStatusLine(null, 401, "Authentication required"); - response.setHeader("WWW-Authenticate", "basic realm=\"testrealm\"", true); + response.setHeader("WWW-Authenticate", 'basic realm="testrealm"', true); } } else { invalidHeaders.push("Authorization"); diff --git a/dom/xhr/tests/file_XHR_header.sjs b/dom/xhr/tests/file_XHR_header.sjs index ad829d6c9b93..d520d2befe5d 100644 --- a/dom/xhr/tests/file_XHR_header.sjs +++ b/dom/xhr/tests/file_XHR_header.sjs @@ -1,9 +1,8 @@ -// SJS file for getAllResponseRequests vs getResponseRequest -function handleRequest(request, response) -{ - // Header strings are interpreted by truncating the characters in them to - // bytes, so U+2026 HORIZONTAL ELLIPSIS here must be encoded manually: using - // "…" as the string would write a \x26 byte. - response.setHeader("X-Custom-Header-Bytes", "\xE2\x80\xA6", false); - response.write("42"); -} +// SJS file for getAllResponseRequests vs getResponseRequest +function handleRequest(request, response) { + // Header strings are interpreted by truncating the characters in them to + // bytes, so U+2026 HORIZONTAL ELLIPSIS here must be encoded manually: using + // "…" as the string would write a \x26 byte. + response.setHeader("X-Custom-Header-Bytes", "\xE2\x80\xA6", false); + response.write("42"); +} diff --git a/dom/xhr/tests/file_XHR_timeout.sjs b/dom/xhr/tests/file_XHR_timeout.sjs index b349d122ec5c..84a04497c678 100644 --- a/dom/xhr/tests/file_XHR_timeout.sjs +++ b/dom/xhr/tests/file_XHR_timeout.sjs @@ -1,15 +1,18 @@ var timer = null; -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.processAsync(); - timer = Components.classes["@mozilla.org/timer;1"] - .createInstance(Components.interfaces.nsITimer); - timer.initWithCallback(function() - { - response.setStatusLine(null, 200, "OK"); - response.setHeader("Content-Type", "text/plain", false); - response.write("hello"); - response.finish(); - }, 3000 /* milliseconds */, Components.interfaces.nsITimer.TYPE_ONE_SHOT); + timer = Components.classes["@mozilla.org/timer;1"].createInstance( + Components.interfaces.nsITimer + ); + timer.initWithCallback( + function() { + response.setStatusLine(null, 200, "OK"); + response.setHeader("Content-Type", "text/plain", false); + response.write("hello"); + response.finish(); + }, + 3000 /* milliseconds */, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/dom/xhr/tests/file_html_in_xhr.sjs b/dom/xhr/tests/file_html_in_xhr.sjs index 8f4075ae7cae..4c3d3ee4f29f 100644 --- a/dom/xhr/tests/file_html_in_xhr.sjs +++ b/dom/xhr/tests/file_html_in_xhr.sjs @@ -1,15 +1,19 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/javascript", false); if (request.queryString.indexOf("report") != -1) { if (getState("loaded") == "loaded") { - response.write("ok(false, 'This script was not supposed to get fetched.'); continueAfterReport();"); + response.write( + "ok(false, 'This script was not supposed to get fetched.'); continueAfterReport();" + ); } else { - response.write("ok(true, 'This script was not supposed to get fetched.'); continueAfterReport();"); + response.write( + "ok(true, 'This script was not supposed to get fetched.'); continueAfterReport();" + ); } } else { setState("loaded", "loaded"); - response.write('document.documentElement.setAttribute("data-fail", "FAIL");'); + response.write( + 'document.documentElement.setAttribute("data-fail", "FAIL");' + ); } } - diff --git a/dom/xhr/tests/progressserver.sjs b/dom/xhr/tests/progressserver.sjs index 945f79557544..27229a81ce9e 100644 --- a/dom/xhr/tests/progressserver.sjs +++ b/dom/xhr/tests/progressserver.sjs @@ -1,7 +1,9 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); function setReq(req) { setObjectState("dom/xhr/tests/progressserver", req); @@ -15,25 +17,28 @@ function getReq() { return req; } -function handleRequest(request, response) -{ - var pairs = request.queryString.split('&'); +function handleRequest(request, response) { + var pairs = request.queryString.split("&"); var command = pairs.shift(); dump("received '" + command + "' command\n"); var bodyStream = new BinaryInputStream(request.bodyInputStream); var body = ""; var bodyAvail; - while ((bodyAvail = bodyStream.available()) > 0) - body += String.fromCharCode.apply(null, bodyStream.readByteArray(bodyAvail)); + while ((bodyAvail = bodyStream.available()) > 0) { + body += String.fromCharCode.apply( + null, + bodyStream.readByteArray(bodyAvail) + ); + } if (command == "open") { response.processAsync(); setReq(response); response.setHeader("Cache-Control", "no-cache", false); - pairs.forEach(function (val) { - var [name, value] = val.split('='); + pairs.forEach(function(val) { + var [name, value] = val.split("="); response.setHeader(name, unescape(value), false); }); response.write(body); @@ -42,8 +47,7 @@ function handleRequest(request, response) if (command == "send") { getReq().write(body); - } - else if (command == "close") { + } else if (command == "close") { getReq().finish(); setReq(null); } diff --git a/dom/xhr/tests/responseIdentical.sjs b/dom/xhr/tests/responseIdentical.sjs index f1986819a63b..4dec4dc6c3b3 100644 --- a/dom/xhr/tests/responseIdentical.sjs +++ b/dom/xhr/tests/responseIdentical.sjs @@ -1,16 +1,19 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); // Simply sending back the same data that is received -function handleRequest(request, response) -{ +function handleRequest(request, response) { var body = ""; var bodyStream = new BinaryInputStream(request.bodyInputStream); - var bytes = [], avail = 0; - while ((avail = bodyStream.available()) > 0) + var bytes = [], + avail = 0; + while ((avail = bodyStream.available()) > 0) { body += String.fromCharCode.apply(String, bodyStream.readByteArray(avail)); + } response.setHeader("Content-Type", "application/octet-stream", false); response.write(body); diff --git a/dom/xhr/tests/slow.sjs b/dom/xhr/tests/slow.sjs index 94f30e86960f..a0ef88684c24 100644 --- a/dom/xhr/tests/slow.sjs +++ b/dom/xhr/tests/slow.sjs @@ -1,11 +1,15 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.processAsync(); - timer = Components.classes["@mozilla.org/timer;1"]. - createInstance(Components.interfaces.nsITimer); - timer.init(function() { - response.write("Here the content. But slowly."); - response.finish(); - }, 5000, Components.interfaces.nsITimer.TYPE_ONE_SHOT); + timer = Components.classes["@mozilla.org/timer;1"].createInstance( + Components.interfaces.nsITimer + ); + timer.init( + function() { + response.write("Here the content. But slowly."); + response.finish(); + }, + 5000, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/dom/xhr/tests/sync_xhr_unload.sjs b/dom/xhr/tests/sync_xhr_unload.sjs index 4185056e314d..4d88c1b772d0 100644 --- a/dom/xhr/tests/sync_xhr_unload.sjs +++ b/dom/xhr/tests/sync_xhr_unload.sjs @@ -1,15 +1,18 @@ var timer = null; -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.processAsync(); - timer = Components.classes["@mozilla.org/timer;1"] - .createInstance(Components.interfaces.nsITimer); - timer.initWithCallback(function() - { - response.setStatusLine(null, 200, "OK"); - response.setHeader("Content-Type", "text/plain", false); - response.write("hello"); - response.finish(); - }, 30000 /* milliseconds */, Components.interfaces.nsITimer.TYPE_ONE_SHOT); + timer = Components.classes["@mozilla.org/timer;1"].createInstance( + Components.interfaces.nsITimer + ); + timer.initWithCallback( + function() { + response.setStatusLine(null, 200, "OK"); + response.setHeader("Content-Type", "text/plain", false); + response.write("hello"); + response.finish(); + }, + 30000 /* milliseconds */, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/dom/xhr/tests/temporaryFileBlob.sjs b/dom/xhr/tests/temporaryFileBlob.sjs index 814c06d1ed4e..5b51162641fc 100644 --- a/dom/xhr/tests/temporaryFileBlob.sjs +++ b/dom/xhr/tests/temporaryFileBlob.sjs @@ -1,20 +1,23 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); -const BinaryOutputStream = CC("@mozilla.org/binaryoutputstream;1", - "nsIBinaryOutputStream", - "setOutputStream"); -const Timer = CC("@mozilla.org/timer;1", - "nsITimer", - "initWithCallback"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); +const BinaryOutputStream = CC( + "@mozilla.org/binaryoutputstream;1", + "nsIBinaryOutputStream", + "setOutputStream" +); +const Timer = CC("@mozilla.org/timer;1", "nsITimer", "initWithCallback"); function handleRequest(request, response) { var bodyStream = new BinaryInputStream(request.bodyInputStream); var bodyBytes = []; - while ((bodyAvail = bodyStream.available()) > 0) + while ((bodyAvail = bodyStream.available()) > 0) { Array.prototype.push.apply(bodyBytes, bodyStream.readByteArray(bodyAvail)); + } var bos = new BinaryOutputStream(response.bodyOutputStream); @@ -23,11 +26,19 @@ function handleRequest(request, response) { var part = bodyBytes.splice(0, 256); bos.writeByteArray(part); - response.timer1 = new Timer(function(timer) { - bos.writeByteArray(bodyBytes); - }, 1000, Components.interfaces.nsITimer.TYPE_ONE_SHOT); + response.timer1 = new Timer( + function(timer) { + bos.writeByteArray(bodyBytes); + }, + 1000, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); - response.timer2 = new Timer(function(timer) { - response.finish(); - }, 2000, Components.interfaces.nsITimer.TYPE_ONE_SHOT); + response.timer2 = new Timer( + function(timer) { + response.finish(); + }, + 2000, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/dom/xhr/tests/worker_xhr_cors_redirect.sjs b/dom/xhr/tests/worker_xhr_cors_redirect.sjs index 07e8ed5dc89c..aac9c8ffe6c5 100644 --- a/dom/xhr/tests/worker_xhr_cors_redirect.sjs +++ b/dom/xhr/tests/worker_xhr_cors_redirect.sjs @@ -1,7 +1,7 @@ function handleRequest(request, response) { response.setHeader("Access-Control-Allow-Origin", "*"); - if (request.queryString == 'redirect') { + if (request.queryString == "redirect") { response.setStatusLine("1.1", 302, "Found"); response.setHeader("Location", "worker_xhr_cors_redirect.sjs"); } else { diff --git a/dom/xhr/tests/worker_xhr_headers_server.sjs b/dom/xhr/tests/worker_xhr_headers_server.sjs index 624abb9fc532..c2a944f6efc2 100644 --- a/dom/xhr/tests/worker_xhr_headers_server.sjs +++ b/dom/xhr/tests/worker_xhr_headers_server.sjs @@ -9,7 +9,7 @@ function handleRequest(request, response) { case "POST": try { var optionsHost = request.getHeader("options-host"); - } catch(e) { } + } catch (e) {} var headerFound = false; if (optionsHost) { @@ -20,7 +20,7 @@ function handleRequest(request, response) { try { var emptyHeader = "nada" + request.getHeader("empty"); - } catch(e) { } + } catch (e) {} if (emptyHeader && emptyHeader == "nada") { setState("emptyHeader", "nada"); @@ -28,16 +28,16 @@ function handleRequest(request, response) { } if (headerFound) { return; - } else { - break; } + break; case "OPTIONS": if (getState("optionsHost") == request.host) { try { - var optionsHeader = - request.getHeader("Access-Control-Request-Headers"); - } catch(e) { } + var optionsHeader = request.getHeader( + "Access-Control-Request-Headers" + ); + } catch (e) {} setState("optionsHeader", "'" + optionsHeader + "'"); } break; @@ -46,12 +46,15 @@ function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); response.setHeader("Content-Type", "text/plain", false); - if (getState("postHost") == request.host && - getState("emptyHeader") == "nada") { + if ( + getState("postHost") == request.host && + getState("emptyHeader") == "nada" + ) { var result = getState("optionsHeader"); if (result) { - response.write("Success: expected OPTIONS request with " + result + - " header"); + response.write( + "Success: expected OPTIONS request with " + result + " header" + ); } else if (getState("badGet") == 1) { response.write("Error: unexpected GET request"); } diff --git a/editor/libeditor/tests/file_bug611182.sjs b/editor/libeditor/tests/file_bug611182.sjs index c547042ad8fc..0031b7cc55e0 100644 --- a/editor/libeditor/tests/file_bug611182.sjs +++ b/editor/libeditor/tests/file_bug611182.sjs @@ -40,11 +40,13 @@ const TESTS = [ }, { ct: "application/xhtml+xml", - val: 'fooz bar', + val: + 'fooz bar', }, { ct: "application/xhtml+xml", - val: 'fooz bar', + val: + 'fooz bar', }, { ct: "text/html", @@ -52,175 +54,189 @@ const TESTS = [ }, { ct: "text/html", - val: '", }, { ct: "text/html", - val: '", }, { ct: "text/html", - val: '", }, { ct: "text/html", - val: '", }, { ct: "text/html", - val: '", }, { ct: "text/html", - val: '", }, { ct: "text/html", - val: '", }, { ct: "text/html", - val: '", }, { ct: "text/html", - val: '", }, { ct: "text/html", - val: 'data:text/html,", }, { ct: "text/html", - val: '", }, { ct: "text/html", - val: '", }, { ct: "text/html", - val: '", }, { ct: "text/html", - val: '", }, ]; diff --git a/editor/libeditor/tests/file_bug795418-2.sjs b/editor/libeditor/tests/file_bug795418-2.sjs index 5b629abd8c30..59aecd6f95d4 100644 --- a/editor/libeditor/tests/file_bug795418-2.sjs +++ b/editor/libeditor/tests/file_bug795418-2.sjs @@ -4,5 +4,7 @@ function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); response.setHeader("Content-Type", "application/xhtml+xml", false); - response.write("AB"); + response.write( + "AB" + ); } diff --git a/editor/libeditor/tests/file_sanitizer_on_paste.sjs b/editor/libeditor/tests/file_sanitizer_on_paste.sjs index 73ba20288dab..434789394403 100644 --- a/editor/libeditor/tests/file_sanitizer_on_paste.sjs +++ b/editor/libeditor/tests/file_sanitizer_on_paste.sjs @@ -1,16 +1,19 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { if (request.queryString.indexOf("report") != -1) { response.setHeader("Content-Type", "text/javascript", false); if (getState("loaded") == "loaded") { - response.write("ok(false, 'There was an attempt to preload the image.');"); + response.write( + "ok(false, 'There was an attempt to preload the image.');" + ); } else { - response.write("ok(true, 'There was no attempt to preload the image.');"); + response.write("ok(true, 'There was no attempt to preload the image.');"); } response.write("SimpleTest.finish();"); } else { setState("loaded", "loaded"); response.setHeader("Content-Type", "image/svg", false); - response.write("Not supposed to load this"); + response.write( + "Not supposed to load this" + ); } } diff --git a/image/test/mochitest/bug1180105-waiter.sjs b/image/test/mochitest/bug1180105-waiter.sjs index 4e86ae28797c..6ac138ea06d2 100644 --- a/image/test/mochitest/bug1180105-waiter.sjs +++ b/image/test/mochitest/bug1180105-waiter.sjs @@ -18,7 +18,12 @@ function waitForFinish(response) { response.write("done"); response.finish(); } else { - waitTimer.initWithCallback(function() {waitForFinish(response);}, 10, - Components.interfaces.nsITimer.TYPE_ONE_SHOT); + waitTimer.initWithCallback( + function() { + waitForFinish(response); + }, + 10, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); } } diff --git a/image/test/mochitest/bug1180105.sjs b/image/test/mochitest/bug1180105.sjs index e138e548eec5..92fb7db2b88e 100644 --- a/image/test/mochitest/bug1180105.sjs +++ b/image/test/mochitest/bug1180105.sjs @@ -8,8 +8,8 @@ var partTimer = timer.createInstance(Components.interfaces.nsITimer); function getFileAsInputStream(aFilename) { var file = Components.classes["@mozilla.org/file/directory_service;1"] - .getService(Components.interfaces.nsIProperties) - .get("CurWorkD", Components.interfaces.nsIFile); + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); file.append("tests"); file.append("image"); @@ -17,16 +17,19 @@ function getFileAsInputStream(aFilename) { file.append("mochitest"); file.append(aFilename); - var fileStream = Components.classes['@mozilla.org/network/file-input-stream;1'] - .createInstance(Components.interfaces.nsIFileInputStream); + var fileStream = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); fileStream.init(file, 1, 0, false); return fileStream; } -function handleRequest(request, response) -{ - response.setHeader("Content-Type", - "multipart/x-mixed-replace;boundary=BOUNDARYOMG", false); +function handleRequest(request, response) { + response.setHeader( + "Content-Type", + "multipart/x-mixed-replace;boundary=BOUNDARYOMG", + false + ); response.setHeader("Cache-Control", "no-cache", false); response.setStatusLine(request.httpVersion, 200, "OK"); // We're sending parts off in a delayed fashion, to let the tests occur. @@ -42,8 +45,13 @@ function sendParts(response) { return; } sendNextPart(response); - partTimer.initWithCallback(function() {sendParts(response);}, 1, - Components.interfaces.nsITimer.TYPE_ONE_SHOT); + partTimer.initWithCallback( + function() { + sendParts(response); + }, + 1, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); } function sendClose(response) { @@ -60,4 +68,3 @@ function sendNextPart(response) { // Toss in the boundary, so the browser can know this part is complete response.write("--BOUNDARYOMG\r\n"); } - diff --git a/image/test/mochitest/bug468160.sjs b/image/test/mochitest/bug468160.sjs index 4a654216a57d..64954829226f 100644 --- a/image/test/mochitest/bug468160.sjs +++ b/image/test/mochitest/bug468160.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine("1.1", 302, "Found"); response.setHeader("Location", "red.png", false); response.setHeader("Cache-Control", "no-cache", false); diff --git a/image/test/mochitest/bug490949.sjs b/image/test/mochitest/bug490949.sjs index f306b83372fe..957f8d721879 100644 --- a/image/test/mochitest/bug490949.sjs +++ b/image/test/mochitest/bug490949.sjs @@ -1,8 +1,7 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { var file = Components.classes["@mozilla.org/file/directory_service;1"] - .getService(Components.interfaces.nsIProperties) - .get("CurWorkD", Components.interfaces.nsIFile); + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); file.append("tests"); file.append("image"); @@ -11,19 +10,21 @@ function handleRequest(request, response) var redirectstate = "/image/test/mochitest/bug490949.sjs"; if (getState(redirectstate) == "") { - file.append('blue.png'); + file.append("blue.png"); setState(redirectstate, "red"); } else { - file.append('red.png'); + file.append("red.png"); setState(redirectstate, ""); } response.setHeader("Cache-Control", "no-cache", false); - var fileStream = Components.classes['@mozilla.org/network/file-input-stream;1'] - .createInstance(Components.interfaces.nsIFileInputStream); + var fileStream = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); fileStream.init(file, 1, 0, false); - var binaryStream = Components.classes['@mozilla.org/binaryinputstream;1'] - .createInstance(Components.interfaces.nsIBinaryInputStream); + var binaryStream = Components.classes[ + "@mozilla.org/binaryinputstream;1" + ].createInstance(Components.interfaces.nsIBinaryInputStream); binaryStream.setInputStream(fileStream); response.bodyOutputStream.writeFrom(binaryStream, binaryStream.available()); diff --git a/image/test/mochitest/bug496292-1.sjs b/image/test/mochitest/bug496292-1.sjs index eac1c98327d1..6cbb5595874d 100644 --- a/image/test/mochitest/bug496292-1.sjs +++ b/image/test/mochitest/bug496292-1.sjs @@ -1,8 +1,7 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { var file = Components.classes["@mozilla.org/file/directory_service;1"] - .getService(Components.interfaces.nsIProperties) - .get("CurWorkD", Components.interfaces.nsIFile); + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); file.append("tests"); file.append("image"); @@ -10,19 +9,21 @@ function handleRequest(request, response) file.append("mochitest"); if (request.getHeader("Accept") == "image/avif,image/webp,*/*") { - file.append('blue.png'); + file.append("blue.png"); } else { - file.append('red.png'); + file.append("red.png"); } response.setStatusLine(request.httpVersion, 200, "OK"); response.setHeader("Content-Type", "image/png", false); response.setHeader("Cache-Control", "no-cache", false); - var fileStream = Components.classes['@mozilla.org/network/file-input-stream;1'] - .createInstance(Components.interfaces.nsIFileInputStream); + var fileStream = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); fileStream.init(file, 1, 0, false); - var binaryStream = Components.classes['@mozilla.org/binaryinputstream;1'] - .createInstance(Components.interfaces.nsIBinaryInputStream); + var binaryStream = Components.classes[ + "@mozilla.org/binaryinputstream;1" + ].createInstance(Components.interfaces.nsIBinaryInputStream); binaryStream.setInputStream(fileStream); response.bodyOutputStream.writeFrom(binaryStream, binaryStream.available()); diff --git a/image/test/mochitest/bug496292-2.sjs b/image/test/mochitest/bug496292-2.sjs index 756ea9db2a1c..62d51eba0efa 100644 --- a/image/test/mochitest/bug496292-2.sjs +++ b/image/test/mochitest/bug496292-2.sjs @@ -1,8 +1,7 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { var file = Components.classes["@mozilla.org/file/directory_service;1"] - .getService(Components.interfaces.nsIProperties) - .get("CurWorkD", Components.interfaces.nsIFile); + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); file.append("tests"); file.append("image"); @@ -10,19 +9,21 @@ function handleRequest(request, response) file.append("mochitest"); if (request.getHeader("Accept") == "image/png") { - file.append('blue.png'); + file.append("blue.png"); } else { - file.append('red.png'); + file.append("red.png"); } response.setStatusLine(request.httpVersion, 200, "OK"); response.setHeader("Content-Type", "image/png", false); response.setHeader("Cache-Control", "no-cache", false); - var fileStream = Components.classes['@mozilla.org/network/file-input-stream;1'] - .createInstance(Components.interfaces.nsIFileInputStream); + var fileStream = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); fileStream.init(file, 1, 0, false); - var binaryStream = Components.classes['@mozilla.org/binaryinputstream;1'] - .createInstance(Components.interfaces.nsIBinaryInputStream); + var binaryStream = Components.classes[ + "@mozilla.org/binaryinputstream;1" + ].createInstance(Components.interfaces.nsIBinaryInputStream); binaryStream.setInputStream(fileStream); response.bodyOutputStream.writeFrom(binaryStream, binaryStream.available()); diff --git a/image/test/mochitest/bug497665.sjs b/image/test/mochitest/bug497665.sjs index 67151e25b89e..658fd8216873 100644 --- a/image/test/mochitest/bug497665.sjs +++ b/image/test/mochitest/bug497665.sjs @@ -1,8 +1,7 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { var file = Components.classes["@mozilla.org/file/directory_service;1"] - .getService(Components.interfaces.nsIProperties) - .get("CurWorkD", Components.interfaces.nsIFile); + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); file.append("tests"); file.append("image"); @@ -11,20 +10,22 @@ function handleRequest(request, response) var redirectstate = "/image/test/mochitest/bug497665.sjs"; if (getState(redirectstate) == "") { - file.append('blue.png'); + file.append("blue.png"); setState(redirectstate, "red"); } else { - file.append('red.png'); + file.append("red.png"); setState(redirectstate, ""); } response.setHeader("Cache-Control", "max-age=3600", false); - var fileStream = Components.classes['@mozilla.org/network/file-input-stream;1'] - .createInstance(Components.interfaces.nsIFileInputStream); + var fileStream = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); fileStream.init(file, 1, 0, false); - var binaryStream = Components.classes['@mozilla.org/binaryinputstream;1'] - .createInstance(Components.interfaces.nsIBinaryInputStream); + var binaryStream = Components.classes[ + "@mozilla.org/binaryinputstream;1" + ].createInstance(Components.interfaces.nsIBinaryInputStream); binaryStream.setInputStream(fileStream); response.bodyOutputStream.writeFrom(binaryStream, binaryStream.available()); diff --git a/image/test/mochitest/bug552605.sjs b/image/test/mochitest/bug552605.sjs index 806a065b4752..350ab729d5a7 100644 --- a/image/test/mochitest/bug552605.sjs +++ b/image/test/mochitest/bug552605.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { var redirectstate = "/image/test/mochitest/bug89419.sjs"; response.setStatusLine("1.1", 302, "Found"); if (getState(redirectstate) == "") { diff --git a/image/test/mochitest/bug657191.sjs b/image/test/mochitest/bug657191.sjs index 7451d98ee3fd..c9a04c561e4a 100644 --- a/image/test/mochitest/bug657191.sjs +++ b/image/test/mochitest/bug657191.sjs @@ -1,23 +1,24 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { var file = Components.classes["@mozilla.org/file/directory_service;1"] - .getService(Components.interfaces.nsIProperties) - .get("CurWorkD", Components.interfaces.nsIFile); + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); file.append("tests"); file.append("image"); file.append("test"); file.append("mochitest"); - file.append('lime100x100.svg'); + file.append("lime100x100.svg"); response.setStatusLine("1.1", 500, "Internal Server Error"); response.setHeader("Content-Type", "image/svg+xml", false); - var fileStream = Components.classes['@mozilla.org/network/file-input-stream;1'] - .createInstance(Components.interfaces.nsIFileInputStream); + var fileStream = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); fileStream.init(file, 1, 0, false); - var binaryStream = Components.classes['@mozilla.org/binaryinputstream;1'] - .createInstance(Components.interfaces.nsIBinaryInputStream); + var binaryStream = Components.classes[ + "@mozilla.org/binaryinputstream;1" + ].createInstance(Components.interfaces.nsIBinaryInputStream); binaryStream.setInputStream(fileStream); response.bodyOutputStream.writeFrom(binaryStream, binaryStream.available()); diff --git a/image/test/mochitest/bug671906.sjs b/image/test/mochitest/bug671906.sjs index f1fbc1b737b9..54d9209cac28 100644 --- a/image/test/mochitest/bug671906.sjs +++ b/image/test/mochitest/bug671906.sjs @@ -1,8 +1,7 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { var file = Components.classes["@mozilla.org/file/directory_service;1"] - .getService(Components.interfaces.nsIProperties) - .get("CurWorkD", Components.interfaces.nsIFile); + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); file.append("tests"); file.append("image"); @@ -11,10 +10,10 @@ function handleRequest(request, response) var filestate = "/image/test/mochitest/bug671906.sjs"; if (getState(filestate) == "") { - file.append('blue.png'); + file.append("blue.png"); setState(filestate, "red"); } else { - file.append('red.png'); + file.append("red.png"); setState(filestate, ""); } @@ -24,8 +23,9 @@ function handleRequest(request, response) date.setFullYear(date.getFullYear() + 1); response.setHeader("Expires", date.toUTCString(), false); - var fileStream = Components.classes['@mozilla.org/network/file-input-stream;1'] - .createInstance(Components.interfaces.nsIFileInputStream); + var fileStream = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); fileStream.init(file, 1, 0, false); response.bodyOutputStream.writeFrom(fileStream, fileStream.available()); diff --git a/image/test/mochitest/bug733553-informant.sjs b/image/test/mochitest/bug733553-informant.sjs index 6f15a1195776..364830b63628 100644 --- a/image/test/mochitest/bug733553-informant.sjs +++ b/image/test/mochitest/bug733553-informant.sjs @@ -2,8 +2,7 @@ * http://creativecommons.org/publicdomain/zero/1.0/ */ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/plain", false); response.setHeader("Cache-Control", "no-cache", false); response.setStatusLine(request.httpVersion, 200, "OK"); @@ -12,4 +11,3 @@ function handleRequest(request, response) setSharedState("next-part", partName); response.write("OK!"); } - diff --git a/image/test/mochitest/bug733553.sjs b/image/test/mochitest/bug733553.sjs index c5279f3d2d57..5a0ed7a06cf7 100644 --- a/image/test/mochitest/bug733553.sjs +++ b/image/test/mochitest/bug733553.sjs @@ -22,15 +22,15 @@ var bodyParts = [ ["bad.jpg", "image/jpeg"], ["red.png", "image/png"], ["invalid.jpg", "image/jpeg"], - ["animated-gif2.gif", "image/gif"] + ["animated-gif2.gif", "image/gif"], ]; var timer = Components.classes["@mozilla.org/timer;1"]; var partTimer = timer.createInstance(Components.interfaces.nsITimer); function getFileAsInputStream(aFilename) { var file = Components.classes["@mozilla.org/file/directory_service;1"] - .getService(Components.interfaces.nsIProperties) - .get("CurWorkD", Components.interfaces.nsIFile); + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); file.append("tests"); file.append("image"); @@ -38,19 +38,22 @@ function getFileAsInputStream(aFilename) { file.append("mochitest"); file.append(aFilename); - var fileStream = Components.classes['@mozilla.org/network/file-input-stream;1'] - .createInstance(Components.interfaces.nsIFileInputStream); + var fileStream = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); fileStream.init(file, 1, 0, false); return fileStream; } -function handleRequest(request, response) -{ +function handleRequest(request, response) { if (!getSharedState("next-part")) { setSharedState("next-part", "-1"); } - response.setHeader("Content-Type", - "multipart/x-mixed-replace;boundary=BOUNDARYOMG", false); + response.setHeader( + "Content-Type", + "multipart/x-mixed-replace;boundary=BOUNDARYOMG", + false + ); response.setHeader("Cache-Control", "no-cache", false); response.setStatusLine(request.httpVersion, 200, "OK"); // We're sending parts off in a delayed fashion, to let the tests occur. @@ -73,12 +76,16 @@ function sendParts(response) { if (!wait) { callback = getSendNextPart(response); } else { - callback = function () { sendParts(response); }; + callback = function() { + sendParts(response); + }; } - partTimer.initWithCallback(callback, 1000, - Components.interfaces.nsITimer.TYPE_ONE_SHOT); - } - else { + partTimer.initWithCallback( + callback, + 1000, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); + } else { sendClose(response); } } @@ -92,13 +99,12 @@ function getSendNextPart(response) { var part = bodyParts[bodyPartIndex]; var nextPartHead = "Content-Type: " + part[1] + "\r\n\r\n"; var inputStream = getFileAsInputStream(part[0]); - return function () { + return function() { response.bodyOutputStream.write(nextPartHead, nextPartHead.length); response.bodyOutputStream.writeFrom(inputStream, inputStream.available()); inputStream.close(); // Toss in the boundary, so the browser can know this part is complete response.write("--BOUNDARYOMG\r\n"); sendParts(response); - } + }; } - diff --git a/image/test/mochitest/bug767779.sjs b/image/test/mochitest/bug767779.sjs index 9a7948d85d48..ed1b569661f7 100644 --- a/image/test/mochitest/bug767779.sjs +++ b/image/test/mochitest/bug767779.sjs @@ -7,8 +7,8 @@ var partTimer = timer.createInstance(Components.interfaces.nsITimer); function getFileAsInputStream(aFilename) { var file = Components.classes["@mozilla.org/file/directory_service;1"] - .getService(Components.interfaces.nsIProperties) - .get("CurWorkD", Components.interfaces.nsIFile); + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); file.append("tests"); file.append("image"); @@ -16,14 +16,14 @@ function getFileAsInputStream(aFilename) { file.append("mochitest"); file.append(aFilename); - var fileStream = Components.classes['@mozilla.org/network/file-input-stream;1'] - .createInstance(Components.interfaces.nsIFileInputStream); + var fileStream = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); fileStream.init(file, 1, 0, false); return fileStream; } -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "image/gif", false); response.setHeader("Cache-Control", "no-cache", false); response.setStatusLine(request.httpVersion, 200, "OK"); @@ -38,12 +38,15 @@ function handleRequest(request, response) function sendParts(inputStream, response) { // 3744 left, send in 8 chunks of 468 each - partTimer.initWithCallback(getSendNextPart(inputStream, response), 500, - Components.interfaces.nsITimer.TYPE_ONE_SHOT); + partTimer.initWithCallback( + getSendNextPart(inputStream, response), + 500, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); } function getSendNextPart(inputStream, response) { - return function () { + return function() { response.bodyOutputStream.writeFrom(inputStream, 468); if (!inputStream.available()) { inputStream.close(); @@ -53,4 +56,3 @@ function getSendNextPart(inputStream, response) { } }; } - diff --git a/image/test/mochitest/bug89419.sjs b/image/test/mochitest/bug89419.sjs index 806a065b4752..350ab729d5a7 100644 --- a/image/test/mochitest/bug89419.sjs +++ b/image/test/mochitest/bug89419.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { var redirectstate = "/image/test/mochitest/bug89419.sjs"; response.setStatusLine("1.1", 302, "Found"); if (getState(redirectstate) == "") { diff --git a/image/test/mochitest/webcam-simulacrum.sjs b/image/test/mochitest/webcam-simulacrum.sjs index 23872e675e66..5739aea0041e 100644 --- a/image/test/mochitest/webcam-simulacrum.sjs +++ b/image/test/mochitest/webcam-simulacrum.sjs @@ -3,14 +3,14 @@ */ var counter = 2; -var frames = ['red.gif', 'blue.gif']; +var frames = ["red.gif", "blue.gif"]; var timer = Components.classes["@mozilla.org/timer;1"]; var partTimer = timer.createInstance(Components.interfaces.nsITimer); function getFileAsInputStream(aFilename) { var file = Components.classes["@mozilla.org/file/directory_service;1"] - .getService(Components.interfaces.nsIProperties) - .get("CurWorkD", Components.interfaces.nsIFile); + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); file.append("tests"); file.append("image"); @@ -18,21 +18,24 @@ function getFileAsInputStream(aFilename) { file.append("mochitest"); file.append(aFilename); - var fileStream = Components.classes['@mozilla.org/network/file-input-stream;1'] - .createInstance(Components.interfaces.nsIFileInputStream); + var fileStream = Components.classes[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Components.interfaces.nsIFileInputStream); fileStream.init(file, 1, 0, false); return fileStream; } -function handleRequest(request, response) -{ - response.setHeader("Content-Type", - "multipart/x-mixed-replace;boundary=BOUNDARYOMG", false); +function handleRequest(request, response) { + response.setHeader( + "Content-Type", + "multipart/x-mixed-replace;boundary=BOUNDARYOMG", + false + ); response.setHeader("Cache-Control", "no-cache", false); response.setStatusLine(request.httpVersion, 200, "OK"); response.processAsync(); response.write("--BOUNDARYOMG\r\n"); - while (frames.length > 0) { + while (frames.length) { sendNextPart(response); } response.write("--BOUNDARYOMG--\r\n"); @@ -48,4 +51,3 @@ function sendNextPart(response) { // Toss in the boundary, so the browser can know this part is complete response.write("--BOUNDARYOMG\r\n"); } - diff --git a/layout/base/tests/file_bug842853.sjs b/layout/base/tests/file_bug842853.sjs index 1586aaf480e5..1198208a44e8 100644 --- a/layout/base/tests/file_bug842853.sjs +++ b/layout/base/tests/file_bug842853.sjs @@ -1,14 +1,18 @@ var timer; -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache, must-revalidate", false); response.setHeader("Content-Type", "text/css", false); response.write("body { background:lime; color:red; }"); response.processAsync(); - timer = Components.classes["@mozilla.org/timer;1"] - .createInstance(Components.interfaces.nsITimer); - timer.initWithCallback(function() { + timer = Components.classes["@mozilla.org/timer;1"].createInstance( + Components.interfaces.nsITimer + ); + timer.initWithCallback( + function() { response.finish(); - }, 500, Components.interfaces.nsITimer.TYPE_ONE_SHOT); + }, + 500, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/layout/generic/test/file_IconTestServer.sjs b/layout/generic/test/file_IconTestServer.sjs index 033f76c5f672..c9e3ffdeb23d 100644 --- a/layout/generic/test/file_IconTestServer.sjs +++ b/layout/generic/test/file_IconTestServer.sjs @@ -1,7 +1,6 @@ const TIMEOUT_INTERVAL_MS = 100; function handleRequest(request, response) { - // Allow us to asynchronously construct the response with timeouts // rather than forcing us to make the whole thing in one call. See // bug 396226. @@ -10,23 +9,24 @@ function handleRequest(request, response) { // Figure out whether the client wants to load the image, or just // to tell us to finish the previous load var query = {}; - request.queryString.split('&').forEach(function (val) { - var [name, value] = val.split('='); + request.queryString.split("&").forEach(function(val) { + var [name, value] = val.split("="); query[name] = unescape(value); }); - if (query["continue"] == "true") { - + if (query.continue == "true") { // Debugging information so we can figure out the hang dump("file_IconTestServer.js DEBUG - Got continue command\n"); // Get the context structure and finish the old request getObjectState("context", function(obj) { - // magic or goop, depending on how you look at it savedCtx = obj.wrappedJSObject; // Write the rest of the data - savedCtx.ostream.writeFrom(savedCtx.istream, savedCtx.istream.available()); + savedCtx.ostream.writeFrom( + savedCtx.istream, + savedCtx.istream.available() + ); // Close the streams savedCtx.ostream.close(); @@ -47,10 +47,11 @@ function handleRequest(request, response) { // Context structure - we need to set this up properly to pass to setObjectState var ctx = { QueryInterface: function(iid) { - if (iid.equals(Components.interfaces.nsISupports)) + if (iid.equals(Components.interfaces.nsISupports)) { return this; - throw Components.results.NS_ERROR_NO_INTERFACE; - } + } + throw Components.Exception("", Components.results.NS_ERROR_NO_INTERFACE); + }, }; ctx.wrappedJSObject = ctx; @@ -64,18 +65,19 @@ function handleRequest(request, response) { ctx.ostream = response.bodyOutputStream; // Ugly hack, but effective - copied from dom/media/test/contentDuration1.sjs - var pngFile = Components.classes["@mozilla.org/file/directory_service;1"]. - getService(Components.interfaces.nsIProperties). - get("CurWorkD", Components.interfaces.nsIFile); + var pngFile = Components.classes["@mozilla.org/file/directory_service;1"] + .getService(Components.interfaces.nsIProperties) + .get("CurWorkD", Components.interfaces.nsIFile); var paths = "tests/layout/generic/test/file_Dolske.png"; var split = paths.split("/"); - for(var i = 0; i < split.length; ++i) { + for (var i = 0; i < split.length; ++i) { pngFile.append(split[i]); } // Get an input stream for the png data - ctx.istream = Cc["@mozilla.org/network/file-input-stream;1"]. - createInstance(Components.interfaces.nsIFileInputStream); + ctx.istream = Cc["@mozilla.org/network/file-input-stream;1"].createInstance( + Components.interfaces.nsIFileInputStream + ); ctx.istream.init(pngFile, -1, 0, 0); // Write the first 10 bytes, which is just boilerplate/magic bytes @@ -89,4 +91,3 @@ function handleRequest(request, response) { // Debugging information so we can figure out the hang dump("file_IconTestServer.js DEBUG - Playing the waiting game\n"); } - diff --git a/layout/generic/test/file_SlowImage.sjs b/layout/generic/test/file_SlowImage.sjs index 6fc86056ac05..4d5b0a489f9d 100644 --- a/layout/generic/test/file_SlowImage.sjs +++ b/layout/generic/test/file_SlowImage.sjs @@ -2,7 +2,8 @@ const IMG_BYTES = atob( "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAA" + - "DUlEQVQImWNgY2P7DwABOgESJhRQtgAAAABJRU5ErkJggg=="); + "DUlEQVQImWNgY2P7DwABOgESJhRQtgAAAABJRU5ErkJggg==" +); function handleRequest(request, response) { response.processAsync(); @@ -11,10 +12,14 @@ function handleRequest(request, response) { if (obj == null) { ctx = { QueryInterface: function(iid) { - if (iid.equals(Components.interfaces.nsISupports)) + if (iid.equals(Components.interfaces.nsISupports)) { return this; - throw Components.results.NS_ERROR_NO_INTERFACE; - } + } + throw Components.Exception( + "", + Components.results.NS_ERROR_NO_INTERFACE + ); + }, }; ctx.wrappedJSObject = ctx; diff --git a/layout/generic/test/file_SlowPage.sjs b/layout/generic/test/file_SlowPage.sjs index 8b1a7cd57402..251112c01e3a 100644 --- a/layout/generic/test/file_SlowPage.sjs +++ b/layout/generic/test/file_SlowPage.sjs @@ -8,31 +8,36 @@ function handleRequest(request, response) { response.processAsync(); response.setHeader("Content-Type", "text/html", false); - + // Include paint_listener.js so that we can call waitForAllPaintsFlushed // on the window in which this is opened. - response.write(""); - + response.write( + '' + ); + // Allow the opening window to react to loading being complete. - response.write(""); + response.write(''); // Send half of the content. for (var i = 0; i < 100; ++i) { response.write("

Some text.

"); } - + // Allow the opening window to react to being partially loaded. response.write(""); // Wait for 5 seconds, then send the rest of the content. timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); - timer.init(() => { - - for (var i = 0; i < 100; ++i) { - response.write("

Some text.

"); - } - response.write(""); - - response.finish(); - }, DELAY_MS, Ci.nsITimer.TYPE_ONE_SHOT); + timer.init( + () => { + for (var i = 0; i < 100; ++i) { + response.write("

Some text.

"); + } + response.write(""); + + response.finish(); + }, + DELAY_MS, + Ci.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/layout/generic/test/file_SlowTallImage.sjs b/layout/generic/test/file_SlowTallImage.sjs index 6297cf23e073..45b9f6d4784a 100644 --- a/layout/generic/test/file_SlowTallImage.sjs +++ b/layout/generic/test/file_SlowTallImage.sjs @@ -1,7 +1,7 @@ "use strict"; /* eslint-disable-next-line mozilla/use-chromeutils-import */ -let {setTimeout} = Cu.import("resource://gre/modules/Timer.jsm", {}); +let { setTimeout } = Cu.import("resource://gre/modules/Timer.jsm", {}); // A tall 1x1000 black png. const IMG_BYTES = atob( diff --git a/layout/generic/test/slow-stylesheet.sjs b/layout/generic/test/slow-stylesheet.sjs index b45f358a5171..f0c7f94e67ec 100644 --- a/layout/generic/test/slow-stylesheet.sjs +++ b/layout/generic/test/slow-stylesheet.sjs @@ -1,16 +1,19 @@ // Make sure our timer stays alive. let gTimer; -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/css", false); response.setStatusLine("1.1", 200, "OK"); response.processAsync(); gTimer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); // Wait for 1s before responding; this should usually make sure this load comes in last. - gTimer.init(() => { - response.write("body { color: lime }"); - response.finish(); - }, 1000, Ci.nsITimer.TYPE_ONE_SHOT); + gTimer.init( + () => { + response.write("body { color: lime }"); + response.finish(); + }, + 1000, + Ci.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/layout/style/test/bug517224.sjs b/layout/style/test/bug517224.sjs index 5a730b055ffc..bd1fe4f33695 100644 --- a/layout/style/test/bug517224.sjs +++ b/layout/style/test/bug517224.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); switch (request.queryString) { case "reset": @@ -10,14 +9,18 @@ function handleRequest(request, response) setState("imageloaded", "imageloaded"); response.setStatusLine("1.1", 302, "Found"); // redirect to a solid blue image - response.setHeader("Location", "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVQI12NgYPgPAAEDAQDZqt2zAAAAAElFTkSuQmCC"); + response.setHeader( + "Location", + "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVQI12NgYPgPAAEDAQDZqt2zAAAAAElFTkSuQmCC" + ); response.setHeader("Content-Type", "text/plain", false); break; case "result": response.setHeader("Content-Type", "application/ecmascript", false); var state = getState("imageloaded"); - response.write("is('" + state + - "', '', 'image should not have been loaded')\n"); + response.write( + "is('" + state + "', '', 'image should not have been loaded')\n" + ); response.write("SimpleTest.finish()"); break; } diff --git a/layout/style/test/bug732209-css.sjs b/layout/style/test/bug732209-css.sjs index 95dc612d57cc..a572cf394283 100644 --- a/layout/style/test/bug732209-css.sjs +++ b/layout/style/test/bug732209-css.sjs @@ -1,19 +1,30 @@ -function handleRequest(request, response) -{ - // First item will be the ID; other items are optional - var query = request.queryString.split(/&/); +function handleRequest(request, response) { + // First item will be the ID; other items are optional + var query = request.queryString.split(/&/); - response.setHeader("Content-Type", "text/css", false); + response.setHeader("Content-Type", "text/css", false); - if (query.indexOf("cors-anonymous") != -1) { - response.setHeader("Access-Control-Allow-Origin", "*", false); - } else if (query.indexOf("cors-credentials") != -1 && - request.hasHeader("Origin")) { - response.setHeader("Access-Control-Allow-Origin", - request.getHeader("Origin"), false) - response.setHeader("Access-Control-Allow-Credentials", "true", false); - } + if (query.indexOf("cors-anonymous") != -1) { + response.setHeader("Access-Control-Allow-Origin", "*", false); + } else if ( + query.indexOf("cors-credentials") != -1 && + request.hasHeader("Origin") + ) { + response.setHeader( + "Access-Control-Allow-Origin", + request.getHeader("Origin"), + false + ); + response.setHeader("Access-Control-Allow-Credentials", "true", false); + } - response.write("#" + query[0] + " { color: green !important }" + "\n" + - "#" + query[0] + ".reverse { color: red !important }"); + response.write( + "#" + + query[0] + + " { color: green !important }" + + "\n" + + "#" + + query[0] + + ".reverse { color: red !important }" + ); } diff --git a/layout/style/test/ccd.sjs b/layout/style/test/ccd.sjs index 058393e82ee4..22a4294d59c1 100644 --- a/layout/style/test/ccd.sjs +++ b/layout/style/test/ccd.sjs @@ -1,73 +1,71 @@ const DEBUG_all_valid = false; const DEBUG_all_stub = false; -function handleRequest(request, response) -{ - // Decode the query string to know what test we're doing. +function handleRequest(request, response) { + // Decode the query string to know what test we're doing. - // character 1: 'I' = text/css response, 'J' = text/html response - let responseCSS = (request.queryString[0] == 'I'); + // character 1: 'I' = text/css response, 'J' = text/html response + let responseCSS = request.queryString[0] == "I"; - // character 2: redirection type - we only care about whether we're - // ultimately same-origin with the requesting document ('A', 'D') or - // not ('B', 'C'). - let sameOrigin = (request.queryString[1] == 'A' || - request.queryString[1] == 'D'); + // character 2: redirection type - we only care about whether we're + // ultimately same-origin with the requesting document ('A', 'D') or + // not ('B', 'C'). + let sameOrigin = + request.queryString[1] == "A" || request.queryString[1] == "D"; - // character 3: '1' = syntactically valid, '2' = invalid, '3' = http error - let malformed = (request.queryString[2] == '2'); - let httpError = (request.queryString[2] == '3'); + // character 3: '1' = syntactically valid, '2' = invalid, '3' = http error + let malformed = request.queryString[2] == "2"; + let httpError = request.queryString[2] == "3"; - // character 4: loaded with or @import (no action required) + // character 4: loaded with or @import (no action required) - // character 5: loading document mode: 'q' = quirks, 's' = standards - let quirksMode = (request.queryString[4] == 'q'); + // character 5: loading document mode: 'q' = quirks, 's' = standards + let quirksMode = request.queryString[4] == "q"; - // Our response contains a CSS rule that selects an element whose - // ID is the first four characters of the query string. - let selector = '#' + request.queryString.substring(0,4); + // Our response contains a CSS rule that selects an element whose + // ID is the first four characters of the query string. + let selector = "#" + request.queryString.substring(0, 4); - // "Malformed" responses wrap the CSS rule in the construct - // {} ... - // This mimics what the CSS parser might see if an actual HTML - // document were fed to it. Because CSS parsers recover from - // errors by skipping tokens until they find something - // recognizable, a style rule appearing where I wrote '...' above - // will be honored! - let leader = (malformed ? '{}' : ''); - let trailer = (malformed ? '' : ''); + // "Malformed" responses wrap the CSS rule in the construct + // {} ... + // This mimics what the CSS parser might see if an actual HTML + // document were fed to it. Because CSS parsers recover from + // errors by skipping tokens until they find something + // recognizable, a style rule appearing where I wrote '...' above + // will be honored! + let leader = malformed ? "{}" : ""; + let trailer = malformed ? "" : ""; - // Standards mode documents will ignore the style sheet if it is being - // served as text/html (regardless of its contents). Quirks mode - // documents will ignore the style sheet if it is being served as - // text/html _and_ it is not same-origin. Regardless, style sheets - // are ignored if they come as the body of an HTTP error response. - // - // Style sheets that should be ignored paint the element red; those - // that should be honored paint it lime. - let color = ((responseCSS || (quirksMode && sameOrigin)) && !httpError - ? 'lime' : 'red'); + // Standards mode documents will ignore the style sheet if it is being + // served as text/html (regardless of its contents). Quirks mode + // documents will ignore the style sheet if it is being served as + // text/html _and_ it is not same-origin. Regardless, style sheets + // are ignored if they come as the body of an HTTP error response. + // + // Style sheets that should be ignored paint the element red; those + // that should be honored paint it lime. + let color = + (responseCSS || (quirksMode && sameOrigin)) && !httpError ? "lime" : "red"; - // For debugging the test itself, we have the capacity to make every style - // sheet well-formed, or every style sheet do nothing. - if (DEBUG_all_valid) { - // In this mode, every test chip should turn blue. - response.setHeader('Content-Type', 'text/css'); - response.write(selector + '{background-color:blue}\n'); - } else if (DEBUG_all_stub) { - // In this mode, every test chip for a case where the true test - // sheet would be honored, should turn red. - response.setHeader('Content-Type', 'text/css'); - response.write(selector + '{}\n'); - } else { - // Normal operation. - if (httpError) - response.setStatusLine(request.httpVersion, 500, - "Internal Server Error"); - response.setHeader('Content-Type', - responseCSS ? 'text/css' : 'text/html'); - response.write(leader + selector + - '{background-color:' + color + '}' + - trailer + '\n'); + // For debugging the test itself, we have the capacity to make every style + // sheet well-formed, or every style sheet do nothing. + if (DEBUG_all_valid) { + // In this mode, every test chip should turn blue. + response.setHeader("Content-Type", "text/css"); + response.write(selector + "{background-color:blue}\n"); + } else if (DEBUG_all_stub) { + // In this mode, every test chip for a case where the true test + // sheet would be honored, should turn red. + response.setHeader("Content-Type", "text/css"); + response.write(selector + "{}\n"); + } else { + // Normal operation. + if (httpError) { + response.setStatusLine(request.httpVersion, 500, "Internal Server Error"); } + response.setHeader("Content-Type", responseCSS ? "text/css" : "text/html"); + response.write( + leader + selector + "{background-color:" + color + "}" + trailer + "\n" + ); + } } diff --git a/layout/style/test/neverending_font_load.sjs b/layout/style/test/neverending_font_load.sjs index 7bf419aaf6bd..b02fc377a818 100644 --- a/layout/style/test/neverending_font_load.sjs +++ b/layout/style/test/neverending_font_load.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.processAsync(); response.setHeader("Content-Type", "application/octet-stream", false); response.write(""); diff --git a/layout/style/test/neverending_stylesheet_load.sjs b/layout/style/test/neverending_stylesheet_load.sjs index 386ffbe3565f..048263fe54b4 100644 --- a/layout/style/test/neverending_stylesheet_load.sjs +++ b/layout/style/test/neverending_stylesheet_load.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.processAsync(); response.setHeader("Content-Type", "text/css", false); response.write(""); diff --git a/layout/style/test/redirect.sjs b/layout/style/test/redirect.sjs index b6249cadff1b..43fec90b5aaa 100644 --- a/layout/style/test/redirect.sjs +++ b/layout/style/test/redirect.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 301, "Moved Permanently"); response.setHeader("Location", request.queryString, false); } diff --git a/layout/style/test/redundant_font_download.sjs b/layout/style/test/redundant_font_download.sjs index a28fc081d24d..15613a90c4a9 100644 --- a/layout/style/test/redundant_font_download.sjs +++ b/layout/style/test/redundant_font_download.sjs @@ -1,9 +1,11 @@ -const BinaryOutputStream = - Components.Constructor("@mozilla.org/binaryoutputstream;1", - "nsIBinaryOutputStream", - "setOutputStream"); +const BinaryOutputStream = Components.Constructor( + "@mozilla.org/binaryoutputstream;1", + "nsIBinaryOutputStream", + "setOutputStream" +); // this is simply a hex dump of a red square .PNG image +/* eslint-disable prettier/prettier */ const RED_SQUARE = [ 0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A, 0x00, 0x00, @@ -19,11 +21,11 @@ const RED_SQUARE = 0x00, 0x00, 0x49, 0x45, 0x4E, 0x44, 0xAE, 0x42, 0x60, 0x82 ]; -function handleRequest(request, response) -{ +/* eslint-enable prettier/prettier */ +function handleRequest(request, response) { var query = {}; - request.queryString.split('&').forEach(function (val) { - var [name, value] = val.split('='); + request.queryString.split("&").forEach(function(val) { + var [name, value] = val.split("="); query[name] = unescape(value); }); @@ -36,23 +38,23 @@ function handleRequest(request, response) var stream = new BinaryOutputStream(response.bodyOutputStream); - if (query["q"] == "init") { + if (query.q == "init") { log = "init"; // initialize the log, and return a PNG image response.setHeader("Content-Type", "image/png", false); stream.writeByteArray(RED_SQUARE); - } else if (query["q"] == "image") { - log = log + ";" + query["q"]; + } else if (query.q == "image") { + log = log + ";" + query.q; response.setHeader("Content-Type", "image/png", false); stream.writeByteArray(RED_SQUARE); - } else if (query["q"] == "font") { - log = log + ";" + query["q"]; + } else if (query.q == "font") { + log = log + ";" + query.q; // we don't provide a real font; that's ok, OTS will just reject it response.write("Junk"); - } else if (query["q"] == "report") { + } else if (query.q == "report") { // don't include the actual "report" request in the log we return response.write(log); } else { - log = log + ";" + query["q"]; + log = log + ";" + query.q; response.setStatusLine(request.httpVersion, 404, "Not Found"); } diff --git a/layout/style/test/slow_broken_sheet.sjs b/layout/style/test/slow_broken_sheet.sjs index 40deb9a39f0a..6af03ee4c619 100644 --- a/layout/style/test/slow_broken_sheet.sjs +++ b/layout/style/test/slow_broken_sheet.sjs @@ -1,16 +1,19 @@ // Make sure our timer stays alive. let gTimer; -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/html", false); response.setStatusLine("1.1", 404, "Not Found"); response.processAsync(); gTimer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); // Wait for 1s before responding; this should usually make sure this load comes in last. - gTimer.init(() => { - response.write("

Hello

"); - response.finish(); - }, 1000, Ci.nsITimer.TYPE_ONE_SHOT); + gTimer.init( + () => { + response.write("

Hello

"); + response.finish(); + }, + 1000, + Ci.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/layout/style/test/slow_load.sjs b/layout/style/test/slow_load.sjs index 8ad9b4fc9fcf..3873f466ce8b 100644 --- a/layout/style/test/slow_load.sjs +++ b/layout/style/test/slow_load.sjs @@ -12,14 +12,18 @@ function handleRequest(request, response) { gTimer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); // Wait for 1s before responding; this should usually make sure this load comes in last. - gTimer.init(() => { - if (isCss) { - // FIXME(emilio): This clamps the date to the 32-bit integer range which - // is what we use to store the z-index... We don't seem to store f64s - // anywhere in the specified values... - time = time % (Math.pow(2, 31) - 1); - response.write(":root { z-index: " + time + "}"); - } - response.finish(); - }, 1000, Ci.nsITimer.TYPE_ONE_SHOT); + gTimer.init( + () => { + if (isCss) { + // FIXME(emilio): This clamps the date to the 32-bit integer range which + // is what we use to store the z-index... We don't seem to store f64s + // anywhere in the specified values... + time = time % (Math.pow(2, 31) - 1); + response.write(":root { z-index: " + time + "}"); + } + response.finish(); + }, + 1000, + Ci.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/layout/style/test/slow_ok_sheet.sjs b/layout/style/test/slow_ok_sheet.sjs index fa759efa7a56..5673bb2be81d 100644 --- a/layout/style/test/slow_ok_sheet.sjs +++ b/layout/style/test/slow_ok_sheet.sjs @@ -1,18 +1,21 @@ // Make sure our timer stays alive. let gTimer; -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/css", false); response.setStatusLine("1.1", 200, "OK"); response.processAsync(); gTimer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); // Wait for 1s before responding; this should usually make sure this load comes in last. - gTimer.init(() => { - // This sheet _does_ still get applied even though its importing link - // overall reports failure... - response.write("nosuchelement { background: red }"); - response.finish(); - }, 1000, Ci.nsITimer.TYPE_ONE_SHOT); + gTimer.init( + () => { + // This sheet _does_ still get applied even though its importing link + // overall reports failure... + response.write("nosuchelement { background: red }"); + response.finish(); + }, + 1000, + Ci.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/layout/style/test/visited_image_loading.sjs b/layout/style/test/visited_image_loading.sjs index 88030543923f..79c03d7b5447 100644 --- a/layout/style/test/visited_image_loading.sjs +++ b/layout/style/test/visited_image_loading.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); var query = request.queryString; switch (query) { @@ -17,21 +16,31 @@ function handleRequest(request, response) setState(query, getState(query) + "load"); response.setStatusLine("1.1", 302, "Found"); // redirect to a solid blue image - response.setHeader("Location", "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVQI12NgYPgPAAEDAQDZqt2zAAAAAElFTkSuQmCC"); + response.setHeader( + "Location", + "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVQI12NgYPgPAAEDAQDZqt2zAAAAAElFTkSuQmCC" + ); response.setHeader("Content-Type", "text/plain", false); break; case "waitforresult": response.setHeader("Content-Type", "application/ecmascript", false); response.write("var start = Date.now();\n"); - // fall through! + // fall through! case "waitforresult-internal": response.setHeader("Content-Type", "application/ecmascript", false); - response.write("if ('" + getState("1l") + "' == 'load' && '" + - getState("1v") + "' == '' && '" + - getState("2l") + "' == 'load' && '" + - getState("2v") + "' == '') { \n"); + response.write( + "if ('" + + getState("1l") + + "' == 'load' && '" + + getState("1v") + + "' == '' && '" + + getState("2l") + + "' == 'load' && '" + + getState("2v") + + "' == '') { \n" + ); response.write("setTimeout(function() {\n"); response.write("var s = document.createElement('script');\n"); response.write("s.src = 'visited_image_loading.sjs?result';\n"); @@ -39,21 +48,35 @@ function handleRequest(request, response) response.write("}, Math.max(100, 2 * (Date.now() - start)));\n"); response.write("} else setTimeout(function() {\n"); response.write("var s = document.createElement('script');\n"); - response.write("s.src = 'visited_image_loading.sjs?waitforresult-internal';\n"); + response.write( + "s.src = 'visited_image_loading.sjs?waitforresult-internal';\n" + ); response.write("document.body.appendChild(s);"); response.write("}, 10);\n"); break; case "result": response.setHeader("Content-Type", "application/ecmascript", false); - response.write("is('" + getState("1l") + - "', 'load', 'image 1l should have been loaded once')\n"); - response.write("is('" + getState("1v") + - "', '', 'image 1v should not have been loaded')\n"); - response.write("is('" + getState("2l") + - "', 'load', 'image 2l should have been loaded once')\n"); - response.write("is('" + getState("2v") + - "', '', 'image 2v should not have been loaded')\n"); + response.write( + "is('" + + getState("1l") + + "', 'load', 'image 1l should have been loaded once')\n" + ); + response.write( + "is('" + + getState("1v") + + "', '', 'image 1v should not have been loaded')\n" + ); + response.write( + "is('" + + getState("2l") + + "', 'load', 'image 2l should have been loaded once')\n" + ); + response.write( + "is('" + + getState("2v") + + "', '', 'image 2v should not have been loaded')\n" + ); response.write("SimpleTest.finish()"); break; } diff --git a/layout/xul/test/file_bug386386.sjs b/layout/xul/test/file_bug386386.sjs index cba983d094d8..4cd23a7909a6 100644 --- a/layout/xul/test/file_bug386386.sjs +++ b/layout/xul/test/file_bug386386.sjs @@ -3,6 +3,12 @@ function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); - response.setHeader("Content-Type", "application/xhtml+xml;charset=utf-8", false); - response.write("%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Cwindow%3E%3C/window%3E"); + response.setHeader( + "Content-Type", + "application/xhtml+xml;charset=utf-8", + false + ); + response.write( + "%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Cwindow%3E%3C/window%3E" + ); } diff --git a/mobile/android/components/extensions/test/mochitest/file_bypass_cache.sjs b/mobile/android/components/extensions/test/mochitest/file_bypass_cache.sjs index c91c76b88e98..eed8a6ef4959 100644 --- a/mobile/android/components/extensions/test/mochitest/file_bypass_cache.sjs +++ b/mobile/android/components/extensions/test/mochitest/file_bypass_cache.sjs @@ -6,6 +6,8 @@ function handleRequest(request, response) { response.setHeader("Content-Type", "text/plain; charset=UTF-8", false); if (request.hasHeader("pragma") && request.hasHeader("cache-control")) { - response.write(`${request.getHeader("pragma")}:${request.getHeader("cache-control")}`); + response.write( + `${request.getHeader("pragma")}:${request.getHeader("cache-control")}` + ); } -} \ No newline at end of file +} diff --git a/mobile/android/components/extensions/test/mochitest/file_slowed_document.sjs b/mobile/android/components/extensions/test/mochitest/file_slowed_document.sjs index 905bdda0f536..3816cf045bab 100644 --- a/mobile/android/components/extensions/test/mochitest/file_slowed_document.sjs +++ b/mobile/android/components/extensions/test/mochitest/file_slowed_document.sjs @@ -11,7 +11,11 @@ const URL = "file_slowed_document.sjs"; const DELAY = 2 * 1000; // Delay one second before completing the request. -let nsTimer = Components.Constructor("@mozilla.org/timer;1", "nsITimer", "initWithCallback"); +const nsTimer = Components.Constructor( + "@mozilla.org/timer;1", + "nsITimer", + "initWithCallback" +); let timer; @@ -31,11 +35,15 @@ function handleRequest(request, response) { // Note: We need to store a reference to the timer to prevent it from being // canceled when it's GCed. - timer = new nsTimer(() => { - if (request.queryString.includes("with-iframe")) { - response.write(``); - } - response.write(``); - response.finish(); - }, DELAY, Ci.nsITimer.TYPE_ONE_SHOT); + timer = new nsTimer( + () => { + if (request.queryString.includes("with-iframe")) { + response.write(``); + } + response.write(``); + response.finish(); + }, + DELAY, + Ci.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/mobile/android/geckoview/src/androidTest/assets/www/simple_redirect.sjs b/mobile/android/geckoview/src/androidTest/assets/www/simple_redirect.sjs index b6249cadff1b..43fec90b5aaa 100644 --- a/mobile/android/geckoview/src/androidTest/assets/www/simple_redirect.sjs +++ b/mobile/android/geckoview/src/androidTest/assets/www/simple_redirect.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 301, "Moved Permanently"); response.setHeader("Location", request.queryString, false); } diff --git a/netwerk/cookie/test/browser/oversize.sjs b/netwerk/cookie/test/browser/oversize.sjs index e2275d050c3c..dfe2f31645a7 100644 --- a/netwerk/cookie/test/browser/oversize.sjs +++ b/netwerk/cookie/test/browser/oversize.sjs @@ -4,6 +4,14 @@ function handleRequest(aRequest, aResponse) { const maxBytesPerCookie = 4096; const maxBytesPerCookiePath = 1024; - aResponse.setHeader("Set-Cookie", "a=" + Array(maxBytesPerCookie + 1).join('x'), true); - aResponse.setHeader("Set-Cookie", "b=c; path=/" + Array(maxBytesPerCookiePath + 1).join('x'), true); + aResponse.setHeader( + "Set-Cookie", + "a=" + Array(maxBytesPerCookie + 1).join("x"), + true + ); + aResponse.setHeader( + "Set-Cookie", + "b=c; path=/" + Array(maxBytesPerCookiePath + 1).join("x"), + true + ); } diff --git a/netwerk/cookie/test/browser/server.sjs b/netwerk/cookie/test/browser/server.sjs index 283df46dcd3b..86835914bbb4 100644 --- a/netwerk/cookie/test/browser/server.sjs +++ b/netwerk/cookie/test/browser/server.sjs @@ -1,6 +1,6 @@ function handleRequest(aRequest, aResponse) { aResponse.setStatusLine(aRequest.httpVersion, 200); - if (aRequest.hasHeader('Cookie')) { + if (aRequest.hasHeader("Cookie")) { aResponse.write("cookie-present"); } else { aResponse.setHeader("Set-Cookie", "foopy=1"); diff --git a/netwerk/cookie/test/mochitest/cookie.sjs b/netwerk/cookie/test/mochitest/cookie.sjs index 3d31aeb1c69b..38822d2e2e88 100644 --- a/netwerk/cookie/test/mochitest/cookie.sjs +++ b/netwerk/cookie/test/mochitest/cookie.sjs @@ -9,24 +9,35 @@ function handleRequest(aRequest, aResponse) { } if (parts.includes("fetch")) { - setState("data", JSON.stringify({type: "fetch", hasCookie: aRequest.hasHeader("Cookie") })); + setState( + "data", + JSON.stringify({ type: "fetch", hasCookie: aRequest.hasHeader("Cookie") }) + ); aResponse.write("Hello world!"); return; } if (parts.includes("xhr")) { - setState("data", JSON.stringify({type: "xhr", hasCookie: aRequest.hasHeader("Cookie") })); + setState( + "data", + JSON.stringify({ type: "xhr", hasCookie: aRequest.hasHeader("Cookie") }) + ); aResponse.write("Hello world!"); return; } if (parts.includes("image")) { - setState("data", JSON.stringify({type: "image", hasCookie: aRequest.hasHeader("Cookie") })); + setState( + "data", + JSON.stringify({ type: "image", hasCookie: aRequest.hasHeader("Cookie") }) + ); // A 1x1 PNG image. // Source: https://commons.wikimedia.org/wiki/File:1x1.png (Public Domain) - const IMAGE = atob("iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAA" + - "ACnej3aAAAAAXRSTlMAQObYZgAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII="); + const IMAGE = atob( + "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAA" + + "ACnej3aAAAAAXRSTlMAQObYZgAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=" + ); aResponse.setHeader("Content-Type", "image/png", false); aResponse.write(IMAGE); @@ -34,7 +45,13 @@ function handleRequest(aRequest, aResponse) { } if (parts.includes("script")) { - setState("data", JSON.stringify({type: "script", hasCookie: aRequest.hasHeader("Cookie") })); + setState( + "data", + JSON.stringify({ + type: "script", + hasCookie: aRequest.hasHeader("Cookie"), + }) + ); aResponse.setHeader("Content-Type", "text/javascript", false); aResponse.write("window.scriptLoaded();"); @@ -42,7 +59,13 @@ function handleRequest(aRequest, aResponse) { } if (parts.includes("worker")) { - setState("data", JSON.stringify({type: "worker", hasCookie: aRequest.hasHeader("Cookie") })); + setState( + "data", + JSON.stringify({ + type: "worker", + hasCookie: aRequest.hasHeader("Cookie"), + }) + ); function w() { onmessage = e => { @@ -53,7 +76,9 @@ function handleRequest(aRequest, aResponse) { } if (e.data == "fetch") { - fetch("cookie.sjs?fetch&" + Math.random()).then(r => r.text()).then(_ => postMessage(42)); + fetch("cookie.sjs?fetch&" + Math.random()) + .then(r => r.text()) + .then(_ => postMessage(42)); return; } @@ -65,7 +90,7 @@ function handleRequest(aRequest, aResponse) { } }; postMessage(42); - }; + } aResponse.setHeader("Content-Type", "text/javascript", false); aResponse.write(w.toString() + "; w();"); @@ -73,14 +98,26 @@ function handleRequest(aRequest, aResponse) { } if (parts.includes("subworker")) { - setState("data", JSON.stringify({type: "subworker", hasCookie: aRequest.hasHeader("Cookie") })); + setState( + "data", + JSON.stringify({ + type: "subworker", + hasCookie: aRequest.hasHeader("Cookie"), + }) + ); aResponse.setHeader("Content-Type", "text/javascript", false); aResponse.write("42"); return; } if (parts.includes("sharedworker")) { - setState("data", JSON.stringify({type: "sharedworker", hasCookie: aRequest.hasHeader("Cookie") })); + setState( + "data", + JSON.stringify({ + type: "sharedworker", + hasCookie: aRequest.hasHeader("Cookie"), + }) + ); function w() { onconnect = e => { @@ -92,7 +129,9 @@ function handleRequest(aRequest, aResponse) { } if (evt.data == "fetch") { - fetch("cookie.sjs?fetch&" + Math.random()).then(r => r.text()).then(_ => e.ports[0].postMessage(42)); + fetch("cookie.sjs?fetch&" + Math.random()) + .then(r => r.text()) + .then(_ => e.ports[0].postMessage(42)); return; } @@ -105,7 +144,7 @@ function handleRequest(aRequest, aResponse) { }; e.ports[0].postMessage(42); }; - }; + } aResponse.setHeader("Content-Type", "text/javascript", false); aResponse.write(w.toString() + "; w();"); diff --git a/netwerk/test/browser/auth_post.sjs b/netwerk/test/browser/auth_post.sjs index 8ac4c635c8e7..8c3e723558dd 100644 --- a/netwerk/test/browser/auth_post.sjs +++ b/netwerk/test/browser/auth_post.sjs @@ -1,7 +1,9 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); function readStream(inputStream) { let available = 0; @@ -10,11 +12,10 @@ function readStream(inputStream) { result.push(inputStream.readBytes(available)); } - return result.join(''); + return result.join(""); } -function handleRequest(request, response) -{ +function handleRequest(request, response) { if (request.method != "POST") { response.setStatusLine(request.httpVersion, 405, "Method Not Allowed"); return; diff --git a/netwerk/test/browser/redirect.sjs b/netwerk/test/browser/redirect.sjs index 7599fe33fb50..09e7d9b1e4ba 100644 --- a/netwerk/test/browser/redirect.sjs +++ b/netwerk/test/browser/redirect.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 301, "Moved Permanently"); let location = request.queryString; response.setHeader("Location", location, false); diff --git a/netwerk/test/httpserver/test/data/sjs/cgi.sjs b/netwerk/test/httpserver/test/data/sjs/cgi.sjs index b1554f2bc990..613a36dd400b 100644 --- a/netwerk/test/httpserver/test/data/sjs/cgi.sjs +++ b/netwerk/test/httpserver/test/data/sjs/cgi.sjs @@ -1,7 +1,7 @@ -function handleRequest(request, response) -{ - if (request.queryString == "throw") +function handleRequest(request, response) { + if (request.queryString == "throw") { throw "monkey wrench!"; + } response.setHeader("Content-Type", "text/plain", false); response.write("PASS"); diff --git a/netwerk/test/httpserver/test/data/sjs/object-state.sjs b/netwerk/test/httpserver/test/data/sjs/object-state.sjs index 1d9ea8b4e408..7ac1b447b024 100644 --- a/netwerk/test/httpserver/test/data/sjs/object-state.sjs +++ b/netwerk/test/httpserver/test/data/sjs/object-state.sjs @@ -1,13 +1,12 @@ -function parseQueryString(str) -{ +function parseQueryString(str) { var paramArray = str.split("&"); var regex = /^([^=]+)=(.*)$/; var params = {}; - for (var i = 0, sz = paramArray.length; i < sz; i++) - { + for (var i = 0, sz = paramArray.length; i < sz; i++) { var match = regex.exec(paramArray[i]); - if (!match) + if (!match) { throw "Bad parameter in queryString! '" + paramArray[i] + "'"; + } params[decodeURIComponent(match[1])] = decodeURIComponent(match[2]); } @@ -22,10 +21,9 @@ function parseQueryString(str) * best of my knowledge there's no way to force data flow at all those levels, * so this is the best we can do. */ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); - + /* * NB: A Content-Type header is *necessary* to avoid content-sniffing, which * will delay onStartRequest past the the point where the entire head of @@ -35,31 +33,21 @@ function handleRequest(request, response) var params = parseQueryString(request.queryString); - switch (params.state) - { + switch (params.state) { case "initial": response.processAsync(); response.write("do"); - var state = - { - QueryInterface: function(iid) - { - if (iid.equals(Components.interfaces.nsISupports)) - return this; - throw Components.results.NS_ERROR_NO_INTERFACE; - }, - end: function() - { - response.write("ne"); - response.finish(); - } - }; + var state = { + QueryInterface: ChromeUtils.generateQI([]), + end() { + response.write("ne"); + response.finish(); + }, + }; state.wrappedJSObject = state; setObjectState("object-state-test", state); - getObjectState("object-state-test", function(obj) - { - if (obj !== state) - { + getObjectState("object-state-test", function(obj) { + if (obj !== state) { response.write("FAIL bad state save"); response.finish(); } @@ -72,8 +60,7 @@ function handleRequest(request, response) case "trigger": response.write("trigger"); - getObjectState("object-state-test", function(obj) - { + getObjectState("object-state-test", function(obj) { obj.wrappedJSObject.end(); setObjectState("object-state-test", null); }); diff --git a/netwerk/test/httpserver/test/data/sjs/qi.sjs b/netwerk/test/httpserver/test/data/sjs/qi.sjs index 36567ddc1a16..c6c5608344a9 100644 --- a/netwerk/test/httpserver/test/data/sjs/qi.sjs +++ b/netwerk/test/httpserver/test/data/sjs/qi.sjs @@ -1,43 +1,40 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { var exstr, qid; response.setStatusLine(request.httpVersion, 500, "FAIL"); var passed = false; - try - { + try { qid = request.QueryInterface(Ci.nsIHttpRequest); passed = qid === request; - } - catch (e) - { + } catch (e) { exstr = ("" + e).split(/[\x09\x20-\x7f\x81-\xff]+/)[0]; - response.setStatusLine(request.httpVersion, 500, - "request doesn't QI: " + exstr); + response.setStatusLine( + request.httpVersion, + 500, + "request doesn't QI: " + exstr + ); return; } - if (!passed) - { + if (!passed) { response.setStatusLine(request.httpVersion, 500, "request QI'd wrongly?"); return; } passed = false; - try - { + try { qid = response.QueryInterface(Ci.nsIHttpResponse); passed = qid === response; - } - catch (e) - { + } catch (e) { exstr = ("" + e).split(/[\x09\x20-\x7f\x81-\xff]+/)[0]; - response.setStatusLine(request.httpVersion, 500, - "response doesn't QI: " + exstr); + response.setStatusLine( + request.httpVersion, + 500, + "response doesn't QI: " + exstr + ); return; } - if (!passed) - { + if (!passed) { response.setStatusLine(request.httpVersion, 500, "response QI'd wrongly?"); return; } diff --git a/netwerk/test/httpserver/test/data/sjs/range-checker.sjs b/netwerk/test/httpserver/test/data/sjs/range-checker.sjs index 39fcc2b88e24..4bc447f739af 100644 --- a/netwerk/test/httpserver/test/data/sjs/range-checker.sjs +++ b/netwerk/test/httpserver/test/data/sjs/range-checker.sjs @@ -1,3 +1 @@ -function handleRequest(request, response) -{ -} +function handleRequest(request, response) {} diff --git a/netwerk/test/httpserver/test/data/sjs/state1.sjs b/netwerk/test/httpserver/test/data/sjs/state1.sjs index da2862d1e96a..c02281168115 100644 --- a/netwerk/test/httpserver/test/data/sjs/state1.sjs +++ b/netwerk/test/httpserver/test/data/sjs/state1.sjs @@ -1,21 +1,19 @@ -function parseQueryString(str) -{ +function parseQueryString(str) { var paramArray = str.split("&"); var regex = /^([^=]+)=(.*)$/; var params = {}; - for (var i = 0, sz = paramArray.length; i < sz; i++) - { + for (var i = 0, sz = paramArray.length; i < sz; i++) { var match = regex.exec(paramArray[i]); - if (!match) + if (!match) { throw "Bad parameter in queryString! '" + paramArray[i] + "'"; + } params[decodeURIComponent(match[1])] = decodeURIComponent(match[2]); } return params; } -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); var params = parseQueryString(request.queryString); @@ -24,8 +22,7 @@ function handleRequest(request, response) response.setHeader("X-Old-Shared-Value", oldShared, false); var newShared = params.newShared; - if (newShared !== undefined) - { + if (newShared !== undefined) { setSharedState("shared-value", newShared); response.setHeader("X-New-Shared-Value", newShared, false); } @@ -34,8 +31,7 @@ function handleRequest(request, response) response.setHeader("X-Old-Private-Value", oldPrivate, false); var newPrivate = params.newPrivate; - if (newPrivate !== undefined) - { + if (newPrivate !== undefined) { setState("private-value", newPrivate); response.setHeader("X-New-Private-Value", newPrivate, false); } diff --git a/netwerk/test/httpserver/test/data/sjs/state2.sjs b/netwerk/test/httpserver/test/data/sjs/state2.sjs index da2862d1e96a..c02281168115 100644 --- a/netwerk/test/httpserver/test/data/sjs/state2.sjs +++ b/netwerk/test/httpserver/test/data/sjs/state2.sjs @@ -1,21 +1,19 @@ -function parseQueryString(str) -{ +function parseQueryString(str) { var paramArray = str.split("&"); var regex = /^([^=]+)=(.*)$/; var params = {}; - for (var i = 0, sz = paramArray.length; i < sz; i++) - { + for (var i = 0, sz = paramArray.length; i < sz; i++) { var match = regex.exec(paramArray[i]); - if (!match) + if (!match) { throw "Bad parameter in queryString! '" + paramArray[i] + "'"; + } params[decodeURIComponent(match[1])] = decodeURIComponent(match[2]); } return params; } -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); var params = parseQueryString(request.queryString); @@ -24,8 +22,7 @@ function handleRequest(request, response) response.setHeader("X-Old-Shared-Value", oldShared, false); var newShared = params.newShared; - if (newShared !== undefined) - { + if (newShared !== undefined) { setSharedState("shared-value", newShared); response.setHeader("X-New-Shared-Value", newShared, false); } @@ -34,8 +31,7 @@ function handleRequest(request, response) response.setHeader("X-Old-Private-Value", oldPrivate, false); var newPrivate = params.newPrivate; - if (newPrivate !== undefined) - { + if (newPrivate !== undefined) { setState("private-value", newPrivate); response.setHeader("X-New-Private-Value", newPrivate, false); } diff --git a/netwerk/test/httpserver/test/data/sjs/thrower.sjs b/netwerk/test/httpserver/test/data/sjs/thrower.sjs index 1aaf1639a3de..b34de70e30d1 100644 --- a/netwerk/test/httpserver/test/data/sjs/thrower.sjs +++ b/netwerk/test/httpserver/test/data/sjs/thrower.sjs @@ -1,6 +1,6 @@ -function handleRequest(request, response) -{ - if (request.queryString == "throw") +function handleRequest(request, response) { + if (request.queryString == "throw") { undefined[5]; + } response.setHeader("X-Test-Status", "PASS", false); } diff --git a/netwerk/test/mochitests/file_1502055.sjs b/netwerk/test/mochitests/file_1502055.sjs index 9fc8502bd43e..71a4ddfa66ab 100644 --- a/netwerk/test/mochitests/file_1502055.sjs +++ b/netwerk/test/mochitests/file_1502055.sjs @@ -1,18 +1,17 @@ -function handleRequest(request, response) -{ - var count = parseInt(getState('count')); +function handleRequest(request, response) { + var count = parseInt(getState("count")); if (!count) { count = 0; } if (count == 0) { - response.setStatusLine(request.httpVersion, '200', 'OK'); - response.setHeader('Content-Type', 'text/html', false); - response.write('Hello world!'); - setState('count', '1'); + response.setStatusLine(request.httpVersion, "200", "OK"); + response.setHeader("Content-Type", "text/html", false); + response.write("Hello world!"); + setState("count", "1"); return; } response.setStatusLine(request.httpVersion, "304", "Not Modified"); - response.setHeader('Clear-Site-Data', '"storage"'); + response.setHeader("Clear-Site-Data", '"storage"'); } diff --git a/netwerk/test/mochitests/file_1503201.sjs b/netwerk/test/mochitests/file_1503201.sjs index ba7160c6337d..ac5c3041035d 100644 --- a/netwerk/test/mochitests/file_1503201.sjs +++ b/netwerk/test/mochitests/file_1503201.sjs @@ -1,4 +1,4 @@ function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 401, "Unauthorized"); - response.setHeader("WWW-Authenticate", "Bearer realm=\"foo\""); + response.setHeader("WWW-Authenticate", 'Bearer realm="foo"'); } diff --git a/netwerk/test/mochitests/file_loadinfo_redirectchain.sjs b/netwerk/test/mochitests/file_loadinfo_redirectchain.sjs index fd46d6cd9d09..264ed9b29569 100644 --- a/netwerk/test/mochitests/file_loadinfo_redirectchain.sjs +++ b/netwerk/test/mochitests/file_loadinfo_redirectchain.sjs @@ -4,8 +4,8 @@ */ function createIframeContent(aQuery) { - - var content =` + var content = + ` @@ -14,7 +14,9 @@ function createIframeContent(aQuery) { \r\n\r\n Web Packaged App Index\r\n\r\n", type: "text/html" }, - { headers: ["Content-Location: /scripts/app.js", "Content-Type: text/javascript"], data: "module Math from '/scripts/helpers/math.js';\r\n...\r\n", type: "text/javascript" }, - { headers: ["Content-Location: /scripts/helpers/math.js", "Content-Type: text/javascript"], data: "export function sum(nums) { ... }\r\n...\r\n", type: "text/javascript" } + { + headers: ["Content-Location: /index.html", "Content-Type: text/html"], + data: + "\r\n \r\n \r\n\r\n Web Packaged App Index\r\n\r\n", + type: "text/html", + }, + { + headers: [ + "Content-Location: /scripts/app.js", + "Content-Type: text/javascript", + ], + data: "module Math from '/scripts/helpers/math.js';\r\n...\r\n", + type: "text/javascript", + }, + { + headers: [ + "Content-Location: /scripts/helpers/math.js", + "Content-Type: text/javascript", + ], + data: "export function sum(nums) { ... }\r\n...\r\n", + type: "text/javascript", + }, ], - token : "gc0pJq0M:08jU534c0p", - getData: function() { + token: "gc0pJq0M:08jU534c0p", + getData() { var str = ""; for (var i in this.content) { str += "--" + this.token + "\r\n"; @@ -27,5 +44,5 @@ var octetStreamData = { str += "--" + this.token + "--"; return str; - } -} + }, +}; diff --git a/parser/htmlparser/tests/mochitest/dir_bug534293/file_bug534293.sjs b/parser/htmlparser/tests/mochitest/dir_bug534293/file_bug534293.sjs index ec3d3c80d8af..b2a9308a816e 100644 --- a/parser/htmlparser/tests/mochitest/dir_bug534293/file_bug534293.sjs +++ b/parser/htmlparser/tests/mochitest/dir_bug534293/file_bug534293.sjs @@ -1,11 +1,10 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/javascript", false); if (request.queryString.indexOf("report") != -1) { if (getState("loaded") == "loaded") { - response.write("ok(true, 'This script was supposed to get fetched.');"); + response.write("ok(true, 'This script was supposed to get fetched.');"); } else { - response.write("ok(false, 'This script was supposed to get fetched.');"); + response.write("ok(false, 'This script was supposed to get fetched.');"); } } else { setState("loaded", "loaded"); diff --git a/parser/htmlparser/tests/mochitest/file_async_bug1104732.sjs b/parser/htmlparser/tests/mochitest/file_async_bug1104732.sjs index b2ea43fddaf5..02649221eaa8 100644 --- a/parser/htmlparser/tests/mochitest/file_async_bug1104732.sjs +++ b/parser/htmlparser/tests/mochitest/file_async_bug1104732.sjs @@ -1,14 +1,19 @@ var timer = null; -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.processAsync(); response.setHeader("Content-Type", "application/javascript", false); response.write("asyncState = 'mid-async';\n"); - timer = Components.classes["@mozilla.org/timer;1"].createInstance(Components.interfaces.nsITimer); - timer.initWithCallback(function() { - response.write("asyncState = 'loaded';\n"); - response.finish(); - }, 5 * 1000 /* milliseconds */, timer.TYPE_ONE_SHOT); + timer = Components.classes["@mozilla.org/timer;1"].createInstance( + Components.interfaces.nsITimer + ); + timer.initWithCallback( + function() { + response.write("asyncState = 'loaded';\n"); + response.finish(); + }, + 5 * 1000 /* milliseconds */, + timer.TYPE_ONE_SHOT + ); } diff --git a/parser/htmlparser/tests/mochitest/file_bug102699.sjs b/parser/htmlparser/tests/mochitest/file_bug102699.sjs index 8f4075ae7cae..4c3d3ee4f29f 100644 --- a/parser/htmlparser/tests/mochitest/file_bug102699.sjs +++ b/parser/htmlparser/tests/mochitest/file_bug102699.sjs @@ -1,15 +1,19 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/javascript", false); if (request.queryString.indexOf("report") != -1) { if (getState("loaded") == "loaded") { - response.write("ok(false, 'This script was not supposed to get fetched.'); continueAfterReport();"); + response.write( + "ok(false, 'This script was not supposed to get fetched.'); continueAfterReport();" + ); } else { - response.write("ok(true, 'This script was not supposed to get fetched.'); continueAfterReport();"); + response.write( + "ok(true, 'This script was not supposed to get fetched.'); continueAfterReport();" + ); } } else { setState("loaded", "loaded"); - response.write('document.documentElement.setAttribute("data-fail", "FAIL");'); + response.write( + 'document.documentElement.setAttribute("data-fail", "FAIL");' + ); } } - diff --git a/parser/htmlparser/tests/mochitest/file_bug534293-slow.sjs b/parser/htmlparser/tests/mochitest/file_bug534293-slow.sjs index ec456f3ebdc8..7cd482ff0f68 100644 --- a/parser/htmlparser/tests/mochitest/file_bug534293-slow.sjs +++ b/parser/htmlparser/tests/mochitest/file_bug534293-slow.sjs @@ -1,14 +1,18 @@ var timer; -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); response.setHeader("Content-Type", "text/javascript", false); response.write("ok(true, 'Slow script ran.');"); response.processAsync(); - timer = Components.classes["@mozilla.org/timer;1"] - .createInstance(Components.interfaces.nsITimer); - timer.initWithCallback(function() { + timer = Components.classes["@mozilla.org/timer;1"].createInstance( + Components.interfaces.nsITimer + ); + timer.initWithCallback( + function() { response.finish(); - }, 500, Components.interfaces.nsITimer.TYPE_ONE_SHOT); + }, + 500, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); } diff --git a/parser/htmlparser/tests/mochitest/file_bug534293.sjs b/parser/htmlparser/tests/mochitest/file_bug534293.sjs index 02b1a1ede833..7930b6bfdd75 100644 --- a/parser/htmlparser/tests/mochitest/file_bug534293.sjs +++ b/parser/htmlparser/tests/mochitest/file_bug534293.sjs @@ -1,11 +1,14 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Content-Type", "text/javascript", false); if (request.queryString.indexOf("report") != -1) { if (getState("loaded") == "loaded") { - response.write("ok(false, 'This script was not supposed to get fetched.');"); + response.write( + "ok(false, 'This script was not supposed to get fetched.');" + ); } else { - response.write("ok(true, 'This script was not supposed to get fetched.');"); + response.write( + "ok(true, 'This script was not supposed to get fetched.');" + ); } } else { setState("loaded", "loaded"); diff --git a/parser/htmlparser/tests/mochitest/file_bug543062.sjs b/parser/htmlparser/tests/mochitest/file_bug543062.sjs index cb693d2f546a..d468e24ed4f7 100644 --- a/parser/htmlparser/tests/mochitest/file_bug543062.sjs +++ b/parser/htmlparser/tests/mochitest/file_bug543062.sjs @@ -1,20 +1,29 @@ var timer; function armTimer(response) { - timer = Components.classes["@mozilla.org/timer;1"] - .createInstance(Components.interfaces.nsITimer); - timer.initWithCallback(function() { - if (getState("docwritepreloadssecond") == "second" && getState("docwritepreloadsthird") == "third") { - response.write("ok(true, 'Second and third scripts should have started loading while the first one is loading');"); + timer = Components.classes["@mozilla.org/timer;1"].createInstance( + Components.interfaces.nsITimer + ); + timer.initWithCallback( + function() { + if ( + getState("docwritepreloadssecond") == "second" && + getState("docwritepreloadsthird") == "third" + ) { + response.write( + "ok(true, 'Second and third scripts should have started loading while the first one is loading');" + ); response.finish(); } else { armTimer(response); } - }, 20, Components.interfaces.nsITimer.TYPE_ONE_SHOT); + }, + 20, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); } -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); response.setHeader("Content-Type", "text/javascript", false); if (request.queryString.indexOf("first") != -1) { @@ -29,4 +38,3 @@ function handleRequest(request, response) setState("docwritepreloadsthird", "third"); } } - diff --git a/parser/htmlparser/tests/mochitest/file_bug568470-script.sjs b/parser/htmlparser/tests/mochitest/file_bug568470-script.sjs index f9150a09486c..f169f450955d 100644 --- a/parser/htmlparser/tests/mochitest/file_bug568470-script.sjs +++ b/parser/htmlparser/tests/mochitest/file_bug568470-script.sjs @@ -1,16 +1,19 @@ var timer = null; // Declare outside to prevent premature GC -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); response.setHeader("Content-Type", "text/javascript", false); response.write("var i = 0;"); response.bodyOutputStream.flush(); response.processAsync(); - timer = Components.classes["@mozilla.org/timer;1"] - .createInstance(Components.interfaces.nsITimer); - timer.initWithCallback(function() { + timer = Components.classes["@mozilla.org/timer;1"].createInstance( + Components.interfaces.nsITimer + ); + timer.initWithCallback( + function() { response.finish(); - }, 500, Components.interfaces.nsITimer.TYPE_ONE_SHOT); + }, + 500, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); } - diff --git a/parser/htmlparser/tests/mochitest/file_bug568470.sjs b/parser/htmlparser/tests/mochitest/file_bug568470.sjs index ddc3d0141c39..e702daad0989 100644 --- a/parser/htmlparser/tests/mochitest/file_bug568470.sjs +++ b/parser/htmlparser/tests/mochitest/file_bug568470.sjs @@ -1,21 +1,24 @@ var timer; // Place timer in global scope to avoid it getting GC'ed prematurely -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setHeader("Cache-Control", "no-cache", false); response.setHeader("Content-Type", "text/html", false); response.write(""); response.write("
"); - for (var i = 0; i < 2000; i++) { + for (var i = 0; i < 2000; i++) { response.write("Lorem ipsum dolor sit amet. "); } response.write("
"); response.bodyOutputStream.flush(); response.processAsync(); - timer = Components.classes["@mozilla.org/timer;1"] - .createInstance(Components.interfaces.nsITimer); - timer.initWithCallback(function() { + timer = Components.classes["@mozilla.org/timer;1"].createInstance( + Components.interfaces.nsITimer + ); + timer.initWithCallback( + function() { response.finish(); - }, 1200, Components.interfaces.nsITimer.TYPE_ONE_SHOT); + }, + 1200, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); } - diff --git a/parser/htmlparser/tests/mochitest/file_bug642908.sjs b/parser/htmlparser/tests/mochitest/file_bug642908.sjs index 73ba20288dab..434789394403 100644 --- a/parser/htmlparser/tests/mochitest/file_bug642908.sjs +++ b/parser/htmlparser/tests/mochitest/file_bug642908.sjs @@ -1,16 +1,19 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { if (request.queryString.indexOf("report") != -1) { response.setHeader("Content-Type", "text/javascript", false); if (getState("loaded") == "loaded") { - response.write("ok(false, 'There was an attempt to preload the image.');"); + response.write( + "ok(false, 'There was an attempt to preload the image.');" + ); } else { - response.write("ok(true, 'There was no attempt to preload the image.');"); + response.write("ok(true, 'There was no attempt to preload the image.');"); } response.write("SimpleTest.finish();"); } else { setState("loaded", "loaded"); response.setHeader("Content-Type", "image/svg", false); - response.write("Not supposed to load this"); + response.write( + "Not supposed to load this" + ); } } diff --git a/parser/htmlparser/tests/mochitest/file_bug655682.sjs b/parser/htmlparser/tests/mochitest/file_bug655682.sjs index 2b5316b2d102..ad378b826446 100644 --- a/parser/htmlparser/tests/mochitest/file_bug655682.sjs +++ b/parser/htmlparser/tests/mochitest/file_bug655682.sjs @@ -1,8 +1,7 @@ var timer; var callback; -function handleRequest(request, response) -{ +function handleRequest(request, response) { if (request.queryString.indexOf("trigger") != -1) { setState("triggered", "triggered"); response.setHeader("Cache-Control", "no-cache", false); @@ -17,21 +16,26 @@ function handleRequest(request, response) response.setHeader("Content-Type", "text/html; charset=utf-8", false); response.write(" "); response.bodyOutputStream.flush(); - timer = Components.classes["@mozilla.org/timer;1"] - .createInstance(Components.interfaces.nsITimer); + timer = Components.classes["@mozilla.org/timer;1"].createInstance( + Components.interfaces.nsITimer + ); callback = function() { if (getState("triggered") == "triggered") { response.write("
AB
"); response.finish(); } else { - timer.initWithCallback(callback, - 10, - Components.interfaces.nsITimer.TYPE_ONE_SHOT); + timer.initWithCallback( + callback, + 10, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); } - } - timer.initWithCallback(callback, - 10, - Components.interfaces.nsITimer.TYPE_ONE_SHOT); - } + }; + timer.initWithCallback( + callback, + 10, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); + } } diff --git a/parser/htmlparser/tests/mochitest/file_img_picture_preload.sjs b/parser/htmlparser/tests/mochitest/file_img_picture_preload.sjs index e4a3ba78079e..e91da043522f 100644 --- a/parser/htmlparser/tests/mochitest/file_img_picture_preload.sjs +++ b/parser/htmlparser/tests/mochitest/file_img_picture_preload.sjs @@ -1,8 +1,7 @@ // Return a PNG, saving an array of query strings we see as state. When query // string is 'status', return array as JSON -function handleRequest(request, response) -{ +function handleRequest(request, response) { var seenImages = getState("seenImages"); seenImages = seenImages ? JSON.parse(seenImages) : []; @@ -20,7 +19,7 @@ function handleRequest(request, response) // Return an image response.setStatusLine("1.1", 302, "Found"); response.setHeader("Location", "blue.png", false); - dump(request.queryString + '\n'); + dump(request.queryString + "\n"); seenImages.push(request.queryString); } diff --git a/security/manager/ssl/tests/mochitest/mixedcontent/alloworigin.sjs b/security/manager/ssl/tests/mochitest/mixedcontent/alloworigin.sjs index 8e9afb098c2d..74a02d7a3834 100644 --- a/security/manager/ssl/tests/mochitest/mixedcontent/alloworigin.sjs +++ b/security/manager/ssl/tests/mochitest/mixedcontent/alloworigin.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 200, "OK"); response.setHeader("Access-Control-Allow-Origin", "*"); response.write("hello!"); diff --git a/security/manager/ssl/tests/mochitest/mixedcontent/emptyimage.sjs b/security/manager/ssl/tests/mochitest/mixedcontent/emptyimage.sjs index 5cce2826f878..965e571db340 100644 --- a/security/manager/ssl/tests/mochitest/mixedcontent/emptyimage.sjs +++ b/security/manager/ssl/tests/mochitest/mixedcontent/emptyimage.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 200, "OK"); //response.setHeader("Content-type", "image/gif"); } diff --git a/security/manager/ssl/tests/mochitest/mixedcontent/hugebmp.sjs b/security/manager/ssl/tests/mochitest/mixedcontent/hugebmp.sjs index 20d9dea8299a..b9f1f6390038 100644 --- a/security/manager/ssl/tests/mochitest/mixedcontent/hugebmp.sjs +++ b/security/manager/ssl/tests/mochitest/mixedcontent/hugebmp.sjs @@ -1,13 +1,15 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 200, "OK"); response.setHeader("Content-type", "image/bitmap"); - - let bmpheader = "\x42\x4D\x36\x10\x0E\x00\x00\x00\x00\x00\x36\x00\x00\x00\x28\x00\x00\x00\x80\x02\x00\x00\xE0\x01\x00\x00\x01\x00\x18\x00\x00\x00\x00\x00\x00\x10\x0E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"; - let bmpdatapiece = "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"; + + let bmpheader = + "\x42\x4D\x36\x10\x0E\x00\x00\x00\x00\x00\x36\x00\x00\x00\x28\x00\x00\x00\x80\x02\x00\x00\xE0\x01\x00\x00\x01\x00\x18\x00\x00\x00\x00\x00\x00\x10\x0E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"; + let bmpdatapiece = + "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"; response.bodyOutputStream.write(bmpheader, 54); // Fill 640*480*3 nulls - for (let i = 0; i < (640 * 480 * 3) / 64; ++i) + for (let i = 0; i < (640 * 480 * 3) / 64; ++i) { response.bodyOutputStream.write(bmpdatapiece, 64); + } } diff --git a/security/manager/ssl/tests/mochitest/mixedcontent/iframesecredirect.sjs b/security/manager/ssl/tests/mochitest/mixedcontent/iframesecredirect.sjs index ea93b80b7d58..5409a6a80490 100644 --- a/security/manager/ssl/tests/mochitest/mixedcontent/iframesecredirect.sjs +++ b/security/manager/ssl/tests/mochitest/mixedcontent/iframesecredirect.sjs @@ -1,5 +1,7 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 307, "Moved temporarly"); - response.setHeader("Location", "https://example.com/tests/security/manager/ssl/tests/mochitest/mixedcontent/iframe.html"); + response.setHeader( + "Location", + "https://example.com/tests/security/manager/ssl/tests/mochitest/mixedcontent/iframe.html" + ); } diff --git a/security/manager/ssl/tests/mochitest/mixedcontent/iframeunsecredirect.sjs b/security/manager/ssl/tests/mochitest/mixedcontent/iframeunsecredirect.sjs index 937e29954f3f..572380f0a105 100644 --- a/security/manager/ssl/tests/mochitest/mixedcontent/iframeunsecredirect.sjs +++ b/security/manager/ssl/tests/mochitest/mixedcontent/iframeunsecredirect.sjs @@ -1,5 +1,7 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 307, "Moved temporarly"); - response.setHeader("Location", "http://example.com/tests/security/manager/ssl/tests/mochitest/mixedcontent/iframe.html"); + response.setHeader( + "Location", + "http://example.com/tests/security/manager/ssl/tests/mochitest/mixedcontent/iframe.html" + ); } diff --git a/security/manager/ssl/tests/mochitest/mixedcontent/imgsecredirect.sjs b/security/manager/ssl/tests/mochitest/mixedcontent/imgsecredirect.sjs index 7af6116e1018..2bf1db7a9d0f 100644 --- a/security/manager/ssl/tests/mochitest/mixedcontent/imgsecredirect.sjs +++ b/security/manager/ssl/tests/mochitest/mixedcontent/imgsecredirect.sjs @@ -1,5 +1,7 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 307, "Moved temporarly"); - response.setHeader("Location", "https://example.com/tests/security/manager/ssl/tests/mochitest/mixedcontent/moonsurface.jpg"); + response.setHeader( + "Location", + "https://example.com/tests/security/manager/ssl/tests/mochitest/mixedcontent/moonsurface.jpg" + ); } diff --git a/security/manager/ssl/tests/mochitest/mixedcontent/imgunsecredirect.sjs b/security/manager/ssl/tests/mochitest/mixedcontent/imgunsecredirect.sjs index a8eb26642ae8..7aaa9840c9e7 100644 --- a/security/manager/ssl/tests/mochitest/mixedcontent/imgunsecredirect.sjs +++ b/security/manager/ssl/tests/mochitest/mixedcontent/imgunsecredirect.sjs @@ -1,5 +1,7 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 307, "Moved temporarly"); - response.setHeader("Location", "http://example.com/tests/security/manager/ssl/tests/mochitest/mixedcontent/moonsurface.jpg"); + response.setHeader( + "Location", + "http://example.com/tests/security/manager/ssl/tests/mochitest/mixedcontent/moonsurface.jpg" + ); } diff --git a/security/manager/ssl/tests/mochitest/mixedcontent/nocontent.sjs b/security/manager/ssl/tests/mochitest/mixedcontent/nocontent.sjs index 53fa4bc0c2f4..22b1d300e372 100644 --- a/security/manager/ssl/tests/mochitest/mixedcontent/nocontent.sjs +++ b/security/manager/ssl/tests/mochitest/mixedcontent/nocontent.sjs @@ -1,4 +1,3 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 204, "No Content"); } diff --git a/security/manager/ssl/tests/mochitest/mixedcontent/redirecttoemptyimage.sjs b/security/manager/ssl/tests/mochitest/mixedcontent/redirecttoemptyimage.sjs index 4d85e1658171..41a6aa86422e 100644 --- a/security/manager/ssl/tests/mochitest/mixedcontent/redirecttoemptyimage.sjs +++ b/security/manager/ssl/tests/mochitest/mixedcontent/redirecttoemptyimage.sjs @@ -1,5 +1,7 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 307, "Moved temporarly"); - response.setHeader("Location", "http://example.com/tests/security/manager/ssl/tests/mochitest/mixedcontent/emptyimage.sjs"); + response.setHeader( + "Location", + "http://example.com/tests/security/manager/ssl/tests/mochitest/mixedcontent/emptyimage.sjs" + ); } diff --git a/services/fxaccounts/tests/mochitest/file_invalidEmailCase.sjs b/services/fxaccounts/tests/mochitest/file_invalidEmailCase.sjs index 9d97ac70c577..2396feef4a3c 100644 --- a/services/fxaccounts/tests/mochitest/file_invalidEmailCase.sjs +++ b/services/fxaccounts/tests/mochitest/file_invalidEmailCase.sjs @@ -21,9 +21,11 @@ */ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); const goodEmail = "Greta.Garbo@gmail.COM"; const badEmail = "greta.garbo@gmail.com"; @@ -77,4 +79,3 @@ function handleRequest(request, response) { messageStr = JSON.stringify(message); response.bodyOutputStream.write(messageStr, messageStr.length); } - diff --git a/testing/mochitest/dynamic/getMyDirectory.sjs b/testing/mochitest/dynamic/getMyDirectory.sjs index 1bf6d660b037..a51564b4d970 100644 --- a/testing/mochitest/dynamic/getMyDirectory.sjs +++ b/testing/mochitest/dynamic/getMyDirectory.sjs @@ -1,8 +1,6 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { var file; - getObjectState("SERVER_ROOT", function(serverRoot) - { + getObjectState("SERVER_ROOT", function(serverRoot) { var ref = request.getHeader("Referer").split("?")[0]; // 8 is "https://".length which is the longest string before the host. var pathStart = ref.indexOf("/", 8) + 1; @@ -11,5 +9,5 @@ function handleRequest(request, response) }); response.setHeader("Content-Type", "text/plain", false); - response.write(file.path.substr(0, file.path.length-1)); + response.write(file.path.substr(0, file.path.length - 1)); } diff --git a/toolkit/components/alerts/test/image_server.sjs b/toolkit/components/alerts/test/image_server.sjs index db14148cbbef..6ff7ecb645e1 100644 --- a/toolkit/components/alerts/test/image_server.sjs +++ b/toolkit/components/alerts/test/image_server.sjs @@ -1,15 +1,20 @@ const CC = Components.Constructor; -Cu.import("resource://gre/modules/Timer.jsm"); +let { setTimeout } = ChromeUtils.import("resource://gre/modules/Timer.jsm"); -const LocalFile = CC("@mozilla.org/file/local;1", "nsIFile", - "initWithPath"); +const LocalFile = CC("@mozilla.org/file/local;1", "nsIFile", "initWithPath"); -const FileInputStream = CC("@mozilla.org/network/file-input-stream;1", - "nsIFileInputStream", "init"); +const FileInputStream = CC( + "@mozilla.org/network/file-input-stream;1", + "nsIFileInputStream", + "init" +); -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); function handleRequest(request, response) { let params = parseQueryString(request.queryString); @@ -21,9 +26,12 @@ function handleRequest(request, response) { // loaded anonymously. if (params.has("c")) { let expectedValue = parseInt(params.get("c"), 10); - let actualValue = !request.hasHeader("Cookie") ? 0 : - parseInt(request.getHeader("Cookie") - .replace(/^counter=(\d+)/, "$1"), 10); + let actualValue = !request.hasHeader("Cookie") + ? 0 + : parseInt( + request.getHeader("Cookie").replace(/^counter=(\d+)/, "$1"), + 10 + ); if (actualValue != expectedValue) { response.setStatusLine(request.httpVersion, 400, "Wrong counter value"); return; @@ -68,8 +76,8 @@ function writeFile(name, response) { file.append(name); let mimeType = Cc["@mozilla.org/uriloader/external-helper-app-service;1"] - .getService(Ci.nsIMIMEService) - .getTypeFromFile(file); + .getService(Ci.nsIMIMEService) + .getTypeFromFile(file); let fileStream = new FileInputStream(file, 1, 0, false); let binaryStream = new BinaryInputStream(fileStream); diff --git a/toolkit/components/antitracking/test/browser/browser_staticPartition_CORS_preflight.sjs b/toolkit/components/antitracking/test/browser/browser_staticPartition_CORS_preflight.sjs index f0665ea43c0d..28117ffa0899 100644 --- a/toolkit/components/antitracking/test/browser/browser_staticPartition_CORS_preflight.sjs +++ b/toolkit/components/antitracking/test/browser/browser_staticPartition_CORS_preflight.sjs @@ -2,7 +2,7 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this file, * You can obtain one at http://mozilla.org/MPL/2.0/. */ -'use strict'; +"use strict"; Components.utils.importGlobalProperties(["URLSearchParams"]); @@ -18,7 +18,8 @@ function handleRequest(request, response) { response.setHeader( "Access-Control-Allow-Methods", request.getHeader("Access-Control-Request-Method"), - false); + false + ); response.setHeader("Access-Control-Max-Age", "20", false); setState(token, token); diff --git a/toolkit/components/antitracking/test/browser/browser_staticPartition_HSTS.sjs b/toolkit/components/antitracking/test/browser/browser_staticPartition_HSTS.sjs index 97cb6c54848e..185c7c7e0589 100644 --- a/toolkit/components/antitracking/test/browser/browser_staticPartition_HSTS.sjs +++ b/toolkit/components/antitracking/test/browser/browser_staticPartition_HSTS.sjs @@ -4,14 +4,18 @@ const IMG_BYTES = atob( "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAA" + - "DUlEQVQImWNgY2P7DwABOgESJhRQtgAAAABJRU5ErkJggg=="); + "DUlEQVQImWNgY2P7DwABOgESJhRQtgAAAABJRU5ErkJggg==" +); const PAGE = "

HSTS page

"; function handleRequest(request, response) { response.setStatusLine(request.httpVersion, "200", "OK"); if (request.queryString == "includeSub") { - response.setHeader("Strict-Transport-Security", "max-age=60; includeSubDomains"); + response.setHeader( + "Strict-Transport-Security", + "max-age=60; includeSubDomains" + ); } else { response.setHeader("Strict-Transport-Security", "max-age=60"); } diff --git a/toolkit/components/antitracking/test/browser/file_saveAsImage.sjs b/toolkit/components/antitracking/test/browser/file_saveAsImage.sjs index ffa608411a1f..2afb7d435f0e 100644 --- a/toolkit/components/antitracking/test/browser/file_saveAsImage.sjs +++ b/toolkit/components/antitracking/test/browser/file_saveAsImage.sjs @@ -1,7 +1,8 @@ // small red image const IMAGE = atob( "iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12" + - "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg=="); + "P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" +); function handleRequest(aRequest, aResponse) { aResponse.setStatusLine(aRequest.httpVersion, 200); @@ -15,5 +16,5 @@ function handleRequest(aRequest, aResponse) { aResponse.setHeader("Content-Type", "image/png", false); aResponse.write(IMAGE); - } + } } diff --git a/toolkit/components/antitracking/test/browser/file_saveAsVideo.sjs b/toolkit/components/antitracking/test/browser/file_saveAsVideo.sjs index 8c0696f966fb..10bf246f625e 100644 --- a/toolkit/components/antitracking/test/browser/file_saveAsVideo.sjs +++ b/toolkit/components/antitracking/test/browser/file_saveAsVideo.sjs @@ -1,20 +1,21 @@ const VIDEO = atob( "GkXfo49CgoR3ZWJtQoeBAkKFgQIYU4BnI0nOEU2bdKpNu" + - "4tTq4QVSalmU6yBL027i1OrhBZUrmtTrIGmTbuLU6uEHF" + - "O7a1OsgdEVSalm8k2ApWxpYmVibWwyIHYwLjkuNyArIGx" + - "pYm1hdHJvc2thMiB2MC45LjhXQZ5ta2NsZWFuIDAuMi41" + - "IGZyb20gTGF2ZjUyLjU3LjFzpJC/CoyJjSbckmOytS9Se" + - "y3cRImIQK9AAAAAAABEYYgEHiZDUAHwABZUrmumrqTXgQ" + - "FzxYEBnIEAIrWcg3VuZIaFVl9WUDiDgQHgh7CCAUC6gfA" + - "cU7trzbuMs4EAt4f3gQHxggEju42zggMgt4f3gQHxgrZd" + - "u46zggZAt4j3gQHxgwFba7uOs4IJYLeI94EB8YMCAR+7j" + - "rOCDIC3iPeBAfGDAqggH0O2dSBibueBAKNbiYEAAIDQdw" + - "CdASpAAfAAAAcIhYWIhYSIAIIb347n/c/Z0BPBfjv7f+I" + - "/6df275Wbh/XPuZ+qv9k58KrftA9tvkP+efiN/ovmd/if" + - "9L/ef2z+Xv+H/rv+39xD/N/zL+nfid71363e9X+pf6/+q" + - "+x7+W/0P/H/233Zf6n/Wv696APuDf0b+YdcL+2HsUfxr+" + - "gfP/91P+F/yH9K+H79Z/7j/Xvhj/VjVsvwHXt/n/qz9U/" + - "w749+c/g="); + "4tTq4QVSalmU6yBL027i1OrhBZUrmtTrIGmTbuLU6uEHF" + + "O7a1OsgdEVSalm8k2ApWxpYmVibWwyIHYwLjkuNyArIGx" + + "pYm1hdHJvc2thMiB2MC45LjhXQZ5ta2NsZWFuIDAuMi41" + + "IGZyb20gTGF2ZjUyLjU3LjFzpJC/CoyJjSbckmOytS9Se" + + "y3cRImIQK9AAAAAAABEYYgEHiZDUAHwABZUrmumrqTXgQ" + + "FzxYEBnIEAIrWcg3VuZIaFVl9WUDiDgQHgh7CCAUC6gfA" + + "cU7trzbuMs4EAt4f3gQHxggEju42zggMgt4f3gQHxgrZd" + + "u46zggZAt4j3gQHxgwFba7uOs4IJYLeI94EB8YMCAR+7j" + + "rOCDIC3iPeBAfGDAqggH0O2dSBibueBAKNbiYEAAIDQdw" + + "CdASpAAfAAAAcIhYWIhYSIAIIb347n/c/Z0BPBfjv7f+I" + + "/6df275Wbh/XPuZ+qv9k58KrftA9tvkP+efiN/ovmd/if" + + "9L/ef2z+Xv+H/rv+39xD/N/zL+nfid71363e9X+pf6/+q" + + "+x7+W/0P/H/233Zf6n/Wv696APuDf0b+YdcL+2HsUfxr+" + + "gfP/91P+F/yH9K+H79Z/7j/Xvhj/VjVsvwHXt/n/qz9U/" + + "w749+c/g=" +); function handleRequest(aRequest, aResponse) { aResponse.setStatusLine(aRequest.httpVersion, 200); @@ -30,7 +31,8 @@ function handleRequest(aRequest, aResponse) { aResponse.setHeader( "Cache-Control", "public, max-age=604800, immutable", - false); + false + ); aResponse.write(VIDEO); - } + } } diff --git a/toolkit/components/antitracking/test/browser/image.sjs b/toolkit/components/antitracking/test/browser/image.sjs index ad00264bfab0..145ff1f0a4e4 100644 --- a/toolkit/components/antitracking/test/browser/image.sjs +++ b/toolkit/components/antitracking/test/browser/image.sjs @@ -1,7 +1,9 @@ // A 1x1 PNG image. // Source: https://commons.wikimedia.org/wiki/File:1x1.png (Public Domain) -const IMAGE = atob("iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAA" + - "ACnej3aAAAAAXRSTlMAQObYZgAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII="); +const IMAGE = atob( + "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAA" + + "ACnej3aAAAAAXRSTlMAQObYZgAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=" +); function handleRequest(aRequest, aResponse) { aResponse.setStatusLine(aRequest.httpVersion, 200); @@ -16,5 +18,5 @@ function handleRequest(aRequest, aResponse) { aResponse.setHeader("Set-Cookie", "foopy=1"); aResponse.setHeader("Content-Type", "image/png", false); aResponse.write(IMAGE); - } + } } diff --git a/toolkit/components/antitracking/test/browser/redirect.sjs b/toolkit/components/antitracking/test/browser/redirect.sjs index 268ba49e849c..4645aedca58b 100644 --- a/toolkit/components/antitracking/test/browser/redirect.sjs +++ b/toolkit/components/antitracking/test/browser/redirect.sjs @@ -2,7 +2,7 @@ function handleRequest(aRequest, aResponse) { aResponse.setStatusLine(aRequest.httpVersion, 302); let query = aRequest.queryString; - let locations = query.split("|"); + let locations = query.split("|"); let nextLocation = locations.shift(); if (locations.length) { nextLocation += "?" + locations.join("|"); diff --git a/toolkit/components/antitracking/test/browser/referrer.sjs b/toolkit/components/antitracking/test/browser/referrer.sjs index b511e232b2ee..11a66a84ddbe 100644 --- a/toolkit/components/antitracking/test/browser/referrer.sjs +++ b/toolkit/components/antitracking/test/browser/referrer.sjs @@ -1,20 +1,26 @@ // A 1x1 PNG image. // Source: https://commons.wikimedia.org/wiki/File:1x1.png (Public Domain) -const IMAGE = atob("iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAA" + - "ACnej3aAAAAAXRSTlMAQObYZgAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII="); +const IMAGE = atob( + "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAA" + + "ACnej3aAAAAAXRSTlMAQObYZgAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=" +); -const IFRAME = "\n" + - ""; +const IFRAME = + "\n" + + ""; function handleRequest(aRequest, aResponse) { aResponse.setStatusLine(aRequest.httpVersion, 200); - let key = aRequest.queryString.includes("what=script") ? "script" : - (aRequest.queryString.includes("what=image") ? "image" : "iframe"); + let key = aRequest.queryString.includes("what=script") + ? "script" + : aRequest.queryString.includes("what=image") + ? "image" + : "iframe"; if (aRequest.queryString.includes("result")) { aResponse.write(getState(key)); @@ -22,8 +28,8 @@ function handleRequest(aRequest, aResponse) { return; } - if (aRequest.hasHeader('Referer')) { - let referrer = aRequest.getHeader('Referer'); + if (aRequest.hasHeader("Referer")) { + let referrer = aRequest.getHeader("Referer"); setState(key, referrer); } diff --git a/toolkit/components/antitracking/test/browser/server.sjs b/toolkit/components/antitracking/test/browser/server.sjs index 6368c47640f1..4d1b2ef01ae2 100644 --- a/toolkit/components/antitracking/test/browser/server.sjs +++ b/toolkit/components/antitracking/test/browser/server.sjs @@ -1,20 +1,20 @@ function handleRequest(aRequest, aResponse) { - if (aRequest.queryString.includes("redirect")) { - aResponse.setStatusLine(aRequest.httpVersion, 302); - if (aRequest.queryString.includes("redirect-checkonly")) { - aResponse.setHeader("Location", "server.sjs?checkonly"); - } else { - aResponse.setHeader("Location", "server.sjs"); - } - return; - } - aResponse.setStatusLine(aRequest.httpVersion, 200); - if (aRequest.hasHeader('Cookie')) { - aResponse.write("cookie-present"); - } else { - if (!aRequest.queryString.includes("checkonly")) { - aResponse.setHeader("Set-Cookie", "foopy=1"); - } - aResponse.write("cookie-not-present"); - } + if (aRequest.queryString.includes("redirect")) { + aResponse.setStatusLine(aRequest.httpVersion, 302); + if (aRequest.queryString.includes("redirect-checkonly")) { + aResponse.setHeader("Location", "server.sjs?checkonly"); + } else { + aResponse.setHeader("Location", "server.sjs"); + } + return; + } + aResponse.setStatusLine(aRequest.httpVersion, 200); + if (aRequest.hasHeader("Cookie")) { + aResponse.write("cookie-present"); + } else { + if (!aRequest.queryString.includes("checkonly")) { + aResponse.setHeader("Set-Cookie", "foopy=1"); + } + aResponse.write("cookie-not-present"); + } } diff --git a/toolkit/components/antitracking/test/browser/subResources.sjs b/toolkit/components/antitracking/test/browser/subResources.sjs index de50d2ae260b..f40d5cac9769 100644 --- a/toolkit/components/antitracking/test/browser/subResources.sjs +++ b/toolkit/components/antitracking/test/browser/subResources.sjs @@ -1,7 +1,9 @@ // A 1x1 PNG image. // Source: https://commons.wikimedia.org/wiki/File:1x1.png (Public Domain) -const IMAGE = atob("iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAA" + - "ACnej3aAAAAAXRSTlMAQObYZgAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII="); +const IMAGE = atob( + "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAA" + + "ACnej3aAAAAAXRSTlMAQObYZgAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=" +); function handleRequest(aRequest, aResponse) { aResponse.setStatusLine(aRequest.httpVersion, 200); @@ -14,7 +16,7 @@ function handleRequest(aRequest, aResponse) { return; } - if (aRequest.hasHeader('Cookie')) { + if (aRequest.hasHeader("Cookie")) { let hints = parseInt(getState(key) || 0) + 1; setState(key, hints.toString()); } diff --git a/toolkit/components/cleardata/tests/browser/file_cors_preflight.sjs b/toolkit/components/cleardata/tests/browser/file_cors_preflight.sjs index f0665ea43c0d..28117ffa0899 100644 --- a/toolkit/components/cleardata/tests/browser/file_cors_preflight.sjs +++ b/toolkit/components/cleardata/tests/browser/file_cors_preflight.sjs @@ -2,7 +2,7 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this file, * You can obtain one at http://mozilla.org/MPL/2.0/. */ -'use strict'; +"use strict"; Components.utils.importGlobalProperties(["URLSearchParams"]); @@ -18,7 +18,8 @@ function handleRequest(request, response) { response.setHeader( "Access-Control-Allow-Methods", request.getHeader("Access-Control-Request-Method"), - false); + false + ); response.setHeader("Access-Control-Max-Age", "20", false); setState(token, token); diff --git a/toolkit/components/extensions/test/mochitest/redirect_auto.sjs b/toolkit/components/extensions/test/mochitest/redirect_auto.sjs index 27d249f022a9..9c340b386b98 100644 --- a/toolkit/components/extensions/test/mochitest/redirect_auto.sjs +++ b/toolkit/components/extensions/test/mochitest/redirect_auto.sjs @@ -14,7 +14,9 @@ function handleRequest(request, response) { } else { response.setStatusLine(request.httpVersion, 302, "Moved Temporarily"); } - let url = new URL(params.get("redirect_uri") || params.get("default_redirect")); + let url = new URL( + params.get("redirect_uri") || params.get("default_redirect") + ); url.searchParams.set("access_token", "here ya go"); response.setHeader("Location", url.href); } diff --git a/toolkit/components/extensions/test/mochitest/return_headers.sjs b/toolkit/components/extensions/test/mochitest/return_headers.sjs index 54e2e5fb4d66..46beab818599 100644 --- a/toolkit/components/extensions/test/mochitest/return_headers.sjs +++ b/toolkit/components/extensions/test/mochitest/return_headers.sjs @@ -17,4 +17,3 @@ function handleRequest(request, response) { response.write(JSON.stringify(headers)); } - diff --git a/toolkit/components/extensions/test/mochitest/slow_response.sjs b/toolkit/components/extensions/test/mochitest/slow_response.sjs index 290d6ca1dea5..07b01dabf85d 100644 --- a/toolkit/components/extensions/test/mochitest/slow_response.sjs +++ b/toolkit/components/extensions/test/mochitest/slow_response.sjs @@ -4,11 +4,17 @@ /* eslint-disable no-unused-vars */ -Cu.import("resource://gre/modules/AppConstants.jsm"); +let { AppConstants } = ChromeUtils.import( + "resource://gre/modules/AppConstants.jsm" +); const DELAY = AppConstants.DEBUG ? 4000 : 800; -let nsTimer = Components.Constructor("@mozilla.org/timer;1", "nsITimer", "initWithCallback"); +let nsTimer = Components.Constructor( + "@mozilla.org/timer;1", + "nsITimer", + "initWithCallback" +); let timer; function delay() { @@ -52,4 +58,3 @@ async function handleRequest(request, response) { response.finish(); } - diff --git a/toolkit/components/httpsonlyerror/tests/browser/file_errorpage_timeout_server.sjs b/toolkit/components/httpsonlyerror/tests/browser/file_errorpage_timeout_server.sjs index 0f22b6e6df9e..f77d5351b591 100644 --- a/toolkit/components/httpsonlyerror/tests/browser/file_errorpage_timeout_server.sjs +++ b/toolkit/components/httpsonlyerror/tests/browser/file_errorpage_timeout_server.sjs @@ -1,7 +1,6 @@ // Custom *.sjs file specifically for the needs of Bug 1657348 -function handleRequest(request, response) -{ +function handleRequest(request, response) { // avoid confusing cache behaviors response.setHeader("Cache-Control", "no-cache", false); diff --git a/toolkit/components/normandy/test/unit/query_server.sjs b/toolkit/components/normandy/test/unit/query_server.sjs index 97d47ee3093e..dd00d74bf6dd 100644 --- a/toolkit/components/normandy/test/unit/query_server.sjs +++ b/toolkit/components/normandy/test/unit/query_server.sjs @@ -1,5 +1,9 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", "nsIBinaryInputStream", "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); // Returns a JSON string containing the query string arguments and the // request body parsed as JSON. @@ -20,7 +24,7 @@ function handleRequest(request, response) { const body = String.fromCharCode.apply(null, bytes); // Write response body - const data = {queryString: {}, body: body ? JSON.parse(body) : {}}; + const data = { queryString: {}, body: body ? JSON.parse(body) : {} }; const params = request.queryString.split("&"); for (const param of params) { const [key, value] = param.split("="); diff --git a/toolkit/components/passwordmgr/test/authenticate.sjs b/toolkit/components/passwordmgr/test/authenticate.sjs index 42edc32203cf..a3388d43f29d 100644 --- a/toolkit/components/passwordmgr/test/authenticate.sjs +++ b/toolkit/components/passwordmgr/test/authenticate.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { try { reallyHandleRequest(request, response); } catch (e) { @@ -8,152 +7,200 @@ function handleRequest(request, response) } } - function reallyHandleRequest(request, response) { - var match; - var requestAuth = true, requestProxyAuth = true; + let match; + let requestAuth = true, + requestProxyAuth = true; // Allow the caller to drive how authentication is processed via the query. // Eg, http://localhost:8888/authenticate.sjs?user=foo&realm=bar // The extra ? allows the user/pass/realm checks to succeed if the name is // at the beginning of the query string. - var query = "?" + request.queryString; + let query = "?" + request.queryString; - var expected_user = "", expected_pass = "", realm = "mochitest"; - var proxy_expected_user = "", proxy_expected_pass = "", proxy_realm = "mochi-proxy"; - var huge = false, plugin = false, anonymous = false, formauth = false; - var authHeaderCount = 1; + let expected_user = "", + expected_pass = "", + realm = "mochitest"; + let proxy_expected_user = "", + proxy_expected_pass = "", + proxy_realm = "mochi-proxy"; + let huge = false, + plugin = false, + anonymous = false, + formauth = false; + let authHeaderCount = 1; // user=xxx match = /[^_]user=([^&]*)/.exec(query); - if (match) + if (match) { expected_user = match[1]; + } // pass=xxx match = /[^_]pass=([^&]*)/.exec(query); - if (match) + if (match) { expected_pass = match[1]; + } // realm=xxx match = /[^_]realm=([^&]*)/.exec(query); - if (match) + if (match) { realm = match[1]; + } // proxy_user=xxx match = /proxy_user=([^&]*)/.exec(query); - if (match) + if (match) { proxy_expected_user = match[1]; + } // proxy_pass=xxx match = /proxy_pass=([^&]*)/.exec(query); - if (match) + if (match) { proxy_expected_pass = match[1]; + } // proxy_realm=xxx match = /proxy_realm=([^&]*)/.exec(query); - if (match) + if (match) { proxy_realm = match[1]; + } // huge=1 match = /huge=1/.exec(query); - if (match) + if (match) { huge = true; + } // plugin=1 match = /plugin=1/.exec(query); - if (match) + if (match) { plugin = true; + } // multiple=1 match = /multiple=([^&]*)/.exec(query); - if (match) - authHeaderCount = match[1]+0; + if (match) { + authHeaderCount = match[1] + 0; + } // anonymous=1 match = /anonymous=1/.exec(query); - if (match) + if (match) { anonymous = true; + } // formauth=1 match = /formauth=1/.exec(query); - if (match) + if (match) { formauth = true; + } // Look for an authentication header, if any, in the request. // // EG: Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ== - // + // // This test only supports Basic auth. The value sent by the client is // "username:password", obscured with base64 encoding. - var actual_user = "", actual_pass = "", authHeader, authPresent = false; + let actual_user = "", + actual_pass = "", + authHeader, + authPresent = false; if (request.hasHeader("Authorization")) { authPresent = true; authHeader = request.getHeader("Authorization"); match = /Basic (.+)/.exec(authHeader); - if (match.length != 2) - throw new Error("Couldn't parse auth header: " + authHeader); + if (match.length != 2) { + throw new Error("Couldn't parse auth header: " + authHeader); + } var userpass = base64ToString(match[1]); // no atob() :-( match = /(.*):(.*)/.exec(userpass); - if (match.length != 3) - throw new Error("Couldn't decode auth header: " + userpass); + if (match.length != 3) { + throw new Error("Couldn't decode auth header: " + userpass); + } actual_user = match[1]; actual_pass = match[2]; - } + } - var proxy_actual_user = "", proxy_actual_pass = ""; + let proxy_actual_user = "", + proxy_actual_pass = ""; if (request.hasHeader("Proxy-Authorization")) { authHeader = request.getHeader("Proxy-Authorization"); match = /Basic (.+)/.exec(authHeader); - if (match.length != 2) - throw new Error("Couldn't parse auth header: " + authHeader); + if (match.length != 2) { + throw new Error("Couldn't parse auth header: " + authHeader); + } var userpass = base64ToString(match[1]); // no atob() :-( match = /(.*):(.*)/.exec(userpass); - if (match.length != 3) - throw new Error("Couldn't decode auth header: " + userpass); + if (match.length != 3) { + throw new Error("Couldn't decode auth header: " + userpass); + } proxy_actual_user = match[1]; proxy_actual_pass = match[2]; } // Don't request authentication if the credentials we got were what we // expected. - if (expected_user == actual_user && - expected_pass == actual_pass) { + if (expected_user == actual_user && expected_pass == actual_pass) { requestAuth = false; } - if (proxy_expected_user == proxy_actual_user && - proxy_expected_pass == proxy_actual_pass) { + if ( + proxy_expected_user == proxy_actual_user && + proxy_expected_pass == proxy_actual_pass + ) { requestProxyAuth = false; } if (anonymous) { if (authPresent) { - response.setStatusLine("1.0", 400, "Unexpected authorization header found"); + response.setStatusLine( + "1.0", + 400, + "Unexpected authorization header found" + ); } else { response.setStatusLine("1.0", 200, "Authorization header not found"); } - } else { - if (requestProxyAuth) { - response.setStatusLine("1.0", 407, "Proxy authentication required"); - for (i = 0; i < authHeaderCount; ++i) - response.setHeader("Proxy-Authenticate", "basic realm=\"" + proxy_realm + "\"", true); - } else if (requestAuth) { - if (formauth && authPresent) - response.setStatusLine("1.0", 403, "Form authentication required"); - else - response.setStatusLine("1.0", 401, "Authentication required"); - for (i = 0; i < authHeaderCount; ++i) - response.setHeader("WWW-Authenticate", "basic realm=\"" + realm + "\"", true); - } else { - response.setStatusLine("1.0", 200, "OK"); + } else if (requestProxyAuth) { + response.setStatusLine("1.0", 407, "Proxy authentication required"); + for (i = 0; i < authHeaderCount; ++i) { + response.setHeader( + "Proxy-Authenticate", + 'basic realm="' + proxy_realm + '"', + true + ); } + } else if (requestAuth) { + if (formauth && authPresent) { + response.setStatusLine("1.0", 403, "Form authentication required"); + } else { + response.setStatusLine("1.0", 401, "Authentication required"); + } + for (i = 0; i < authHeaderCount; ++i) { + response.setHeader( + "WWW-Authenticate", + 'basic realm="' + realm + '"', + true + ); + } + } else { + response.setStatusLine("1.0", 200, "OK"); } response.setHeader("Content-Type", "application/xhtml+xml", false); response.write(""); - response.write("

Login: " + (requestAuth ? "FAIL" : "PASS") + "

\n"); - response.write("

Proxy: " + (requestProxyAuth ? "FAIL" : "PASS") + "

\n"); + response.write( + "

Login: " + + (requestAuth ? "FAIL" : "PASS") + + "

\n" + ); + response.write( + "

Proxy: " + + (requestProxyAuth ? "FAIL" : "PASS") + + "

\n" + ); response.write("

Auth: " + authHeader + "

\n"); response.write("

User: " + actual_user + "

\n"); response.write("

Pass: " + actual_pass + "

\n"); @@ -164,23 +211,27 @@ function reallyHandleRequest(request, response) { response.write("123456789\n"); } response.write(""); - response.write("This is a footnote after the huge content fill"); + response.write( + "This is a footnote after the huge content fill" + ); } if (plugin) { - response.write("\n"); + response.write( + "\n" + ); } response.write(""); } - // base64 decoder // // Yoinked from extensions/xml-rpc/src/nsXmlRpcClient.js because btoa() // doesn't seem to exist. :-( /* Convert Base64 data to a string */ +/* eslint-disable prettier/prettier */ const toBinaryTable = [ -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, @@ -191,38 +242,43 @@ const toBinaryTable = [ -1,26,27,28, 29,30,31,32, 33,34,35,36, 37,38,39,40, 41,42,43,44, 45,46,47,48, 49,50,51,-1, -1,-1,-1,-1 ]; -const base64Pad = '='; + +/* eslint-enable prettier/prettier */ +const base64Pad = "="; function base64ToString(data) { + let result = ""; + let leftbits = 0; // number of bits decoded, but yet to be appended + let leftdata = 0; // bits decoded, but yet to be appended - var result = ''; - var leftbits = 0; // number of bits decoded, but yet to be appended - var leftdata = 0; // bits decoded, but yet to be appended - - // Convert one by one. - for (var i = 0; i < data.length; i++) { - var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; - var padding = (data[i] == base64Pad); - // Skip illegal characters and whitespace - if (c == -1) continue; - - // Collect data into leftdata, update bitcount - leftdata = (leftdata << 6) | c; - leftbits += 6; - - // If we have 8 or more bits, append 8 bits to the result - if (leftbits >= 8) { - leftbits -= 8; - // Append if not padding. - if (!padding) - result += String.fromCharCode((leftdata >> leftbits) & 0xff); - leftdata &= (1 << leftbits) - 1; - } + // Convert one by one. + for (let i = 0; i < data.length; i++) { + let c = toBinaryTable[data.charCodeAt(i) & 0x7f]; + let padding = data[i] == base64Pad; + // Skip illegal characters and whitespace + if (c == -1) { + continue; } - // If there are any bits left, the base64 string was corrupted - if (leftbits) - throw Components.Exception('Corrupted base64 string'); + // Collect data into leftdata, update bitcount + leftdata = (leftdata << 6) | c; + leftbits += 6; - return result; + // If we have 8 or more bits, append 8 bits to the result + if (leftbits >= 8) { + leftbits -= 8; + // Append if not padding. + if (!padding) { + result += String.fromCharCode((leftdata >> leftbits) & 0xff); + } + leftdata &= (1 << leftbits) - 1; + } + } + + // If there are any bits left, the base64 string was corrupted + if (leftbits) { + throw Components.Exception("Corrupted base64 string"); + } + + return result; } diff --git a/toolkit/components/passwordmgr/test/browser/authenticate.sjs b/toolkit/components/passwordmgr/test/browser/authenticate.sjs index f70cd9f5932e..316489843800 100644 --- a/toolkit/components/passwordmgr/test/browser/authenticate.sjs +++ b/toolkit/components/passwordmgr/test/browser/authenticate.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { var match; var requestAuth = true; @@ -9,23 +8,27 @@ function handleRequest(request, response) // at the beginning of the query string. var query = "?" + request.queryString; - var expected_user = "test", expected_pass = "testpass", realm = "mochitest"; + var expected_user = "test", + expected_pass = "testpass", + realm = "mochitest"; // user=xxx match = /[^_]user=([^&]*)/.exec(query); - if (match) + if (match) { expected_user = match[1]; + } // pass=xxx match = /[^_]pass=([^&]*)/.exec(query); - if (match) + if (match) { expected_pass = match[1]; + } // realm=xxx match = /[^_]realm=([^&]*)/.exec(query); - if (match) + if (match) { realm = match[1]; - + } // Look for an authentication header, if any, in the request. // @@ -34,51 +37,59 @@ function handleRequest(request, response) // This test only supports Basic auth. The value sent by the client is // "username:password", obscured with base64 encoding. - var actual_user = "", actual_pass = "", authHeader, authPresent = false; + var actual_user = "", + actual_pass = "", + authHeader, + authPresent = false; if (request.hasHeader("Authorization")) { authPresent = true; authHeader = request.getHeader("Authorization"); match = /Basic (.+)/.exec(authHeader); - if (match.length != 2) - throw new Error("Couldn't parse auth header: " + authHeader); + if (match.length != 2) { + throw new Error("Couldn't parse auth header: " + authHeader); + } var userpass = base64ToString(match[1]); // no atob() :-( match = /(.*):(.*)/.exec(userpass); - if (match.length != 3) - throw new Error("Couldn't decode auth header: " + userpass); + if (match.length != 3) { + throw new Error("Couldn't decode auth header: " + userpass); + } actual_user = match[1]; actual_pass = match[2]; } // Don't request authentication if the credentials we got were what we // expected. - if (expected_user == actual_user && - expected_pass == actual_pass) { + if (expected_user == actual_user && expected_pass == actual_pass) { requestAuth = false; } if (requestAuth) { response.setStatusLine("1.0", 401, "Authentication required"); - response.setHeader("WWW-Authenticate", "basic realm=\"" + realm + "\"", true); + response.setHeader("WWW-Authenticate", 'basic realm="' + realm + '"', true); } else { response.setStatusLine("1.0", 200, "OK"); } response.setHeader("Content-Type", "application/xhtml+xml", false); response.write(""); - response.write("

Login: " + (requestAuth ? "FAIL" : "PASS") + "

\n"); + response.write( + "

Login: " + + (requestAuth ? "FAIL" : "PASS") + + "

\n" + ); response.write("

Auth: " + authHeader + "

\n"); response.write("

User: " + actual_user + "

\n"); response.write("

Pass: " + actual_pass + "

\n"); response.write(""); } - // base64 decoder // // Yoinked from extensions/xml-rpc/src/nsXmlRpcClient.js because btoa() // doesn't seem to exist. :-( /* Convert Base64 data to a string */ +/* eslint-disable prettier/prettier */ const toBinaryTable = [ -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, @@ -89,38 +100,42 @@ const toBinaryTable = [ -1,26,27,28, 29,30,31,32, 33,34,35,36, 37,38,39,40, 41,42,43,44, 45,46,47,48, 49,50,51,-1, -1,-1,-1,-1 ]; -const base64Pad = '='; +/* eslint-enable prettier/prettier */ +const base64Pad = "="; function base64ToString(data) { + var result = ""; + var leftbits = 0; // number of bits decoded, but yet to be appended + var leftdata = 0; // bits decoded, but yet to be appended - var result = ''; - var leftbits = 0; // number of bits decoded, but yet to be appended - var leftdata = 0; // bits decoded, but yet to be appended - - // Convert one by one. - for (var i = 0; i < data.length; i++) { - var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; - var padding = (data[i] == base64Pad); - // Skip illegal characters and whitespace - if (c == -1) continue; - - // Collect data into leftdata, update bitcount - leftdata = (leftdata << 6) | c; - leftbits += 6; - - // If we have 8 or more bits, append 8 bits to the result - if (leftbits >= 8) { - leftbits -= 8; - // Append if not padding. - if (!padding) - result += String.fromCharCode((leftdata >> leftbits) & 0xff); - leftdata &= (1 << leftbits) - 1; - } + // Convert one by one. + for (var i = 0; i < data.length; i++) { + var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; + var padding = data[i] == base64Pad; + // Skip illegal characters and whitespace + if (c == -1) { + continue; } - // If there are any bits left, the base64 string was corrupted - if (leftbits) - throw Components.Exception('Corrupted base64 string'); + // Collect data into leftdata, update bitcount + leftdata = (leftdata << 6) | c; + leftbits += 6; - return result; + // If we have 8 or more bits, append 8 bits to the result + if (leftbits >= 8) { + leftbits -= 8; + // Append if not padding. + if (!padding) { + result += String.fromCharCode((leftdata >> leftbits) & 0xff); + } + leftdata &= (1 << leftbits) - 1; + } + } + + // If there are any bits left, the base64 string was corrupted + if (leftbits) { + throw Components.Exception("Corrupted base64 string"); + } + + return result; } diff --git a/toolkit/components/passwordmgr/test/browser/file_focus_before_DOMContentLoaded.sjs b/toolkit/components/passwordmgr/test/browser/file_focus_before_DOMContentLoaded.sjs index 2acff6310f50..817f7f2e4ff5 100644 --- a/toolkit/components/passwordmgr/test/browser/file_focus_before_DOMContentLoaded.sjs +++ b/toolkit/components/passwordmgr/test/browser/file_focus_before_DOMContentLoaded.sjs @@ -7,7 +7,7 @@ const DELAY = 2 * 1000; // Delay two seconds before completing the request. /* eslint-disable-next-line mozilla/use-chromeutils-import */ -let {setTimeout} = Cu.import("resource://gre/modules/Timer.jsm", {}); +let { setTimeout } = Cu.import("resource://gre/modules/Timer.jsm", {}); function handleRequest(request, response) { response.processAsync(); diff --git a/toolkit/components/passwordmgr/test/formsubmit.sjs b/toolkit/components/passwordmgr/test/formsubmit.sjs index e2e2669d74d5..3d56e90ab65c 100644 --- a/toolkit/components/passwordmgr/test/formsubmit.sjs +++ b/toolkit/components/passwordmgr/test/formsubmit.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { try { reallyHandleRequest(request, response); } catch (e) { @@ -8,24 +7,26 @@ function handleRequest(request, response) } } - function reallyHandleRequest(request, response) { - var match; - var requestAuth = true; + let match; + let requestAuth = true; // XXX I bet this doesn't work for POST requests. - var query = request.queryString; + let query = request.queryString; - var user = null, pass = null; + let user = null, + pass = null; // user=xxx match = /user(?:name)?=([^&]*)/.exec(query); - if (match) + if (match) { user = match[1]; + } // pass=xxx match = /pass(?:word)?=([^&]*)/.exec(query); - if (match) + if (match) { pass = match[1]; + } response.setStatusLine("1.0", 200, "OK"); diff --git a/toolkit/components/passwordmgr/test/mochitest/auth2/authenticate.sjs b/toolkit/components/passwordmgr/test/mochitest/auth2/authenticate.sjs index d2f650013166..c86eb574da71 100644 --- a/toolkit/components/passwordmgr/test/mochitest/auth2/authenticate.sjs +++ b/toolkit/components/passwordmgr/test/mochitest/auth2/authenticate.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { try { reallyHandleRequest(request, response); } catch (e) { @@ -8,10 +7,10 @@ function handleRequest(request, response) } } - function reallyHandleRequest(request, response) { var match; - var requestAuth = true, requestProxyAuth = true; + var requestAuth = true, + requestProxyAuth = true; // Allow the caller to drive how authentication is processed via the query. // Eg, http://localhost:8888/authenticate.sjs?user=foo&realm=bar @@ -19,133 +18,178 @@ function reallyHandleRequest(request, response) { // at the beginning of the query string. var query = "?" + request.queryString; - var expected_user = "", expected_pass = "", realm = "mochitest"; - var proxy_expected_user = "", proxy_expected_pass = "", proxy_realm = "mochi-proxy"; - var huge = false, plugin = false, anonymous = false; + var expected_user = "", + expected_pass = "", + realm = "mochitest"; + var proxy_expected_user = "", + proxy_expected_pass = "", + proxy_realm = "mochi-proxy"; + var huge = false, + plugin = false, + anonymous = false; var authHeaderCount = 1; // user=xxx match = /[^_]user=([^&]*)/.exec(query); - if (match) + if (match) { expected_user = match[1]; + } // pass=xxx match = /[^_]pass=([^&]*)/.exec(query); - if (match) + if (match) { expected_pass = match[1]; + } // realm=xxx match = /[^_]realm=([^&]*)/.exec(query); - if (match) + if (match) { realm = match[1]; + } // proxy_user=xxx match = /proxy_user=([^&]*)/.exec(query); - if (match) + if (match) { proxy_expected_user = match[1]; + } // proxy_pass=xxx match = /proxy_pass=([^&]*)/.exec(query); - if (match) + if (match) { proxy_expected_pass = match[1]; + } // proxy_realm=xxx match = /proxy_realm=([^&]*)/.exec(query); - if (match) + if (match) { proxy_realm = match[1]; + } // huge=1 match = /huge=1/.exec(query); - if (match) + if (match) { huge = true; + } // plugin=1 match = /plugin=1/.exec(query); - if (match) + if (match) { plugin = true; + } // multiple=1 match = /multiple=([^&]*)/.exec(query); - if (match) - authHeaderCount = match[1]+0; + if (match) { + authHeaderCount = match[1] + 0; + } // anonymous=1 match = /anonymous=1/.exec(query); - if (match) + if (match) { anonymous = true; + } // Look for an authentication header, if any, in the request. // // EG: Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ== - // + // // This test only supports Basic auth. The value sent by the client is // "username:password", obscured with base64 encoding. - var actual_user = "", actual_pass = "", authHeader, authPresent = false; + var actual_user = "", + actual_pass = "", + authHeader, + authPresent = false; if (request.hasHeader("Authorization")) { authPresent = true; authHeader = request.getHeader("Authorization"); match = /Basic (.+)/.exec(authHeader); - if (match.length != 2) - throw new Error("Couldn't parse auth header: " + authHeader); + if (match.length != 2) { + throw new Error("Couldn't parse auth header: " + authHeader); + } var userpass = base64ToString(match[1]); // no atob() :-( match = /(.*):(.*)/.exec(userpass); - if (match.length != 3) - throw new Error("Couldn't decode auth header: " + userpass); + if (match.length != 3) { + throw new Error("Couldn't decode auth header: " + userpass); + } actual_user = match[1]; actual_pass = match[2]; - } + } - var proxy_actual_user = "", proxy_actual_pass = ""; + var proxy_actual_user = "", + proxy_actual_pass = ""; if (request.hasHeader("Proxy-Authorization")) { authHeader = request.getHeader("Proxy-Authorization"); match = /Basic (.+)/.exec(authHeader); - if (match.length != 2) - throw new Error("Couldn't parse auth header: " + authHeader); + if (match.length != 2) { + throw new Error("Couldn't parse auth header: " + authHeader); + } var userpass = base64ToString(match[1]); // no atob() :-( match = /(.*):(.*)/.exec(userpass); - if (match.length != 3) - throw new Error("Couldn't decode auth header: " + userpass); + if (match.length != 3) { + throw new Error("Couldn't decode auth header: " + userpass); + } proxy_actual_user = match[1]; proxy_actual_pass = match[2]; } // Don't request authentication if the credentials we got were what we // expected. - if (expected_user == actual_user && - expected_pass == actual_pass) { + if (expected_user == actual_user && expected_pass == actual_pass) { requestAuth = false; } - if (proxy_expected_user == proxy_actual_user && - proxy_expected_pass == proxy_actual_pass) { + if ( + proxy_expected_user == proxy_actual_user && + proxy_expected_pass == proxy_actual_pass + ) { requestProxyAuth = false; } if (anonymous) { if (authPresent) { - response.setStatusLine("1.0", 400, "Unexpected authorization header found"); + response.setStatusLine( + "1.0", + 400, + "Unexpected authorization header found" + ); } else { response.setStatusLine("1.0", 200, "Authorization header not found"); } - } else { - if (requestProxyAuth) { - response.setStatusLine("1.0", 407, "Proxy authentication required"); - for (i = 0; i < authHeaderCount; ++i) - response.setHeader("Proxy-Authenticate", "basic realm=\"" + proxy_realm + "\"", true); - } else if (requestAuth) { - response.setStatusLine("1.0", 401, "Authentication required"); - for (i = 0; i < authHeaderCount; ++i) - response.setHeader("WWW-Authenticate", "basic realm=\"" + realm + "\"", true); - } else { - response.setStatusLine("1.0", 200, "OK"); + } else if (requestProxyAuth) { + response.setStatusLine("1.0", 407, "Proxy authentication required"); + for (i = 0; i < authHeaderCount; ++i) { + response.setHeader( + "Proxy-Authenticate", + 'basic realm="' + proxy_realm + '"', + true + ); } + } else if (requestAuth) { + response.setStatusLine("1.0", 401, "Authentication required"); + for (i = 0; i < authHeaderCount; ++i) { + response.setHeader( + "WWW-Authenticate", + 'basic realm="' + realm + '"', + true + ); + } + } else { + response.setStatusLine("1.0", 200, "OK"); } response.setHeader("Content-Type", "application/xhtml+xml", false); response.write(""); - response.write("

Login: " + (requestAuth ? "FAIL" : "PASS") + "

\n"); - response.write("

Proxy: " + (requestProxyAuth ? "FAIL" : "PASS") + "

\n"); + response.write( + "

Login: " + + (requestAuth ? "FAIL" : "PASS") + + "

\n" + ); + response.write( + "

Proxy: " + + (requestProxyAuth ? "FAIL" : "PASS") + + "

\n" + ); response.write("

Auth: " + authHeader + "

\n"); response.write("

User: " + actual_user + "

\n"); response.write("

Pass: " + actual_pass + "

\n"); @@ -156,23 +200,27 @@ function reallyHandleRequest(request, response) { response.write("123456789\n"); } response.write(""); - response.write("This is a footnote after the huge content fill"); + response.write( + "This is a footnote after the huge content fill" + ); } if (plugin) { - response.write("\n"); + response.write( + "\n" + ); } response.write(""); } - // base64 decoder // // Yoinked from extensions/xml-rpc/src/nsXmlRpcClient.js because btoa() // doesn't seem to exist. :-( /* Convert Base64 data to a string */ +/* eslint-disable prettier/prettier */ const toBinaryTable = [ -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, @@ -183,38 +231,42 @@ const toBinaryTable = [ -1,26,27,28, 29,30,31,32, 33,34,35,36, 37,38,39,40, 41,42,43,44, 45,46,47,48, 49,50,51,-1, -1,-1,-1,-1 ]; -const base64Pad = '='; +/* eslint-enable prettier/prettier */ +const base64Pad = "="; function base64ToString(data) { + var result = ""; + var leftbits = 0; // number of bits decoded, but yet to be appended + var leftdata = 0; // bits decoded, but yet to be appended - var result = ''; - var leftbits = 0; // number of bits decoded, but yet to be appended - var leftdata = 0; // bits decoded, but yet to be appended - - // Convert one by one. - for (var i = 0; i < data.length; i++) { - var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; - var padding = (data[i] == base64Pad); - // Skip illegal characters and whitespace - if (c == -1) continue; - - // Collect data into leftdata, update bitcount - leftdata = (leftdata << 6) | c; - leftbits += 6; - - // If we have 8 or more bits, append 8 bits to the result - if (leftbits >= 8) { - leftbits -= 8; - // Append if not padding. - if (!padding) - result += String.fromCharCode((leftdata >> leftbits) & 0xff); - leftdata &= (1 << leftbits) - 1; - } + // Convert one by one. + for (var i = 0; i < data.length; i++) { + var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; + var padding = data[i] == base64Pad; + // Skip illegal characters and whitespace + if (c == -1) { + continue; } - // If there are any bits left, the base64 string was corrupted - if (leftbits) - throw Components.Exception('Corrupted base64 string'); + // Collect data into leftdata, update bitcount + leftdata = (leftdata << 6) | c; + leftbits += 6; - return result; + // If we have 8 or more bits, append 8 bits to the result + if (leftbits >= 8) { + leftbits -= 8; + // Append if not padding. + if (!padding) { + result += String.fromCharCode((leftdata >> leftbits) & 0xff); + } + leftdata &= (1 << leftbits) - 1; + } + } + + // If there are any bits left, the base64 string was corrupted + if (leftbits) { + throw Components.Exception("Corrupted base64 string"); + } + + return result; } diff --git a/toolkit/components/places/tests/browser/history_post.sjs b/toolkit/components/places/tests/browser/history_post.sjs index 3c86aad7bc77..08c1afe85387 100644 --- a/toolkit/components/places/tests/browser/history_post.sjs +++ b/toolkit/components/places/tests/browser/history_post.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine("1.0", 200, "OK"); response.setHeader("Content-Type", "text/plain; charset=utf-8", false); response.write("Ciao"); diff --git a/toolkit/components/places/tests/browser/redirect.sjs b/toolkit/components/places/tests/browser/redirect.sjs index f55e78eb16d7..ab47335ffe1d 100644 --- a/toolkit/components/places/tests/browser/redirect.sjs +++ b/toolkit/components/places/tests/browser/redirect.sjs @@ -2,8 +2,7 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this file, * You can obtain one at http://mozilla.org/MPL/2.0/. */ -function handleRequest(request, response) -{ +function handleRequest(request, response) { let page = "

Redirecting...

"; response.setStatusLine(request.httpVersion, "301", "Moved Permanently"); diff --git a/toolkit/components/places/tests/browser/redirect_once.sjs b/toolkit/components/places/tests/browser/redirect_once.sjs index 962eed9ee4d2..b9ccd0829a3e 100644 --- a/toolkit/components/places/tests/browser/redirect_once.sjs +++ b/toolkit/components/places/tests/browser/redirect_once.sjs @@ -5,5 +5,9 @@ function handleRequest(request, response) { response.setStatusLine("1.1", 301, "Found"); - response.setHeader("Location", "http://test1.example.com/tests/toolkit/components/places/tests/browser/final.html", false); + response.setHeader( + "Location", + "http://test1.example.com/tests/toolkit/components/places/tests/browser/final.html", + false + ); } diff --git a/toolkit/components/reader/test/getCookies.sjs b/toolkit/components/reader/test/getCookies.sjs index df0dad13141a..158e53bca405 100644 --- a/toolkit/components/reader/test/getCookies.sjs +++ b/toolkit/components/reader/test/getCookies.sjs @@ -1,5 +1,7 @@ function handleRequest(request, response) { - const cookies = request.hasHeader("Cookie") ? request.getHeader("Cookie") : ""; + const cookies = request.hasHeader("Cookie") + ? request.getHeader("Cookie") + : ""; response.write(` diff --git a/toolkit/components/reader/test/readerModeRandom.sjs b/toolkit/components/reader/test/readerModeRandom.sjs index 963ea3cd5acf..f6bb15c06aed 100644 --- a/toolkit/components/reader/test/readerModeRandom.sjs +++ b/toolkit/components/reader/test/readerModeRandom.sjs @@ -17,6 +17,7 @@ let readerModeText = ` function handleRequest(aRequest, aResponse) { aResponse.setStatusLine(aRequest.httpVersion, 200); aResponse.setHeader("Content-Type", "text/html", false); - aResponse.write(readerModeText + "

" + Date.now() + "," + Math.random() + "

"); + aResponse.write( + readerModeText + "

" + Date.now() + "," + Math.random() + "

" + ); } - diff --git a/toolkit/components/remotebrowserutils/tests/browser/307redirect.sjs b/toolkit/components/remotebrowserutils/tests/browser/307redirect.sjs index 1a32c89351b9..1a28b8c5c396 100644 --- a/toolkit/components/remotebrowserutils/tests/browser/307redirect.sjs +++ b/toolkit/components/remotebrowserutils/tests/browser/307redirect.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 307, "Temporary Redirect"); let location = request.queryString; response.setHeader("Location", location, false); diff --git a/toolkit/components/remotebrowserutils/tests/browser/coop_header.sjs b/toolkit/components/remotebrowserutils/tests/browser/coop_header.sjs index 317a9d1615df..cb8c5711d804 100644 --- a/toolkit/components/remotebrowserutils/tests/browser/coop_header.sjs +++ b/toolkit/components/remotebrowserutils/tests/browser/coop_header.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { Components.utils.importGlobalProperties(["URLSearchParams"]); let query = new URLSearchParams(request.queryString); @@ -20,21 +19,28 @@ function handleRequest(request, response) isDownloadPage = true; } else if (name === "downloadFile") { isDownloadFile = true; - } else if (name == "coop") { + } else if (name == "coop") { response.setHeader("Cross-Origin-Opener-Policy", unescape(value), false); } else if (name == "coep") { - response.setHeader("Cross-Origin-Embedder-Policy", unescape(value), false); + response.setHeader( + "Cross-Origin-Embedder-Policy", + unescape(value), + false + ); } }); let downloadHTML = ""; if (isDownloadPage) { - [ - "no-coop", "same-origin", "same-origin-allow-popups", - ].forEach(coop => { + ["no-coop", "same-origin", "same-origin-allow-popups"].forEach(coop => { downloadHTML += '' + unescape(coop) + '
'; + (coop === "no-coop" ? "" : coop) + + '" id="' + + coop + + '" download>' + + unescape(coop) + + "
"; }); } @@ -43,6 +49,10 @@ function handleRequest(request, response) response.write("BINARY_DATA"); } else { response.setHeader("Content-Type", "text/html; charset=utf-8", false); - response.write("

Hello world

" + downloadHTML + ""); + response.write( + "

Hello world

" + + downloadHTML + + "" + ); } } diff --git a/toolkit/components/remotebrowserutils/tests/browser/print_postdata.sjs b/toolkit/components/remotebrowserutils/tests/browser/print_postdata.sjs index 440d95c0b425..bd9c18f7ea98 100644 --- a/toolkit/components/remotebrowserutils/tests/browser/print_postdata.sjs +++ b/toolkit/components/remotebrowserutils/tests/browser/print_postdata.sjs @@ -1,7 +1,9 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); function handleRequest(request, response) { response.setHeader("Content-Type", "text/plain", false); @@ -13,8 +15,9 @@ function handleRequest(request, response) { var avail; var bytes = []; - while ((avail = body.available()) > 0) + while ((avail = body.available()) > 0) { Array.prototype.push.apply(bytes, body.readByteArray(avail)); + } var data = String.fromCharCode.apply(null, bytes); if (request.queryString) { diff --git a/toolkit/components/search/tests/xpcshell/data/engineMaker.sjs b/toolkit/components/search/tests/xpcshell/data/engineMaker.sjs index dbf156231761..4900c7ceea25 100644 --- a/toolkit/components/search/tests/xpcshell/data/engineMaker.sjs +++ b/toolkit/components/search/tests/xpcshell/data/engineMaker.sjs @@ -16,7 +16,8 @@ function handleRequest(request, response) { } engineData.name = engineData.name || "Generated test engine"; - engineData.description = engineData.description || "Generated test engine description"; + engineData.description = + engineData.description || "Generated test engine description"; engineData.method = engineData.method || "GET"; response.setStatusLine(request.httpVersion, 200, "OK"); @@ -27,7 +28,8 @@ function handleRequest(request, response) { * Create an OpenSearch engine for the given base URL. */ function createOpenSearchEngine(response, engineData) { - let params = "", queryString = ""; + let params = "", + queryString = ""; if (engineData.method == "POST") { params = ""; } else { diff --git a/toolkit/components/search/tests/xpcshell/data/searchSuggestions.sjs b/toolkit/components/search/tests/xpcshell/data/searchSuggestions.sjs index 1706f4f8bc91..f823497aa2fe 100644 --- a/toolkit/components/search/tests/xpcshell/data/searchSuggestions.sjs +++ b/toolkit/components/search/tests/xpcshell/data/searchSuggestions.sjs @@ -1,8 +1,8 @@ /* Any copyright is dedicated to the Public Domain. * http://creativecommons.org/publicdomain/zero/1.0/ */ -Cu.import("resource://gre/modules/Timer.jsm"); -Cu.import("resource://gre/modules/NetUtil.jsm"); +let { setTimeout } = ChromeUtils.import("resource://gre/modules/Timer.jsm"); +let { NetUtil } = ChromeUtils.import("resource://gre/modules/NetUtil.jsm"); Cu.importGlobalProperties(["TextEncoder"]); @@ -130,7 +130,11 @@ function handleRequest(request, response) { ]); } else if (q && q.startsWith("letter ")) { let letters = []; - for (let charCode = "A".charCodeAt(); charCode <= "Z".charCodeAt(); charCode++) { + for ( + let charCode = "A".charCodeAt(); + charCode <= "Z".charCodeAt(); + charCode++ + ) { letters.push("letter " + String.fromCharCode(charCode)); } writeSuggestions(q, letters); @@ -150,8 +154,10 @@ function handleRequest(request, response) { setTimeout(() => response.finish(), 10000); } else if (request.method == "POST") { // This includes headers, not just the body - let requestText = NetUtil.readInputStreamToString(request.bodyInputStream, - request.bodyInputStream.available()); + let requestText = NetUtil.readInputStreamToString( + request.bodyInputStream, + request.bodyInputStream.available() + ); // Only use the last line which contains the encoded params let requestLines = requestText.split("\n"); let postParams = parseQueryString(requestLines[requestLines.length - 1]); @@ -163,8 +169,8 @@ function handleRequest(request, response) { function parseQueryString(queryString) { let query = {}; - queryString.split('&').forEach(function (val) { - let [name, value] = val.split('='); + queryString.split("&").forEach(function(val) { + let [name, value] = val.split("="); query[name] = decodeURIComponent(value).replace(/[+]/g, " "); }); return query; diff --git a/toolkit/components/thumbnails/test/authenticate.sjs b/toolkit/components/thumbnails/test/authenticate.sjs index 58da655cf98f..6c98ae03c560 100644 --- a/toolkit/components/thumbnails/test/authenticate.sjs +++ b/toolkit/components/thumbnails/test/authenticate.sjs @@ -1,5 +1,4 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { try { reallyHandleRequest(request, response); } catch (e) { @@ -8,10 +7,10 @@ function handleRequest(request, response) } } - function reallyHandleRequest(request, response) { var match; - var requestAuth = true, requestProxyAuth = true; + var requestAuth = true, + requestProxyAuth = true; // Allow the caller to drive how authentication is processed via the query. // Eg, http://localhost:8888/authenticate.sjs?user=foo&realm=bar @@ -19,133 +18,178 @@ function reallyHandleRequest(request, response) { // at the beginning of the query string. var query = "?" + request.queryString; - var expected_user = "", expected_pass = "", realm = "mochitest"; - var proxy_expected_user = "", proxy_expected_pass = "", proxy_realm = "mochi-proxy"; - var huge = false, plugin = false, anonymous = false; + var expected_user = "", + expected_pass = "", + realm = "mochitest"; + var proxy_expected_user = "", + proxy_expected_pass = "", + proxy_realm = "mochi-proxy"; + var huge = false, + plugin = false, + anonymous = false; var authHeaderCount = 1; // user=xxx match = /[^_]user=([^&]*)/.exec(query); - if (match) + if (match) { expected_user = match[1]; + } // pass=xxx match = /[^_]pass=([^&]*)/.exec(query); - if (match) + if (match) { expected_pass = match[1]; + } // realm=xxx match = /[^_]realm=([^&]*)/.exec(query); - if (match) + if (match) { realm = match[1]; + } // proxy_user=xxx match = /proxy_user=([^&]*)/.exec(query); - if (match) + if (match) { proxy_expected_user = match[1]; + } // proxy_pass=xxx match = /proxy_pass=([^&]*)/.exec(query); - if (match) + if (match) { proxy_expected_pass = match[1]; + } // proxy_realm=xxx match = /proxy_realm=([^&]*)/.exec(query); - if (match) + if (match) { proxy_realm = match[1]; + } // huge=1 match = /huge=1/.exec(query); - if (match) + if (match) { huge = true; + } // plugin=1 match = /plugin=1/.exec(query); - if (match) + if (match) { plugin = true; + } // multiple=1 match = /multiple=([^&]*)/.exec(query); - if (match) - authHeaderCount = match[1]+0; + if (match) { + authHeaderCount = match[1] + 0; + } // anonymous=1 match = /anonymous=1/.exec(query); - if (match) + if (match) { anonymous = true; + } // Look for an authentication header, if any, in the request. // // EG: Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ== - // + // // This test only supports Basic auth. The value sent by the client is // "username:password", obscured with base64 encoding. - var actual_user = "", actual_pass = "", authHeader, authPresent = false; + var actual_user = "", + actual_pass = "", + authHeader, + authPresent = false; if (request.hasHeader("Authorization")) { authPresent = true; authHeader = request.getHeader("Authorization"); match = /Basic (.+)/.exec(authHeader); - if (match.length != 2) - throw "Couldn't parse auth header: " + authHeader; + if (match.length != 2) { + throw "Couldn't parse auth header: " + authHeader; + } var userpass = base64ToString(match[1]); // no atob() :-( match = /(.*):(.*)/.exec(userpass); - if (match.length != 3) - throw "Couldn't decode auth header: " + userpass; + if (match.length != 3) { + throw "Couldn't decode auth header: " + userpass; + } actual_user = match[1]; actual_pass = match[2]; - } + } - var proxy_actual_user = "", proxy_actual_pass = ""; + var proxy_actual_user = "", + proxy_actual_pass = ""; if (request.hasHeader("Proxy-Authorization")) { authHeader = request.getHeader("Proxy-Authorization"); match = /Basic (.+)/.exec(authHeader); - if (match.length != 2) - throw "Couldn't parse auth header: " + authHeader; + if (match.length != 2) { + throw "Couldn't parse auth header: " + authHeader; + } var userpass = base64ToString(match[1]); // no atob() :-( match = /(.*):(.*)/.exec(userpass); - if (match.length != 3) - throw "Couldn't decode auth header: " + userpass; + if (match.length != 3) { + throw "Couldn't decode auth header: " + userpass; + } proxy_actual_user = match[1]; proxy_actual_pass = match[2]; } // Don't request authentication if the credentials we got were what we // expected. - if (expected_user == actual_user && - expected_pass == actual_pass) { + if (expected_user == actual_user && expected_pass == actual_pass) { requestAuth = false; } - if (proxy_expected_user == proxy_actual_user && - proxy_expected_pass == proxy_actual_pass) { + if ( + proxy_expected_user == proxy_actual_user && + proxy_expected_pass == proxy_actual_pass + ) { requestProxyAuth = false; } if (anonymous) { if (authPresent) { - response.setStatusLine("1.0", 400, "Unexpected authorization header found"); + response.setStatusLine( + "1.0", + 400, + "Unexpected authorization header found" + ); } else { response.setStatusLine("1.0", 200, "Authorization header not found"); } - } else { - if (requestProxyAuth) { - response.setStatusLine("1.0", 407, "Proxy authentication required"); - for (i = 0; i < authHeaderCount; ++i) - response.setHeader("Proxy-Authenticate", "basic realm=\"" + proxy_realm + "\"", true); - } else if (requestAuth) { - response.setStatusLine("1.0", 401, "Authentication required"); - for (i = 0; i < authHeaderCount; ++i) - response.setHeader("WWW-Authenticate", "basic realm=\"" + realm + "\"", true); - } else { - response.setStatusLine("1.0", 200, "OK"); + } else if (requestProxyAuth) { + response.setStatusLine("1.0", 407, "Proxy authentication required"); + for (i = 0; i < authHeaderCount; ++i) { + response.setHeader( + "Proxy-Authenticate", + 'basic realm="' + proxy_realm + '"', + true + ); } + } else if (requestAuth) { + response.setStatusLine("1.0", 401, "Authentication required"); + for (i = 0; i < authHeaderCount; ++i) { + response.setHeader( + "WWW-Authenticate", + 'basic realm="' + realm + '"', + true + ); + } + } else { + response.setStatusLine("1.0", 200, "OK"); } response.setHeader("Content-Type", "application/xhtml+xml", false); response.write(""); - response.write("

Login: " + (requestAuth ? "FAIL" : "PASS") + "

\n"); - response.write("

Proxy: " + (requestProxyAuth ? "FAIL" : "PASS") + "

\n"); + response.write( + "

Login: " + + (requestAuth ? "FAIL" : "PASS") + + "

\n" + ); + response.write( + "

Proxy: " + + (requestProxyAuth ? "FAIL" : "PASS") + + "

\n" + ); response.write("

Auth: " + authHeader + "

\n"); response.write("

User: " + actual_user + "

\n"); response.write("

Pass: " + actual_pass + "

\n"); @@ -156,23 +200,27 @@ function reallyHandleRequest(request, response) { response.write("123456789\n"); } response.write(""); - response.write("This is a footnote after the huge content fill"); + response.write( + "This is a footnote after the huge content fill" + ); } if (plugin) { - response.write("\n"); + response.write( + "\n" + ); } response.write(""); } - // base64 decoder // // Yoinked from extensions/xml-rpc/src/nsXmlRpcClient.js because btoa() // doesn't seem to exist. :-( /* Convert Base64 data to a string */ +/* eslint-disable prettier/prettier */ const toBinaryTable = [ -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, @@ -183,38 +231,42 @@ const toBinaryTable = [ -1,26,27,28, 29,30,31,32, 33,34,35,36, 37,38,39,40, 41,42,43,44, 45,46,47,48, 49,50,51,-1, -1,-1,-1,-1 ]; -const base64Pad = '='; +/* eslint-enable prettier/prettier */ +const base64Pad = "="; function base64ToString(data) { + var result = ""; + var leftbits = 0; // number of bits decoded, but yet to be appended + var leftdata = 0; // bits decoded, but yet to be appended - var result = ''; - var leftbits = 0; // number of bits decoded, but yet to be appended - var leftdata = 0; // bits decoded, but yet to be appended - - // Convert one by one. - for (var i = 0; i < data.length; i++) { - var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; - var padding = (data[i] == base64Pad); - // Skip illegal characters and whitespace - if (c == -1) continue; - - // Collect data into leftdata, update bitcount - leftdata = (leftdata << 6) | c; - leftbits += 6; - - // If we have 8 or more bits, append 8 bits to the result - if (leftbits >= 8) { - leftbits -= 8; - // Append if not padding. - if (!padding) - result += String.fromCharCode((leftdata >> leftbits) & 0xff); - leftdata &= (1 << leftbits) - 1; - } + // Convert one by one. + for (var i = 0; i < data.length; i++) { + var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; + var padding = data[i] == base64Pad; + // Skip illegal characters and whitespace + if (c == -1) { + continue; } - // If there are any bits left, the base64 string was corrupted - if (leftbits) - throw Components.Exception('Corrupted base64 string'); + // Collect data into leftdata, update bitcount + leftdata = (leftdata << 6) | c; + leftbits += 6; - return result; + // If we have 8 or more bits, append 8 bits to the result + if (leftbits >= 8) { + leftbits -= 8; + // Append if not padding. + if (!padding) { + result += String.fromCharCode((leftdata >> leftbits) & 0xff); + } + leftdata &= (1 << leftbits) - 1; + } + } + + // If there are any bits left, the base64 string was corrupted + if (leftbits) { + throw Components.Exception("Corrupted base64 string"); + } + + return result; } diff --git a/toolkit/components/thumbnails/test/background_red_redirect.sjs b/toolkit/components/thumbnails/test/background_red_redirect.sjs index 5f0852e194b8..168772443dbd 100644 --- a/toolkit/components/thumbnails/test/background_red_redirect.sjs +++ b/toolkit/components/thumbnails/test/background_red_redirect.sjs @@ -2,9 +2,12 @@ http://creativecommons.org/publicdomain/zero/1.0/ */ function handleRequest(aRequest, aResponse) { - // Set HTTP Status. - aResponse.setStatusLine(aRequest.httpVersion, 301, "Moved Permanently"); + // Set HTTP Status. + aResponse.setStatusLine(aRequest.httpVersion, 301, "Moved Permanently"); - // Set redirect URI. - aResponse.setHeader("Location", "http://mochi.test:8888/browser/toolkit/components/thumbnails/test/background_red.html"); + // Set redirect URI. + aResponse.setHeader( + "Location", + "http://mochi.test:8888/browser/toolkit/components/thumbnails/test/background_red.html" + ); } diff --git a/toolkit/components/thumbnails/test/privacy_cache_control.sjs b/toolkit/components/thumbnails/test/privacy_cache_control.sjs index 6c7c16edb404..576b27f1f335 100644 --- a/toolkit/components/thumbnails/test/privacy_cache_control.sjs +++ b/toolkit/components/thumbnails/test/privacy_cache_control.sjs @@ -8,8 +8,9 @@ function handleRequest(aRequest, aResponse) { // Set Cache-Control header. let value = aRequest.queryString; - if (value) + if (value) { aResponse.setHeader("Cache-Control", value); + } // Set the response body. aResponse.write(""); diff --git a/toolkit/components/thumbnails/test/thumbnails_background.sjs b/toolkit/components/thumbnails/test/thumbnails_background.sjs index f1cce96a0edc..9fee1ad50856 100644 --- a/toolkit/components/thumbnails/test/thumbnails_background.sjs +++ b/toolkit/components/thumbnails/test/thumbnails_background.sjs @@ -14,8 +14,7 @@ function handleRequest(req, resp) { let opts = {}; try { opts = JSON.parse(decodeURIComponent(req.queryString)); - } - catch (err) {} + } catch (err) {} let setCookieScript = ""; if (opts.setRedCookie) { @@ -42,16 +41,30 @@ function handleRequest(req, resp) { `; } - if (req.hasHeader("Cookie") && - req.getHeader("Cookie").split(";").indexOf("red") >= 0) { - resp.write('' + setCookieScript + ''); + if ( + req.hasHeader("Cookie") && + req + .getHeader("Cookie") + .split(";") + .indexOf("red") >= 0 + ) { + resp.write( + '' + setCookieScript + "" + ); resp.finish(); return; } - if (req.hasHeader("Cookie") && - req.getHeader("Cookie").split(";").indexOf("green") >= 0) { - resp.write('' + setCookieScript + ''); + if ( + req.hasHeader("Cookie") && + req + .getHeader("Cookie") + .split(";") + .indexOf("green") >= 0 + ) { + resp.write( + '' + setCookieScript + "" + ); resp.finish(); return; } @@ -65,15 +78,22 @@ function handleRequest(req, resp) { if (opts.wait) { resp.write("Waiting " + opts.wait + " ms... "); - timer = Components.classes["@mozilla.org/timer;1"]. - createInstance(Components.interfaces.nsITimer); - timer.init(function ding() { - resp.write("OK!"); - resp.finish(); - }, opts.wait, Components.interfaces.nsITimer.TYPE_ONE_SHOT); + timer = Components.classes["@mozilla.org/timer;1"].createInstance( + Components.interfaces.nsITimer + ); + timer.init( + function ding() { + resp.write("OK!"); + resp.finish(); + }, + opts.wait, + Components.interfaces.nsITimer.TYPE_ONE_SHOT + ); return; } - resp.write("
" + JSON.stringify(opts, undefined, 2) + "
" + setCookieScript); + resp.write( + "
" + JSON.stringify(opts, undefined, 2) + "
" + setCookieScript + ); resp.finish(); } diff --git a/toolkit/components/thumbnails/test/thumbnails_update.sjs b/toolkit/components/thumbnails/test/thumbnails_update.sjs index 4d8ab406a2f3..78716adff952 100644 --- a/toolkit/components/thumbnails/test/thumbnails_update.sjs +++ b/toolkit/components/thumbnails/test/thumbnails_update.sjs @@ -1,56 +1,57 @@ -/* Any copyright is dedicated to the Public Domain. - http://creativecommons.org/publicdomain/zero/1.0/ */ - -// This server-side script is used for browser_thumbnails_update. One of the -// main things it must do in all cases is ensure a Cache-Control: no-store -// header, so the foreground capture doesn't interfere with the testing. - -// If the querystring is "simple", then all it does it return some content - -// it doesn't really matter what that content is. - -// Otherwise, its main role is that it must return different *content* for the -// second request than it did for the first. -// Also, it should be able to return an error response when requested for the -// second response. -// So the basic tests will be to grab the thumbnail, then request it to be -// grabbed again: -// * If the second request succeeded, the new thumbnail should exist. -// * If the second request is an error, the new thumbnail should be ignored. - -function handleRequest(aRequest, aResponse) { - aResponse.setHeader("Content-Type", "text/html;charset=utf-8", false); - // we want to disable gBrowserThumbnails on-load capture for these responses, - // so set as a "no-store" response. - aResponse.setHeader("Cache-Control", "no-store"); - - // for the simple test - just return some content. - if (aRequest.queryString == "simple") { - aResponse.write(""); - aResponse.setStatusLine(aRequest.httpVersion, 200, "Its simply OK"); - return; - } - - // it's one of the more complex tests where the first request for the given - // URL must return different content than the second, and possibly an error - // response for the second - let doneError = getState(aRequest.queryString); - if (!doneError) { - // first request - return a response with a green body and 200 response. - aResponse.setStatusLine(aRequest.httpVersion, 200, "OK - It's green"); - aResponse.write(""); - // set the state so the next request does the "second request" thing below. - setState(aRequest.queryString, "yep"); - } else { - // second request - this will be done by the b/g service. - // We always return a red background, but depending on the query string we - // return either a 200 or 401 response. - if (aRequest.queryString == "fail") - aResponse.setStatusLine(aRequest.httpVersion, 401, "Oh no you don't"); - else - aResponse.setStatusLine(aRequest.httpVersion, 200, "OK - It's red"); - aResponse.write(""); - // reset the error state incase this ends up being reused for the - // same url and querystring. - setState(aRequest.queryString, ""); - } -} +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +// This server-side script is used for browser_thumbnails_update. One of the +// main things it must do in all cases is ensure a Cache-Control: no-store +// header, so the foreground capture doesn't interfere with the testing. + +// If the querystring is "simple", then all it does it return some content - +// it doesn't really matter what that content is. + +// Otherwise, its main role is that it must return different *content* for the +// second request than it did for the first. +// Also, it should be able to return an error response when requested for the +// second response. +// So the basic tests will be to grab the thumbnail, then request it to be +// grabbed again: +// * If the second request succeeded, the new thumbnail should exist. +// * If the second request is an error, the new thumbnail should be ignored. + +function handleRequest(aRequest, aResponse) { + aResponse.setHeader("Content-Type", "text/html;charset=utf-8", false); + // we want to disable gBrowserThumbnails on-load capture for these responses, + // so set as a "no-store" response. + aResponse.setHeader("Cache-Control", "no-store"); + + // for the simple test - just return some content. + if (aRequest.queryString == "simple") { + aResponse.write(""); + aResponse.setStatusLine(aRequest.httpVersion, 200, "Its simply OK"); + return; + } + + // it's one of the more complex tests where the first request for the given + // URL must return different content than the second, and possibly an error + // response for the second + let doneError = getState(aRequest.queryString); + if (!doneError) { + // first request - return a response with a green body and 200 response. + aResponse.setStatusLine(aRequest.httpVersion, 200, "OK - It's green"); + aResponse.write(""); + // set the state so the next request does the "second request" thing below. + setState(aRequest.queryString, "yep"); + } else { + // second request - this will be done by the b/g service. + // We always return a red background, but depending on the query string we + // return either a 200 or 401 response. + if (aRequest.queryString == "fail") { + aResponse.setStatusLine(aRequest.httpVersion, 401, "Oh no you don't"); + } else { + aResponse.setStatusLine(aRequest.httpVersion, 200, "OK - It's red"); + } + aResponse.write(""); + // reset the error state incase this ends up being reused for the + // same url and querystring. + setState(aRequest.queryString, ""); + } +} diff --git a/toolkit/components/url-classifier/tests/mochitest/cache.sjs b/toolkit/components/url-classifier/tests/mochitest/cache.sjs index d2dc846808a5..7d7e37b891fe 100644 --- a/toolkit/components/url-classifier/tests/mochitest/cache.sjs +++ b/toolkit/components/url-classifier/tests/mochitest/cache.sjs @@ -3,15 +3,16 @@ */ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); -function handleRequest(request, response) -{ +function handleRequest(request, response) { var query = {}; - request.queryString.split('&').forEach(function (val) { - var idx = val.indexOf('='); + request.queryString.split("&").forEach(function(val) { + var idx = val.indexOf("="); query[val.slice(0, idx)] = unescape(val.slice(idx + 1)); }); @@ -23,10 +24,10 @@ function handleRequest(request, response) // 1. All the full hashes for a given list // 2. All the lists we have right now // data is separate by '\n' - let list = query["list"]; + let list = query.list; let hashes = getState(list); - let hash = base64ToString(query["fullhash"]); + let hash = base64ToString(query.fullhash); hashes += hash + "\n"; setState(list, hashes); @@ -37,8 +38,8 @@ function handleRequest(request, response) } return; - // gethash count return how many gethash request received. - // This is used by client to know if a gethash request is triggered by gecko + // gethash count return how many gethash request received. + // This is used by client to know if a gethash request is triggered by gecko } else if ("gethashcount" == request.queryString) { var counter = getState("counter"); responseBody = counter == "" ? "0" : counter; @@ -60,34 +61,36 @@ function handleRequest(request, response) response.setHeader("Content-Type", "text/plain", false); response.write(responseBody); - } function parseV2Request(bytes) { var request = String.fromCharCode.apply(this, bytes); var [HEADER, PREFIXES] = request.split("\n"); var [PREFIXSIZE, LENGTH] = HEADER.split(":").map(val => { - return parseInt(val); - }); + return parseInt(val); + }); var ret = ""; - for(var start = 0; start < LENGTH; start += PREFIXSIZE) { - getState("lists").split("\n").forEach(function(list) { - var completions = getState(list).split("\n"); + for (var start = 0; start < LENGTH; start += PREFIXSIZE) { + getState("lists") + .split("\n") + .forEach(function(list) { + var completions = getState(list).split("\n"); - for (var completion of completions) { - if (completion.indexOf(PREFIXES.substr(start, PREFIXSIZE)) == 0) { - ret += list + ":" + "1" + ":" + "32" + "\n"; - ret += completion; + for (var completion of completions) { + if (completion.indexOf(PREFIXES.substr(start, PREFIXSIZE)) == 0) { + ret += list + ":" + "1" + ":" + "32" + "\n"; + ret += completion; + } } - } - }); + }); } return ret; } /* Convert Base64 data to a string */ +/* eslint-disable prettier/prettier */ const toBinaryTable = [ -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, @@ -98,37 +101,42 @@ const toBinaryTable = [ -1,26,27,28, 29,30,31,32, 33,34,35,36, 37,38,39,40, 41,42,43,44, 45,46,47,48, 49,50,51,-1, -1,-1,-1,-1 ]; -const base64Pad = '='; +/* eslint-enable prettier/prettier */ +const base64Pad = "="; function base64ToString(data) { - var result = ''; - var leftbits = 0; // number of bits decoded, but yet to be appended - var leftdata = 0; // bits decoded, but yet to be appended + var result = ""; + var leftbits = 0; // number of bits decoded, but yet to be appended + var leftdata = 0; // bits decoded, but yet to be appended - // Convert one by one. - for (var i = 0; i < data.length; i++) { - var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; - var padding = (data[i] == base64Pad); - // Skip illegal characters and whitespace - if (c == -1) continue; - - // Collect data into leftdata, update bitcount - leftdata = (leftdata << 6) | c; - leftbits += 6; - - // If we have 8 or more bits, append 8 bits to the result - if (leftbits >= 8) { - leftbits -= 8; - // Append if not padding. - if (!padding) - result += String.fromCharCode((leftdata >> leftbits) & 0xff); - leftdata &= (1 << leftbits) - 1; - } + // Convert one by one. + for (var i = 0; i < data.length; i++) { + var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; + var padding = data[i] == base64Pad; + // Skip illegal characters and whitespace + if (c == -1) { + continue; } - // If there are any bits left, the base64 string was corrupted - if (leftbits) - throw Components.Exception('Corrupted base64 string'); + // Collect data into leftdata, update bitcount + leftdata = (leftdata << 6) | c; + leftbits += 6; - return result; + // If we have 8 or more bits, append 8 bits to the result + if (leftbits >= 8) { + leftbits -= 8; + // Append if not padding. + if (!padding) { + result += String.fromCharCode((leftdata >> leftbits) & 0xff); + } + leftdata &= (1 << leftbits) - 1; + } + } + + // If there are any bits left, the base64 string was corrupted + if (leftbits) { + throw Components.Exception("Corrupted base64 string"); + } + + return result; } diff --git a/toolkit/components/url-classifier/tests/mochitest/gethash.sjs b/toolkit/components/url-classifier/tests/mochitest/gethash.sjs index 9dcc6e0d578f..bb1c4dd1f7b9 100644 --- a/toolkit/components/url-classifier/tests/mochitest/gethash.sjs +++ b/toolkit/components/url-classifier/tests/mochitest/gethash.sjs @@ -1,13 +1,14 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); -function handleRequest(request, response) -{ +function handleRequest(request, response) { var query = {}; - request.queryString.split('&').forEach(function (val) { - var idx = val.indexOf('='); + request.queryString.split("&").forEach(function(val) { + var idx = val.indexOf("="); query[val.slice(0, idx)] = unescape(val.slice(idx + 1)); }); @@ -19,10 +20,10 @@ function handleRequest(request, response) // 1. All the full hashes for a given list // 2. All the lists we have right now // data is separate by '\n' - let list = query["list"]; + let list = query.list; let hashes = getState(list); - let hash = base64ToString(query["fullhash"]); + let hash = base64ToString(query.fullhash); hashes += hash + "\n"; setState(list, hashes); @@ -33,8 +34,8 @@ function handleRequest(request, response) } return; - // gethash count return how many gethash request received. - // This is used by client to know if a gethash request is triggered by gecko + // gethash count return how many gethash request received. + // This is used by client to know if a gethash request is triggered by gecko } else if ("gethashcount" == request.queryString) { var counter = getState("counter"); responseBody = counter == "" ? "0" : counter; @@ -56,34 +57,36 @@ function handleRequest(request, response) response.setHeader("Content-Type", "text/plain", false); response.write(responseBody); - } function parseV2Request(bytes) { var request = String.fromCharCode.apply(this, bytes); var [HEADER, PREFIXES] = request.split("\n"); var [PREFIXSIZE, LENGTH] = HEADER.split(":").map(val => { - return parseInt(val); - }); + return parseInt(val); + }); var ret = ""; - for(var start = 0; start < LENGTH; start += PREFIXSIZE) { - getState("lists").split("\n").forEach(function(list) { - var completions = getState(list).split("\n"); + for (var start = 0; start < LENGTH; start += PREFIXSIZE) { + getState("lists") + .split("\n") + .forEach(function(list) { + var completions = getState(list).split("\n"); - for (var completion of completions) { - if (completion.indexOf(PREFIXES.substr(start, PREFIXSIZE)) == 0) { - ret += list + ":" + "1" + ":" + "32" + "\n"; - ret += completion; + for (var completion of completions) { + if (completion.indexOf(PREFIXES.substr(start, PREFIXSIZE)) == 0) { + ret += list + ":" + "1" + ":" + "32" + "\n"; + ret += completion; + } } - } - }); + }); } return ret; } /* Convert Base64 data to a string */ +/* eslint-disable prettier/prettier */ const toBinaryTable = [ -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, @@ -94,37 +97,42 @@ const toBinaryTable = [ -1,26,27,28, 29,30,31,32, 33,34,35,36, 37,38,39,40, 41,42,43,44, 45,46,47,48, 49,50,51,-1, -1,-1,-1,-1 ]; -const base64Pad = '='; +/* eslint-enable prettier/prettier */ +const base64Pad = "="; function base64ToString(data) { - var result = ''; - var leftbits = 0; // number of bits decoded, but yet to be appended - var leftdata = 0; // bits decoded, but yet to be appended + var result = ""; + var leftbits = 0; // number of bits decoded, but yet to be appended + var leftdata = 0; // bits decoded, but yet to be appended - // Convert one by one. - for (var i = 0; i < data.length; i++) { - var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; - var padding = (data[i] == base64Pad); - // Skip illegal characters and whitespace - if (c == -1) continue; - - // Collect data into leftdata, update bitcount - leftdata = (leftdata << 6) | c; - leftbits += 6; - - // If we have 8 or more bits, append 8 bits to the result - if (leftbits >= 8) { - leftbits -= 8; - // Append if not padding. - if (!padding) - result += String.fromCharCode((leftdata >> leftbits) & 0xff); - leftdata &= (1 << leftbits) - 1; - } + // Convert one by one. + for (var i = 0; i < data.length; i++) { + var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; + var padding = data[i] == base64Pad; + // Skip illegal characters and whitespace + if (c == -1) { + continue; } - // If there are any bits left, the base64 string was corrupted - if (leftbits) - throw Components.Exception('Corrupted base64 string'); + // Collect data into leftdata, update bitcount + leftdata = (leftdata << 6) | c; + leftbits += 6; - return result; + // If we have 8 or more bits, append 8 bits to the result + if (leftbits >= 8) { + leftbits -= 8; + // Append if not padding. + if (!padding) { + result += String.fromCharCode((leftdata >> leftbits) & 0xff); + } + leftdata &= (1 << leftbits) - 1; + } + } + + // If there are any bits left, the base64 string was corrupted + if (leftbits) { + throw Components.Exception("Corrupted base64 string"); + } + + return result; } diff --git a/toolkit/components/url-classifier/tests/mochitest/ping.sjs b/toolkit/components/url-classifier/tests/mochitest/ping.sjs index 37a78956e0dc..62f6537b58b6 100644 --- a/toolkit/components/url-classifier/tests/mochitest/ping.sjs +++ b/toolkit/components/url-classifier/tests/mochitest/ping.sjs @@ -1,15 +1,14 @@ -function handleRequest(request, response) -{ +function handleRequest(request, response) { var query = {}; - request.queryString.split('&').forEach(function (val) { - var [name, value] = val.split('='); + request.queryString.split("&").forEach(function(val) { + var [name, value] = val.split("="); query[name] = unescape(value); }); if (request.method == "POST") { - setState(query["id"], "ping"); + setState(query.id, "ping"); } else { - var value = getState(query["id"]); + var value = getState(query.id); response.setHeader("Content-Type", "text/plain", false); response.write(value); } diff --git a/toolkit/components/url-classifier/tests/mochitest/report.sjs b/toolkit/components/url-classifier/tests/mochitest/report.sjs index 88060063384c..272cdb2c7b91 100644 --- a/toolkit/components/url-classifier/tests/mochitest/report.sjs +++ b/toolkit/components/url-classifier/tests/mochitest/report.sjs @@ -2,7 +2,9 @@ * http://creativecommons.org/publicdomain/zero/1.0/ */ const SJS = "report.sjs?"; -const REDIRECT = "mochi.test:8888/chrome/toolkit/components/url-classifier/tests/mochitest/" + SJS; +const REDIRECT = + "mochi.test:8888/chrome/toolkit/components/url-classifier/tests/mochitest/" + + SJS; Components.utils.importGlobalProperties(["URLSearchParams"]); @@ -30,28 +32,27 @@ function createPage() { `; } -function handleRequest(request, response) -{ +function handleRequest(request, response) { var params = new URLSearchParams(request.queryString); var action = params.get("action"); if (action === "create-blocked-iframe") { - response.setHeader('Cache-Control', 'no-cache', false); - response.setHeader('Content-Type', 'text/html; charset=utf-8', false); + response.setHeader("Cache-Control", "no-cache", false); + response.setHeader("Content-Type", "text/html; charset=utf-8", false); response.write(createBlockedIframePage()); return; } if (action === "redirect") { - response.setHeader('Cache-Control', 'no-cache', false); - response.setHeader('Content-Type', 'text/html; charset=utf-8', false); + response.setHeader("Cache-Control", "no-cache", false); + response.setHeader("Content-Type", "text/html; charset=utf-8", false); response.write(createPage()); return; } if (action === "reporturl") { - response.setHeader('Cache-Control', 'no-cache', false); - response.setHeader('Content-Type', 'text/html; charset=utf-8', false); + response.setHeader("Cache-Control", "no-cache", false); + response.setHeader("Content-Type", "text/html; charset=utf-8", false); response.write(createPage()); return; } @@ -60,10 +61,13 @@ function handleRequest(request, response) params.delete("action"); params.append("action", "redirect"); response.setStatusLine("1.1", 302, "found"); - response.setHeader("Location", "https://" + REDIRECT + params.toString(), false); + response.setHeader( + "Location", + "https://" + REDIRECT + params.toString(), + false + ); return; } response.write("I don't know action " + action); - return; } diff --git a/toolkit/components/url-classifier/tests/mochitest/threathit.sjs b/toolkit/components/url-classifier/tests/mochitest/threathit.sjs index 0732d070c530..3ce3efed0c3f 100644 --- a/toolkit/components/url-classifier/tests/mochitest/threathit.sjs +++ b/toolkit/components/url-classifier/tests/mochitest/threathit.sjs @@ -2,12 +2,13 @@ * http://creativecommons.org/publicdomain/zero/1.0/ */ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); -function handleRequest(request, response) -{ +function handleRequest(request, response) { Components.utils.importGlobalProperties(["URLSearchParams"]); let params = new URLSearchParams(request.queryString); var action = params.get("action"); @@ -21,17 +22,22 @@ function handleRequest(request, response) let state = params.get("list") + params.get("type"); let dataStr = params.get("data"); setState(state, dataStr); - return; } else if (action == "get") { let state = params.get("list") + params.get("type"); responseBody = base64ToString(getState(state)); response.setStatusLine(request.httpVersion, 200, "OK"); - response.bodyOutputStream.write(responseBody, - responseBody.length); + response.bodyOutputStream.write(responseBody, responseBody.length); } else if (action == "report") { let state = params.get("list") + "report"; - let requestUrl = request.scheme + "://" + request.host + ":" + - request.port + request.path + "?" + request.queryString; + let requestUrl = + request.scheme + + "://" + + request.host + + ":" + + request.port + + request.path + + "?" + + request.queryString; setState(state, requestUrl); } else if (action == "getreport") { let state = params.get("list") + "report"; @@ -41,9 +47,10 @@ function handleRequest(request, response) } } -var base64Pad = '='; +var base64Pad = "="; /* Convert Base64 data to a string */ -var toBinaryTable = [ +/* eslint-disable prettier/prettier */ +const toBinaryTable = [ -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,62, -1,-1,-1,63, @@ -53,35 +60,40 @@ var toBinaryTable = [ -1,26,27,28, 29,30,31,32, 33,34,35,36, 37,38,39,40, 41,42,43,44, 45,46,47,48, 49,50,51,-1, -1,-1,-1,-1 ]; +/* eslint-enable prettier/prettier */ function base64ToString(data) { - var result = ''; - var leftbits = 0; // number of bits decoded, but yet to be appended - var leftdata = 0; // bits decoded, but yet to be appended + var result = ""; + var leftbits = 0; // number of bits decoded, but yet to be appended + var leftdata = 0; // bits decoded, but yet to be appended - // Convert one by one. - for (var i = 0; i < data.length; i++) { - var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; - var padding = (data[i] == base64Pad); - // Skip illegal characters and whitespace - if (c == -1) continue; - // Collect data into leftdata, update bitcount - leftdata = (leftdata << 6) | c; - leftbits += 6; - - // If we have 8 or more bits, append 8 bits to the result - if (leftbits >= 8) { - leftbits -= 8; - // Append if not padding. - if (!padding) - result += String.fromCharCode((leftdata >> leftbits) & 0xff); - leftdata &= (1 << leftbits) - 1; - } + // Convert one by one. + for (var i = 0; i < data.length; i++) { + var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; + var padding = data[i] == base64Pad; + // Skip illegal characters and whitespace + if (c == -1) { + continue; } + // Collect data into leftdata, update bitcount + leftdata = (leftdata << 6) | c; + leftbits += 6; - // If there are any bits left, the base64 string was corrupted - if (leftbits) - throw Components.Exception('Corrupted base64 string'); + // If we have 8 or more bits, append 8 bits to the result + if (leftbits >= 8) { + leftbits -= 8; + // Append if not padding. + if (!padding) { + result += String.fromCharCode((leftdata >> leftbits) & 0xff); + } + leftdata &= (1 << leftbits) - 1; + } + } - return result; + // If there are any bits left, the base64 string was corrupted + if (leftbits) { + throw Components.Exception("Corrupted base64 string"); + } + + return result; } diff --git a/toolkit/components/url-classifier/tests/mochitest/trackerFrame.sjs b/toolkit/components/url-classifier/tests/mochitest/trackerFrame.sjs index 3c057d439e93..2f25fd2f7475 100644 --- a/toolkit/components/url-classifier/tests/mochitest/trackerFrame.sjs +++ b/toolkit/components/url-classifier/tests/mochitest/trackerFrame.sjs @@ -11,8 +11,7 @@ const stateTrackersWithoutCookie = "trackers-without-cookie"; const stateReceivedTrackers = "received-trackers"; const stateResponseType = "response-tracker-with-cookie"; -function reset() -{ +function reset() { setState(stateCallback, ""); setState(stateTrackersWithCookie, ""); setState(stateTrackersWithoutCookie, ""); @@ -20,8 +19,7 @@ function reset() setState(stateResponseType, ""); } -function handleRequest(aRequest, aResponse) -{ +function handleRequest(aRequest, aResponse) { let params = new URLSearchParams(aRequest.queryString); // init the server and tell the server the total number requests to process @@ -34,16 +32,24 @@ function handleRequest(aRequest, aResponse) // Prepare the cookie aResponse.setHeader("Set-Cookie", "cookie=1234"); - aResponse.setHeader("Access-Control-Allow-Origin", aRequest.getHeader("Origin"), false); - aResponse.setHeader("Access-Control-Allow-Credentials","true", false); + aResponse.setHeader( + "Access-Control-Allow-Origin", + aRequest.getHeader("Origin"), + false + ); + aResponse.setHeader("Access-Control-Allow-Credentials", "true", false); aResponse.write("begin-test"); - // register the callback response, the response will be fired after receiving - // all the request + // register the callback response, the response will be fired after receiving + // all the request } else if (params.has("callback")) { aResponse.processAsync(); aResponse.setHeader("Content-Type", "text/plain", false); - aResponse.setHeader("Access-Control-Allow-Origin", aRequest.getHeader("Origin"), false); - aResponse.setHeader("Access-Control-Allow-Credentials","true", false); + aResponse.setHeader( + "Access-Control-Allow-Origin", + aRequest.getHeader("Origin"), + false + ); + aResponse.setHeader("Access-Control-Allow-Credentials", "true", false); setState(stateResponseType, params.get("callback")); setObjectState(stateCallback, aResponse); diff --git a/toolkit/components/url-classifier/tests/mochitest/update.sjs b/toolkit/components/url-classifier/tests/mochitest/update.sjs index 53efaafdfc64..346405098bdd 100644 --- a/toolkit/components/url-classifier/tests/mochitest/update.sjs +++ b/toolkit/components/url-classifier/tests/mochitest/update.sjs @@ -1,13 +1,14 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); -function handleRequest(request, response) -{ +function handleRequest(request, response) { var query = {}; - request.queryString.split('&').forEach(function (val) { - var idx = val.indexOf('='); + request.queryString.split("&").forEach(function(val) { + var idx = val.indexOf("="); query[val.slice(0, idx)] = unescape(val.slice(idx + 1)); }); @@ -17,10 +18,10 @@ function handleRequest(request, response) // 1. All the full hashes for a given list // 2. All the lists we have right now // data is separate by '\n' - let list = query["list"]; + let list = query.list; let hashes = getState(list); - let hash = base64ToString(query["fullhash"]); + let hash = base64ToString(query.fullhash); hashes += hash + "\n"; setState(list, hashes); @@ -48,26 +49,29 @@ function handleRequest(request, response) } function parseV2Request(bytes) { - var table = String.fromCharCode.apply(this, bytes).slice(0,-2); + var table = String.fromCharCode.apply(this, bytes).slice(0, -2); var ret = ""; - getState("lists").split("\n").forEach(function(list) { - if (list == table) { - var completions = getState(list).split("\n"); - ret += "n:1000\n" - ret += "i:" + list + "\n"; - ret += "a:1:32:" + 32*(completions.length - 1) + "\n"; + getState("lists") + .split("\n") + .forEach(function(list) { + if (list == table) { + var completions = getState(list).split("\n"); + ret += "n:1000\n"; + ret += "i:" + list + "\n"; + ret += "a:1:32:" + 32 * (completions.length - 1) + "\n"; - for (var completion of completions) { - ret += completion; + for (var completion of completions) { + ret += completion; + } } - } - }); + }); return ret; } /* Convert Base64 data to a string */ +/* eslint-disable prettier/prettier */ const toBinaryTable = [ -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, @@ -78,37 +82,42 @@ const toBinaryTable = [ -1,26,27,28, 29,30,31,32, 33,34,35,36, 37,38,39,40, 41,42,43,44, 45,46,47,48, 49,50,51,-1, -1,-1,-1,-1 ]; -const base64Pad = '='; +/* eslint-enable prettier/prettier */ +const base64Pad = "="; function base64ToString(data) { - var result = ''; - var leftbits = 0; // number of bits decoded, but yet to be appended - var leftdata = 0; // bits decoded, but yet to be appended + var result = ""; + var leftbits = 0; // number of bits decoded, but yet to be appended + var leftdata = 0; // bits decoded, but yet to be appended - // Convert one by one. - for (var i = 0; i < data.length; i++) { - var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; - var padding = (data[i] == base64Pad); - // Skip illegal characters and whitespace - if (c == -1) continue; - - // Collect data into leftdata, update bitcount - leftdata = (leftdata << 6) | c; - leftbits += 6; - - // If we have 8 or more bits, append 8 bits to the result - if (leftbits >= 8) { - leftbits -= 8; - // Append if not padding. - if (!padding) - result += String.fromCharCode((leftdata >> leftbits) & 0xff); - leftdata &= (1 << leftbits) - 1; - } + // Convert one by one. + for (var i = 0; i < data.length; i++) { + var c = toBinaryTable[data.charCodeAt(i) & 0x7f]; + var padding = data[i] == base64Pad; + // Skip illegal characters and whitespace + if (c == -1) { + continue; } - // If there are any bits left, the base64 string was corrupted - if (leftbits) - throw Components.Exception('Corrupted base64 string'); + // Collect data into leftdata, update bitcount + leftdata = (leftdata << 6) | c; + leftbits += 6; - return result; + // If we have 8 or more bits, append 8 bits to the result + if (leftbits >= 8) { + leftbits -= 8; + // Append if not padding. + if (!padding) { + result += String.fromCharCode((leftdata >> leftbits) & 0xff); + } + leftdata &= (1 << leftbits) - 1; + } + } + + // If there are any bits left, the base64 string was corrupted + if (leftbits) { + throw Components.Exception("Corrupted base64 string"); + } + + return result; } diff --git a/toolkit/content/tests/browser/data/post_form_inner.sjs b/toolkit/content/tests/browser/data/post_form_inner.sjs index ce72159d81e6..2096a0bcfe70 100644 --- a/toolkit/content/tests/browser/data/post_form_inner.sjs +++ b/toolkit/content/tests/browser/data/post_form_inner.sjs @@ -3,21 +3,23 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); -function handleRequest(request, response) -{ - var body = - '\ +function handleRequest(request, response) { + var body = "\ \ - Inner POST data: '; + Inner POST data: "; var bodyStream = new BinaryInputStream(request.bodyInputStream); - var bytes = [], avail = 0; - while ((avail = bodyStream.available()) > 0) - body += String.fromCharCode.apply(String, bodyStream.readByteArray(avail)); + var bytes = [], + avail = 0; + while ((avail = bodyStream.available()) > 0) { + body += String.fromCharCode.apply(String, bodyStream.readByteArray(avail)); + } body += '
\ diff --git a/toolkit/content/tests/browser/data/post_form_outer.sjs b/toolkit/content/tests/browser/data/post_form_outer.sjs index 89256fcfb2a6..7d2b2fdc6f41 100644 --- a/toolkit/content/tests/browser/data/post_form_outer.sjs +++ b/toolkit/content/tests/browser/data/post_form_outer.sjs @@ -3,21 +3,23 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); -function handleRequest(request, response) -{ - var body = - '\ +function handleRequest(request, response) { + var body = "\ \ - Outer POST data: '; + Outer POST data: "; var bodyStream = new BinaryInputStream(request.bodyInputStream); - var bytes = [], avail = 0; - while ((avail = bodyStream.available()) > 0) - body += String.fromCharCode.apply(String, bodyStream.readByteArray(avail)); + var bytes = [], + avail = 0; + while ((avail = bodyStream.available()) > 0) { + body += String.fromCharCode.apply(String, bodyStream.readByteArray(avail)); + } body += '\ diff --git a/toolkit/crashreporter/test/browser/crashreport.sjs b/toolkit/crashreporter/test/browser/crashreport.sjs index 98257006f5ee..1acb9ae36694 100644 --- a/toolkit/crashreporter/test/browser/crashreport.sjs +++ b/toolkit/crashreporter/test/browser/crashreport.sjs @@ -1,11 +1,12 @@ const CC = Components.Constructor; -const BinaryInputStream = CC("@mozilla.org/binaryinputstream;1", - "nsIBinaryInputStream", - "setInputStream"); +const BinaryInputStream = CC( + "@mozilla.org/binaryinputstream;1", + "nsIBinaryInputStream", + "setInputStream" +); -function parseHeaders(data, start) -{ +function parseHeaders(data, start) { let headers = {}; while (true) { @@ -17,20 +18,20 @@ function parseHeaders(data, start) } let line = data.substring(start, end); start = end + 2; - if (line == "") + if (line == "") { // empty line, we're done break; + } //XXX: this doesn't handle multi-line headers. do we care? - let [name, value] = line.split(':'); + let [name, value] = line.split(":"); //XXX: not normalized, should probably use nsHttpHeaders or something headers[name] = value.trimLeft(); } return [headers, start]; } -function parseMultipartForm(request) -{ +function parseMultipartForm(request) { let boundary = null; // See if this is a multipart/form-data request, and if so, find the // boundary string @@ -48,8 +49,9 @@ function parseMultipartForm(request) } } } - if (boundary == null) + if (boundary == null) { return null; + } let body = new BinaryInputStream(request.bodyInputStream); let avail; @@ -103,16 +105,18 @@ function parseMultipartForm(request) start = end + 2; if ("Content-Disposition" in headers) { - let bits = headers["Content-Disposition"].split(';'); - if (bits[0] == 'form-data') { + let bits = headers["Content-Disposition"].split(";"); + if (bits[0] == "form-data") { for (let i = 0; i < bits.length; i++) { let b = bits[i].trimLeft(); - if (b.indexOf('name=') == 0) { + if (b.indexOf("name=") == 0) { //TODO: handle non-ascii here? let name = b.substring(6, b.length - 1); //TODO: handle multiple-value properties? - if (("Content-Type" in headers) && - (headers["Content-Type"] == "application/json")) { + if ( + "Content-Type" in headers && + headers["Content-Type"] == "application/json" + ) { formData = Object.assign(formData, JSON.parse(part)); } else { formData[name] = part; @@ -127,56 +131,52 @@ function parseMultipartForm(request) return formData; } -function handleRequest(request, response) -{ +function handleRequest(request, response) { if (request.method == "GET") { let id = null; - for (let p of request.queryString.split('&')) { - let [key, value] = p.split('='); - if (key == 'id') + for (let p of request.queryString.split("&")) { + let [key, value] = p.split("="); + if (key == "id") { id = value; + } } if (id == null) { response.setStatusLine(request.httpVersion, 400, "Bad Request"); response.write("Missing id parameter"); - } - else { + } else { let data = getState(id); if (data == "") { response.setStatusLine(request.httpVersion, 404, "Not Found"); response.write("Not Found"); - } - else { + } else { response.setHeader("Content-Type", "text/plain", false); response.write(data); } } - } - else if (request.method == "POST") { + } else if (request.method == "POST") { let formData = parseMultipartForm(request); - if (formData && 'upload_file_minidump' in formData) { + if (formData && "upload_file_minidump" in formData) { response.setHeader("Content-Type", "text/plain", false); - let uuidGenerator = Cc["@mozilla.org/uuid-generator;1"] - .getService(Ci.nsIUUIDGenerator); + let uuidGenerator = Cc["@mozilla.org/uuid-generator;1"].getService( + Ci.nsIUUIDGenerator + ); let uuid = uuidGenerator.generateUUID().toString(); // ditch the {}, add bp- prefix - uuid = 'bp-' + uuid.substring(1,uuid.length-1); + uuid = "bp-" + uuid.substring(1, uuid.length - 1); let d = JSON.stringify(formData); //dump('saving crash report ' + uuid + ': ' + d + '\n'); setState(uuid, d); response.write("CrashID=" + uuid + "\n"); - } - else { - dump('*** crashreport.sjs: Malformed request?\n'); + } else { + dump("*** crashreport.sjs: Malformed request?\n"); response.setStatusLine(request.httpVersion, 400, "Bad Request"); response.write("Missing minidump file"); } - } - else { + } else { response.setStatusLine(request.httpVersion, 405, "Method not allowed"); response.write("Can't handle HTTP method " + request.method); } diff --git a/toolkit/mozapps/extensions/test/xpinstall/authRedirect.sjs b/toolkit/mozapps/extensions/test/xpinstall/authRedirect.sjs index 85d448e2bd69..fffcb9f25587 100644 --- a/toolkit/mozapps/extensions/test/xpinstall/authRedirect.sjs +++ b/toolkit/mozapps/extensions/test/xpinstall/authRedirect.sjs @@ -3,19 +3,19 @@ function handleRequest(request, response) { if (request.hasHeader("Authorization")) { - if (request.getHeader("Authorization") == "Basic dGVzdHVzZXI6dGVzdHBhc3M=") { + if ( + request.getHeader("Authorization") == "Basic dGVzdHVzZXI6dGVzdHBhc3M=" + ) { response.setStatusLine(request.httpVersion, 302, "Found"); response.setHeader("Location", request.queryString); response.write("See " + request.queryString); - } - else { + } else { response.setStatusLine(request.httpVersion, 403, "Forbidden"); response.write("Invalid credentials"); } - } - else { + } else { response.setStatusLine(request.httpVersion, 401, "Authentication required"); - response.setHeader("WWW-Authenticate", "basic realm=\"XPInstall\"", false); + response.setHeader("WWW-Authenticate", 'basic realm="XPInstall"', false); response.write("Unauthenticated request"); } } diff --git a/toolkit/mozapps/extensions/test/xpinstall/cookieRedirect.sjs b/toolkit/mozapps/extensions/test/xpinstall/cookieRedirect.sjs index 92bccd9ec1ac..5ddc6f9bd4c3 100644 --- a/toolkit/mozapps/extensions/test/xpinstall/cookieRedirect.sjs +++ b/toolkit/mozapps/extensions/test/xpinstall/cookieRedirect.sjs @@ -1,14 +1,14 @@ // Simple script redirects to the query part of the uri if the cookie "xpinstall" // has the value "true", otherwise gives a 500 error. -function handleRequest(request, response) -{ +function handleRequest(request, response) { let cookie = null; if (request.hasHeader("Cookie")) { let cookies = request.getHeader("Cookie").split(";"); for (let i = 0; i < cookies.length; i++) { - if (cookies[i].substring(0, 10) == "xpinstall=") + if (cookies[i].substring(0, 10) == "xpinstall=") { cookie = cookies[i].substring(10); + } } } @@ -16,8 +16,7 @@ function handleRequest(request, response) response.setStatusLine(request.httpVersion, 302, "Found"); response.setHeader("Location", request.queryString); response.write("See " + request.queryString); - } - else { + } else { response.setStatusLine(request.httpVersion, 500, "Internal Server Error"); response.write("Invalid request"); } diff --git a/toolkit/mozapps/extensions/test/xpinstall/hashRedirect.sjs b/toolkit/mozapps/extensions/test/xpinstall/hashRedirect.sjs index 324a092a37e0..8137f9e58a66 100644 --- a/toolkit/mozapps/extensions/test/xpinstall/hashRedirect.sjs +++ b/toolkit/mozapps/extensions/test/xpinstall/hashRedirect.sjs @@ -2,8 +2,7 @@ // the | character. Anything before is included as the X-Target-Digest header // the latter part is used as the url to redirect to -function handleRequest(request, response) -{ +function handleRequest(request, response) { let pos = request.queryString.indexOf("|"); let header = request.queryString.substring(0, pos); let url = request.queryString.substring(pos + 1); diff --git a/toolkit/mozapps/extensions/test/xpinstall/redirect.sjs b/toolkit/mozapps/extensions/test/xpinstall/redirect.sjs index d248bfbc7f63..0466b4858639 100644 --- a/toolkit/mozapps/extensions/test/xpinstall/redirect.sjs +++ b/toolkit/mozapps/extensions/test/xpinstall/redirect.sjs @@ -2,36 +2,30 @@ // parameters from the query string configure the redirection. If the mode is // "redirect" then a redirect is returned -function handleRequest(request, response) -{ +function handleRequest(request, response) { let parts = request.queryString.split("&"); let settings = {}; parts.forEach(function(aString) { let [k, v] = aString.split("="); settings[k] = decodeURIComponent(v); - }) + }); if (settings.mode == "setup") { delete settings.mode; // Object states must be an nsISupports var state = { - settings: settings, - QueryInterface: function(aIid) { - if (aIid.equals(Components.interfaces.nsISupports)) - return settings; - throw Components.results.NS_ERROR_NO_INTERFACE; - } - } + settings, + QueryInterface: ChromeUtils.generateQI([]), + }; state.wrappedJSObject = state; setObjectState("xpinstall-redirect-settings", state); response.setStatusLine(request.httpVersion, 200, "Ok"); response.setHeader("Content-Type", "text/plain"); response.write("Setup complete"); - } - else if (settings.mode == "redirect") { + } else if (settings.mode == "redirect") { getObjectState("xpinstall-redirect-settings", function(aObject) { settings = aObject.wrappedJSObject.settings; }); diff --git a/toolkit/mozapps/extensions/test/xpinstall/slowinstall.sjs b/toolkit/mozapps/extensions/test/xpinstall/slowinstall.sjs index 3998edfa2e7c..f988b2f24911 100644 --- a/toolkit/mozapps/extensions/test/xpinstall/slowinstall.sjs +++ b/toolkit/mozapps/extensions/test/xpinstall/slowinstall.sjs @@ -1,8 +1,8 @@ -Cu.import("resource://gre/modules/Services.jsm"); -Cu.import("resource://gre/modules/osfile.jsm"); -Cu.import("resource://gre/modules/NetUtil.jsm"); +let { Services } = ChromeUtils.import("resource://gre/modules/Services.jsm"); +let { OS } = ChromeUtils.import("resource://gre/modules/osfile.jsm"); +let { NetUtil } = ChromeUtils.import("resource://gre/modules/NetUtil.jsm"); -const RELATIVE_PATH = "browser/toolkit/mozapps/extensions/test/xpinstall" +const RELATIVE_PATH = "browser/toolkit/mozapps/extensions/test/xpinstall"; const NOTIFICATION_TOPIC = "slowinstall-complete"; /** @@ -20,8 +20,9 @@ function parseQueryString(aQueryString) { var params = {}; for (var i = 0, sz = paramArray.length; i < sz; i++) { var match = regex.exec(paramArray[i]); - if (!match) + if (!match) { throw "Bad parameter in queryString! '" + paramArray[i] + "'"; + } params[decodeURIComponent(match[1])] = decodeURIComponent(match[2]); } @@ -38,9 +39,10 @@ function handleRequest(aRequest, aResponse) { aResponse.setStatusLine(aRequest.httpVersion, 200, "OK"); - var params = { }; - if (aRequest.queryString) + var params = {}; + if (aRequest.queryString) { params = parseQueryString(aRequest.queryString); + } if (params.file) { let xpiFile = ""; @@ -54,16 +56,16 @@ function handleRequest(aRequest, aResponse) { // nsIOutputStream so here we are. let file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsIFile); file.initWithPath(xpiFile); - let stream = Cc["@mozilla.org/network/file-input-stream;1"]. - createInstance(Ci.nsIFileInputStream); + let stream = Cc[ + "@mozilla.org/network/file-input-stream;1" + ].createInstance(Ci.nsIFileInputStream); stream.init(file, -1, -1, stream.DEFER_OPEN + stream.CLOSE_ON_EOF); NetUtil.asyncCopy(stream, aResponse.bodyOutputStream, () => { LOG("Download complete"); aResponse.finish(); }); - } - catch (e) { + } catch (e) { LOG("Exception " + e); } } @@ -74,7 +76,7 @@ function handleRequest(aRequest, aResponse) { resolve(); } - Services.obs.addObserver(complete, NOTIFICATION_TOPIC, false); + Services.obs.addObserver(complete, NOTIFICATION_TOPIC); }); aResponse.processAsync(); @@ -91,9 +93,10 @@ function handleRequest(aRequest, aResponse) { waitForComplete.then(complete_download); }); }); - } - else if (params.continue) { - dump("slowinstall.sjs: Received signal to complete all current downloads.\n"); - Services.obs.notifyObservers(null, NOTIFICATION_TOPIC, null); + } else if (params.continue) { + dump( + "slowinstall.sjs: Received signal to complete all current downloads.\n" + ); + Services.obs.notifyObservers(null, NOTIFICATION_TOPIC); } } diff --git a/toolkit/mozapps/update/tests/data/app_update.sjs b/toolkit/mozapps/update/tests/data/app_update.sjs index cdd9e5226826..7e059cfad4d8 100644 --- a/toolkit/mozapps/update/tests/data/app_update.sjs +++ b/toolkit/mozapps/update/tests/data/app_update.sjs @@ -55,7 +55,7 @@ var gSlowDownloadTimer; var gSlowCheckTimer; function handleRequest(aRequest, aResponse) { - let params = { }; + let params = {}; if (aRequest.queryString) { params = parseQueryString(aRequest.queryString); } @@ -83,33 +83,39 @@ function handleRequest(aRequest, aResponse) { let retries = 0; gSlowDownloadTimer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); - gSlowDownloadTimer.initWithCallback(function(aTimer) { - let continueFile = getTestDataFile(CONTINUE_DOWNLOAD); - retries++; - if (continueFile.exists() || retries == MAX_SLOW_RESPONSE_RETRIES) { - try { - // If the continue file is in use try again the next time the timer - // fires unless the retries has reached the value defined by - // MAX_SLOW_RESPONSE_RETRIES in which case let the test remove the - // continue file. - if (retries < MAX_SLOW_RESPONSE_RETRIES) { - continueFile.remove(false); - } - gSlowDownloadTimer.cancel(); - aResponse.write(readFileBytes(getTestDataFile(FILE_SIMPLE_MAR))); - aResponse.finish(); - } catch (e) { + gSlowDownloadTimer.initWithCallback( + function(aTimer) { + let continueFile = getTestDataFile(CONTINUE_DOWNLOAD); + retries++; + if (continueFile.exists() || retries == MAX_SLOW_RESPONSE_RETRIES) { + try { + // If the continue file is in use try again the next time the timer + // fires unless the retries has reached the value defined by + // MAX_SLOW_RESPONSE_RETRIES in which case let the test remove the + // continue file. + if (retries < MAX_SLOW_RESPONSE_RETRIES) { + continueFile.remove(false); + } + gSlowDownloadTimer.cancel(); + aResponse.write(readFileBytes(getTestDataFile(FILE_SIMPLE_MAR))); + aResponse.finish(); + } catch (e) {} } - } - }, SLOW_RESPONSE_INTERVAL, Ci.nsITimer.TYPE_REPEATING_SLACK); + }, + SLOW_RESPONSE_INTERVAL, + Ci.nsITimer.TYPE_REPEATING_SLACK + ); return; } if (params.uiURL) { - aResponse.write("" + - params.uiURL + "

this is a test mar that will not " + - "affect your build."); + aResponse.write( + '' + + params.uiURL + + "

this is a test mar that will not " + + "affect your build." + ); return; } @@ -125,10 +131,13 @@ function handleRequest(aRequest, aResponse) { if (params.unsupported) { let detailsURL = params.detailsURL ? params.detailsURL : URL_HOST; - let unsupportedXML = getRemoteUpdatesXMLString(" \n"); + let unsupportedXML = getRemoteUpdatesXMLString( + ' \n' + ); respond(aResponse, params, unsupportedXML); return; } @@ -143,17 +152,13 @@ function handleRequest(aRequest, aResponse) { } if (!params.partialPatchOnly) { size = SIZE_SIMPLE_MAR + (params.invalidCompleteSize ? "1" : ""); - let patchProps = {type: "complete", - url, - size}; + let patchProps = { type: "complete", url, size }; patches += getRemotePatchString(patchProps); } if (!params.completePatchOnly) { size = SIZE_SIMPLE_MAR + (params.invalidPartialSize ? "1" : ""); - let patchProps = {type: "partial", - url, - size}; + let patchProps = { type: "partial", url, size }; patches += getRemotePatchString(patchProps); } @@ -196,25 +201,28 @@ function respond(aResponse, aParams, aResponseString) { let retries = 0; aResponse.processAsync(); gSlowCheckTimer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); - gSlowCheckTimer.initWithCallback(function(aTimer) { - retries++; - let continueFile = getTestDataFile(CONTINUE_CHECK); - if (continueFile.exists() || retries == MAX_SLOW_RESPONSE_RETRIES) { - try { - // If the continue file is in use try again the next time the timer - // fires unless the retries has reached the value defined by - // MAX_SLOW_RESPONSE_RETRIES in which case let the test remove the - // continue file. - if (retries < MAX_SLOW_RESPONSE_RETRIES) { - continueFile.remove(false); - } - gSlowCheckTimer.cancel(); - aResponse.write(aResponseString); - aResponse.finish(); - } catch (e) { + gSlowCheckTimer.initWithCallback( + function(aTimer) { + retries++; + let continueFile = getTestDataFile(CONTINUE_CHECK); + if (continueFile.exists() || retries == MAX_SLOW_RESPONSE_RETRIES) { + try { + // If the continue file is in use try again the next time the timer + // fires unless the retries has reached the value defined by + // MAX_SLOW_RESPONSE_RETRIES in which case let the test remove the + // continue file. + if (retries < MAX_SLOW_RESPONSE_RETRIES) { + continueFile.remove(false); + } + gSlowCheckTimer.cancel(); + aResponse.write(aResponseString); + aResponse.finish(); + } catch (e) {} } - } - }, SLOW_RESPONSE_INTERVAL, Ci.nsITimer.TYPE_REPEATING_SLACK); + }, + SLOW_RESPONSE_INTERVAL, + Ci.nsITimer.TYPE_REPEATING_SLACK + ); } else { aResponse.write(aResponseString); } @@ -238,7 +246,8 @@ function parseQueryString(aQueryString) { if (!match) { throw Components.Exception( "Bad parameter in queryString! '" + paramArray[i] + "'", - Cr.NS_ERROR_ILLEGAL_VALUE); + Cr.NS_ERROR_ILLEGAL_VALUE + ); } params[decodeURIComponent(match[1])] = decodeURIComponent(match[2]); } diff --git a/tools/profiler/tests/browser/redirect.sjs b/tools/profiler/tests/browser/redirect.sjs index 9953e75a52b7..2a325c3d0bc1 100644 --- a/tools/profiler/tests/browser/redirect.sjs +++ b/tools/profiler/tests/browser/redirect.sjs @@ -1,4 +1,8 @@ function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 301, "Moved Permanently"); - response.setHeader("Location", decodeURIComponent(request.queryString), false); + response.setHeader( + "Location", + decodeURIComponent(request.queryString), + false + ); } diff --git a/uriloader/exthandler/tests/mochitest/download.sjs b/uriloader/exthandler/tests/mochitest/download.sjs index bee7bd70154c..d02d2b73558e 100644 --- a/uriloader/exthandler/tests/mochitest/download.sjs +++ b/uriloader/exthandler/tests/mochitest/download.sjs @@ -1,7 +1,5 @@ "use strict"; -Cu.import("resource://gre/modules/Timer.jsm"); - function actuallyHandleRequest(req, res) { res.setHeader("Content-Type", "application/octet-stream", false); res.write("abc123"); @@ -9,10 +7,12 @@ function actuallyHandleRequest(req, res) { } function handleRequest(req, res) { - if (req.queryString.includes('finish')) { + if (req.queryString.includes("finish")) { res.write("OK"); let downloadReq = null; - getObjectState("downloadReq", o => { downloadReq = o }); + getObjectState("downloadReq", o => { + downloadReq = o; + }); // Two possibilities: either the download request has already reached us, or not. if (downloadReq) { downloadReq.wrappedJSObject.callback(); @@ -20,7 +20,7 @@ function handleRequest(req, res) { // Set a variable to allow the request to complete immediately: setState("finishReq", "true"); } - } else if (req.queryString.includes('reset')) { + } else if (req.queryString.includes("reset")) { res.write("OK"); setObjectState("downloadReq", null); setState("finishReq", "false"); @@ -29,7 +29,11 @@ function handleRequest(req, res) { if (getState("finishReq") === "true") { actuallyHandleRequest(req, res); } else { - let o = {callback() { actuallyHandleRequest(req, res) }}; + let o = { + callback() { + actuallyHandleRequest(req, res); + }, + }; o.wrappedJSObject = o; o.QueryInterface = () => o; setObjectState("downloadReq", o); diff --git a/uriloader/exthandler/tests/mochitest/invalidCharFileExtension.sjs b/uriloader/exthandler/tests/mochitest/invalidCharFileExtension.sjs index d12e2904d9bd..8afa04cfe091 100644 --- a/uriloader/exthandler/tests/mochitest/invalidCharFileExtension.sjs +++ b/uriloader/exthandler/tests/mochitest/invalidCharFileExtension.sjs @@ -5,10 +5,14 @@ function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 200, "OK"); - if (!request.queryString.match(/^name=/)) + if (!request.queryString.match(/^name=/)) { return; + } var name = decodeURIComponent(request.queryString.substring(5)); - response.setHeader("Content-Type", "image/png; name=\"" + name + "\""); - response.setHeader("Content-Disposition", "attachment; filename=\"" + name + "\""); + response.setHeader("Content-Type", 'image/png; name="' + name + '"'); + response.setHeader( + "Content-Disposition", + 'attachment; filename="' + name + '"' + ); } diff --git a/uriloader/exthandler/tests/mochitest/redirect_helper.sjs b/uriloader/exthandler/tests/mochitest/redirect_helper.sjs index 1d66c1e9316b..bf96b213eb71 100644 --- a/uriloader/exthandler/tests/mochitest/redirect_helper.sjs +++ b/uriloader/exthandler/tests/mochitest/redirect_helper.sjs @@ -7,6 +7,8 @@ Cu.importGlobalProperties(["URLSearchParams"]); function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 302, "Moved Temporarily"); - response.setHeader("Location", new URLSearchParams(request.queryString).get("uri")); + response.setHeader( + "Location", + new URLSearchParams(request.queryString).get("uri") + ); } - diff --git a/uriloader/exthandler/tests/mochitest/unsafeBidiFileName.sjs b/uriloader/exthandler/tests/mochitest/unsafeBidiFileName.sjs index 48301be5b4cf..4f88ff6de260 100644 --- a/uriloader/exthandler/tests/mochitest/unsafeBidiFileName.sjs +++ b/uriloader/exthandler/tests/mochitest/unsafeBidiFileName.sjs @@ -5,10 +5,14 @@ function handleRequest(request, response) { response.setStatusLine(request.httpVersion, 200, "OK"); - if (!request.queryString.match(/^name=/)) + if (!request.queryString.match(/^name=/)) { return; + } var name = decodeURIComponent(request.queryString.substring(5)); - response.setHeader("Content-Type", "application/octet-stream; name=\"" + name + "\""); - response.setHeader("Content-Disposition", "inline; filename=\"" + name + "\""); + response.setHeader( + "Content-Type", + 'application/octet-stream; name="' + name + '"' + ); + response.setHeader("Content-Disposition", 'inline; filename="' + name + '"'); }