summaryrefslogtreecommitdiff
path: root/browser/devtools/webconsole/test/browser_webconsole_network_panel.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/devtools/webconsole/test/browser_webconsole_network_panel.js')
-rw-r--r--browser/devtools/webconsole/test/browser_webconsole_network_panel.js543
1 files changed, 0 insertions, 543 deletions
diff --git a/browser/devtools/webconsole/test/browser_webconsole_network_panel.js b/browser/devtools/webconsole/test/browser_webconsole_network_panel.js
deleted file mode 100644
index 678597224..000000000
--- a/browser/devtools/webconsole/test/browser_webconsole_network_panel.js
+++ /dev/null
@@ -1,543 +0,0 @@
-/* vim:set ts=2 sw=2 sts=2 et: */
-/* This Source Code Form is subject to the terms of the Mozilla Public
- * 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/. */
-
-// Tests that the network panel works.
-
-const TEST_URI = "http://example.com/browser/browser/devtools/webconsole/test/test-console.html";
-const TEST_IMG = "http://example.com/browser/browser/devtools/webconsole/test/test-image.png";
-const TEST_ENCODING_ISO_8859_1 = "http://example.com/browser/browser/devtools/webconsole/test/test-encoding-ISO-8859-1.html";
-
-const TEST_IMG_BASE64 =
- "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAVRJREFU" +
- "OI2lk7FLw0AUxr+YpC1CBqcMWfsvCCLdXFzqEJCgDl1EQRGxg9AhSBEJONhFhG52UCuFDjq5dxD8" +
- "FwoO0qGDOBQkl7vLOeWa2EQDffDBvTu+373Hu1OEEJgntGgxGD6J+7fLXKbt5VNUyhsKAChRBQcP" +
- "FVFeWskFGH694mZroCQqCLlAwPxcgJBP254CmAD5B7C7dgHLMLF3uzoL4DQEod+Z5sP1FizDxGgy" +
- "BqfhLID9AahX29J89bwPFgMsSEAQglAf9WobhPpScbPXr4FQHyzIADTsDizDRMPuIOC+zEeTMZo9" +
- "BwH3EfAMACccbtfGaDKGZZg423yUZrdrg3EqxQlPr0BTdTR7joREN2uqnlBmCwW1hIJagtev4f3z" +
- "A16/JvfiigMSYyzqJXlw/XKUyOORMUaBor6YavgdjKa8xGOnidadmwtwsnMu18q83/kHSou+bFND" +
- "Dr4AAAAASUVORK5CYII=";
-
-let testDriver;
-
-function test() {
- addTab(TEST_URI);
- browser.addEventListener("load", function onLoad() {
- browser.removeEventListener("load", onLoad, true);
- openConsole(null, testNetworkPanel);
- }, true);
-}
-
-function testNetworkPanel() {
- testDriver = testGen();
- testDriver.next();
-}
-
-function checkIsVisible(aPanel, aList) {
- for (let id in aList) {
- let node = aPanel.document.getElementById(id);
- let isVisible = aList[id];
- is(node.style.display, (isVisible ? "block" : "none"), id + " isVisible=" + isVisible);
- }
-}
-
-function checkNodeContent(aPanel, aId, aContent) {
- let node = aPanel.document.getElementById(aId);
- if (node == null) {
- ok(false, "Tried to access node " + aId + " that doesn't exist!");
- }
- else if (node.textContent.indexOf(aContent) != -1) {
- ok(true, "checking content of " + aId);
- }
- else {
- ok(false, "Got false value for " + aId + ": " + node.textContent + " doesn't have " + aContent);
- }
-}
-
-function checkNodeKeyValue(aPanel, aId, aKey, aValue) {
- let node = aPanel.document.getElementById(aId);
-
- let headers = node.querySelectorAll("th");
- for (let i = 0; i < headers.length; i++) {
- if (headers[i].textContent == (aKey + ":")) {
- is(headers[i].nextElementSibling.textContent, aValue,
- "checking content of " + aId + " for key " + aKey);
- return;
- }
- }
-
- ok(false, "content check failed for " + aId + ", key " + aKey);
-}
-
-function testGen() {
- let hud = HUDService.getHudByWindow(content);
- let filterBox = hud.ui.filterBox;
-
- let httpActivity = {
- updates: [],
- discardRequestBody: true,
- discardResponseBody: true,
- startedDateTime: (new Date()).toISOString(),
- request: {
- url: "http://www.testpage.com",
- method: "GET",
- cookies: [],
- headers: [
- { name: "foo", value: "bar" },
- ],
- },
- response: {
- headers: [],
- content: {},
- cookies: [],
- },
- timings: {},
- };
-
- let networkPanel = hud.ui.openNetworkPanel(filterBox, httpActivity);
-
- is(filterBox._netPanel, networkPanel,
- "Network panel stored on the anchor object");
-
- networkPanel._onUpdate = function() {
- networkPanel._onUpdate = null;
- executeSoon(function() {
- testDriver.next();
- });
- };
-
- yield;
-
- info("test 1");
-
- checkIsVisible(networkPanel, {
- requestCookie: false,
- requestFormData: false,
- requestBody: false,
- responseContainer: false,
- responseBody: false,
- responseNoBody: false,
- responseImage: false,
- responseImageCached: false
- });
-
- checkNodeContent(networkPanel, "header", "http://www.testpage.com");
- checkNodeContent(networkPanel, "header", "GET");
- checkNodeKeyValue(networkPanel, "requestHeadersContent", "foo", "bar");
-
- // Test request body.
- info("test 2: request body");
- httpActivity.discardRequestBody = false;
- httpActivity.request.postData = { text: "hello world" };
- networkPanel.update();
-
- checkIsVisible(networkPanel, {
- requestBody: true,
- requestFormData: false,
- requestCookie: false,
- responseContainer: false,
- responseBody: false,
- responseNoBody: false,
- responseImage: false,
- responseImageCached: false
- });
- checkNodeContent(networkPanel, "requestBodyContent", "hello world");
-
- // Test response header.
- info("test 3: response header");
- httpActivity.timings.wait = 10;
- httpActivity.response.httpVersion = "HTTP/3.14";
- httpActivity.response.status = 999;
- httpActivity.response.statusText = "earthquake win";
- httpActivity.response.content.mimeType = "text/html";
- httpActivity.response.headers.push(
- { name: "Content-Type", value: "text/html" },
- { name: "leaveHouses", value: "true" }
- );
-
- networkPanel.update();
-
- checkIsVisible(networkPanel, {
- requestBody: true,
- requestFormData: false,
- requestCookie: false,
- responseContainer: true,
- responseBody: false,
- responseNoBody: false,
- responseImage: false,
- responseImageCached: false
- });
-
- checkNodeContent(networkPanel, "header", "HTTP/3.14 999 earthquake win");
- checkNodeKeyValue(networkPanel, "responseHeadersContent", "leaveHouses", "true");
- checkNodeContent(networkPanel, "responseHeadersInfo", "10ms");
-
- info("test 4");
-
- httpActivity.discardResponseBody = false;
- httpActivity.timings.receive = 2;
- networkPanel.update();
-
- checkIsVisible(networkPanel, {
- requestBody: true,
- requestCookie: false,
- requestFormData: false,
- responseContainer: true,
- responseBody: false,
- responseNoBody: false,
- responseImage: false,
- responseImageCached: false
- });
-
- info("test 5");
-
- httpActivity.updates.push("responseContent", "eventTimings");
- networkPanel.update();
-
- checkNodeContent(networkPanel, "responseNoBodyInfo", "2ms");
- checkIsVisible(networkPanel, {
- requestBody: true,
- requestCookie: false,
- responseContainer: true,
- responseBody: false,
- responseNoBody: true,
- responseImage: false,
- responseImageCached: false
- });
-
- networkPanel.panel.hidePopup();
-
- // Second run: Test for cookies and response body.
- info("test 6: cookies and response body");
- httpActivity.request.cookies.push(
- { name: "foo", value: "bar" },
- { name: "hello", value: "world" }
- );
- httpActivity.response.content.text = "get out here";
-
- networkPanel = hud.ui.openNetworkPanel(filterBox, httpActivity);
- is(filterBox._netPanel, networkPanel,
- "Network panel stored on httpActivity object");
-
- networkPanel._onUpdate = function() {
- networkPanel._onUpdate = null;
- executeSoon(function() {
- testDriver.next();
- });
- };
-
- yield;
-
- checkIsVisible(networkPanel, {
- requestBody: true,
- requestFormData: false,
- requestCookie: true,
- responseContainer: true,
- responseCookie: false,
- responseBody: true,
- responseNoBody: false,
- responseImage: false,
- responseImageCached: false
- });
-
- checkNodeKeyValue(networkPanel, "requestCookieContent", "foo", "bar");
- checkNodeKeyValue(networkPanel, "requestCookieContent", "hello", "world");
- checkNodeContent(networkPanel, "responseBodyContent", "get out here");
- checkNodeContent(networkPanel, "responseBodyInfo", "2ms");
-
- networkPanel.panel.hidePopup();
-
- // Third run: Test for response cookies.
- info("test 6b: response cookies");
- httpActivity.response.cookies.push(
- { name: "foobar", value: "boom" },
- { name: "foobaz", value: "omg" }
- );
-
- networkPanel = hud.ui.openNetworkPanel(filterBox, httpActivity);
- is(filterBox._netPanel, networkPanel,
- "Network panel stored on httpActivity object");
-
- networkPanel._onUpdate = function() {
- networkPanel._onUpdate = null;
- executeSoon(function() {
- testDriver.next();
- });
- };
-
- yield;
-
- checkIsVisible(networkPanel, {
- requestBody: true,
- requestFormData: false,
- requestCookie: true,
- responseContainer: true,
- responseCookie: true,
- responseBody: true,
- responseNoBody: false,
- responseImage: false,
- responseImageCached: false,
- responseBodyFetchLink: false,
- });
-
- checkNodeKeyValue(networkPanel, "responseCookieContent", "foobar", "boom");
- checkNodeKeyValue(networkPanel, "responseCookieContent", "foobaz", "omg");
-
- networkPanel.panel.hidePopup();
-
- // Check image request.
- info("test 7: image request");
- httpActivity.response.headers[1].value = "image/png";
- httpActivity.response.content.mimeType = "image/png";
- httpActivity.response.content.text = TEST_IMG_BASE64;
- httpActivity.request.url = TEST_IMG;
-
- networkPanel = hud.ui.openNetworkPanel(filterBox, httpActivity);
- networkPanel._onUpdate = function() {
- networkPanel._onUpdate = null;
- executeSoon(function() {
- testDriver.next();
- });
- };
-
- yield;
-
- checkIsVisible(networkPanel, {
- requestBody: true,
- requestFormData: false,
- requestCookie: true,
- responseContainer: true,
- responseBody: false,
- responseNoBody: false,
- responseImage: true,
- responseImageCached: false,
- responseBodyFetchLink: false,
- });
-
- let imgNode = networkPanel.document.getElementById("responseImageNode");
- is(imgNode.getAttribute("src"), "data:image/png;base64," + TEST_IMG_BASE64,
- "Displayed image is correct");
-
- function checkImageResponseInfo() {
- checkNodeContent(networkPanel, "responseImageInfo", "2ms");
- checkNodeContent(networkPanel, "responseImageInfo", "16x16px");
- }
-
- // Check if the image is loaded already.
- imgNode.addEventListener("load", function onLoad() {
- imgNode.removeEventListener("load", onLoad, false);
- checkImageResponseInfo();
- networkPanel.panel.hidePopup();
- testDriver.next();
- }, false);
- yield;
-
- // Check cached image request.
- info("test 8: cached image request");
- httpActivity.response.httpVersion = "HTTP/1.1";
- httpActivity.response.status = 304;
- httpActivity.response.statusText = "Not Modified";
-
- networkPanel = hud.ui.openNetworkPanel(filterBox, httpActivity);
- networkPanel._onUpdate = function() {
- networkPanel._onUpdate = null;
- executeSoon(function() {
- testDriver.next();
- });
- };
-
- yield;
-
- checkIsVisible(networkPanel, {
- requestBody: true,
- requestFormData: false,
- requestCookie: true,
- responseContainer: true,
- responseBody: false,
- responseNoBody: false,
- responseImage: false,
- responseImageCached: true
- });
-
- let imgNode = networkPanel.document.getElementById("responseImageCachedNode");
- is(imgNode.getAttribute("src"), "data:image/png;base64," + TEST_IMG_BASE64,
- "Displayed image is correct");
-
- networkPanel.panel.hidePopup();
-
- // Test sent form data.
- info("test 9: sent form data");
- httpActivity.request.postData.text = [
- "Content-Type: application/x-www-form-urlencoded",
- "Content-Length: 59",
- "name=rob&age=20"
- ].join("\n");
-
- networkPanel = hud.ui.openNetworkPanel(filterBox, httpActivity);
- networkPanel._onUpdate = function() {
- networkPanel._onUpdate = null;
- executeSoon(function() {
- testDriver.next();
- });
- };
-
- yield;
-
- checkIsVisible(networkPanel, {
- requestBody: false,
- requestFormData: true,
- requestCookie: true,
- responseContainer: true,
- responseBody: false,
- responseNoBody: false,
- responseImage: false,
- responseImageCached: true
- });
-
- checkNodeKeyValue(networkPanel, "requestFormDataContent", "name", "rob");
- checkNodeKeyValue(networkPanel, "requestFormDataContent", "age", "20");
- networkPanel.panel.hidePopup();
-
- // Test no space after Content-Type:
- info("test 10: no space after Content-Type header in post data");
- httpActivity.request.postData.text = "Content-Type:application/x-www-form-urlencoded\n";
-
- networkPanel = hud.ui.openNetworkPanel(filterBox, httpActivity);
- networkPanel._onUpdate = function() {
- networkPanel._onUpdate = null;
- executeSoon(function() {
- testDriver.next();
- });
- };
-
- yield;
-
- checkIsVisible(networkPanel, {
- requestBody: false,
- requestFormData: true,
- requestCookie: true,
- responseContainer: true,
- responseBody: false,
- responseNoBody: false,
- responseImage: false,
- responseImageCached: true
- });
-
- networkPanel.panel.hidePopup();
-
- // Test cached data.
-
- info("test 11: cached data");
-
- httpActivity.request.url = TEST_ENCODING_ISO_8859_1;
- httpActivity.response.headers[1].value = "application/json";
- httpActivity.response.content.mimeType = "application/json";
- httpActivity.response.content.text = "my cached data is here!";
-
- networkPanel = hud.ui.openNetworkPanel(filterBox, httpActivity);
- networkPanel._onUpdate = function() {
- networkPanel._onUpdate = null;
- executeSoon(function() {
- testDriver.next();
- });
- };
-
- yield;
-
- checkIsVisible(networkPanel, {
- requestBody: false,
- requestFormData: true,
- requestCookie: true,
- responseContainer: true,
- responseBody: false,
- responseBodyCached: true,
- responseNoBody: false,
- responseImage: false,
- responseImageCached: false
- });
-
- checkNodeContent(networkPanel, "responseBodyCachedContent",
- "my cached data is here!");
-
- networkPanel.panel.hidePopup();
-
- // Test a response with a content type that can't be displayed in the
- // NetworkPanel.
- info("test 12: unknown content type");
- httpActivity.response.headers[1].value = "application/x-shockwave-flash";
- httpActivity.response.content.mimeType = "application/x-shockwave-flash";
-
- networkPanel = hud.ui.openNetworkPanel(filterBox, httpActivity);
- networkPanel._onUpdate = function() {
- networkPanel._onUpdate = null;
- executeSoon(function() {
- testDriver.next();
- });
- };
-
- yield;
-
- checkIsVisible(networkPanel, {
- requestBody: false,
- requestFormData: true,
- requestCookie: true,
- responseContainer: true,
- responseBody: false,
- responseBodyCached: false,
- responseBodyUnknownType: true,
- responseNoBody: false,
- responseImage: false,
- responseImageCached: false
- });
-
- let responseString =
- WCU_l10n.getFormatStr("NetworkPanel.responseBodyUnableToDisplay.content",
- ["application/x-shockwave-flash"]);
- checkNodeContent(networkPanel, "responseBodyUnknownTypeContent", responseString);
- networkPanel.panel.hidePopup();
-
- /*
-
- // This test disabled. See bug 603620.
-
- // Test if the NetworkPanel figures out the content type based on an URL as
- // well.
- delete httpActivity.response.header["Content-Type"];
- httpActivity.url = "http://www.test.com/someCrazyFile.swf?done=right&ending=txt";
-
- networkPanel = hud.ui.openNetworkPanel(filterBox, httpActivity);
- networkPanel.isDoneCallback = function NP_doneCallback() {
- networkPanel.isDoneCallback = null;
- testDriver.next();
- }
-
- yield;
-
- checkIsVisible(networkPanel, {
- requestBody: false,
- requestFormData: true,
- requestCookie: true,
- responseContainer: true,
- responseBody: false,
- responseBodyCached: false,
- responseBodyUnknownType: true,
- responseNoBody: false,
- responseImage: false,
- responseImageCached: false
- });
-
- // Systems without Flash installed will return an empty string here. Ignore.
- if (networkPanel.document.getElementById("responseBodyUnknownTypeContent").textContent !== "")
- checkNodeContent(networkPanel, "responseBodyUnknownTypeContent", responseString);
- else
- ok(true, "Flash not installed");
-
- networkPanel.panel.hidePopup(); */
-
- // All done!
- testDriver = null;
- executeSoon(finishTest);
-
- yield;
-}