# 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_stress, suite:reboot_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)
