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

AUTHOR = "jwerner, chromeos-power"
NAME = "power_SuspendStress.disk"
ATTRIBUTES = "suite:jailed_build"
SUITE = "jailed_build"
PURPOSE = "Run repeated iterations of suspend/resume while stressing the disk."
TIME = "MEDIUM"
TEST_CATEGORY = "Functional"
TEST_CLASS = "power"
TEST_TYPE = "client"

DOC = """
Runs eight minutes of suspend/resume cycles in the background of a file I/O bench.
"""

DURATION=480
INIT_DELAY=10

job.parallel([lambda: job.run_test('power_SuspendStress', tag='disk',
                                   duration=DURATION, init_delay=INIT_DELAY, min_suspend=7)],
             [lambda: job.run_test('hardware_StorageFio',
                                   quicktest=True, test_length=INIT_DELAY+DURATION+30,
                                   tag='power_SuspendStress')])
