Bug 1408931 - Enable browser_webconsole_csp_ignore_reflected_xss_message.js in the new console frontend; r=jdescottes.
This also renames the support files.
MozReview-Commit-ID: 9TqERvD5EFA
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser.ini
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser.ini
@@ -10,18 +10,18 @@ support-files =
source-mapped.css
source-mapped.css.map
source-mapped.scss
test_bug_1010953_cspro.html
test_bug_1010953_cspro.html^headers^
test_bug_1247459_violation.html
test_bug_770099_violation.html
test_bug_770099_violation.html^headers^
- test_bug1045902_console_csp_ignore_reflected_xss_message.html
- test_bug1045902_console_csp_ignore_reflected_xss_message.html^headers^
+ test_console_csp_ignore_reflected_xss_message.html
+ test_console_csp_ignore_reflected_xss_message.html^headers^
test_bug1092055_shouldwarn.html
test_bug1092055_shouldwarn.js
test_bug1092055_shouldwarn.js^headers^
test_hpkp-invalid-headers.sjs
test_hsts-invalid-headers.sjs
test-autocomplete-in-stackframe.html
test-batching.html
test-bug_1050691_click_function_to_source.html
@@ -251,18 +251,17 @@ subsuite = clipboard
skip-if = (os == 'linux' && bits == 32 && debug) # bug 1328915, disable linux32 debug devtools for timeouts
[browser_webconsole_context_menu_copy_object.js]
subsuite = clipboard
[browser_webconsole_context_menu_open_url.js]
[browser_webconsole_context_menu_store_as_global.js]
[browser_webconsole_copy_link_location.js]
skip-if = true # Bug 1401944
[browser_webconsole_csp_ignore_reflected_xss_message.js]
-skip-if = true # Bug 1408931
-# old console skip-if = (e10s && debug) || (e10s && os == 'win') # Bug 1221499 enabled these on windows
+skip-if = (e10s && debug) || (e10s && os == 'win') # Bug 1221499 enabled these on windows
[browser_webconsole_cspro.js]
skip-if = true # Bug 1408932
# old console skip-if = e10s && (os == 'win' || os == 'mac') # Bug 1243967
[browser_webconsole_ctrl_key_nav.js]
skip-if = true # Bug 1408933
# old console skip-if = os != "mac"
[browser_webconsole_deactivateHUDForContext_unfocused_window.js]
skip-if = true # Bug 1408934
--- a/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_csp_ignore_reflected_xss_message.js
+++ b/devtools/client/webconsole/new-console-output/test/mochitest/browser_webconsole_csp_ignore_reflected_xss_message.js
@@ -1,52 +1,31 @@
/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
/* vim: set ft=javascript ts=2 et sw=2 tw=80: */
/* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/ */
// Tests that a file with an unsupported CSP directive ('reflected-xss filter')
-// displays the appropriate message to the console.
+// displays the appropriate message to the console. See Bug 1045902.
"use strict";
const EXPECTED_RESULT = "Not supporting directive \u2018reflected-xss\u2019. " +
"Directive and values will be ignored.";
-const TEST_FILE = "http://example.com/browser/devtools/client/webconsole/" +
- "test/test_bug1045902_console_csp_ignore_reflected_xss_" +
- "message.html";
-
-var hud = undefined;
-
-var TEST_URI = "data:text/html;charset=utf8,Web Console CSP ignoring " +
- "reflected XSS (bug 1045902)";
+const TEST_FILE =
+ "http://example.com/browser/devtools/client/webconsole/new-console-output/test/" +
+ "mochitest/test_console_csp_ignore_reflected_xss_message.html";
-add_task(function* () {
- let { browser } = yield loadTab(TEST_URI);
-
- hud = yield openConsole();
+const TEST_URI =
+ "data:text/html;charset=utf8,Web Console CSP ignoring reflected XSS (bug 1045902)";
- yield loadDocument(browser);
- yield testViolationMessage();
-
- hud = null;
-});
+const cache = Cc["@mozilla.org/netwerk/cache-storage-service;1"]
+ .getService(Ci.nsICacheStorageService);
-function loadDocument(browser) {
- hud.jsterm.clearOutput();
- browser.loadURI(TEST_FILE);
- return BrowserTestUtils.browserLoaded(browser);
-}
-
-function testViolationMessage() {
- let aOutputNode = hud.outputNode;
+add_task(async function () {
+ const hud = await openNewTabAndConsole(TEST_URI);
+ await loadDocument(TEST_FILE);
- return waitForSuccess({
- name: "Confirming that CSP logs messages to the console when " +
- "\u2018reflected-xss\u2019 directive is used!",
- validator: function () {
- console.log(aOutputNode.textContent);
- let success = false;
- success = aOutputNode.textContent.indexOf(EXPECTED_RESULT) > -1;
- return success;
- }
- });
-}
+ await waitFor(() => findMessage(hud, EXPECTED_RESULT, ".message.warn"));
+ ok(true, `CSP logs displayed in console when using "reflected-xss" directive`);
+
+ cache.clear();
+});
rename from devtools/client/webconsole/new-console-output/test/mochitest/test_bug1045902_console_csp_ignore_reflected_xss_message.html
rename to devtools/client/webconsole/new-console-output/test/mochitest/test_console_csp_ignore_reflected_xss_message.html
rename from devtools/client/webconsole/new-console-output/test/mochitest/test_bug1045902_console_csp_ignore_reflected_xss_message.html^headers^
rename to devtools/client/webconsole/new-console-output/test/mochitest/test_console_csp_ignore_reflected_xss_message.html^headers^