tenfourfox/dom/telephony/test/marionette/test_outgoing_from_stk.js
Cameron Kaiser c9b2922b70 hello FPR
2017-04-19 00:56:45 -07:00

66 lines
1.5 KiB
JavaScript

/* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/ */
MARIONETTE_TIMEOUT = 90000;
MARIONETTE_HEAD_JS = 'head.js';
const outNumber = "5555552222";
const outInfo = gOutCallStrPool(outNumber);
var outCall;
// Basic functions
function outgoing() {
return gDialSTK(outNumber)
.then(call => outCall = call)
.then(() => gCheckAll(outCall, [outCall], "", [], [outInfo.ringing]));
}
function localHangUp() {
return gHangUp(outCall)
.then(() => gCheckAll(null, [], "", [], []));
}
function remoteAnswer() {
return gRemoteAnswer(outCall)
.then(() => gCheckAll(outCall, [outCall], "", [], [outInfo.active]));
}
function remoteHangUp() {
return gRemoteHangUp(outCall)
.then(() => gCheckAll(null, [], "", [], []));
}
// Sub tests
function testOutgoingLocalHangUp(){
log("= testOutgoingLocalHangUp =");
return outgoing()
.then(() => localHangUp());
}
function testOutgoingRemoteHangUp() {
log("= testOutgoingRemoteHangUp =");
return outgoing()
.then(() => remoteHangUp());
}
function testOutgoingRemoteAnswerRemoteHangUp() {
log("= testOutgoingRemoreAnswerRemoteHangUp =");
return outgoing()
.then(() => remoteAnswer())
.then(() => remoteHangUp());
}
// Main test
startTest(function() {
Promise.resolve()
.then(() => testOutgoingLocalHangUp())
.then(() => testOutgoingRemoteHangUp())
.then(() => testOutgoingRemoteAnswerRemoteHangUp())
.catch(error => ok(false, "Promise reject: " + error))
.then(finish);
});