# Copyright (c) 2012 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 = "cellular_Smoke.gobi3k"
PURPOSE = "Verify 3G modem can connect to the network."
CRITERIA = """
This test will fail if one of the following conditions occur:
  - 3G modem fails to connect to network
  - the modem is not left in a working state
"""
TIME = "SHORT"
TEST_CATEGORY = "Functional"
TEST_CLASS = "network"
TEST_TYPE = "client"
ATTRIBUTES = "suite:cellular_ota_tmobile, suite:cellular_ota_verizon"
DEPENDENCIES = "modem:gobi3k"
DOC = """
  Tests that 3G modem can connect to the network

  The test attempts to connect using the 3G network.  It assumes that
  a 3G modem is plugged in and has a signal.  The test then
  disconnects from the network, and verifies that the modem still
  responds to modem manager DBUS API calls.  It repeats the
  connect/disconnect sequence several times.
"""

from autotest_lib.client.cros.cellular import test_environment

test_env = test_environment.CellularOTATestEnvironment()
job.run_test('cellular_Smoke', tag='gobi3k', test_env=test_env)
