Backed out changeset fca556472346 (bug 1288885)

--HG--
rename : toolkit/components/extensions/test/xpcshell/test_ext_background_generated_load_events.js => toolkit/components/extensions/test/mochitest/test_ext_background_generated_load_events.html
rename : toolkit/components/extensions/test/xpcshell/test_ext_background_generated_reload.js => toolkit/components/extensions/test/mochitest/test_ext_background_generated_reload.html
rename : toolkit/components/extensions/test/xpcshell/test_ext_background_sub_windows.js => toolkit/components/extensions/test/mochitest/test_ext_background_sub_windows.html
rename : toolkit/components/extensions/test/xpcshell/test_ext_background_window_properties.js => toolkit/components/extensions/test/mochitest/test_ext_background_window_properties.html
This commit is contained in:
Sebastian Hengst 2016-07-28 10:06:34 +02:00
parent 37588ab145
commit b864225bf1
8 changed files with 148 additions and 59 deletions

View File

@ -71,8 +71,12 @@ skip-if = (os == 'android' || buildapp == 'b2g') # sender.tab is undefined on b2
[test_ext_storage_tab.html]
skip-if = os == 'android' # Android does not currently support tabs.
[test_ext_cookies.html]
[test_ext_background_window_properties.html]
[test_ext_background_sub_windows.html]
[test_ext_background_api_injection.html]
[test_ext_background_generated_url.html]
[test_ext_background_generated_reload.html]
[test_ext_background_generated_load_events.html]
[test_ext_i18n.html]
skip-if = (os == 'android') # Bug 1258975 on android.
[test_ext_web_accessible_resources.html]

View File

@ -0,0 +1,47 @@
<!DOCTYPE HTML>
<html>
<head>
<title>Test load events in _generated_background_page.html</title>
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
<script type="text/javascript" src="/tests/SimpleTest/SpawnTask.js"></script>
<script type="text/javascript" src="/tests/SimpleTest/ExtensionTestUtils.js"></script>
<script type="text/javascript" src="head.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css">
</head>
<body>
<script>
"use strict";
/* eslint-disable mozilla/balanced-listeners */
add_task(function* test_DOMContentLoaded_in_generated_background_page() {
function backgroundScript() {
function reportListener(event) {
browser.test.sendMessage("eventname", event.type);
}
document.addEventListener("DOMContentLoaded", reportListener);
window.addEventListener("load", reportListener);
}
let extension = ExtensionTestUtils.loadExtension({
manifest: {
background: {
scripts: ["bg.js"],
},
web_accessible_resources: ["_generated_background_page.html"],
},
files: {
"bg.js": `(${backgroundScript})();`,
},
});
yield extension.startup();
is("DOMContentLoaded", yield extension.awaitMessage("eventname"));
is("load", yield extension.awaitMessage("eventname"));
yield extension.unload();
});
</script>
</body>
</html>

View File

@ -0,0 +1,50 @@
<!DOCTYPE HTML>
<html>
<head>
<title>Test reload of _generated_background_page.html</title>
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
<script type="text/javascript" src="/tests/SimpleTest/SpawnTask.js"></script>
<script type="text/javascript" src="/tests/SimpleTest/ExtensionTestUtils.js"></script>
<script type="text/javascript" src="head.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css">
</head>
<body>
<script>
"use strict";
add_task(function* test_reload_generated_background_page() {
function backgroundScript() {
if (location.hash !== "#firstrun") {
browser.test.sendMessage("first run");
location.hash = "#firstrun";
browser.test.assertEq("#firstrun", location.hash);
location.reload();
} else {
browser.test.notifyPass("second run");
}
}
let extension = ExtensionTestUtils.loadExtension({
manifest: {
background: {
scripts: ["bg.js"],
},
},
files: {
"bg.js": `(${backgroundScript})();`,
},
});
yield extension.startup();
info("Waiting for first message");
yield extension.awaitMessage("first run");
info("Waiting for second message");
yield extension.awaitFinish("second run");
info("Received both messages");
yield extension.unload();
});
</script>
</body>
</html>

View File

