/* Any copyright is dedicated to the Public Domain. * http://creativecommons.org/publicdomain/zero/1.0/ */ MARIONETTE_TIMEOUT = 60000; MARIONETTE_HEAD_JS = "head.js"; const TEST_DATA = [ {command: "D009" + // Length "8103010400" + // Command details "82028182", // Device identities expect: {commandQualifier: 0x00}} ]; function testPollOff(aCommand, aExpect) { is(aCommand.commandNumber, 0x01, "commandNumber"); is(aCommand.typeOfCommand, MozIccManager.STK_CMD_POLL_OFF, "typeOfCommand"); is(aCommand.commandQualifier, aExpect.commandQualifier, "commandQualifier"); } // Start tests startTestCommon(function() { let icc = getMozIcc(); let promise = Promise.resolve(); for (let i = 0; i < TEST_DATA.length; i++) { let data = TEST_DATA[i]; promise = promise.then(() => { log("poll_off_cmd: " + data.command); let promises = []; // Wait onstkcommand event. promises.push(waitForTargetEvent(icc, "stkcommand") .then((aEvent) => testPollOff(aEvent.command, data.expect))); // Wait icc-stkcommand system message. promises.push(waitForSystemMessage("icc-stkcommand") .then((aMessage) => { is(aMessage.iccId, icc.iccInfo.iccid, "iccId"); testPollOff(aMessage.command, data.expect); })); // Send emulator command to generate stk unsolicited event. promises.push(sendEmulatorStkPdu(data.command)); return Promise.all(promises); }); } return promise; });