Skip to content

Commit

Permalink
Enable a11y unittests on Windows (flutter#31387)
Browse files Browse the repository at this point in the history
This enables accessibility unittests on Windows as part of our CI testing.

It also corrects two unit tests which were fixed by
flutter#29773, which fixed
flutter/flutter#78460.

Finally it disables an AXFragmentRoot test that times out. We don't use
AXFragmentRoot in Flutter as it's only used with UI Automation APIs,
which Flutter does not use (we use MSAA).

Issue: flutter/flutter#98225
  • Loading branch information
cbracken authored Feb 12, 2022
1 parent 455903f commit c2d5374
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 7 deletions.
4 changes: 2 additions & 2 deletions testing/run_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -215,8 +215,8 @@ def RunCCTests(build_dir, filter, coverage, capture_core_dump):

RunEngineExecutable(build_dir, 'testing_unittests', filter, shuffle_flags, coverage=coverage)

# The accessibility library only supports Mac for now.
if IsMac():
# The accessibility library only supports Mac and Windows.
if IsMac() or IsWindows():
RunEngineExecutable(build_dir, 'accessibility_unittests', filter, shuffle_flags, coverage=coverage)

# These unit-tests are Objective-C and can only run on Darwin.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -277,7 +277,7 @@ TEST_F(AXFragmentRootTest, TestUIAGetFragmentRoot) {
EXPECT_EQ(expected_fragment_root.Get(), actual_fragment_root.Get());
}

TEST_F(AXFragmentRootTest, TestUIAElementProviderFromPoint) {
TEST_F(AXFragmentRootTest, DISABLED_TestUIAElementProviderFromPoint) {
AXNodeData root_data;
root_data.id = 1;
root_data.relative_bounds.bounds = gfx::RectF(0, 0, 80, 80);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -446,7 +446,8 @@ TEST_F(AXPlatformNodeWinTest, IAccessibleDetachedObject) {
EXPECT_EQ(E_FAIL, root_obj->get_accName(SELF, name2.Receive()));
}

TEST_F(AXPlatformNodeWinTest, IAccessibleHitTest) {
// TODO(cbracken): Flaky https://github.com/flutter/flutter/issues/98302
TEST_F(AXPlatformNodeWinTest, DISABLED_IAccessibleHitTest) {
AXNodeData root;
root.id = 1;
root.relative_bounds.bounds = gfx::RectF(0, 0, 40, 40);
Expand Down Expand Up @@ -4473,8 +4474,7 @@ TEST_F(AXPlatformNodeWinTest, IValueProvider_GetValue) {
EXPECT_HRESULT_SUCCEEDED(
QueryInterfaceFromNode<IValueProvider>(GetRootAsAXNode()->children()[0])
->get_Value(bstr_value.Receive()));
// TODO(gw280): https://github.com/flutter/flutter/issues/78460
EXPECT_STREQ(L"3.000000", bstr_value.Get());
EXPECT_STREQ(L"3", bstr_value.Get());
bstr_value.Reset();

EXPECT_HRESULT_SUCCEEDED(
Expand Down Expand Up @@ -4533,7 +4533,7 @@ TEST_F(AXPlatformNodeWinTest, IValueProvider_SetValue) {

EXPECT_UIA_ELEMENTNOTENABLED(provider1->SetValue(L"2"));
EXPECT_HRESULT_SUCCEEDED(provider1->get_Value(bstr_value.Receive()));
EXPECT_STREQ(L"3.000000", bstr_value.Get());
EXPECT_STREQ(L"3", bstr_value.Get());
bstr_value.Reset();

EXPECT_HRESULT_SUCCEEDED(provider2->SetValue(L"changed"));
Expand Down

0 comments on commit c2d5374

Please sign in to comment.