History log of /external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
1d88daff3a9875d70f16594e7e64b071e0b5b3a0 03-Mar-2014 Prathmesh Prabhu <pprabhu@chromium.org> pseudomodem: Make pseudomodem process exit more robust to errors.

|PseudoModemManager._GracefulExit| cleans up the pseudomodem child process. Each
of the clean-up steps must have its own try...catch block, since each step is
essential.

Before this CL, a failure to remove one of the exported interfaces would raise
an exception, and we would not attempt to quit the glib mainloop at all.

BUG=chromium:341943
TEST=(1)
$ run_pseudomodem.py
(2) Ensure that pseudomodem exits cleanly.

Change-Id: I3e5f0bda6b297f303c916d3810e6f82fe5360d23
Reviewed-on: https://chromium-review.googlesource.com/188529
Tested-by: Prathmesh Prabhu <pprabhu@chromium.org>
Reviewed-by: Thieu Le <thieule@chromium.org>
Commit-Queue: Prathmesh Prabhu <pprabhu@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
c43ea562a0447330b26eeec3c7b1fb935958e985 08-Feb-2014 Prathmesh Prabhu <pprabhu@chromium.org> pseudomodem: Some simple style fixes.

Fix where this doesn't hold:
- Two lines between top level classes, functions, class methods.
- No lines between @param/@returns/@raises in docstrings
- One blank line at the end of docstring, unless it's a one line docstring.
- Uniformity: Change to @returns and @raises.

BUG=chromium:339312
TEST=None.

Change-Id: I959aa27875531644fd0f34a54d0046a059dbf164
Reviewed-on: https://chromium-review.googlesource.com/185475
Reviewed-by: Prathmesh Prabhu <pprabhu@chromium.org>
Tested-by: Prathmesh Prabhu <pprabhu@chromium.org>
Commit-Queue: Prathmesh Prabhu <pprabhu@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
cc8ecc84ec57d81c35331cfa31f1035759376256 06-Feb-2014 Prathmesh Prabhu <pprabhu@chromium.org> pseudomodem: Bring back the testing interface.

CL:184059 mistakenly removed the testing interface of pseudomodem.

BUG=chromium:328257
TEST=Test that an SMS can be sent over the testing interface:
- run_pseudomodem.py --cli
- On the cli:
sms 555555 sms_boo_hoo_hoo

Change-Id: Iee9b3be6e27eca5aeef2ef56e36b9c578aacc823
Reviewed-on: https://chromium-review.googlesource.com/185102
Reviewed-by: Prathmesh Prabhu <pprabhu@chromium.org>
Commit-Queue: Prathmesh Prabhu <pprabhu@chromium.org>
Tested-by: Prathmesh Prabhu <pprabhu@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
8bf5e656c00e77b324a0f75a14674ed039f9cc79 06-Feb-2014 Prathmesh Prabhu <pprabhu@chromium.org> pseudomodem: Surface pseudomodem process exceptions in autotest logs.

pseudomodem runs in a separate process and redirects its logs to syslog. When a
test is run, if pseudomodem crashes, it is desirable to surface the reason to
the autotest logs. This will help our tools to dedup bugs better.

With this CL, the pseudomodem child process communicates its error status to the
launching |pseudomodem_context| which then raises an exception including the
error status.

BUG=chromium:337869
TEST=Introduce an error in pseudomodem by raising an exception in |Modem|
constructor. Then
(1) Run pseudomodem standalone and check the exception raised.
(2) Run a pseudomodem test and check the error reason on stdout.
(3) Ensure no files are left behind matching /tmp/pseudomodem_*

Change-Id: Iaa3483292968c1cb03680c9908ec5c102a03c356
Reviewed-on: https://chromium-review.googlesource.com/185082
Reviewed-by: Ben Chan <benchan@chromium.org>
Commit-Queue: Prathmesh Prabhu <pprabhu@chromium.org>
Tested-by: Prathmesh Prabhu <pprabhu@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
efd7d9f14814267c1b9ad0f2bcc4ab8768d6b521 04-Feb-2014 Prathmesh Prabhu <pprabhu@chromium.org> pseudomodem: Turn on execute bit on pseudomodem.py again.

