Share Gaia assets and adapters, keep private profiles and development documents local, and update both public READMEs.
172 lines
5.4 KiB
JavaScript
Executable file
172 lines
5.4 KiB
JavaScript
Executable file
/* -*- Mode: js; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- /
|
|
/* vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab: */
|
|
|
|
/* global MockNavigatorSettings, StoreProvisioning, MocksHelper */
|
|
|
|
'use strict';
|
|
|
|
require('/shared/test/unit/mocks/mock_navigator_moz_settings.js');
|
|
require('/js/store.js');
|
|
require('/shared/js/uuid.js');
|
|
require('/shared/test/unit/mocks/mocks_helper.js');
|
|
|
|
var mocksHelperStoreProvisioning = new MocksHelper([
|
|
'NavigatorSettings'
|
|
]).init();
|
|
|
|
suite('StoreProvisioning >', function() {
|
|
var realSettings;
|
|
mocksHelperStoreProvisioning.attachTestHelpers();
|
|
|
|
suiteSetup(function() {
|
|
realSettings = navigator.mozSettings;
|
|
navigator.mozSettings = MockNavigatorSettings;
|
|
});
|
|
|
|
suiteTeardown(function() {
|
|
navigator.mozSettings = realSettings;
|
|
realSettings = null;
|
|
});
|
|
|
|
setup(function() {
|
|
MockNavigatorSettings.mSettings['operatorvariant.mcc'] = ['214', '216'];
|
|
MockNavigatorSettings.mSettings['operatorvariant.mnc'] = ['07', '01'];
|
|
MockNavigatorSettings.mSyncRepliesOnly = true;
|
|
});
|
|
|
|
suite('StoreProvisioning.getMccMncCodes()', function() {
|
|
test('Get SIM1 MCC code', function() {
|
|
StoreProvisioning.getMccMncCodes(0, function(mcc, mnc) {
|
|
assert.equal(mcc, '214');
|
|
});
|
|
// getMccMncCodes does 2 mozSettings requests in sequence
|
|
MockNavigatorSettings.mReplyToRequests();
|
|
MockNavigatorSettings.mReplyToRequests();
|
|
});
|
|
test('Get SIM1 MNC code', function() {
|
|
StoreProvisioning.getMccMncCodes(0, function(mcc, mnc) {
|
|
assert.equal(mnc, '07');
|
|
});
|
|
MockNavigatorSettings.mReplyToRequests();
|
|
MockNavigatorSettings.mReplyToRequests();
|
|
});
|
|
test('Get SIM2 MCC code', function() {
|
|
StoreProvisioning.getMccMncCodes(1, function(mcc, mnc) {
|
|
assert.equal(mcc, '216');
|
|
});
|
|
MockNavigatorSettings.mReplyToRequests();
|
|
MockNavigatorSettings.mReplyToRequests();
|
|
});
|
|
test('Get SIM2 MNC code', function() {
|
|
StoreProvisioning.getMccMncCodes(1, function(mcc, mnc) {
|
|
assert.equal(mnc, '01');
|
|
});
|
|
MockNavigatorSettings.mReplyToRequests();
|
|
MockNavigatorSettings.mReplyToRequests();
|
|
});
|
|
});
|
|
|
|
suite('StoreProvisioning.provision()', function() {
|
|
setup(function() {
|
|
MockNavigatorSettings.mSettings['ril.data.cp.apns'] = '';
|
|
MockNavigatorSettings.mSettings['ril.data.apnSettings'] = '';
|
|
});
|
|
|
|
test('Add APN to SIM1: Telefonica DEFAULT type', function() {
|
|
var apns = [{
|
|
carrier: 'Movistar',
|
|
apn: 'telefonica.es',
|
|
user: 'telefonica',
|
|
password: 'telefonica',
|
|
type: ['default']
|
|
}];
|
|
StoreProvisioning.provision(apns, 0, function(){
|
|
assert.lengthOf(
|
|
MockNavigatorSettings.mSettings['ril.data.cp.apns']['214']['07'], 1
|
|
);
|
|
assert.lengthOf(
|
|
MockNavigatorSettings.mSettings['ril.data.apnSettings'][0], 1
|
|
);
|
|
});
|
|
MockNavigatorSettings.mReplyToRequests();
|
|
});
|
|
test('Add APN to SIM2: Pannon DEFAULT type', function() {
|
|
var apns = [{
|
|
carrier: 'Pannon GSM',
|
|
apn: 'Pannon.hu',
|
|
user: 'Pannon',
|
|
password: 'Pannon',
|
|
type: ['default']
|
|
}];
|
|
StoreProvisioning.provision(apns, 1, function() {
|
|
assert.lengthOf(
|
|
MockNavigatorSettings.mSettings['ril.data.cp.apns']['216']['01'], 1
|
|
);
|
|
assert.lengthOf(
|
|
MockNavigatorSettings.mSettings['ril.data.apnSettings'][1], 1
|
|
);
|
|
});
|
|
MockNavigatorSettings.mReplyToRequests();
|
|
});
|
|
});
|
|
|
|
suite('StoreProvisioning.provision()', function() {
|
|
setup(function() {
|
|
MockNavigatorSettings.mSettings['ril.data.apnSettings'] = '';
|
|
MockNavigatorSettings.mSettings['ril.data.cp.apns'] = {};
|
|
MockNavigatorSettings.mSettings['ril.data.cp.apns']['214'] = {};
|
|
MockNavigatorSettings.mSettings['ril.data.cp.apns']['216'] = {};
|
|
MockNavigatorSettings.mSettings['ril.data.cp.apns']['214']['07'] = [{
|
|
carrier: 'Movistar',
|
|
apn: 'telefonica.es',
|
|
user: 'telefonica',
|
|
password: 'telefonica',
|
|
type: ['default']
|
|
}];
|
|
MockNavigatorSettings.mSettings['ril.data.cp.apns']['216']['01'] = [{
|
|
carrier: 'Pannon GSM',
|
|
apn: 'Pannon.hu',
|
|
user: 'Pannon',
|
|
password: 'Pannon',
|
|
type: ['default']
|
|
}];
|
|
});
|
|
|
|
test('Add APN to SIM1: Telefonica MMS type', function() {
|
|
var apns = [{
|
|
carrier: 'Movistar MMS',
|
|
apn: 'telefonica.es',
|
|
user: 'telefonica',
|
|
password: 'telefonica',
|
|
type: ['mms']
|
|
}];
|
|
StoreProvisioning.provision(apns, 0, function() {
|
|
assert.lengthOf(
|
|
MockNavigatorSettings.mSettings['ril.data.cp.apns']['214']['07'], 2
|
|
);
|
|
assert.lengthOf(
|
|
MockNavigatorSettings.mSettings['ril.data.apnSettings'][0], 1
|
|
);
|
|
});
|
|
MockNavigatorSettings.mReplyToRequests();
|
|
});
|
|
test('Add APN to SIM2: Pannon MMS type', function() {
|
|
var apns = [{
|
|
carrier: 'Pannon GSM MMS',
|
|
apn: 'Pannon.hu',
|
|
user: 'Pannon',
|
|
password: 'Pannon',
|
|
type: ['mms']
|
|
}];
|
|
StoreProvisioning.provision(apns, 1, function(){
|
|
assert.lengthOf(
|
|
MockNavigatorSettings.mSettings['ril.data.cp.apns']['216']['01'], 2
|
|
);
|
|
assert.lengthOf(
|
|
MockNavigatorSettings.mSettings['ril.data.apnSettings'][1], 1
|
|
);
|
|
});
|
|
MockNavigatorSettings.mReplyToRequests();
|
|
});
|
|
});
|
|
});
|