# 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_3GIdentifiers.pseudomodem"
PURPOSE = "Verify cellular modem provides correct identification information."
CRITERIA = """
This test will fail if one of the following conditions occur:
  - Cellular modem does not provide an identifier
"""
ATTRIBUTES = "suite:network3g_pseudomodem"
TIME = "SHORT"
TEST_CATEGORY = "Functional"
TEST_CLASS = "network"
TEST_TYPE = "client"
DOC = """
  Tests that a cellular modem provides correct identification information

  The test queries the modem for the following identifiers:
    - MEID
    - IMEI
    - IMSI
    - ICCID
    - SIM operator ID
"""

import os

from autotest_lib.client.cros.cellular import test_environment

test_module_path = os.path.join(
        job.testdir, 'network_3GIdentifiers', 'network_3GIdentifiers.py')
test_env = test_environment.CellularPseudoMMTestEnvironment(
        pseudomm_args=({'family': '3GPP',
                        'test-module' : test_module_path,
                        'test-sim-class' : 'TestSIM'},))
job.run_test('network_3GIdentifiers',  tag='pseudomodem', test_env=test_env)
