# Copyright (c) 2019 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.

from autotest_lib.server import utils

AUTHOR = "rzakarian"
NAME = "policy_DeviceDockMacAddressSource.dock_mac"
TIME = "LONG"
TEST_CATEGORY = "General"
TEST_CLASS = "enterprise"
TEST_TYPE = "server"

DOC = """
This test verifies the MAC address of the dock with the
policy_DeviceDockMacAddressSource set. If the policy is set to 3 then the
dock should have its own MAC address.

"""

client_test = 'policy_DeviceDockMacAddressSource'
case = 'dock_mac'

def run(machine):
    host = hosts.create_host(machine)
    job.run_test('policy_DeviceDockMacAddressSource', host=host,
                 client_test=client_test, case=case)

parallel_simple(run, machines)