# Copyright 2019 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.other'
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.
This tests the non-root storage device, if it exists.
"""

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

job.parallel_simple(run_hardware_storage_stress, machines)