CL:184059 mistakenly made pseudomodem.py non-executable. Flip the file
permission bit again.

BUG=chromium:328257
TEST=On a fresh build from scratch, run network_3GModemPresent.pseudomodem
successfully with test_that.

Change-Id: Iacbc14d6d07a87fd385a7cc342c443e81d7fc969
Reviewed-on: https://chromium-review.googlesource.com/184934
Reviewed-by: Ben Chan <benchan@chromium.org>
Tested-by: Prathmesh Prabhu <pprabhu@chromium.org>
Commit-Queue: Prathmesh Prabhu <pprabhu@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
0d75056f7bfb1c2b42d8a2c7ebbd34f69bc95db6 28-Jan-2014 Prathmesh Prabhu <pprabhu@chromium.org> pseudomodem: Run pseudomodem in a separate subprocess.

This CL cleans up the way pseudomodem is launched. The main changes are:
- |pseudomodem.py| no longer tries to fork pseudomodem in a background
process. It is now a top level package that runs pseudomodem in the current
process. This should no longer be used directly.
- |pseudomodem_context.py| should be used by tests. The companion module
|run_pseudomodem.py| should be used to run pseudomodem from the command
line. This cleanly launches pseudomodem in a separate process. It also
provides ways to customize the pseudomodem with the same flexibility as
before this CL.
- Logs from pseudomodem are now directed to syslog, and are handled in the
same way as ModemManager logs. Additionally, logs can be directed to stdout.
- pseudomodem now runs as the 'modem' user -- this is the user that
modemmanager runs as.

BUG=chromium:328257
TEST=(1) Run
/usr/local/autotest/cros/cellular/pseudomodem/pseudomodem_context.py
with and without the '--cli' option and ensure pseudomodem works as
expected in standalone mode.
(2) After fixing tests (see companion CL:184088), run network3g_pseudomodem
and network_ui test suites.
CQ-DEPEND=CL:184088

Change-Id: I0c1f275150c52a6ae882b1fc260bcbd6401754b9
Reviewed-on: https://chromium-review.googlesource.com/184059
Reviewed-by: Prathmesh Prabhu <pprabhu@chromium.org>
Commit-Queue: Prathmesh Prabhu <pprabhu@chromium.org>
Tested-by: Prathmesh Prabhu <pprabhu@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
c569e99b922542e7ddbbc4cd465fc8328ec16214 22-Jan-2014 Thieu Le <thieule@chromium.org> cellular: Refactor pseudomodem mm1.py into constants and errors.

cros/cellular/mm1_constants.py: This module contains ModemManager
specific constants which are used by the pseudomodem and a future
ModemManager proxy.

cros/cellular/pseudomodem/pm_constants.py: Pseudomodem specific
constants (eg. testing interface, state machine names)

cros/cellular/pseudomodem/pm_errors.py: Pseudomodem specific exception
classes.

BUG=chromium:219144
TEST=network_3GDisconnectFailure/control
network_3GDisableWhileConnecting/control.pseudomodem
network_3GFailedConnect/control.pseudomodem
network_3GIdentifiers/control.pseudomodem
network_3GModemControl/control.pseudomodem
network_3GModemPresent/control.pseudomodem
network_3GSafetyDance/control.pseudomodem
network_3GScanningProperty/control
network_3GSmokeTest/control.pseudomodem
network_3GStressEnable/control.pseudomodem
network_CDMAActivate/control
network_ChromeCellularNetworkPresent/control
network_ChromeCellularNetworkProperties/control
network_ChromeCellularSmokeTest/control
network_LTEActivate/control
network_SIMLocking/control

Change-Id: I7b02cf0ee6b1b73fb1eb7fcf0f10068e7515e465
Reviewed-on: https://chromium-review.googlesource.com/183526
Reviewed-by: Prathmesh Prabhu <pprabhu@chromium.org>
Tested-by: Thieu Le <thieule@chromium.org>
Commit-Queue: Thieu Le <thieule@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
4b64e9ff090ace27a336d1444a120f22fba15cc9 05-Dec-2013 Prathmesh Prabhu <pprabhu@chromium.org> pseudomodem: Add interactive state machines

