# Copyright 2017 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_ModemControl.qualcomm"
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.
"""
ATTRIBUTES = "suite:cellular_ota_att, suite:cellular_ota_sprint, suite:cellular_ota_verizon"
TIME = "SHORT"
TEST_CATEGORY = "Functional"
TEST_CLASS = "network"
TEST_TYPE = "client"
DEPENDENCIES = "modem:qualcomm"

DOC = """
  Tests that commands sent to ModemManager 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

test_env = test_environment.CellularOTATestEnvironment()
job.run_test('cellular_ModemControl', test_env=test_env, autoconnect=False, slow_disable=True,
             tag='no-autoconnect-qualcomm')
job.run_test('cellular_ModemControl', test_env=test_env, autoconnect=True, slow_disable=True,
             tag='autoconnect-qualcomm')