# 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 = 'jaineelm, bettyzhou, krisr'
NAME = 'android_ACTS.Telephony_TMO_Mobility_Security_Build'
TIME = 'LONG'
TEST_TYPE = 'Server'
ATTRIBUTES = 'suite:android_telephony_mobility_security'
DEPENDENCIES = 'carrier:tmobile_mobility'

DOC = """
This test runs telephony wifi-calling Mobility against an phones with T-Mobile SIMs.
"""

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

parallel_simple(run, machines)