This CL adds an option to run pseudomodem machines in interactive mode. When a
state machine is run in this mode, it exports a new testing object on a testing
interface, and waits for an |Advance| call on this testing interface before
taking each step. This is intended to allow tests fine grained control on the
progress of the state machine.

Specifically, this CL,
(1) Extends StateMachine to support interactive mode
(2) Adds a StateMachineFactory to increase flexibility in how state machines
are instantiated by the Modem.
(3) Extends the standalone mode of pseudomodem to run with some or all state
machines in interactive mode.
(4) Extends Client to add basic functionality to allow interacting with a
machine from the cli.

BUG=chromium:326439
TEST=(1) Run pseudomodem in standalone mode and interactive mode with
interactive state machines.
(2) Run existing pseudomodem tests.
Change-Id: Ic448be4958904842a683bd441362ae0262c1c3bc
Reviewed-on: https://chromium-review.googlesource.com/179070
Tested-by: Prathmesh Prabhu <pprabhu@chromium.org>
Reviewed-by: Prathmesh Prabhu <pprabhu@chromium.org>
Commit-Queue: Prathmesh Prabhu <pprabhu@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
f1b800494824832e266c643ddd42744506b94fee 31-Aug-2013 Prathmesh Prabhu <pprabhu@chromium.org> pseudomodem: Move net_interface out to client/cros/cellular/

net_interface is a generic pseudo-network interface that is used by pseudomodem
as well as wardmodem.

BUG=chromium:269703
TEST=Run network_3GSmokeTest.pseudomodem

Change-Id: I16fb4d3d8d7da5a3db7a0361c774135e1ade422d
Reviewed-on: https://chromium-review.googlesource.com/167750
Reviewed-by: Thieu Le <thieule@chromium.org>
Tested-by: Prathmesh Prabhu <pprabhu@chromium.org>
Commit-Queue: Prathmesh Prabhu <pprabhu@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
f499e1079b94f848c88a719fdd8ac0f7824405b7 08-Aug-2013 Thieu Le <thieule@chromium.org> cellular: Create hermetic virtual network for pseudomm testing.

Created a linux container that hosts DNS, DHCP and test end point
services. These services are piped to the DUT over a virtual Ethernet
pair. Tests can now be written to be network agnostic.

BUG=chromium:269791
TEST=network_3GSmokeTest, network_3GModemControl using pseudomm

Change-Id: Iecde3dfdd0a49e17951771b75580083d81cb0ff5
Reviewed-on: https://gerrit.chromium.org/gerrit/65705
Commit-Queue: Thieu Le <thieule@chromium.org>
Reviewed-by: Thieu Le <thieule@chromium.org>
Tested-by: Thieu Le <thieule@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
5c5a7af63da643b9f70fc71781816215e9e13186 08-Aug-2013 Arman Uguray <armansito@chromium.org> pseudomodem: Revert polling for init to sleep.

Polling over DBus to get ModemManager properties seemed to cause some
problems in tests. Reverted it to a 5 second sleep until a better
solution is found.

Also, use pkill to kill ModemManager if /usr/sbin/stop fails, as
sometimes ModemManager gets respawned in a way that prevents it from
being killed by calling 'stop modemmanager'.

BUG=none
TEST=network_ChromeCellularNetworkPresent

Change-Id: I015c8a9ed32626ea1b8b62b421dc5b6bbd856871
Reviewed-on: https://gerrit.chromium.org/gerrit/65240
Commit-Queue: Arman Uguray <armansito@chromium.org>
Reviewed-by: Arman Uguray <armansito@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
cb95cac9226e43bb4ac88e893a32e0edbfeca271 01-Aug-2013 Arman Uguray <armansito@chromium.org> autotest: cellular: Remove some races in network_LTEActivate.

This is a somewhat involved CL that applies various fixes to address
recent failures in network_LTEActivate. It includes:

