# Copyright 2018 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 = "Chrome OS Team"
NAME = "power_Standby.fast"
TIME = "MEDIUM"
TEST_CATEGORY = "Benchmark"
TEST_CLASS = "power"
TEST_TYPE = "client"
ATTRIBUTES = "suite:power_sanity"

DOC = """
This test measures the power draw during suspend.

Test uses RTC wake to transition from suspend to S0 every sample_hours for a
total standby time of test_hours.  The suspend to S0 transitions are added to
  1. Validate battery use
  2. Guarantee that suspend was maintained (no external/false wake)
  3. Create transitions which more closely model user's interaction.
"""

args_dict = utils.args_to_dict(args)
pdash_note = args_dict.get('pdash_note', '')
job.run_test('power_Standby', sample_hours=0.334, test_hours=0.334,
             tag=NAME.split('.')[1], pdash_note=pdash_note)
