blob: 0254d4d86cc32276bb7d114f7be66b4b44af953a [file] [log] [blame]
# Copyright (c) 2010 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 = "Chrome OS Team"
NAME = "Network3G"
TIME = "SHORT"
TEST_CATEGORY = "Functional"
TEST_CLASS = "suite"
TEST_TYPE = "server"
DOC = """
This test suite runs automated 3G tests that should all pass.
"""
from autotest_lib.server import site_host_attributes
from autotest_lib.client.common_lib import error
# List of tests to be run.
CLIENT_TESTS = [
('network_GobiUncleanDisconnect', {}),
# See network_3GDisableWhileConnecting/control
('network_3GDisableWhileConnecting', {
'timeout_s': 20,
'delay_before_disable_ms': 0,
'disable_delay_per_iteration_ms': 0,
'iterations': 1,
'tag': 'instant_disable'}),
('network_3GDisableWhileConnecting', {
'timeout_s': 20,
'delay_before_disable_ms': 0,
'disable_delay_per_iteration_ms': 1000,
'iterations': 1,
'tag': 'disable_delay_ramp'}),
# See network_3GDisableGobiWhileConnecting/control
('network_3GDisableWhileConnecting', {
'timeout_s': 20,
'delay_before_disable_ms': 200,
'async_connect_sleep_ms': 3000,
'iterations': 1,
'tag': 'short_delay_disable'}),
('network_3GDisableWhileConnecting', {
'timeout_s': 20,
'delay_before_disable_ms': 0,
'disable_delay_per_iteration_ms': 0,
'connect_fails_with_error_sending_qmi_request': 1,
'iterations': 1,
'tag': 'qmi_failure'}),
('network_3GGobiPorts', {}),
('network_3GModemPresent', {}),
('network_3GRecoverFromGobiDesync', {}),
('network_3GSafetyDance', {}),
('network_3GSmokeTest', {}),
('network_3GStressEnable', {}),
('network_3GModemControl', {'autoconnect': False,
'tag': 'no-autoconnect'}),
('network_3GModemControl', {'autoconnect': True,
'tag': 'autoconnect'}),
('network_3GSuspendResume', {'autoconnect': False,
'tag': 'no-autoconnect'}),
('network_3GSuspendResume', {'autoconnect': True,
'tag': 'autoconnect'}),
# These tests shouldn't be run on activated devices.
# 'network_3GActivate',
# 'network_3GFailedConnect',
]
SERVER_TESTS = [
'network_3GLoadFirmware'
]
def run_tests(machine):
client = hosts.create_host(machine)
client_attributes = site_host_attributes.HostAttributes(machine)
client_at = autotest.Autotest(client)
for test, kwargs in CLIENT_TESTS:
client_at.run_test(test, **kwargs)
for test in SERVER_TESTS:
job.run_test(test, host=client)
job.parallel_on_machines(run_tests, machines)