1. Fixes to faulty logic in modem_3gpp registration code that attempts
to unregister when not registered.
2. Fixes to detached pseudomodem initialization, such that the parent
process blocks until the detached process has fully initialized a
modem and made it accessible via DBus.
3. Changing some of the modem and service property checks to polling
instead of immediate returns to allow DBus proxies to point to
valid objects after modem resets.
4. Further sleeps in certain places (such as in-between the different
test cases that re-initialize the pseudomodem).

BUG=chromium:266290,chromium:266289
CQ-DEPEND=CL:64264
TEST=network_LTEActivate

Change-Id: I74fc57e406adedc778d86bd949e37a8c1b6b1f28
Reviewed-on: https://gerrit.chromium.org/gerrit/64032
Commit-Queue: Arman Uguray <armansito@chromium.org>
Reviewed-by: Arman Uguray <armansito@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
e6a6e0d0b3664a9cf4359bf060517b1447e2f4ff 06-Aug-2013 Arman Uguray <armansito@chromium.org> pseudomodem: Implemented an interactive shell.

PseudoModemManager can now be launch in an interactive mode via command
line. It features a set of commands that interact directly with the
PseudoModemManager through the new org.chromium.Pseudomodem.Testing
interface.

BUG=chromium:220643
TEST=Run pseudomodem.py -f 3GPP -i. You should get a command prompt.
Play with 'help', 'properties', etc. 'exit' when done.

Change-Id: Ie07f2c34b5fe7424dd28cae6bc34f203de43b7ab
Reviewed-on: https://gerrit.chromium.org/gerrit/64750
Commit-Queue: Arman Uguray <armansito@chromium.org>
Reviewed-by: Arman Uguray <armansito@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
938725d7a7ee5f5cbaf88ae3b396ed159db4a1a3 29-Jul-2013 Arman Uguray <armansito@chromium.org> autotest: network_ui: Run network_ChromeCellularSmokeTest on CDMA.

The test should run both on 3GPP and CDMA.

BUG=chromium:265664
TEST=network_ChromeCellularSmokeTest

Change-Id: If0be244838f4443ddbbeec74b518084001887697
Reviewed-on: https://gerrit.chromium.org/gerrit/63631
Commit-Queue: Arman Uguray <armansito@chromium.org>
Reviewed-by: Arman Uguray <armansito@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
80274342a8a9b2cb14822651b590505e437e8ecc 27-Jul-2013 Arman Uguray <armansito@chromium.org> autotest: networkui: Test for both 3GPP and CDMA in tests.

network_ChromeCellularNetworkPresent now runs both agains a 3GPP and a
CDMA fake modem.

BUG=chromium:264974
TEST=network_ChromeCellularNetworkPresent

Change-Id: I4ee62ac34860af1ef3d89f262f1a51d683e62f4a
Reviewed-on: https://gerrit.chromium.org/gerrit/63521
Reviewed-by: Thieu Le <thieule@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
Commit-Queue: Arman Uguray <armansito@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
ed1b5861b9cf7e5f1307e5558beb0016e532a1eb 16-Jul-2013 Arman Uguray <armansito@chromium.org> pseudomodem: Support roaming.

Added support for roaming in 3GPP.

BUG=chromium:260524
TEST=1. network_3GSmokeTest/control.pseudomodem
2. - stop modemmanager
- cd /usr/local/autotest/cros/cellular/pseudomodem
- ./pseudomodem -f 3GPP -r 5
- Navigate to Settings. Click on the cellular network and choose
'Other mobile network...'
- This should bring up a menu containing 5 networks with the
name 'Roaming Network Long i' where i is an integer in [0-4].
In addition, the home network 'Test Network - Fake' should be
displayed.
- Connecting to a roaming network should display the roaming
triangle icon on top of the bars. Any one of these networks
should be connectable.

