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

# This control file was auto-generated by generate_storage_qual_control_files.py
# Do not edit this file!

from autotest_lib.client.common_lib import utils

AUTHOR = "Chrome OS Team"
NAME = "hardware_StorageQualBase_trim_before"
ATTRIBUTES = "suite:storage_qual"
PURPOSE = "hardware_StorageQualBase_trim_before"
TIME = "lengthy"
TEST_CATEGORY = "Stress"
TEST_CLASS = "Hardware"
TEST_TYPE = "server"
REQUIRE_SSP = False
PRIORITY = 100
DEPENDENCIES = "trim"
JOB_RETRIES = 0

DOC = "hardware_StorageQualBase_trim_before"

keyval = dict()
keyval['storage_qual_version'] = 1
keyval['bug_id'] = bug_id
keyval['part_id'] = part_id
utils.write_keyval(job.resultdir, keyval)

def run(machine):
    job.run_test("hardware_StorageQualBase", host=hosts.create_host(machine),
            client_ip=machine, client_tag='before', tag='before')

parallel_simple(run, machines)
