# Copyright 2013 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

AUTHOR = "ChromeOS Team"
NAME = "hardware_StorageQualCheckSetup"
METADATA = {
    'contacts': ['chromeos-storage@google.com'],
    'bug_component': 'b:974567',
    'criteria': 'Part of storage AVL qualification suite',
    'hw_agnostic': False
}
PURPOSE = "Test that the moblab has the correct setup for storage_qual suite"
ATTRIBUTES = "suite:check_setup_storage_qual"
TIME = "SHORT"
TEST_CATEGORY = "General"
TEST_CLASS = "dummy"
TEST_TYPE = "server"
PY_VERSION = 3
REQUIRE_SSP = False
FAST = False

DOC = """

"""

def run(machine):
    job.run_test('hardware_StorageQualCheckSetup', host=hosts.create_host(machine))

parallel_simple(run, machines)
