# 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.

NAME = 'hardware_StorageStress'
METADATA = {
    'contacts': ['chromeos-storage@google.com'],
    'bug_component': 'b:974567',
    'criteria': 'Part of storage AVL qualification suite',
    'hw_agnostic': False
}
AUTHOR = 'puthik, grundler'
PURPOSE = 'Check storage data integrity after multiple reboot/suspend'
TIME = 'LENGTHY'
TEST_CLASS = 'hardware'
TEST_TYPE = 'server'
PY_VERSION = 3

DOC = """
This test calls hardware_StorageFio to write data once and repeatedly verifies
data in the storage for 12 hours with machine rebooted between each verify.
"""

def run_hardware_storage_stress(machine):
    job.run_test('hardware_StorageStress', client_ip=machine)

job.parallel_simple(run_hardware_storage_stress, machines)
