# 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.zte-mf190"
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_tmobile"
TIME = "SHORT"
TEST_CATEGORY = "Functional"
TEST_CLASS = "network"
TEST_TYPE = "client"
DEPENDENCIES = "modem:zte-mf190"

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

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