1# Copyright 2015 The Chromium OS Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5from autotest_lib.client.cros.audio import audio_test_data
6from autotest_lib.client.cros.chameleon import chameleon_audio_ids
7from autotest_lib.server import utils
8
9AUTHOR = "chromeos-chameleon"
10NAME = "audio_AudioAfterSuspend.external_mic"
11PURPOSE = "Remotely controlled external_mic AFTER SUSPEND audio test."
12CRITERIA = "This test will fail if the captured audio does not match original file."
13TIME = "SHORT"
14TEST_CATEGORY = "Functional"
15TEST_CLASS = "audio"
16TEST_TYPE = "server"
17SUITE = "chameleon_audio_nightly, chameleon_audio"
18ATTRIBUTES = "suite:chameleon_audio_nightly, suite:chameleon_audio"
19DEPENDENCIES = "chameleon, audio_board, audio_box"
20JOB_RETRIES = 2
21
22DOC = """
23This test remotely tests external_mic audio function against DUT after suspend.
24"""
25
26args_dict = utils.args_to_dict(args)
27chameleon_args = hosts.CrosHost.get_chameleon_arguments(args_dict)
28
29def run(machine):
30    host = hosts.create_host(machine, chameleon_args=chameleon_args)
31    job.run_test("audio_AudioAfterSuspend", host=host,
32                 golden_data=(audio_test_data.SIMPLE_FREQUENCY_TEST_FILE, 2000),
33                 bind_from=chameleon_audio_ids.ChameleonIds.LINEOUT,
34                 bind_to=chameleon_audio_ids.CrosIds.EXTERNAL_MIC,
35                 audio_nodes=(['HEADPHONE'], ['MIC']), tag = "external_mic")
36
37parallel_simple(run, machines)
38