blob: 6a80a2b58dd14102f30ff6f3a730ebf48245a8df [file] [log] [blame]
Ralph Nathan71e94bd2016-01-29 18:26:19 -08001# 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.common_lib import utils
6from autotest_lib.server.brillo.feedback import client_factory
7
8
9AUTHOR = 'garnold, ralphnathan'
10NAME = 'brillo_FileOpenSLESPlaybackAudioTest'
11TIME = 'SHORT'
12TEST_CATEGORY = 'Functional'
13TEST_TYPE = 'Server'
14ATTRIBUTES = 'suite:brillo-audio'
15SUITE = 'brillo-audio'
16
17DOC = """
18Tests audio playback using OpenSL ES and a file on a Brillo device.
19
20Test arguments:
21
22 feedback=NAME Name of the feedback client implementation to use. See
23 server.brillo.feedback.client_factory for supported values.
24 Default: 'loop'.
Ralph Nathane3b189c2016-02-04 14:17:29 -080025
26 feedback_args Comma-separated list of initialization arguments for the
27 feedback client. Default: no additional arguments.
Ralph Nathan71e94bd2016-01-29 18:26:19 -080028"""
29
30TEST_ARG_NAMES = ()
31args_dict = utils.args_to_dict(args)
32
33
34def run(machine):
35 test_args = {name: args_dict[name] for name in TEST_ARG_NAMES
36 if name in args_dict}
37 fb_client_name = args_dict.get('feedback', 'loop')
Ralph Nathane3b189c2016-02-04 14:17:29 -080038 fb_client = client_factory.get_audio_client(fb_client_name, NAME, machine,
39 args_dict.get('feedback_args'))
Ralph Nathan71e94bd2016-01-29 18:26:19 -080040 job.run_test('brillo_PlaybackAudioTest',
41 host=hosts.create_host(machine),
42 fb_client=fb_client,
43 playback_method='opensles',
44 use_file='true',
45 **test_args)
46
47
48parallel_simple(run, machines)