@ -1,10 +1,21 @@
/* -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- */
/* vim: set sts=2 sw=2 et tw=80: */
<!DOCTYPE HTML>
<html>
<head>
<title>Test for sub-frames of WebExtension background pages</title>
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
<script type="text/javascript" src="/tests/SimpleTest/SpawnTask.js"></script>
<script type="text/javascript" src="/tests/SimpleTest/ExtensionTestUtils.js"></script>
<script type="text/javascript" src="head.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
</head>
<body>
<script type="text/javascript">
"use strict";
add_task(function* testBackgroundWindow() {
let extension = ExtensionTestUtils.loadExtension({
background() {
background: "new " + function() {
browser.test.log("background script executed");
browser.test.sendMessage("background-script-load");
@ -30,6 +41,8 @@ add_task(function* testBackgroundWindow() {
},
});
info("extension loaded");
let loadCount = 0;
extension.onMessage("background-script-load", () => {
loadCount++;
@ -37,9 +50,16 @@ add_task(function* testBackgroundWindow() {
yield extension.startup();
info("startup complete loaded");
yield extension.awaitFinish("background sub-window test done");
equal(loadCount, 1, "background script loaded only once");
is(loadCount, 1, "background script loaded only once");
yield extension.unload();
});
</script>
</body>
</html>

View File

@ -1,10 +1,21 @@
/* -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- */
/* vim: set sts=2 sw=2 et tw=80: */
<!DOCTYPE HTML>
<html>
<head>
<title>Test for simple WebExtension</title>
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
<script type="text/javascript" src="/tests/SimpleTest/SpawnTask.js"></script>
<script type="text/javascript" src="/tests/SimpleTest/ExtensionTestUtils.js"></script>
<script type="text/javascript" src="head.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
</head>
<body>
<script type="text/javascript">
"use strict";
add_task(function* testBackgroundWindowProperties() {
let extension = ExtensionTestUtils.loadExtension({
background() {
background: "(" + function() {
let expectedValues = {
screenX: 0,
screenY: 0,
@ -26,9 +37,17 @@ add_task(function* testBackgroundWindowProperties() {
}
browser.test.notifyPass("background.testWindowProperties.done");
},
} + ")();",
});
info("load complete");
yield extension.startup();
info("startup complete");
yield extension.awaitFinish("background.testWindowProperties.done");
yield extension.unload();
info("extension unloaded successfully");
});
</script>
</body>
</html>

View File

@ -1,23 +0,0 @@
/* -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- */
/* vim: set sts=2 sw=2 et tw=80: */
"use strict";
/* eslint-disable mozilla/balanced-listeners */
add_task(function* test_DOMContentLoaded_in_generated_background_page() {
let extension = ExtensionTestUtils.loadExtension({
background() {
function reportListener(event) {
browser.test.sendMessage("eventname", event.type);
}
document.addEventListener("DOMContentLoaded", reportListener);
window.addEventListener("load", reportListener);
},
});
yield extension.startup();
equal("DOMContentLoaded", yield extension.awaitMessage("eventname"));
equal("load", yield extension.awaitMessage("eventname"));
yield extension.unload();
});

View File

@ -1,24 +0,0 @@
/* -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- */
/* vim: set sts=2 sw=2 et tw=80: */
"use strict";
add_task(function* test_reload_generated_background_page() {
let extension = ExtensionTestUtils.loadExtension({
background() {
if (location.hash !== "#firstrun") {
browser.test.sendMessage("first run");
location.hash = "#firstrun";
browser.test.assertEq("#firstrun", location.hash);
location.reload();
} else {
browser.test.notifyPass("second run");
}
},
});
yield extension.startup();
yield extension.awaitMessage("first run");
yield extension.awaitFinish("second run");
yield extension.unload();
});

View File

@ -9,11 +9,7 @@ support-files =
[test_csp_custom_policies.js]
[test_csp_validator.js]
[test_ext_alarms.js]
[test_ext_background_generated_load_events.js]
[test_ext_background_generated_reload.js]
[test_ext_background_runtime_connect_params.js]
[test_ext_background_sub_windows.js]
[test_ext_background_window_properties.js]
[test_ext_contexts.js]
[test_ext_downloads.js]
[test_ext_downloads_download.js]