Share Gaia assets and adapters, keep private profiles and development documents local, and update both public READMEs.
113 lines
3.7 KiB
JavaScript
Executable file
113 lines
3.7 KiB
JavaScript
Executable file
/* global MockAllNetworkInterfaces, Common */
|
|
/* exported MockCommon */
|
|
'use strict';
|
|
|
|
requireApp('costcontrol/test/unit/mock_all_network_interfaces.js');
|
|
|
|
var MockCommon = function(config) {
|
|
|
|
config = config || {};
|
|
|
|
var allInterfacesFake = MockAllNetworkInterfaces;
|
|
|
|
return {
|
|
COST_CONTROL_APP: 'app://costcontrol.gaiamobile.org',
|
|
|
|
BROWSER_APP: {
|
|
manifestURL: 'app://browser.gaiamobile.org/manifest.webapp',
|
|
origin: '',
|
|
manifest: {
|
|
icons: {
|
|
'84': '/shared/resources/branding/browser_84.png'
|
|
},
|
|
name: 'browser'
|
|
}
|
|
},
|
|
|
|
SYSTEM_MANIFEST: 'app://system.gaiamobile.org/manifest.webapp',
|
|
|
|
allNetworkInterfaces: {},
|
|
localize: function (element, label, args) {
|
|
element.textContent = label;
|
|
},
|
|
waitForDOMAndMessageHandler: function(window, callback) {
|
|
callback();
|
|
},
|
|
startFTE: function(mode) {
|
|
var iframe = document.getElementById('fte_view');
|
|
iframe.classList.remove('non-ready');
|
|
if (config && config.activateFTEListener) {
|
|
window.addEventListener('dataSlotChange', function _onDataSimChange() {
|
|
window.removeEventListener('dataSlotChange', _onDataSimChange);
|
|
// Close FTE if change the SimCard for data connections
|
|
Common.closeFTE();
|
|
});
|
|
}
|
|
var event = new CustomEvent('ftestarted', { detail: mode });
|
|
window.dispatchEvent(event);
|
|
},
|
|
closeFTE: function() {
|
|
var iframe = document.getElementById('fte_view');
|
|
iframe.classList.add('non-ready');
|
|
var event = new CustomEvent('fteClosed');
|
|
window.dispatchEvent(event);
|
|
},
|
|
startApp: function() {
|
|
var event = new CustomEvent('appstarted');
|
|
window.dispatchEvent(event);
|
|
},
|
|
closeApplication: function() {
|
|
var event = new CustomEvent('appclosed');
|
|
window.dispatchEvent(event);
|
|
},
|
|
modalAlert: function(msg) {
|
|
var event = new CustomEvent('fakealert', { detail: msg });
|
|
window.dispatchEvent(event);
|
|
console.log('Alert: ' + msg);
|
|
},
|
|
getDataSIMInterface: function getDataSIMInterface(iccId) {
|
|
var dataSimCard = allInterfacesFake[1];
|
|
return dataSimCard;
|
|
},
|
|
getWifiInterface: function() {
|
|
var wifiInterface = allInterfacesFake[0];
|
|
return wifiInterface;
|
|
},
|
|
loadNetworkInterfaces: function(onsuccess, onerror) {
|
|
setTimeout(function() {
|
|
Common.allNetworkInterfaces = allInterfacesFake;
|
|
(typeof onsuccess === 'function') && onsuccess();
|
|
}, 0);
|
|
},
|
|
loadDataSIMIccId: function(onsuccess, onerror) {
|
|
setTimeout(function() {
|
|
Common.dataSimIccId = allInterfacesFake[1].id;
|
|
if (typeof onsuccess === 'function') {
|
|
onsuccess(Common.dataSimIccId);
|
|
}
|
|
}, 0);
|
|
},
|
|
localizeWeekdaySelector: function _localizeWeekdaySelector(selector) {
|
|
var weekStartsOnMonday =
|
|
parseInt(navigator.mozL10n.get('firstDayOfTheWeek'), 10) === 1;
|
|
|
|
var monday = selector.querySelector('.monday');
|
|
var sunday = selector.querySelector('.sunday');
|
|
var list = monday.parentNode;
|
|
if (weekStartsOnMonday) {
|
|
list.insertBefore(monday, list.childNodes[0]); // monday is the first
|
|
list.appendChild(sunday); // sunday is the last
|
|
} else {
|
|
list.insertBefore(sunday, list.childNodes[0]); // sunday is the first
|
|
list.insertBefore(monday, sunday.nextSibling); // monday is the second
|
|
}
|
|
},
|
|
getDataLimit: function _getDataLimit(settings) {
|
|
var multiplier = (settings.dataLimitUnit === 'MB') ?
|
|
1000000 : 1000000000;
|
|
return settings.dataLimitValue * multiplier;
|
|
},
|
|
updateNextReset: function() {},
|
|
resetData : function() {}
|
|
};
|
|
};
|