# Copyright 2015 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 = "kathrelkeld"
NAME = "stress_ClientTestReboot.bluetooth"
TIME = "SHORT"
TEST_CATEGORY = "Functional"
TEST_CLASS = "Stress"
TEST_TYPE = "server"
ATTRIBUTES = 'suite:bluetooth, suite:bluetooth_stress'

DOC = """
This test reboots the machine and checks whether the bluetooth adapter comes up.
"""

def run_reboot_stress(machine):
    job.run_test('stress_ClientTestReboot', client_ip=machine,
                 testname='bluetooth_AdapterSanity', loops=100)

parallel_simple(run_reboot_stress, machines)
