1 # Copyright 2017 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 5 """This module provides the test utilities for audio spec.""" 6 7 _BOARD_TYPE_CHROMEBOX = 'CHROMEBOX' 8 _BOARD_TYPE_CHROMEBIT = 'CHROMEBIT' 9 _BOARD_WITHOUT_SOUND_CARD = ['gale', 'veyron_rialto'] 10 11 def has_internal_speaker(board_type, board_name): 12 """Checks if a board has internal speaker. 13 14 @param board_type: board type string. E.g. CHROMEBOX, CHROMEBIT, and etc. 15 @param board_name: board name string. 16 17 @returns: True if the board has internal speaker. False otherwise. 18 19 """ 20 if ((board_type == _BOARD_TYPE_CHROMEBOX and board_name != 'stumpy') 21 or board_type == _BOARD_TYPE_CHROMEBIT 22 or board_name in _BOARD_WITHOUT_SOUND_CARD): 23 return False 24 return True 25 26 27 def has_internal_microphone(board_type): 28 """Checks if a board has internal microphone. 29 30 @param board_type: board type string. E.g. CHROMEBOX, CHROMEBIT, and etc. 31 32 @returns: True if the board has internal microphone. False otherwise. 33 34 """ 35 if (board_type == _BOARD_TYPE_CHROMEBOX 36 or board_type == _BOARD_TYPE_CHROMEBIT): 37 return False 38 return True 39 40 41 def has_headphone(board_type): 42 """Checks if a board has headphone. 43 44 @param board_type: board type string. E.g. CHROMEBOX, CHROMEBIT, and etc. 45 46 @returns: True if the board has headphone. False otherwise. 47 48 """ 49 if board_type == _BOARD_TYPE_CHROMEBIT: 50 return False 51 return True 52 53 54 def has_hotwording(board_name, model_name): 55 """Checks if a board has hotwording. 56 57 @param board_name: board name of the DUT. 58 @param model_name: model name of the DUT. 59 60 @returns: True if the board has hotwording. 61 62 """ 63 if board_name in ['coral', 'eve', 'kevin', 'nami', 'pyro', 'samus']: 64 return True 65 return False 66