Bug 1463766 - Change do_send_remote_message/do_await_remote_message to allow passing data r=Gijs
MozReview-Commit-ID: 4OuzgmQlhn5
--- a/testing/xpcshell/head.js
+++ b/testing/xpcshell/head.js
@@ -1240,19 +1240,19 @@ function run_test_in_child(testFile, opt
* @return Promise Promise that is resolved when the message is received.
*/
function do_await_remote_message(name, optionalCallback) {
return new Promise((resolve) => {
var listener = {
receiveMessage(message) {
if (message.name == name) {
mm.removeMessageListener(name, listener);
- resolve();
+ resolve(message.data);
if (optionalCallback) {
- optionalCallback();
+ optionalCallback(message.data);
} else {
do_test_finished();
}
}
}
};
var mm;
@@ -1265,27 +1265,27 @@ function do_await_remote_message(name, o
mm.addMessageListener(name, listener);
});
}
/**
* Asynchronously send a message to all remote processes. Pairs with do_await_remote_message
* or equivalent ProcessMessageManager listeners.
*/
-function do_send_remote_message(name) {
+function do_send_remote_message(name, data) {
var mm;
var sender;
if (runningInParent) {
mm = Cc["@mozilla.org/parentprocessmessagemanager;1"].getService();
sender = "broadcastAsyncMessage";
} else {
mm = Cc["@mozilla.org/childprocessmessagemanager;1"].getService();
sender = "sendAsyncMessage";
}
- mm[sender](name);
+ mm[sender](name, data);
}
/**
* Add a test function to the list of tests that are to be run asynchronously.
*
* @param funcOrProperties
* A function to be run or an object represents test properties.
* Supported properties: