# 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 = 'pstew, wiley, quiche'
NAME = 'network_WiFi_TDLSPing'
TIME = 'SHORT'
TEST_TYPE = 'Server'
SUITE = ('wifi_matfunc, wifi_matfunc_bcm4356, wifi_matfunc_marvell8897,'
         'wifi_matfunc_intel7265')
DEPENDENCIES = 'wificell'

DOC = """
This test attempts to verify that we can enable TDLS on a client that
supports it.  We do so by analyzing a packet capture to make sure that
pings between TDLS connected hosts are sent directly without relaying
through AP.

"""

def run(machine):
    host = hosts.create_host(machine)
    job.run_test('network_WiFi_TDLSPing', host=host, raw_cmdline_args=args)


parallel_simple(run, machines)
