diff options
author | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
---|---|---|
committer | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
commit | 5f8de423f190bbb79a62f804151bc24824fa32d8 (patch) | |
tree | 10027f336435511475e392454359edea8e25895d /addon-sdk/source/test/addons/page-worker | |
parent | 49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff) | |
download | UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip |
Add m-esr52 at 52.6.0
Diffstat (limited to 'addon-sdk/source/test/addons/page-worker')
4 files changed, 78 insertions, 0 deletions
diff --git a/addon-sdk/source/test/addons/page-worker/data/page.html b/addon-sdk/source/test/addons/page-worker/data/page.html new file mode 100644 index 000000000..3b59d3963 --- /dev/null +++ b/addon-sdk/source/test/addons/page-worker/data/page.html @@ -0,0 +1,9 @@ +<!DOCTYPE html> + +<html> +<head> +<script type="text/javascript" src="page.js"></script> +</head> +<body> +</body> +</html> diff --git a/addon-sdk/source/test/addons/page-worker/data/page.js b/addon-sdk/source/test/addons/page-worker/data/page.js new file mode 100644 index 000000000..04d062497 --- /dev/null +++ b/addon-sdk/source/test/addons/page-worker/data/page.js @@ -0,0 +1,13 @@ +window.addEventListener("load", function() { + addon.port.emit("load", "ok"); +}); + +addon.postMessage("first message"); +addon.on("message", function(msg) { + if (msg == "ping") + addon.postMessage("pong"); +}); + +addon.port.on("ping", function() { + addon.port.emit("pong"); +}); diff --git a/addon-sdk/source/test/addons/page-worker/main.js b/addon-sdk/source/test/addons/page-worker/main.js new file mode 100644 index 000000000..46b203d2e --- /dev/null +++ b/addon-sdk/source/test/addons/page-worker/main.js @@ -0,0 +1,53 @@ +/* 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/. */ + +"use strict"; + +const { Page } = require("sdk/page-worker"); +const { data } = require("sdk/self"); + +exports["test page load"] = function(assert, done) { + let page = Page({ + contentURL: data.url("page.html") + }); + + page.port.on("load", function(check) { + assert.equal(check, "ok", "saw the load message"); + page.destroy(); + done(); + }); +}; + +exports["test postMessage"] = function(assert, done) { + let page = Page({ + contentURL: data.url("page.html"), + onMessage: function(msg) { + if (msg == "pong") { + assert.ok(true, "saw the second message"); + page.destroy(); + done(); + return; + } + + assert.equal(msg, "first message", "saw the first message"); + this.postMessage("ping"); + } + }); +}; + +exports["test port"] = function(assert, done) { + let page = Page({ + contentURL: data.url("page.html") + }); + + page.port.on("pong", function() { + assert.ok(true, "saw the response"); + page.destroy(); + done(); + }); + + page.port.emit("ping"); +}; + +require("sdk/test/runner").runTestsFromModule(module); diff --git a/addon-sdk/source/test/addons/page-worker/package.json b/addon-sdk/source/test/addons/page-worker/package.json new file mode 100644 index 000000000..d7856fac5 --- /dev/null +++ b/addon-sdk/source/test/addons/page-worker/package.json @@ -0,0 +1,3 @@ +{ + "id": "test-page-worker" +} |