Change-Id: I974faf8891f3d975d02f4a323daee4b50223227a
Reviewed-on: https://gerrit.chromium.org/gerrit/62073
Reviewed-by: Thieu Le <thieule@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
Commit-Queue: Arman Uguray <armansito@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
fb5da0e8c2fcf4e327a330e0b1f7c34983d1f937 19-Jun-2013 Arman Uguray <armansito@chromium.org> pseudomodem: Cleanup VirtualEthernetInterface cleanup.

The cleanup is now done in the forked subprocess and one of the options
passed to dnsmasq has been changed. This ensures that no orphaned or zombie
dnsmasq processes remain once pseudomodem exits.

BUG=chromium:251498
TEST=Run pseudomodem both individually and as part of a test. There
should remain no processes that are running dnsmasq afterwards.

Change-Id: Ie3058c6d374d5fe40c0d0fab70383a920eeb5426
Reviewed-on: https://gerrit.chromium.org/gerrit/59136
Commit-Queue: Arman Uguray <armansito@chromium.org>
Reviewed-by: Arman Uguray <armansito@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
d86715c7469992a66ce5e820491414af88e794cd 18-Jun-2013 Arman Uguray <armansito@chromium.org> pseudomodem: Add basic SIM lock support.

Pseudomodem now supports basic SIM locking. This enables the pseudomodem
to be initialized as locked and allows shill's static behavior to be
tested.

BUG=chromium:249184
TEST=(1) Run './pseudomodem -f 3GPP.' Use mmcli to verify that the
following values match:
- lock: 'none'
- unlock retries: 'unknown'

Run 'connectivity show devices' to verify the following matches:
- Cellular.SIMLockStatus/0/LockEnabled: false
- Cellular.SIMLockStatus/1/LockType:
- Cellular.SIMLockStatus/2/RetriesLeft: 999

(2) Run './pseudomodem -f 3GPP -l'. Use mmcli to verify that the
following values match:
- lock: 'sim-pin'
- unlock retries: 'sim-pin (3), sim-puk (3)'
- state: 'locked'

mmcli should also show display no properties for '3GPP'.

Run 'connectivity show devices' to verify the following matches:
- Cellular.SIMLockStatus/0/LockEnabled: true
- Cellular.SIMLockStatus/1/LockType: sim-pin
- Cellular.SIMLockStatus/2/RetriesLeft: 3

Change-Id: Ic8b5189ae4b86e17c01d1732d9fc09517aa7498a
Reviewed-on: https://gerrit.chromium.org/gerrit/58957
Commit-Queue: Arman Uguray <armansito@chromium.org>
Reviewed-by: Arman Uguray <armansito@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
0c923a1929b50b8c90ef1c94e056489845d03b95 14-May-2013 Arman Uguray <armansito@chromium.org> cellular: Run network_3GDisconnectFailure on a CDMA modem.

Modified the control file two run the test once on a 3GPP and once on a
CDMA modem.

BUG=chromium:240416,chromium:240015
TEST=Running network_3GDisconnectFailure should pass.

Change-Id: I537b823ae316c0825797fbdbe4d64cf8f9e08e93
Reviewed-on: https://gerrit.chromium.org/gerrit/51179
Reviewed-by: Thieu Le <thieule@chromium.org>
Commit-Queue: Arman Uguray <armansito@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
b947c494a86db00873dd4d7ebe6b2f487da5a5b0 14-May-2013 Arman Uguray <armansito@chromium.org> cellular: Run network_3GSmokeTest.pseudomodem with CDMA.

Extended the control file to run the test once on a 3GPP modem and once
on a CDMA modem. Also simplified the TestModemManagerContext
initialization to set up default modems based on a 'family' flag.

BUG=chromium:240423,chromium:240015
TEST=Running network_3GSmokeTest/control.pseudomodem should pass.

Change-Id: Id4d97e612490402361dea177805a9c5ba3999b75
Reviewed-on: https://gerrit.chromium.org/gerrit/51048
Commit-Queue: Arman Uguray <armansito@chromium.org>
Reviewed-by: Arman Uguray <armansito@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
1080b2fe7308469e0e24a85ef2bc2481fdb402d5 08-May-2013 Arman Uguray <armansito@chromium.org> cellular: pseudomodem: Support CDMA activation.

