# 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 = 'bettyzhou, jaineelm, krisr'
NAME = 'android_ACTS.Telephony_MTV_ATT_Parallel_Stress'
TIME = 'LONG'
TEST_TYPE = 'Server'
ATTRIBUTES = 'suite:android_telephony_longevity'
DEPENDENCIES = 'carrier:att,location:mtv'

DOC = """
This test runs telephony parallel test against an phones with AT&T SIMs.
"""

def run(machine):
    job.run_test('android_ACTS',
                 testbed=hosts.create_testbed(machine),
                 config_file='android1758-telephony-test-station.config',
                 test_file='telephony_parallel_stress',
                 additional_configs=['simcard_list.json'],
                 override_build_url='git_master-release/sailfish-userdebug/latest',
                 testtracker_project_id=11349,
                 testtracker_owner='android-comms-tvc@google.com',
                 testtracker_extra_env="att",
                 acts_timeout=50400)

parallel_simple(run, machines)
