gecko/dom/system/gonk/tests/marionette/test_screen_state.js
Thomas Zimmermann 61950458c3 Bug 905107: Added test case for screen-state handling in RIL, r=vicamo
The new test checks for the correctness of RIL's support of
'screen-state-change' events. The expected result is to set
CREG state to 1 when the screen is turned off, and back to
2 when the screen is turned on again.
2013-10-08 16:51:06 +02:00

48 lines
1.0 KiB
JavaScript

/* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/ */
MARIONETTE_TIMEOUT = 10000;
let Services = SpecialPowers.Services;
function testScreenState(on, expected, msg) {
// send event to RadioInterface
Services.obs.notifyObservers(null, 'screen-state-changed', on);
// maybe rild/qemu needs some time to process the event
window.setTimeout(function() {
runEmulatorCmd('gsm report creg', function(result) {
is(result.pop(), 'OK', '\'gsm report creg\' successful');
ok(result.indexOf(expected) !== -1, msg);
runNextTest();
})}, 1000);
}
function testScreenStateDisabled() {
testScreenState('off', '+CREG: 1', 'screen is disabled');
}
function testScreenStateEnabled() {
testScreenState('on', '+CREG: 2', 'screen is enabled');
}
let tests = [
testScreenStateDisabled,
testScreenStateEnabled
];
function runNextTest() {
let test = tests.shift();
if (!test) {
cleanUp();
return;
}
test();
}
function cleanUp() {
finish();
}
runNextTest();