# 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 = 'krisr, bmahadev, gmoturu'
NAME = 'android_ACTS.WiFiEntRoaming'
TIME = 'MEDIUM'
TEST_TYPE = 'Server'
ATTRIBUTES = 'suite:android_wifi_ent_roaming'

DOC = """
This test runs Enterprise roaming tests against a WiFi test bed.

"""

def run(machine):
    job.run_test('android_ACTS',
                 testbed=hosts.create_testbed(machine),
                 config_file='wifi_ent_roaming.config',
                 testtracker_owner='android-comms-tvc@google.com',
                 valid_job_urls_only=True,
                 testtracker_project_id=733,
                 test_file='wifi_ent_roaming',
                 acts_timeout=18000)

parallel_simple(run, machines)
