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

NAME = "BootPerfServerCrosPerf"
AUTHOR = "Chrome OS Team"
SUITE = "crosbolt_perf_perbuild"
TIME = "SHORT"
TEST_CATEGORY = "Benchmark"
TEST_CLASS = "platform"
TEST_TYPE = "server"

DOC = """
This test reboots the client and uses the client-side platform_BootPerf test
to collect boot performance metrics.
"""

def run_bootperf(machine):
    host = hosts.create_host(machine)
    job.run_test("platform_BootPerfServer", host=host,
                 iterations=10, upload_perf=True)

parallel_simple(run_bootperf, machines)
