New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 660188 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Mar 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug



Sign in to add a comment

[CFM Test Automation] Automated test for mute/unmute operation being in sync after hotplug

Project Member Reported by harpreet@chromium.org, Oct 27 2016

Issue description

Create a test to catch issues like crbug.com/627549

#2 jabras turns out of sync for MUTE/UNMUTE operation when one of them is hotplugged


hychao@ - Assigning this to you as you helped fix the original issue listed above and we would like to make sure such issue is caught early in the development cycle.

It will be great if you can add this test and provide some info here about how you will do the verification in the test.



Please take a look at the following tests to find out how to enroll the device into hotrod and mute / unmute the mic as well as hotplugging jabra speaker(s):

https://cs.corp.google.com/chromeos_public/src/third_party/autotest/files/server/site_tests/enterprise_CFM_Sanity/enterprise_CFM_Sanity.py

https://cs.corp.google.com/chromeos_public/src/third_party/autotest/files/server/site_tests/enterprise_CFM_USBPeripheralHotplugDetect/enterprise_CFM_USBPeripheralHotplugDetect.py

To enroll you will need to use the following sequence of calls to get past the oobe:
cfm_facade.enroll_device()
cfm_facade.restart_chrome_for_cfm()
cfm_facade.wait_for_telemetry_commands()
cfm_facade.wait_for_oobe_start_page()
cfm_facade.skip_oobe_screen()


To mute mic : cfm_facade.mute_mic()
To unmute mic : cfm_facade.unmute_mic()



Please let me know if you have any questions.



 
You can find a list of all the api's available for CFM app in the facade https://cs.corp.google.com/chromeos_public/src/third_party/autotest/files/server/cros/multimedia/cfm_facade_adapter.py

Comment 2 by hychao@chromium.org, Oct 28 2016

Owner: harpreet@chromium.org
A reasonable test I imagine would use the CFM app APIs to mute/unmute, and verify in system side using amixer command. For example:

amixer -c 1 cget name='Mic Capture Switch'

where '1' is the sound card index to each Jabra.

Assign back since CrOS audio now has unittest to catch this problem. This task should assign to someone own the CFM app work.
Cc: dsunk...@chromium.org
Owner: ----
To catch issues like: crbug.com/627549 crbug.com/653679

Test setup should have 2 jabra's attached, 1 via the servo USB hub so it can be hotplugged/unplugged and the other directly to the device. Test should start a hangout and unplug/hotplug 1 jabra and check to make sure chrome.audio.getInof() and amixer -c # scontents for both speakers are consistent with each other. See b/30023622#comment3
Cc: -kkan...@chromium.org
Cc: mzhuo@chromium.org
Summary: [CFM Test Automation] Automated test for mute/unmute operation being in sync after hotplug (was: Automated test for mute/unmute operation being in sync after hotplug)
Cc: -mzhuo@chromium.org
Components: -UI>Shell>Kiosk
Owner: mzhuo@chromium.org
Labels: autotest-kiosk Test-Functional
Cc: mnilsson@chromium.org katierh@chromium.org ar...@chromium.org
Components: UI>Shell>Kiosk
Project Member

Comment 10 by bugdroid1@chromium.org, Sep 29 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/autotest/+/3bc919c4197f6cca269e2fb3ad0004615921ad54

commit 3bc919c4197f6cca269e2fb3ad0004615921ad54
Author: Min Zhuo <mzhuo@google.com>
Date: Fri Sep 29 21:35:29 2017

Tests Hotrod App and CfM are in sync for mute, unmute and changing
volume when there are dual speakers.

1. The state of mute/umute should be sync between CfM and speakers.
2. The volume of two speakers should be sync to volume set by CfM.
3. When doing mute/unmute speakers from CfM, (1) remains valid.
4. When changing volume from CfM, (2) remains valid.
5. After disconnect/re-connect any speaker, the above 4 remain valid.

BUG= chromium:717332 , 708884,  660188 
TEST=Tested against local setup.

pre-cq-configs: bluestreak-pre-cq

Change-Id: Ie0b659d9a7e5611d7cf19235d4b7d45477868e88
Reviewed-on: https://chromium-review.googlesource.com/566293
Commit-Ready: Min Zhuo <mzhuo@chromium.org>
Tested-by: Min Zhuo <mzhuo@chromium.org>
Reviewed-by: Harpreet Grewal <harpreet@chromium.org>
Reviewed-by: Min Zhuo <mzhuo@chromium.org>

[add] https://crrev.com/3bc919c4197f6cca269e2fb3ad0004615921ad54/server/site_tests/enterprise_CFM_DualSpeaker/control
[modify] https://crrev.com/3bc919c4197f6cca269e2fb3ad0004615921ad54/client/common_lib/cros/power_cycle_usb_util.py
[add] https://crrev.com/3bc919c4197f6cca269e2fb3ad0004615921ad54/server/site_tests/enterprise_CFM_DualSpeaker/enterprise_CFM_DualSpeaker.py

Status: Fixed (was: Assigned)

Sign in to add a comment