Changeset 190417 in webkit


Ignore:
Timestamp:
Oct 1, 2015, 10:45:59 AM (10 years ago)
Author:
mmaxfield@apple.com
Message:

accessibility/mac/aria-expanded-notifications.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=149510

Reviewed by Chris Fleizach.

The problem is triggered by our resumable parser. AXLoadComplete gets called
synchronously from DocumentLoader::finishedLoading(). This means that the order of
the AXLoadComplete message isn't FIFO.

If the parser yielded previously, the AXLoadComplete will be handled after some AX
messages had been handled.

If the parser hadn't yielded, the AXLoadComplete will be the first message
processed (no matter what had been queued up before it).

Because making the AXLoadComplete message asynchonous is not desirable, the
solution is to relax the test to handle various orderings.

  • accessibility/mac/aria-expanded-notifications-expected.txt:
  • accessibility/mac/aria-expanded-notifications.html:
  • platform/mac/TestExpectations:
Location:
trunk/LayoutTests
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r190410 r190417  
     12015-10-01  Myles C. Maxfield  <mmaxfield@apple.com>
     2
     3        accessibility/mac/aria-expanded-notifications.html is flaky
     4        https://bugs.webkit.org/show_bug.cgi?id=149510
     5
     6        Reviewed by Chris Fleizach.
     7
     8        The problem is triggered by our resumable parser. AXLoadComplete gets called
     9        synchronously from DocumentLoader::finishedLoading(). This means that the order of
     10        the AXLoadComplete message isn't FIFO.
     11
     12        If the parser yielded previously, the AXLoadComplete will be handled after some AX
     13        messages had been handled.
     14
     15        If the parser hadn't yielded, the AXLoadComplete will be the first message
     16        processed (no matter what had been queued up before it).
     17
     18        Because making the AXLoadComplete message asynchonous is not desirable, the
     19        solution is to relax the test to handle various orderings.
     20
     21        * accessibility/mac/aria-expanded-notifications-expected.txt:
     22        * accessibility/mac/aria-expanded-notifications.html:
     23        * platform/mac/TestExpectations:
     24
    1252015-09-30  Daniel Bates  <dabates@apple.com>
    226
  • trunk/LayoutTests/accessibility/mac/aria-expanded-notifications-expected.txt

    r187799 r190417  
    77
    88PASS addedNotification is true
     9PASS notifyName is "AXRowCountChanged"
     10PASS notifyName is "AXRowCollapsed"
     11PASS notifyName is "AXRowCountChanged"
     12PASS notifyName is "AXRowExpanded"
    913PASS successfullyParsed is true
    1014
    1115TEST COMPLETE
    12 Notification: AXLoadComplete
    13 Notification: AXRowCountChanged
    14 Notification: AXRowCollapsed
    15 Notification: AXRowCountChanged
    16 Notification: AXRowExpanded
    1716
  • trunk/LayoutTests/accessibility/mac/aria-expanded-notifications.html

    r187799 r190417  
    3131    // The order of notifications should be Row Count, Row Collapsed, Row Count, Row Expanded
    3232    function notifyCallback(element, notification) { 
     33        if (notification == "AXLoadComplete" || notification == "AXLayoutComplete")
     34            return;
    3335        notifyName = notification;
    34         document.getElementById("notifications").innerHTML += "Notification: " + notifyName + "<br>";
    35         if (notifyCount == 4) {
     36        if (notifyCount == 0)
     37            shouldBeEqualToString("notifyName", "AXRowCountChanged");
     38        else if (notifyCount == 1)
     39            shouldBeEqualToString("notifyName", "AXRowCollapsed");
     40        else if (notifyCount == 2)
     41            shouldBeEqualToString("notifyName", "AXRowCountChanged");
     42        else if (notifyCount == 3) {
     43            shouldBeEqualToString("notifyName", "AXRowExpanded");
    3644            accessibilityController.removeNotificationListener();
    37             window.testRunner.notifyDone();
     45            var scriptElement = document.createElement("script");
     46            scriptElement.src = "../../resources/js-test-post-async.js";
     47            document.body.appendChild(scriptElement);
    3848        }
    3949        notifyCount++;
     
    6070</script>
    6171
    62 <script src="../../resources/js-test-post.js"></script>
    6372</body>
    6473</html>
  • trunk/LayoutTests/platform/mac/TestExpectations

    r190323 r190417  
    13321332webkit.org/b/149441 fast/shadow-dom/css-scoping-shadow-slot-display-override.html [ ImageOnlyFailure ]
    13331333
    1334 webkit.org/b/149510 accessibility/mac/aria-expanded-notifications.html [ Pass Failure ]
    1335 
    13361334# Times out in debug.
    13371335[ Debug ] js/regress/getter-richards-try-catch.html [ Skip ]
Note: See TracChangeset for help on using the changeset viewer.