| # Copyright (c) 2013 The Chromium OS Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| AUTHOR = "ChromeOS Team" |
| NAME = "network_3GModemControl.e362" |
| PURPOSE = "Verify commands sent to a modem manager are reflected in flimflam." |
| CRITERIA = """ |
| This test will fail if modem manager state differs from flimflam state. |
| """ |
| SUITE = "network3g" |
| TIME = "SHORT" |
| TEST_CATEGORY = "Functional" |
| TEST_CLASS = "network" |
| TEST_TYPE = "client" |
| DEPENDENCIES = "modem:e362, modem_repair" |
| |
| # The E362 modems may fail while connecting and disconnecting. These |
| # failures go away if the test is retried. See crbug.com/224026, |
| # crbug.com/224110, and crbug.com/224329. |
| # TODO(thieule): Change this from generic retry to specific failure retry. |
| # crbug.com/224369. |
| RETRIES = 2 |
| |
| DOC = """ |
| Tests that commands sent to ModemManager or cromo are reflected in flimflam. |
| |
| Issues many connect, disconnect, enable, and disable commands to ensure |
| that the modem state is always properly reflected in flimflam -- even |
| if the commands are sent to the modem manager instead of flimflam. |
| """ |
| |
| from autotest_lib.client.cros.cellular import test_environment |
| |
| # For E362 modems, we need to prevent the modem from disconnecting too quickly |
| # or else the out-of-credits logic will kick in and attempt to reconnect (see |
| # shill/cellular_service.cc). This is accomplished by setting |slow_connect| |
| # to True. |
| test_env = test_environment.CellularOTATestEnvironment() |
| job.run_test('network_3GModemControl', test_env=test_env, autoconnect=False, |
| slow_connect=True, tag='no-autoconnect-e362') |
| job.run_test('network_3GModemControl', test_env=test_env, autoconnect=True, |
| slow_connect=True, tag='autoconnect-e362') |