• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2016 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.internal_speaker.plug"
11PURPOSE = "Remotely controlled internal_speaker 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"
17#ATTRIBUTES = "suite:chameleon_audio_unstable"
18DEPENDENCIES = "audio_box"
19JOB_RETRIES = 2
20
21DOC = """
22This test remotely tests internal_speaker audio function against DUT after suspend.
23"""
24# Plug unplug sequnce
25# (plugged_before_suspend, plugged_after_suspend, plugged_before_resume,
26# plugged_after_resume)
27plug_status = [(False,True,True,False),
28               (False,True,False,False),
29               (True,False,False,False),
30               (True,False,True,False),]
31
32args_dict = utils.args_to_dict(args)
33chameleon_args = hosts.CrosHost.get_chameleon_arguments(args_dict)
34
35def run(machine):
36    host = hosts.create_host(machine, chameleon_args=chameleon_args)
37    job.run_test("audio_AudioAfterSuspend", host=host,
38                 golden_data=(audio_test_data.SIMPLE_FREQUENCY_SPEAKER_TEST_FILE, 1000),
39                 recorder=chameleon_audio_ids.ChameleonIds.MIC,
40                 source=chameleon_audio_ids.CrosIds.SPEAKER,
41                 audio_nodes=(['INTERNAL_SPEAKER'], ['INTERNAL_MIC']),
42                 plug_status=plug_status, tag = "internal_speaker.plug")
43
44parallel_simple(run, machines)
45