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

Issue 750305 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner: ----
Closed: Aug 2017
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Presence of dummy state in ax_enums.idl fixes seemingly unrelated input selection test failures

Project Member Reported by aleventhal@chromium.org, Jul 28 2017

Issue description


The following tests fail or pass depending on the position of a dummy StateType in ax_enums.idl.
ArcVoiceInteractionArcHomeServiceTest.VoiceInteractionStructureInputSelectionTest
org.chromium.content.browser.webcontents.AccessibilitySnapshotTest#testRequestAccessibilitySnapshotInputSelection

Clues:
- Both failing tests are similar relate to selection in an input field. The text "Hello, World" is garbled
- If the dummy state occurs before editable, the tests pass. If the dummy state is not present or comes after editable, the tests fail. 
- Removal of the dummy state from either idl causes the failure
- ASAN build does not produce the failure
- Returning AX_STATE_HORIZONTAL instead of AX_STATE_EDITABLE in blink_ax_enum_conversion.cc's AXStateFromBlink() makes the test pass
- One test uses AccessibilitySnapshotNode directly, while the other uses VoiceInteractionStructure which says the fields are consistent with VoiceInteractionStructure
- Keeping the dummy state in and returning it as an accessibility state causes the failure, even though the dummy state is not referred to anywhere else in the code.

See test failures at:
https://chromium-review.googlesource.com/c/596931

This command will repro a failure:
ninja -C out/linux-debug -j 500 browser_tests && out/linux-debug/browser_tests --gtest_filter="ArcVoiceInteractionArcHomeServiceTest.VoiceInteractionStructureInputSelectionTest" --test-launcher-jobs=1

 
Description: Show this description
Description: Show this description
Description: Show this description
Cc: muyuanli@chromium.org dmazz...@chromium.org yolandyan@chromium.org sgu...@chromium.org
Summary: Presence of dummy state in ax_enums.idl fixes seemingly unrelated input selection test failures (was: Presence of dummy state in ax_enums.idl fixes seemingly unrelated test failures)
CC'ing developers of the input selection tests. Anyone have any idea why the presence of a dummy accessibility state is required for these input selection test to pass?! Very odd.
Description: Show this description
Description: Show this description
Status: Started (was: Available)
I'm making some progress debugging this.
Description: Show this description
Description: Show this description
Description: Show this description
Found the cause and fix. CL Coming soon. Bitfield tests need 1 << enumconstant
Project Member

Comment 12 by bugdroid1@chromium.org, Aug 7 2017

Status: Fixed (was: Started)

Sign in to add a comment