Implemented fake 'OTA automatic activation' mechanism.

BUG=chromium:219160
TEST=1. Initialize pseudo modem manager as 'not-activated' (use the -n flag).
Not providing the '-n' flag to pseudomodem.py should initialize
the modem as 'activated'. Note that the -n flag currently only
works if "-f CDMA" is also passed. Verify that the CDMA
ActivationState property is set to 'not-activated' when -n is
present
2. Activate the modem using "mmcli -m 0 --cdma-activate=0000".
Use mmcli to verify that the CDMA ActivationState property is set to
'activating'.
3. Wait 5 seconds. The modem should reset (i.e. runnin mmcli -m 0 should
return an error. The modem should be available at mmcli -m 1.)
The CDMA ActivationState property should be set to 'activated'.

Change-Id: I0091ea5f6ab355914d27b1a402458bb9cbc130d0
Reviewed-on: https://gerrit.chromium.org/gerrit/50416
Commit-Queue: Arman Uguray <armansito@chromium.org>
Reviewed-by: Arman Uguray <armansito@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
Reviewed-by: Ben Chan <benchan@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
5555f62fedfdc36cc8c4911eb24299008d961263 08-May-2013 Arman Uguray <armansito@chromium.org> cellular: pseudomodem: Fix Python style issues in pseudomodem/

BUG=chromium:238809
TEST=Running ./utils/run_pylint.py inside the client/cros/cellular/pseudomodem
directory should show no error messages.

Change-Id: I6848ceb6b9b5a0f59e0b1d3acbdfa4410fd1dfbb
Reviewed-on: https://gerrit.chromium.org/gerrit/50419
Commit-Queue: Arman Uguray <armansito@chromium.org>
Reviewed-by: Arman Uguray <armansito@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
0b03eab867e84dc28a61595afe02283f4ac6aab0 27-Mar-2013 Arman Uguray <armansito@chromium.org> cellular: pseudomodem: Support CDMA without activation.

Pseudo modem manager now supports the
org.freedesktop.ModemManager1.Modem.ModemCdma interface, except it
doesn't implement ActivateAutomatic/ActivateManual.

Also fixed a few minor issues, such as bearer initialization and state
machine clean up.

BUG=chromium:219160
CQ-DEPEND=I1b1d78909287e21eb3fbe462869097809d004a1c
TEST=Run "pseudomodem.py -f CDMA". Shill should pick up the CDMA network.
Perform Enable/Disable/Connect/Disconnect in various orders and make
sure that they succeed (the UI and mmcli should show the correct values
for properties). Also verify that Connect/Disconnect operations
correctly update bearer properties using mmcli.

Change-Id: I1bdc0658f858d81215775880ac6045700609d983
Reviewed-on: https://gerrit.chromium.org/gerrit/50090
Commit-Queue: Arman Uguray <armansito@chromium.org>
Reviewed-by: Arman Uguray <armansito@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
def8f1ccb3257e536dbaea93c11ac4162022b9ae 24-Apr-2013 Arman Uguray <armansito@chromium.org> autotest: Implement network_3GDisconnectFailure.

Added test that specifically runs on the pseudo modem manager. The test
black-box-tests the behavior of shill when a Disconnect call fails at
the modemmanager level.

BUG=chromium:217693
TEST=1. Run network_3GSmokeTest/control.pseudomodem. Make sure it
passes.
2. Run network_3GDisconnectFailure/control. Make sure it passes.

Change-Id: Ib288d2c088dfb23f9b9545e240eb39ec7964fea5
Reviewed-on: https://gerrit.chromium.org/gerrit/49031
Commit-Queue: Arman Uguray <armansito@chromium.org>
Reviewed-by: Arman Uguray <armansito@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
57bb6febcb5c4855fd3f56fc7d0013ada6c417de 28-Feb-2013 Jorge Lucangeli Obes <jorgelo@chromium.org> pseudomodem: Modify iptables rules to make sure 'dnsmasq' works.

BUG=None
TEST=network_3GSmokeTest works with CL:43455 and CL:43789

