Publish Vulpes Preview 15 sources for desktop, Android and Tundra
Share Gaia assets and adapters, keep private profiles and development documents local, and update both public READMEs.
This commit is contained in:
parent
93e3a48004
commit
b38dea0597
25901 changed files with 9982925 additions and 369 deletions
649
gaia/apps/system/test/unit/icc_test.js
Executable file
649
gaia/apps/system/test/unit/icc_test.js
Executable file
|
|
@ -0,0 +1,649 @@
|
|||
/* global MocksHelper, MockNavigatorMozIccManager, icc, InputWindowManager,
|
||||
MockNavigatorMozMobileConnections, MockNavigatormozSetMessageHandler,
|
||||
MockL10n, MockService, MockNavigatorSettings, KeyboardEvent */
|
||||
'use strict';
|
||||
|
||||
|
||||
require('/shared/test/unit/mocks/mock_service.js');
|
||||
require('/shared/test/unit/mocks/mock_l10n.js');
|
||||
requireApp('system/test/unit/mock_system_icc_worker.js');
|
||||
require('/shared/test/unit/mocks/mock_navigator_moz_icc_manager.js');
|
||||
require('/shared/test/unit/mocks/mock_navigator_moz_settings.js');
|
||||
require('/shared/test/unit/mocks/mock_navigator_moz_set_message_handler.js');
|
||||
require('/shared/test/unit/mocks/mock_navigator_moz_mobile_connections.js');
|
||||
require('/shared/test/unit/mocks/mock_dump.js');
|
||||
require('/shared/test/unit/load_body_html_helper.js');
|
||||
require('/shared/js/lazy_loader.js');
|
||||
require('/js/input_window_manager.js');
|
||||
require('/shared/test/unit/mocks/mock_stk_helper.js');
|
||||
|
||||
var mocksForIcc = new MocksHelper([
|
||||
'Dump',
|
||||
'SystemICCWorker',
|
||||
'STKHelper',
|
||||
'Service'
|
||||
]).init();
|
||||
|
||||
suite('STK (icc) >', function() {
|
||||
mocksForIcc.attachTestHelpers();
|
||||
var realMozIccManager, realSettings, realL10n,
|
||||
realNavigatormozSetMessageHandler, realNavigatormozMobileConnections;
|
||||
var stkTestCommands = {};
|
||||
var xhrFake, xhrRequests = [];
|
||||
var resizeStub;
|
||||
|
||||
suiteSetup(function() {
|
||||
loadBodyHTML('/index.html');
|
||||
|
||||
realSettings = window.navigator.mozSettings;
|
||||
window.navigator.mozSettings = MockNavigatorSettings;
|
||||
|
||||
realMozIccManager = navigator.mozIccManager;
|
||||
navigator.mozIccManager = MockNavigatorMozIccManager;
|
||||
|
||||
realL10n = navigator.mozL10n;
|
||||
navigator.mozL10n = MockL10n;
|
||||
|
||||
MockNavigatormozSetMessageHandler.mSetup();
|
||||
realNavigatormozSetMessageHandler = navigator.mozSetMessageHandler;
|
||||
navigator.mozSetMessageHandler = MockNavigatormozSetMessageHandler;
|
||||
|
||||
realNavigatormozMobileConnections = navigator.mozMobileConnections;
|
||||
navigator.mozMobileConnections = MockNavigatorMozMobileConnections;
|
||||
|
||||
window.softwareButtonManager = {};
|
||||
});
|
||||
|
||||
suiteTeardown(function() {
|
||||
window.navigator.mozSettings = realSettings;
|
||||
|
||||
MockNavigatorMozIccManager.mTeardown();
|
||||
navigator.mozIccManager = realMozIccManager;
|
||||
|
||||
navigator.mozL10n = realL10n;
|
||||
|
||||
MockNavigatormozSetMessageHandler.mTeardown();
|
||||
navigator.mozSetMessageHandler = realNavigatormozSetMessageHandler;
|
||||
|
||||
MockNavigatorMozMobileConnections.mTeardown();
|
||||
navigator.mozMobileConnections = realNavigatormozMobileConnections;
|
||||
|
||||
window.softwareButtonManager = null;
|
||||
});
|
||||
|
||||
setup(function(done) {
|
||||
MockService.mockQueryWith('isFtuRunning', false);
|
||||
|
||||
window.navigator.mozIccManager.addIcc('1010011010');
|
||||
|
||||
stkTestCommands = {
|
||||
STK_CMD_GET_INPUT: {
|
||||
iccId: '1010011010',
|
||||
command: {
|
||||
commandNumber: 1,
|
||||
typeOfCommand: navigator.mozIccManager.STK_CMD_GET_INPUT,
|
||||
commandQualifier: 0,
|
||||
options: {
|
||||
text: 'stk Input test text',
|
||||
duration: {
|
||||
timeUnit: navigator.mozIccManager.STK_TIME_UNIT_TENTH_SECOND,
|
||||
timeInterval: 5
|
||||
},
|
||||
minLength: 2,
|
||||
maxLength: 10,
|
||||
defaultText: 'default'
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
STK_CMD_DISPLAY_TEXT: {
|
||||
iccId: '1010011010',
|
||||
command: {
|
||||
commandNumber: 1,
|
||||
typeOfCommand: navigator.mozIccManager.STK_CMD_DISPLAY_TEXT,
|
||||
commandQualifier: 0,
|
||||
options: {
|
||||
text: 'stk display test text',
|
||||
userClear: true,
|
||||
responseNeeded: false,
|
||||
duration: {
|
||||
timeUnit: navigator.mozIccManager.STK_TIME_UNIT_TENTH_SECOND,
|
||||
timeInterval: 5
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
STK_CMD_SET_UP_IDLE_MODE_TEXT: {
|
||||
iccId: '1010011010',
|
||||
command: {
|
||||
commandNumber: 1,
|
||||
typeOfCommand: navigator.mozIccManager.STK_CMD_SET_UP_IDLE_MODE_TEXT,
|
||||
commandQualifier: 0,
|
||||
options: {
|
||||
text: 'STK_CMD_SET_UP_IDLE_MODE_TEXT Unit Test'
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
STK_CMD_SET_UP_CALL: {
|
||||
iccId: '1010011010',
|
||||
command: {
|
||||
commandNumber: 1,
|
||||
typeOfCommand: navigator.mozIccManager.STK_CMD_SET_UP_CALL,
|
||||
commandQualifier: 0,
|
||||
options: {
|
||||
confirmMessage: 'STK_CMD_SET_UP_IDLE_MODE_TEXT Unit Test',
|
||||
address: '990022'
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
STK_CMD_REFRESH: {
|
||||
iccId: '1010011010',
|
||||
command: {
|
||||
commandNumber: 1,
|
||||
typeOfCommand: navigator.mozIccManager.STK_CMD_REFRESH,
|
||||
commandQualifier: 0,
|
||||
options: {}
|
||||
}
|
||||
},
|
||||
|
||||
STK_CMD_SEND_DTMF: {
|
||||
iccId: '1010011010',
|
||||
command: {
|
||||
commandNumber: 1,
|
||||
typeOfCommand: navigator.mozIccManager.STK_CMD_SEND_DTMF,
|
||||
commandQualifier: 0,
|
||||
options: {
|
||||
text: 'stk display test text',
|
||||
userClear: true,
|
||||
duration: {
|
||||
timeUnit: navigator.mozIccManager.STK_TIME_UNIT_TENTH_SECOND,
|
||||
timeInterval: 5
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
xhrFake = sinon.useFakeXMLHttpRequest();
|
||||
xhrFake.onCreate = function (xhr) {
|
||||
xhrRequests.push(xhr);
|
||||
};
|
||||
|
||||
window.inputWindowManager =
|
||||
this.sinon.stub(Object.create(InputWindowManager.prototype));
|
||||
|
||||
requireApp('system/js/icc.js', function() {
|
||||
resizeStub = this.sinon.stub(icc, 'resize');
|
||||
done();
|
||||
}.bind(this));
|
||||
});
|
||||
|
||||
teardown(function() {
|
||||
xhrFake.restore();
|
||||
});
|
||||
|
||||
function launchStkCommand(cmd) {
|
||||
icc.handleSTKCommand(cmd);
|
||||
}
|
||||
|
||||
test('getIcc', function() {
|
||||
assert.isObject(window.icc.getIcc('1010011010'));
|
||||
});
|
||||
|
||||
test('getIccInfo', function() {
|
||||
assert.equal(1, xhrRequests.length);
|
||||
assert.equal(xhrRequests[0].url, '/resources/icc.json');
|
||||
assert.equal(xhrRequests[0].method, 'GET');
|
||||
assert.equal(xhrRequests[0].responseType, 'json');
|
||||
});
|
||||
|
||||
test('clearMenuCache', function(done) {
|
||||
window.icc.clearMenuCache(function() {
|
||||
var resetApplications = window.navigator.mozSettings.createLock().get(
|
||||
'icc.applications');
|
||||
resetApplications.onsuccess = function icc_resetApplications() {
|
||||
assert.equal(resetApplications.result['icc.applications'], '{}');
|
||||
done();
|
||||
};
|
||||
});
|
||||
});
|
||||
|
||||
test('hide views when home button pressed and visible', function() {
|
||||
this.sinon.stub(icc, 'hideViews');
|
||||
icc.icc_view.classList.add('visible');
|
||||
var event = new CustomEvent('home');
|
||||
icc.handleEvent(event);
|
||||
assert.isTrue(icc.hideViews.called);
|
||||
icc.icc_view.classList.remove('visible');
|
||||
});
|
||||
|
||||
test('does not hide when home and not visible', function() {
|
||||
this.sinon.stub(icc, 'hideViews');
|
||||
var event = new CustomEvent('home');
|
||||
icc.handleEvent(event);
|
||||
assert.isFalse(icc.hideViews.called);
|
||||
});
|
||||
|
||||
test('responseSTKCommand', function(done) {
|
||||
window.icc.getIcc('1010011010').sendStkResponse = function(msg, res) {
|
||||
assert.equal(res, 'dummy');
|
||||
done();
|
||||
};
|
||||
icc.responseSTKCommand(stkTestCommands.STK_CMD_GET_INPUT, 'dummy');
|
||||
});
|
||||
|
||||
test('terminateResponse', function(done) {
|
||||
window.icc.getIcc('1010011010').sendStkResponse = function(msg, res) {
|
||||
assert.equal(res.resultCode,
|
||||
navigator.mozIccManager.STK_RESULT_UICC_SESSION_TERM_BY_USER);
|
||||
done();
|
||||
};
|
||||
icc.terminateResponse(stkTestCommands.STK_CMD_GET_INPUT);
|
||||
});
|
||||
|
||||
test('backResponse', function(done) {
|
||||
window.icc.getIcc('1010011010').sendStkResponse = function(msg, res) {
|
||||
assert.equal(res.resultCode,
|
||||
navigator.mozIccManager.STK_RESULT_BACKWARD_MOVE_BY_USER);
|
||||
done();
|
||||
};
|
||||
icc.backResponse(stkTestCommands.STK_CMD_GET_INPUT);
|
||||
});
|
||||
|
||||
test('calculateDurationInMS', function() {
|
||||
assert.equal(window.icc.calculateDurationInMS(
|
||||
navigator.mozIccManager.STK_TIME_UNIT_MINUTE, 1), 60000);
|
||||
assert.equal(window.icc.calculateDurationInMS(
|
||||
navigator.mozIccManager.STK_TIME_UNIT_MINUTE, 2), 120000);
|
||||
assert.equal(window.icc.calculateDurationInMS(
|
||||
navigator.mozIccManager.STK_TIME_UNIT_SECOND, 1), 1000);
|
||||
assert.equal(window.icc.calculateDurationInMS(
|
||||
navigator.mozIccManager.STK_TIME_UNIT_SECOND, 2), 2000);
|
||||
assert.equal(window.icc.calculateDurationInMS(
|
||||
navigator.mozIccManager.STK_TIME_UNIT_TENTH_SECOND, 1), 100);
|
||||
assert.equal(window.icc.calculateDurationInMS(
|
||||
navigator.mozIccManager.STK_TIME_UNIT_TENTH_SECOND, 2), 200);
|
||||
});
|
||||
|
||||
test('hideViews', function() {
|
||||
window.icc.hideViews();
|
||||
assert.isFalse(document.getElementById('icc-view').classList.contains(
|
||||
'visible'));
|
||||
var icc_view_boxes = document.getElementById('icc-view').children;
|
||||
for (var i = 0; i < icc_view_boxes.length; i++) {
|
||||
assert.isFalse(icc_view_boxes[i].classList.contains('visible'));
|
||||
}
|
||||
});
|
||||
|
||||
test('Sending incomplete message (empty object)', function() {
|
||||
icc.handleSTKCommand({});
|
||||
});
|
||||
|
||||
test('Sending incomplete message (null)', function() {
|
||||
icc.handleSTKCommand(null);
|
||||
});
|
||||
|
||||
test('Sending incomplete message (without iccId)', function() {
|
||||
icc.handleSTKCommand({ command: { typeOfCommand: 0, options: {} } });
|
||||
});
|
||||
|
||||
test('Sending incomplete message (without command)', function() {
|
||||
icc.handleSTKCommand({ iccId: '1234' });
|
||||
});
|
||||
|
||||
test('Sending incomplete message (without command.typeOfCommand)',
|
||||
function() {
|
||||
icc.handleSTKCommand({ command: { options: {} } });
|
||||
});
|
||||
|
||||
test('Sending incomplete message (without command.options)', function() {
|
||||
icc.handleSTKCommand({ command: { typeOfCommand: 0 } });
|
||||
});
|
||||
|
||||
test('UI: Display Text (timeout 1sec)', function(done) {
|
||||
var fakeClock = this.sinon.useFakeTimers(),
|
||||
testCmd = stkTestCommands.STK_CMD_DISPLAY_TEXT;
|
||||
window.icc.confirm(testCmd, testCmd.command.options.text, null, 1000,
|
||||
function(res, value) {
|
||||
fakeClock.restore();
|
||||
done();
|
||||
});
|
||||
fakeClock.tick(1000);
|
||||
});
|
||||
|
||||
test('UI: Display Text (contents)', function() {
|
||||
var testCmd = stkTestCommands.STK_CMD_DISPLAY_TEXT;
|
||||
window.icc.confirm(testCmd, { raw: testCmd.command.options.text }, null, 0,
|
||||
function() {});
|
||||
assert.equal(document.getElementById('icc-confirm-msg').textContent,
|
||||
testCmd.command.options.text);
|
||||
assert.equal(document.getElementById('icc-confirm-btn').disabled, false);
|
||||
assert.equal(document.getElementById('icc-confirm-btn_close').
|
||||
dataset.l10nId, 'close');
|
||||
});
|
||||
|
||||
test('UI: Input (timeout 1sec)', function(done) {
|
||||
var fakeClock = this.sinon.useFakeTimers(),
|
||||
testCmd = stkTestCommands.STK_CMD_GET_INPUT;
|
||||
window.icc.input(testCmd, testCmd.command.options.text, null, 1000,
|
||||
stkTestCommands.STK_CMD_GET_INPUT.command.options, function(res, value) {
|
||||
fakeClock.restore();
|
||||
done();
|
||||
});
|
||||
fakeClock.tick(1000);
|
||||
});
|
||||
|
||||
test('UI: Input (contents)', function() {
|
||||
var testCmd = stkTestCommands.STK_CMD_GET_INPUT;
|
||||
window.icc.input(testCmd, { raw: testCmd.command.options.text }, null, 0,
|
||||
stkTestCommands.STK_CMD_GET_INPUT.command.options, function() {});
|
||||
|
||||
assert.equal(document.getElementById('icc-input-msg').textContent,
|
||||
testCmd.command.options.text);
|
||||
|
||||
var l10nAttrs = navigator.mozL10n.getAttributes(
|
||||
document.getElementById('icc-input-btn'));
|
||||
|
||||
assert.equal(l10nAttrs.id, 'okCharsLeft');
|
||||
assert.deepEqual(l10nAttrs.args, { n: (testCmd.command.options.maxLength -
|
||||
testCmd.command.options.defaultText.length) });
|
||||
assert.equal(document.getElementById('icc-input-btn').disabled, false);
|
||||
assert.equal(document.getElementById('icc-input-btn_help').dataset.l10nId,
|
||||
'help');
|
||||
});
|
||||
|
||||
test('UI: Input (checkInputLengthValid)', function() {
|
||||
var fakeClock = this.sinon.useFakeTimers();
|
||||
var testCmd = stkTestCommands.STK_CMD_GET_INPUT;
|
||||
window.icc.input(testCmd, testCmd.command.options.text, null, 0,
|
||||
stkTestCommands.STK_CMD_GET_INPUT.command.options, function() {});
|
||||
|
||||
var button = document.getElementById('icc-input-btn');
|
||||
var inputbox = document.getElementById('icc-input-box');
|
||||
|
||||
fakeClock.tick(500);
|
||||
fakeClock.restore();
|
||||
|
||||
var event = new KeyboardEvent('keyup', {
|
||||
'view': window,
|
||||
'bubbles': true,
|
||||
'cancelable': true
|
||||
});
|
||||
|
||||
assert.equal(button.disabled, false);
|
||||
// Length between 2 and 10, empty is disabled
|
||||
inputbox.value = '';
|
||||
inputbox.dispatchEvent(event);
|
||||
assert.equal(button.disabled, true);
|
||||
|
||||
var l10nAttrs = navigator.mozL10n.getAttributes(
|
||||
document.getElementById('icc-input-btn'));
|
||||
|
||||
assert.equal(l10nAttrs.id, 'okCharsLeft');
|
||||
assert.deepEqual(l10nAttrs.args, { n: (testCmd.command.options.maxLength -
|
||||
inputbox.value.length) });
|
||||
|
||||
inputbox.value = '1';
|
||||
inputbox.dispatchEvent(event);
|
||||
assert.equal(button.disabled, true);
|
||||
|
||||
l10nAttrs = navigator.mozL10n.getAttributes(
|
||||
document.getElementById('icc-input-btn'));
|
||||
|
||||
assert.deepEqual(l10nAttrs.args, { n: (testCmd.command.options.maxLength -
|
||||
inputbox.value.length) });
|
||||
|
||||
inputbox.value = '12';
|
||||
inputbox.dispatchEvent(event);
|
||||
assert.equal(button.disabled, false);
|
||||
|
||||
l10nAttrs = navigator.mozL10n.getAttributes(
|
||||
document.getElementById('icc-input-btn'));
|
||||
|
||||
assert.deepEqual(l10nAttrs.args, { n: (testCmd.command.options.maxLength -
|
||||
inputbox.value.length) });
|
||||
|
||||
inputbox.value = '123';
|
||||
inputbox.dispatchEvent(event);
|
||||
assert.equal(button.disabled, false);
|
||||
|
||||
l10nAttrs = navigator.mozL10n.getAttributes(
|
||||
document.getElementById('icc-input-btn'));
|
||||
|
||||
assert.deepEqual(l10nAttrs.args, { n: (testCmd.command.options.maxLength -
|
||||
inputbox.value.length) });
|
||||
|
||||
inputbox.value = '1234567890';
|
||||
inputbox.dispatchEvent(event);
|
||||
assert.equal(button.disabled, false);
|
||||
|
||||
l10nAttrs = navigator.mozL10n.getAttributes(
|
||||
document.getElementById('icc-input-btn'));
|
||||
|
||||
assert.deepEqual(l10nAttrs.args, { n: (testCmd.command.options.maxLength -
|
||||
inputbox.value.length) });
|
||||
|
||||
inputbox.value = '12345678901';
|
||||
inputbox.dispatchEvent(event);
|
||||
assert.equal(button.disabled, true);
|
||||
|
||||
l10nAttrs = navigator.mozL10n.getAttributes(
|
||||
document.getElementById('icc-input-btn'));
|
||||
|
||||
assert.deepEqual(l10nAttrs.args, { n: (testCmd.command.options.maxLength -
|
||||
inputbox.value.length) });
|
||||
});
|
||||
|
||||
test('launchStkCommand: STK_CMD_DISPLAY_TEXT', function(done) {
|
||||
window.icc_worker.onmessagereceived = function(message) {
|
||||
assert.equal(message, stkTestCommands.STK_CMD_DISPLAY_TEXT);
|
||||
done();
|
||||
};
|
||||
launchStkCommand(stkTestCommands.STK_CMD_DISPLAY_TEXT);
|
||||
});
|
||||
|
||||
test('launchStkCommand: STK_CMD_GET_INPUT', function(done) {
|
||||
window.icc_worker.onmessagereceived = function(message) {
|
||||
assert.equal(message, stkTestCommands.STK_CMD_GET_INPUT);
|
||||
done();
|
||||
};
|
||||
launchStkCommand(stkTestCommands.STK_CMD_GET_INPUT);
|
||||
});
|
||||
|
||||
test('launchStkCommand: STK_CMD_SET_UP_IDLE_MODE_TEXT', function(done) {
|
||||
window.icc_worker.onmessagereceived = function(message) {
|
||||
assert.equal(message, stkTestCommands.STK_CMD_SET_UP_IDLE_MODE_TEXT);
|
||||
done();
|
||||
};
|
||||
launchStkCommand(stkTestCommands.STK_CMD_SET_UP_IDLE_MODE_TEXT);
|
||||
});
|
||||
|
||||
test('launchStkCommand: STK_CMD_REFRESH', function(done) {
|
||||
window.icc_worker.onmessagereceived = function(message) {
|
||||
assert.equal(message, stkTestCommands.STK_CMD_REFRESH);
|
||||
done();
|
||||
};
|
||||
launchStkCommand(stkTestCommands.STK_CMD_REFRESH);
|
||||
});
|
||||
|
||||
test('settings visibilitychange - STK_CMD_GET_INPUT', function(done) {
|
||||
var testCmd = stkTestCommands.STK_CMD_GET_INPUT;
|
||||
window.icc.input(testCmd, testCmd.command.options.text, null, 40000,
|
||||
stkTestCommands.STK_CMD_GET_INPUT.command.options,
|
||||
function(resultObject) {
|
||||
assert.equal(resultObject, null);
|
||||
done();
|
||||
});
|
||||
window.dispatchEvent(new CustomEvent('stkMenuHidden'));
|
||||
});
|
||||
|
||||
test('settings visibilitychange - STK_CMD_SET_UP_CALL', function(done) {
|
||||
var testCmd = stkTestCommands.STK_CMD_SET_UP_CALL;
|
||||
window.icc.asyncConfirm(testCmd, testCmd.command.options.confirmMessage,
|
||||
null, function(resultBoolean) {
|
||||
assert.equal(resultBoolean, false);
|
||||
done();
|
||||
});
|
||||
window.dispatchEvent(new CustomEvent('stkMenuHidden'));
|
||||
});
|
||||
|
||||
test('handleSTKCommand - should call resize', function() {
|
||||
launchStkCommand(stkTestCommands.STK_CMD_DISPLAY_TEXT);
|
||||
|
||||
assert.isTrue(resizeStub.calledOnce);
|
||||
});
|
||||
|
||||
suite('Resize', function() {
|
||||
setup(function() {
|
||||
icc.resize.restore();
|
||||
window.layoutManager = {
|
||||
height: 100
|
||||
};
|
||||
});
|
||||
|
||||
teardown(function() {
|
||||
window.layoutManager = null;
|
||||
});
|
||||
|
||||
test('it sets the top depending on the Statusbar', function() {
|
||||
MockService.mockQueryWith('Statusbar.height', 13);
|
||||
this.sinon.stub(window.icc, 'isVisible').returns(true);
|
||||
window.icc.resize();
|
||||
assert.equal(icc.icc_view.style.top, '13px');
|
||||
});
|
||||
|
||||
test('it sets the bottom depending on Software Home Button', function() {
|
||||
MockService.mockQueryWith('SoftwareButtonManager.height', 20);
|
||||
this.sinon.stub(window.icc, 'isVisible').returns(true);
|
||||
window.icc.resize();
|
||||
assert.equal(icc.icc_view.style.bottom, '20px');
|
||||
});
|
||||
});
|
||||
|
||||
suite('Replace STK messages >', function() {
|
||||
var stubResponseSTKCommand;
|
||||
var unableToProcess;
|
||||
|
||||
setup(function() {
|
||||
icc.hideViews();
|
||||
stubResponseSTKCommand = this.sinon.stub(icc, 'responseSTKCommand',
|
||||
function(message, response) {
|
||||
message.response = true;
|
||||
});
|
||||
|
||||
unableToProcess = {
|
||||
resultCode:
|
||||
navigator.mozIccManager.STK_RESULT_TERMINAL_CRNTLY_UNABLE_TO_PROCESS
|
||||
};
|
||||
});
|
||||
|
||||
test('Should respond STK_RESULT_TERMINAL_CRNTLY_UNABLE_TO_PROCESS',
|
||||
function() {
|
||||
icc._currentMessage = stkTestCommands.STK_CMD_GET_INPUT;
|
||||
icc.discardCurrentMessageIfNeeded(stkTestCommands.STK_CMD_DISPLAY_TEXT);
|
||||
assert.isTrue(stubResponseSTKCommand.calledWith(
|
||||
stkTestCommands.STK_CMD_GET_INPUT, unableToProcess));
|
||||
});
|
||||
|
||||
test('Should not respond because the message has been already responded',
|
||||
function() {
|
||||
var testCommand = stkTestCommands.STK_CMD_DISPLAY_TEXT;
|
||||
testCommand.response = true;
|
||||
icc._currentMessage = testCommand;
|
||||
icc.discardCurrentMessageIfNeeded(stkTestCommands.STK_CMD_GET_INPUT);
|
||||
assert.isFalse(stubResponseSTKCommand.calledOnce);
|
||||
});
|
||||
});
|
||||
|
||||
suite('STK messages with icons >', function() {
|
||||
var icons = [{
|
||||
'pixels':[0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,0xFFFFFFFF,
|
||||
0x000000FF,0x000000FF,0x000000FF,0x000000FF,
|
||||
0xFFFFFFFF,0x000000FF,0xFFFFFFFF,0x000000FF,
|
||||
0xFFFFFFFF,0x000000FF,0x000000FF,0xFFFFFFFF],
|
||||
'codingScheme': 'basic',
|
||||
'width': 4,
|
||||
'height': 4
|
||||
}];
|
||||
|
||||
setup(function() {
|
||||
icc.hideViews();
|
||||
stkTestCommands.STK_CMD_SET_UP_CALL.icons = icons;
|
||||
stkTestCommands.STK_CMD_GET_INPUT.icons = icons;
|
||||
stkTestCommands.STK_CMD_DISPLAY_TEXT.icons = icons;
|
||||
stkTestCommands.STK_CMD_SEND_DTMF.icons = icons;
|
||||
});
|
||||
|
||||
teardown(function() {
|
||||
delete stkTestCommands.STK_CMD_SET_UP_CALL.icons;
|
||||
delete stkTestCommands.STK_CMD_GET_INPUT.icons;
|
||||
delete stkTestCommands.STK_CMD_DISPLAY_TEXT.icons;
|
||||
delete stkTestCommands.STK_CMD_SEND_DTMF.icons;
|
||||
});
|
||||
|
||||
test('UI: icons should be displayed - asyncconfirm', function() {
|
||||
var testCmd = stkTestCommands.STK_CMD_SET_UP_CALL;
|
||||
window.icc.asyncConfirm(testCmd, testCmd.command.options.confirmMessage,
|
||||
testCmd.icons, null);
|
||||
var img = document.getElementById('icc-asyncconfirm-icons');
|
||||
assert.equal(img.children.length, 1);
|
||||
});
|
||||
|
||||
test('UI: icons should not be displayed - asyncconfirm', function() {
|
||||
var testCmd = stkTestCommands.STK_CMD_SET_UP_CALL;
|
||||
window.icc.asyncConfirm(testCmd, testCmd.command.options.confirmMessage,
|
||||
null, null);
|
||||
var img = document.getElementById('icc-asyncconfirm-icons');
|
||||
assert.equal(img.children.length, 0);
|
||||
});
|
||||
|
||||
test('UI: icons should be displayed - confirm', function() {
|
||||
var testCmd = stkTestCommands.STK_CMD_DISPLAY_TEXT;
|
||||
window.icc.confirm(testCmd, testCmd.command.options.text, testCmd.icons,
|
||||
null);
|
||||
var img = document.getElementById('icc-confirm-icons');
|
||||
assert.equal(img.children.length, 1);
|
||||
});
|
||||
|
||||
test('UI: icons should not be displayed - confirm', function() {
|
||||
var testCmd = stkTestCommands.STK_CMD_DISPLAY_TEXT;
|
||||
window.icc.confirm(testCmd, testCmd.command.options.text, null,
|
||||
null);
|
||||
var img = document.getElementById('icc-confirm-icons');
|
||||
assert.equal(img.children.length, 0);
|
||||
});
|
||||
|
||||
test('UI: icons should be displayed - alert', function() {
|
||||
var testCmd = stkTestCommands.STK_CMD_SEND_DTMF;
|
||||
window.icc.alert(testCmd, testCmd.command.options.text, testCmd.icons);
|
||||
var img = document.getElementById('icc-alert-icons');
|
||||
assert.equal(img.children.length, 1);
|
||||
});
|
||||
|
||||
test('UI: icons should not be displayed - alert', function() {
|
||||
var testCmd = stkTestCommands.STK_CMD_SEND_DTMF;
|
||||
window.icc.alert(testCmd, testCmd.command.options.text, null);
|
||||
var img = document.getElementById('icc-alert-icons');
|
||||
assert.equal(img.children.length, 0);
|
||||
});
|
||||
|
||||
test('UI: icons should be displayed - input', function() {
|
||||
var testCmd = stkTestCommands.STK_CMD_GET_INPUT;
|
||||
window.icc.input(testCmd, testCmd.command.options.text, testCmd.icons,
|
||||
0, testCmd.command.options, function() {});
|
||||
var img = document.getElementById('icc-input-icons');
|
||||
assert.equal(img.children.length, 1);
|
||||
});
|
||||
|
||||
test('UI: icons should not be displayed - input', function() {
|
||||
var testCmd = stkTestCommands.STK_CMD_GET_INPUT;
|
||||
window.icc.input(testCmd, testCmd.command.options.text, null,
|
||||
0, testCmd.command.options, function() {});
|
||||
var img = document.getElementById('icc-input-icons');
|
||||
assert.equal(img.children.length, 0);
|
||||
});
|
||||
});
|
||||
});
|
||||
Loading…
Reference in a new issue