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

NAME = 'hardware_StorageStress'
AUTHOR = 'puthik, grundler'
PURPOSE = 'Check storage data integrity after multiple reboot/suspend'
TIME = 'LENGTHY'
TEST_CLASS = 'hardware'
TEST_TYPE = 'server'

DOC = """
This test call hardware_StorageFio to write data in to root disk and log
performance in /tmp/run_remote_tests.latest/hardware_StorageStress.fullwrite/
hardware_StorageStress/result.csv
"""

def run_hardware_storage_stress(machine):
    job.run_test('hardware_StorageStress', client_ip=machine,
                  power_command='nothing', storage_test_command='full_write',
                  storage_test_argument='/dev/mmcblk0')

job.parallel_simple(run_hardware_storage_stress, machines)

