gecko/dom/sms/tests/marionette/test_incoming.js

47 lines
1.1 KiB
JavaScript

/* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/ */
MARIONETTE_TIMEOUT = 10000;
SpecialPowers.setBoolPref("dom.sms.enabled", true);
SpecialPowers.addPermission("sms", true, document);
let sms = window.navigator.mozSms;
let sender = "5555552368";
let body = "Hello SMS world!";
let now = Date.now();
let completed = false;
runEmulatorCmd("sms send " + sender + " " + body, function(result) {
log("Sent fake SMS: " + result);
is(result[0], "OK");
completed = true;
});
sms.onreceived = function onreceived(event) {
log("Received an SMS!");
let message = event.message;
ok(message instanceof MozSmsMessage);
is(message.delivery, "received");
is(message.sender, sender);
is(message.receiver, null);
is(message.body, body);
ok(message.timestamp instanceof Date);
// SMSC timestamp is in seconds.
ok(Math.floor(message.timestamp.getTime() / 1000) >= Math.floor(now / 1000));
cleanUp();
};
function cleanUp() {
if (!completed) {
window.setTimeout(cleanUp, 100);
return;
}
SpecialPowers.removePermission("sms", document);
finish();
}