diff options
Diffstat (limited to 'toolkit/components/webextensions/test/mochitest/test_clipboard.html')
-rw-r--r-- | toolkit/components/webextensions/test/mochitest/test_clipboard.html | 140 |
1 files changed, 0 insertions, 140 deletions
diff --git a/toolkit/components/webextensions/test/mochitest/test_clipboard.html b/toolkit/components/webextensions/test/mochitest/test_clipboard.html deleted file mode 100644 index 900ee5f10..000000000 --- a/toolkit/components/webextensions/test/mochitest/test_clipboard.html +++ /dev/null @@ -1,140 +0,0 @@ -<!DOCTYPE HTML> -<html> -<head> - <title>clipboard permission test</title> - <script src="/tests/SimpleTest/SimpleTest.js"></script> - <script src="/tests/SimpleTest/SpawnTask.js"></script> - <script src="/tests/SimpleTest/ExtensionTestUtils.js"></script> - <script src="head.js"></script> - <link rel="stylesheet" href="/tests/SimpleTest/test.css"> -</head> -<body> - -<script> -"use strict"; - -function doCopy(txt) { - let field = document.createElement("textarea"); - document.body.appendChild(field); - field.value = txt; - field.select(); - return document.execCommand("copy"); -} - -add_task(function* no_permission_deny_copy() { - function backgroundScript() { - browser.test.assertEq(false, doCopy("whatever"), - "copy should be denied without permission"); - browser.test.sendMessage("ready"); - } - let extensionData = { - background: `${doCopy};(${backgroundScript})();`, - }; - let extension = ExtensionTestUtils.loadExtension(extensionData); - yield extension.startup(); - - yield extension.awaitMessage("ready"); - - yield extension.unload(); -}); - -/** Selecting text in a bg page is not possible, skip test until it's fixed. -add_task(function* with_permission_allow_copy() { - function backgroundScript() { - browser.test.onMessage.addListener(txt => { - browser.test.assertEq(true, doCopy(txt), - "copy should be allowed with permission"); - }); - browser.test.sendMessage("ready"); - } - let extensionData = { - background: `${doCopy};(${backgroundScript})();`, - manifest: { - permissions: [ - "clipboardWrite", - ], - }, - }; - let extension = ExtensionTestUtils.loadExtension(extensionData); - yield extension.startup(); - yield extension.awaitMessage("ready"); - - const DUMMY_STR = "dummy string to copy"; - yield new Promise(resolve => { - SimpleTest.waitForClipboard(DUMMY_STR, () => { - extension.sendMessage(DUMMY_STR); - }, resolve, resolve); - }); - - yield extension.unload(); -}); */ - -add_task(function* content_script_no_permission_deny_copy() { - function contentScript() { - browser.test.assertEq(false, doCopy("whatever"), - "copy should be denied without permission"); - browser.test.sendMessage("ready"); - } - let extensionData = { - manifest: { - content_scripts: [{ - js: ["contentscript.js"], - matches: ["http://mochi.test/*/file_sample.html"], - }], - }, - files: { - "contentscript.js": `${doCopy};(${contentScript})();`, - }, - }; - let extension = ExtensionTestUtils.loadExtension(extensionData); - yield extension.startup(); - - let win = window.open("file_sample.html"); - yield extension.awaitMessage("ready"); - win.close(); - - yield extension.unload(); -}); - -add_task(function* content_script_with_permission_allow_copy() { - function contentScript() { - browser.test.onMessage.addListener(txt => { - browser.test.assertEq(true, doCopy(txt), - "copy should be allowed with permission"); - }); - browser.test.sendMessage("ready"); - } - let extensionData = { - manifest: { - content_scripts: [{ - js: ["contentscript.js"], - matches: ["http://mochi.test/*/file_sample.html"], - }], - permissions: [ - "clipboardWrite", - ], - }, - files: { - "contentscript.js": `${doCopy};(${contentScript})();`, - }, - }; - let extension = ExtensionTestUtils.loadExtension(extensionData); - yield extension.startup(); - - let win = window.open("file_sample.html"); - yield extension.awaitMessage("ready"); - - const DUMMY_STR = "dummy string to copy in content script"; - yield new Promise(resolve => { - SimpleTest.waitForClipboard(DUMMY_STR, () => { - extension.sendMessage(DUMMY_STR); - }, resolve, resolve); - }); - - win.close(); - - yield extension.unload(); -}); -</script> -</body> -</html> |