Change-Id: I0ed55858e876cbde7c580b15907dc247216748ad
Reviewed-on: https://gerrit.chromium.org/gerrit/44283
Reviewed-by: Arman Uguray <armansito@chromium.org>
Commit-Queue: Jorge Lucangeli Obes <jorgelo@chromium.org>
Tested-by: Jorge Lucangeli Obes <jorgelo@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
bb73240ac7f1aa11d21ba4484a381a391fc2851f 26-Feb-2013 Arman Uguray <armansito@chromium.org> pseudomodem: Explicitly kill forked pseudomodem process on cleanup.

Sometimes ModemManager restarts itself in a way that prevents it from
being killed by running "stop modemmanager". This happens when the
pseudomodem process doesn't cleanly shut down the forked subprocess it
spawns when run in detached mode by the autotest. The forked subprocess
now exits explicitly after stopping the mainloop.

BUG=chromium-os:39151
TEST=Run network_3GSmokeTest/control.pseudomodem at least two times on a
x86-generic VM running Chromium OS. Make sure the test passes all the
time (especially after and including the 2nd time). Or run it a million
times, it should just pass all the time.

Change-Id: I70190db3ede552eaa4fa1e7298ee895935e35886
Reviewed-on: https://gerrit.chromium.org/gerrit/44054
Reviewed-by: Thieu Le <thieule@chromium.org>
Commit-Queue: Arman Uguray <armansito@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
953468003fbe7d7988421b34083734c617aa7a35 04-Dec-2012 Arman Uguray <armansito@chromium.org> cellular: Support running network_3GModemControl using the new
pseudomodem

The network_3GModemControl test now uses the new pseudomodem to run its
pseudomodem enabled version. This CL also addresses chromium-os:35747
through the migration to the new pseudomodem and by restarting dnsmasq when
the pseudomodem enters the CONNECTED state.

BUG=chromium-os:35566,chromium-os:35747
TEST=network_3GModemControl/control.pseudomodem

Change-Id: Ia88bec7cede38e0f540bb02978136ba8c8129f6b
Reviewed-on: https://gerrit.chromium.org/gerrit/39291
Reviewed-by: Thieu Le <thieule@chromium.org>
Reviewed-by: Ben Chan <benchan@chromium.org>
Commit-Ready: Arman Uguray <armansito@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
ddfeb847b034da7d8563092ced27998479068009 04-Dec-2012 Arman Uguray <armansito@chromium.org> pseudomodem: Implement pseudomodem executable and autotest integration.

This CL adds code that allows

1. the pseudomodem to be run from an executable,
2. a pseudomodem context to be created in autotests.

With this, the pseudomodem can now be used to manually test shill
(either directly via dbus or through the UI). In addition, tests can be
made to run with a pseudo modem manager running in the background.

BUG=chromium-os:36657,chromium-os:34605
TEST=Manually tested the enable, disable, connect, and disconnect cycles
through the UI by executing ./pseudomodem.py directly.

Change-Id: I504305263a55317a36702ac64c4b8b94655c6689
Reviewed-on: https://gerrit.chromium.org/gerrit/39148
Reviewed-by: Thieu Le <thieule@chromium.org>
Reviewed-by: Ben Chan <benchan@chromium.org>
Commit-Ready: Arman Uguray <armansito@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py
3569f0cfc43e7f89366e3bf941d3e09662c21218 03-Oct-2012 Arman Uguray <armansito@chromium.org> Started pseudomodem implementation.

This CL includes files that form the basis of the new pseudomodem
utility. 90% of the methods are unimplemented and serve as stubs.

BUG=chromium-os:34605
TEST=pylint

Change-Id: Ic8b95b546b02e4b019a010d031a62506e9784b68
Reviewed-on: https://gerrit.chromium.org/gerrit/36294
Commit-Ready: Arman Uguray <armansito@chromium.org>
Reviewed-by: Arman Uguray <armansito@chromium.org>
Tested-by: Arman Uguray <armansito@chromium.org>
/external/autotest/client/cros/cellular/pseudomodem/pseudomodem.py