# 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. from autotest_lib.client.bin import utils from autotest_lib.client.common_lib import error from autotest_lib.server import autotest from autotest_lib.server import hosts from autotest_lib.server import test class hardware_StorageQualSuspendStress(test.test): """ Run Fio while suspending aggressively.""" version = 1 def run_once(self, client_ip, duration, other_dev=False): client = hosts.create_host(client_ip) client_at = autotest.Autotest(client) timeout = int(duration * 1.5) fio_test = "hardware_StorageFio" if other_dev: fio_test = "hardware_StorageFioOther" control = """job.parallel( [lambda: job.run_test('power_SuspendStress', tag='disk', duration=%d, init_delay=10, min_suspend=7, min_resume=30, check_connection=True)], [lambda: job.run_test('%s', test_length=%d, disable_sysinfo=True, requirements=[('write_stress', [])], tag='qual_suspend')], timeout=%d)""" % \ (duration, fio_test, duration, timeout) client_at.run(control, '.', None) client_at.run_test(fio_test, wait=60, disable_sysinfo=True, blkdiscard=False, requirements=[('write_stress', ['v'])], tag='qual_verify')