blob: ca861746615b46a81fb332d4b839a772b035366a [file] [log] [blame]
# Copyright 2016 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.cros.audio import audio_test_data
from autotest_lib.client.cros.chameleon import audio_test_utils
from autotest_lib.client.cros.chameleon import chameleon_audio_ids
from autotest_lib.server import utils
AUTHOR = "chromeos-chameleon"
NAME = "audio_AudioAfterSuspend.headphone.unplug"
PURPOSE = "Remotely controlled headphone AFTER SUSPEND audio test."
CRITERIA = "This test will fail if the captured audio does not match original file."
TIME = "SHORT"
TEST_CATEGORY = "Functional"
TEST_CLASS = "audio"
TEST_TYPE = "server"
ATTRIBUTES = "suite:chameleon_audio_unstable"
DEPENDENCIES = "audio_box"
JOB_RETRIES = 2
DOC = """
This test remotely tests headphone audio function against DUT after suspend.
"""
# Plug unplug sequnce
# (plugged_before_suspend, plugged_after_suspend, plugged_before_resume,
# plugged_after_resume)
plug_status = [(True,False,False,True),
(True,False,True,True),
(False,True,True,True),
(False,True,False,True),]
args_dict = utils.args_to_dict(args)
chameleon_args = hosts.CrosHost.get_chameleon_arguments(args_dict)
def run(machine):
host = hosts.create_host(machine, chameleon_args=chameleon_args)
job.run_test("audio_AudioAfterSuspend", host=host,
golden_data=(audio_test_data.FREQUENCY_TEST_FILE, 4000),
bind_from=chameleon_audio_ids.CrosIds.HEADPHONE,
bind_to=chameleon_audio_ids.ChameleonIds.LINEIN,
audio_nodes=([audio_test_utils.get_headphone_node(host)],
None),
plug_status=plug_status, tag = "headphone.unplug")
parallel_simple(run, machines)