# Copyright 2021 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 = "mblsha@chromium.org"
NAME = "hps_perf_perbuild"
PURPOSE = "Performance tests for HPS"
TIME = "SHORT"
TEST_CLASS = "suite"
TEST_TYPE = "Server"

DOC = """
Performance test suite for running on custom HPS dev board setup.

@param build: The name of the image to test.
@param board: The board to test on.
@param pool: The pool of machines to utilize for scheduling. If pool=None
             board is used.
@param check_hosts: require appropriate live hosts to exist in the lab.
@param SKIP_IMAGE: (optional) If present and True, don't re-image devices.
@param file_bugs: If True your suite will file bugs on failures.
@param max_run_time: Amount of time each test shoud run in minutes.i
"""

import common
from autotest_lib.server.cros.dynamic_suite import dynamic_suite

args_dict['add_experimental'] = True
args_dict['max_runtime_mins'] = 60
args_dict['name'] = NAME
args_dict['job'] = job

dynamic_suite.reimage_and_run(**args_dict)
