audio_AudioNodeSwitch: fix test flakiness
1. Fix Wrong input node(s) selected: ['FRONT_MIC'] expected:
['INTERNAL_MIC'].
2. Set volume before check the volume.
BUG=b:271535040
TEST=test_that --board=brya --fast --debug \
--args="chameleon_host=${DUT}-chameleon" \
${DUT} audio_AudioNodeSwitch.JACK on vayne and boten
Change-Id: If779375311ced281fb83dbec8526ae9764bba6e8
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/autotest/+/4304200
Tested-by: Judy Hsiao <judyhsiao@google.com>
Auto-Submit: Judy Hsiao <judyhsiao@google.com>
Commit-Queue: Judy Hsiao <judyhsiao@google.com>
Reviewed-by: Yu-Hsuan Hsu <yuhsuan@chromium.org>
(cherry picked from commit e37688814b9f7b9a700683c31cc99af130f212ab)
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/autotest/+/4322919
Commit-Queue: Yu-Hsuan Hsu <yuhsuan@chromium.org>
diff --git a/client/cros/audio/audio_spec.py b/client/cros/audio/audio_spec.py
index 680149e..e5195c4 100644
--- a/client/cros/audio/audio_spec.py
+++ b/client/cros/audio/audio_spec.py
@@ -189,6 +189,8 @@
('nami', 'sona'): 'FRONT_MIC',
('nami', 'syndra'): 'FRONT_MIC',
('nami', 'vayne'): 'FRONT_MIC',
+ ('dedede', 'boten'): 'FRONT_MIC',
+ ('nissa', 'craask'): 'FRONT_MIC',
}
diff --git a/client/cros/chameleon/audio_test_utils.py b/client/cros/chameleon/audio_test_utils.py
index a663812..2c8aaa5 100644
--- a/client/cros/chameleon/audio_test_utils.py
+++ b/client/cros/chameleon/audio_test_utils.py
@@ -89,6 +89,10 @@
out_audio_nodes, in_audio_nodes = audio_nodes
if (in_audio_nodes != None
and sorted(curr_in_nodes) != sorted(in_audio_nodes)):
+ # FRONT_MIC is the same INTERNAL_MIC
+ if (in_audio_nodes == ['INTERNAL_MIC']
+ and curr_in_nodes == ['FRONT_MIC']):
+ return
raise error.TestFail(
'Wrong input node(s) selected: %s '
'expected: %s' % (str(curr_in_nodes), str(in_audio_nodes)))
diff --git a/server/site_tests/audio_AudioNodeSwitch/audio_AudioNodeSwitch.py b/server/site_tests/audio_AudioNodeSwitch/audio_AudioNodeSwitch.py
index bbed71b..2ae8c90 100644
--- a/server/site_tests/audio_AudioNodeSwitch/audio_AudioNodeSwitch.py
+++ b/server/site_tests/audio_AudioNodeSwitch/audio_AudioNodeSwitch.py
@@ -40,8 +40,10 @@
def check_default_nodes(self):
"""Checks default audio nodes for devices with onboard audio support."""
if audio_test_utils.has_internal_microphone(self.host):
- audio_test_utils.check_audio_nodes(self.facade,
- (None, ['INTERNAL_MIC']))
+ audio_test_utils.check_audio_nodes(
+ self.facade,
+ (None, [audio_test_utils.get_internal_mic_node(self.host)
+ ]))
if audio_test_utils.has_internal_speaker(self.host):
audio_test_utils.check_audio_nodes(self.facade,
(['INTERNAL_SPEAKER'], None))
@@ -85,6 +87,7 @@
for node in nodes:
# Switch nodes and check their volume.
self.facade.set_chrome_active_node_type(node, None)
+ self.set_active_volume_to_node_volume(node)
self.check_active_node_volume(node)