<!DOCTYPE html>
<html>
<head>
  <script src="../../../resources/testharness.js"></script>
  <script src="../../../resources/testharnessreport.js"></script>
  <script src="../resources/multiple-fields-ax-value-changed-notification-helper.js"></script>
</head>
<body>
<input id="test" type="week" value="2012-W10">
<script>
async_test((t) => {
    var testInput = document.getElementById('test');

    var listener = new TestAccessibilityControllerNotificationListener(t);
    listener.queueExpectedNotification("Focus", "Week", "10", "\t");
    listener.queueExpectedNotification("Focus", "Year", "2012", "4");
    listener.queueExpectedNotification("ValueChanged", "Year", "0004");
    listener.queueExpectedNotification("ValueChanged", "Year", "0004", "ArrowUp");
    listener.queueExpectedNotification("ValueChanged", "Year", "0005");
    listener.queueExpectedNotification("ValueChanged", "Year", "0005");

    testInput.focus();

    window.setTimeout(function() {
        assert_unreached("Did not receive all accessibility notifications");
        t.done();
    }, 500);
}, 'This test checks value changed accessibility notifications.');
</script>
</body>
</html>
