From 80dcaf579bafb7aabf91fa8de1eb88b0cad505bb Mon Sep 17 00:00:00 2001 From: Jessica Jong Date: Wed, 18 Sep 2013 22:06:03 +0800 Subject: [PATCH] Bug 909688: B2G RIL - tests cases for data loss. r=vicamo --- .../marionette/test_mobile_data_connection.js | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/dom/network/tests/marionette/test_mobile_data_connection.js b/dom/network/tests/marionette/test_mobile_data_connection.js index 55757bc950af..8aae6dbdd62b 100644 --- a/dom/network/tests/marionette/test_mobile_data_connection.js +++ b/dom/network/tests/marionette/test_mobile_data_connection.js @@ -226,6 +226,49 @@ tasks.push(function testEnableData() { setSetting(DATA_KEY, true); }); +tasks.push(function testUnregisterDataWhileDataEnabled() { + log("Set data registration unregistered while data enabled."); + + // When data registration is unregistered, all data calls + // will be automatically deactivated. + sendCmdToEmulator("gsm data unregistered", function() { + connection.addEventListener("datachange", function ondatachange() { + log("mobileConnection.data.state is now '" + + connection.data.state + "'."); + if (connection.data.state == "notSearching") { + connection.removeEventListener("datachange", ondatachange); + log("mobileConnection.data.connected is now '" + + connection.data.connected + "'."); + is(connection.data.connected, false, "data.connected"); + tasks.next(); + } + }); + }); +}); + +tasks.push(function testRegisterDataWhileDataEnabled() { + log("Set data registration home while data enabled."); + + // When data registration is registered, data call will be + // (re)activated by gecko if ril.data.enabled is set to true. + sendCmdToEmulator("gsm data home", function() { + connection.addEventListener("datachange", function ondatachange() { + connection.removeEventListener("datachange", ondatachange); + log("mobileConnection.data.state is now '" + + connection.data.state + "'."); + is(connection.data.state, "registered", "data.state"); + + connection.addEventListener("datachange", function ondatachange() { + connection.removeEventListener("datachange", ondatachange); + log("mobileConnection.data.connected is now '" + + connection.data.connected + "'."); + is(connection.data.connected, true, "data.connected"); + tasks.next(); + }); + }); + }); +}); + tasks.push(function testDisableDataRoamingWhileRoaming() { log("Disable data roaming while roaming.");