Skip to content

v1.7.23

Choose a tag to compare

@divdavem divdavem released this 14 Oct 16:35
· 178 commits to master since this release
  • fix/test #1716 Fixing LinkDisabledTestCase on IE 8 (by making it a robot test) (#1716)

    divdavem - Fri Oct 14 2016 12:14:10 GMT+0200 (Romance Daylight Time)

    Now that aria:Link widgets really have the disabled attribute when they
    are disabled, it seems IE 8 raises an error when aria.utils.SynEvent
    tries to click on them. This commit fixes this issue by using the robot
    implementation of SynEvent (aria.jsunit.SynEvent) instead of
    aria.utils.SynEvent.

  • Fixed test.aria.utils.domNavigationManager.DomNavigationManagerRobotTestCase for IE 7, 8, 9 (#1715) (#1715)

    Yannick Meine - Thu Oct 13 2016 19:07:04 GMT+0200 (Romance Daylight Time)

    Was using the method "focus" instead of triggering a user click.

    Also improved a bit the test.EnhancedRobotBase class to accept both id or element as input for some functions.

  • feat/test #1714 Excluding failing tests (#1714)

    divdavem - Thu Oct 13 2016 12:07:28 GMT+0200 (Romance Daylight Time)

    This commit creates a list of failing tests (for each browser), which will
    be excluded during the release campaign until they are individually
    investigated and fixed.

  • Fixed test.aria.widgets.wai.popup.dialog.titleTag.DialogTitleTagJawsTestCase (#1710)

    Yannick Meine - Tue Oct 11 2016 15:07:54 GMT+0200 (Romance Daylight Time)

    The dialog did not use properly the new utility to hide other elements: it was using wrong reference elements.

    Also improved the aria.utils.DomNavigationManager by not touching elements whose hidden state is managed by other entities (i.e. which have a aria-hidden without a registered request counter).

  • Fixed aria.utils.DomNavigationManager for IE 7, 8, 9 (#1709)

    Yannick Meine - Tue Oct 11 2016 15:06:20 GMT+0200 (Romance Daylight Time)

    Because of various API or syntax incompatibilities.

  • fix/test #1712 Improving reliability of DataModelOnChangeRobotTestCase (#1712)

    divdavem - Tue Oct 11 2016 14:36:20 GMT+0200 (Romance Daylight Time)

    This commit improves the reliability of DataModelOnChangeRobotTestCase by
    waiting for the focus and adding a pause after typing.
    This fixes the test on Safari with robot-server.

  • fix/test #1711 Slowing down BindableRobotTestCase to make it more reliable (#1711)

    divdavem - Tue Oct 11 2016 14:08:08 GMT+0200 (Romance Daylight Time)

    Depending on how fast the robot implementation is,
    test.aria.html.textarea.bind.BindableRobotTestCase and
    test.aria.html.textinput.bind.BindableRobotTestCase could fail in case the
    keys are typed quicker than the delay we use to simulate the type event.
    This commit adds some pause between each character so that the corresponding
    type events do not combine several letters together.
    Especially, this commit fixes both tests with the robot-server on Safari.

  • fix/test #1708 Using Firefox instead of PhantomJS to run TooltipRobotTestCase on travis-ci (#1708)

    divdavem - Mon Oct 10 2016 15:48:45 GMT+0200 (Romance Daylight Time)

    Using Firefox instead of PhantomJS to run TooltipRobotTestCase on travis-ci
    as TooltipRobotTestCase often fails on PhantomJS (for an unknown reason).

  • fix/test #1707 test.aria.core.CSSPrefixTestCase (#1707)

    divdavem - Mon Oct 10 2016 15:24:52 GMT+0200 (Romance Daylight Time)

    This commit fixes CSSPrefixTestCase on Firefox 49 by changing the order
    in which prefixes are tested. Moz is now tested before Webkit, so that,
    on Firefox, Moz is chosen rather than Webkit (now that both seem to be
    supported on Firefox).

  • fix/test #1704 Disabling ViewportHugeShrinkTestCase (#1704)

    divdavem - Mon Oct 10 2016 14:54:56 GMT+0200 (Romance Daylight Time)

    test.aria.widgets.container.dialog.viewportResize.ViewportHugeShrinkTestCase
    was present in the repository without being part of a test suite, and has
    not been run during the release test campaign for a long time.
    It fails in all browsers except PhantomJS, but PhantomJS is known not to
    properly handle the size of the viewport (and this test is related to it).

    More investigation should be done on this test to either fix it or remove
    it.

  • Removing alert when logging after aria.core.Log is disposed (#1703)

    divdavem - Fri Oct 07 2016 10:28:39 GMT+0200 (Romance Daylight Time)

    When aria.core.Log is disposed, the previous code was replacing the error
    logging function by a function which displayed the error using alert.
    The alert could sometimes be triggered during the tests in IE 7 and
    blocked the following tests. This commit replaces it with logs on the
    console.

  • Moved aria.popup.PopupNavigationManager to aria.utils.DomNavigationManager (#1698)

    ymeine - Fri Oct 07 2016 10:16:59 GMT+0200 (Romance Daylight Time)

  • Improved the PopupNavigationManager & added a aria-hidden manager (#1698)

    ymeine - Fri Oct 07 2016 10:16:58 GMT+0200 (Romance Daylight Time)

    Also:

    • added a utility function to add click steps in JAWS tests
    • added aria-hidden attributes on elements of the test runner 'test/test.htm', for safety and consistency
    • fixed the implementation and the tests of aria.utils.Array.reduce
  • fix/test #1702 Reducing the number of phantomjs instances on travis (#1702)

    divdavem - Fri Oct 07 2016 09:51:00 GMT+0200 (Romance Daylight Time)

    This increases the stability of the travis build.

  • feat/test #1701 Updating attester (2.5.3) (#1701)

    divdavem - Thu Oct 06 2016 17:58:19 GMT+0200 (Romance Daylight Time)

  • Cleaned a bit the code and mostly the tests, in order to use the new utilities (#1696)

    ymeine - Thu Oct 06 2016 13:09:22 GMT+0200 (Romance Daylight Time)

  • Updating ua-parser-js (#1700)

    divdavem - Thu Oct 06 2016 10:06:23 GMT+0200 (Romance Daylight Time)

    This commit switches to the upstream version of ua-parser-js,
    as it is no longer useful to rely on our fork of ua-parser-js, now
    that our changes have been integrated:

  • feat/test #1699 Updating attester (2.5.2) (#1699)

    divdavem - Wed Oct 05 2016 16:27:26 GMT+0200 (Romance Daylight Time)

  • Added a set of generic utilities (#1695)

    ymeine - Tue Oct 04 2016 10:48:10 GMT+0200 (Romance Daylight Time)

    • aria.jsunit.TestCase
      • aliased notifyTestEnd as end
    • aria.utils.Algo
      • times: executes the given callbacks the specified number of times, returned the aggregated result
    • aria.utils.String
      • substitute (changed): now accepts a variable number of arguments for substitutions, with any mix of string and arrays
      • wrap: wraps (prefix and suffix) the given string with another given string
    • aria.utils.Array
      • ensureWrap: ensures to return an array from the given value: empty one as default, array with the one given element or the already given array
      • repeatValue: repeats the given value the given number of times to make an array
      • repeatArray: repeats the values of the given array the given number of times, to make an array of the same level of nesting (repeatValue only would gives an array of arrays)
      • map: applies a transformation function on each item of the given array and returns the array of results
      • reduce: applies a reducer function on each item of the array, in order to aggregate a result
      • flatten: flattens the given array on one level
      • flattenDeep: deeply flattens the given array, to have only one single top-level array
      • pushAll: concatenates inplace the given array into the given destination array
      • insert: inserts inplace the given item at the given index into the given array. Indexing is flexible: can make the array grow, can be indexed with negative numbers
    • aria.utils.Object
      • forOwnKeys: iterates over the own keys of an object and calls the given callback function with each of them
      • assign: assign all own properties of given sources into the given destination object
      • defaults: assign all own properties of given sources into the given destination object only if they don't already exist (are not null or undefined) inside the resulting destination object
    • aria.utils.Function
      • call: calls as is (without specific thisArg nor arguments) the given function (useful for simple functional programming)
    • aria.utils.async.Debouncer: delays the execution of a function as long as it (its wrapper actually) is called
  • fix/test #1697 test.aria.templates.customization.CustomTemplateTestCase (#1697)

    divdavem - Mon Oct 03 2016 15:01:58 GMT+0200 (Romance Daylight Time)

    This commit fixes a random issue happening at the end of CustomTemplateTestCase:
    restoring the environment at the end of the test triggers an XHR which
    can cause issues on the following tests in the test campaign.

  • Using mouseenter/mouseleave instead of mouseover/mouseout in widgets (#1694)

    divdavem - Fri Sep 30 2016 09:59:45 GMT+0200 (Romance Daylight Time)

    This commit adds support for mouseenter/mouseleave events in aria widgets
    (by simulating those events in all browsers from the mouseover/mouseout
    events).
    This fixes an issue which prevented the button from working on some
    browsers (including Chrome) when clicking right at the top of the <span>
    element (inside the larger <button> element) because that element moves
    down when clicking, leading to a mouseout event on the span but there is
    no mouseleave event on the larger <button> element.

  • Removing aria:parent properties when they are no longer useful (#1693)

    divdavem - Thu Sep 29 2016 11:20:50 GMT+0200 (Romance Daylight Time)

    This commit adds some checks to remove aria:parent properties on an object
    when that object no longer has any recursive listener and no longer has
    any parent in aria:parent.
    This fixes some memory leaks which can occur in case some parts of the
    data model are reused inside new containers and old containers are no
    longer used but still pointing to the reused parts of the data model (so
    the aria:parent properties on the reused parts of the data model still
    pointed to the old objects, even though there was no recursive listener
    any more in that old part of the data model).

  • isSafari, isIE and isOpera were not true on the mobile versions (#1692)

    divdavem - Tue Sep 27 2016 10:47:52 GMT+0200 (Romance Daylight Time)

    The following properties of aria.core.Browser were true only on the desktop
    version of the corresponding browsers:

    • isSafari
    • isIE
    • isOpera
      They are now true both on the desktop and mobile versions.
  • Added Array.prototype.every to aria.utils.Array (#1686)

    tjw02 - Mon Sep 26 2016 15:09:23 GMT+0200 (Romance Daylight Time)

    According test added as well.

  • Removing arbitrary limit of +/-365 in the date parser (#1691)

    divdavem - Mon Sep 26 2016 10:32:24 GMT+0200 (Romance Daylight Time)

    Before this commit:

    aria.utils.Date.interpret("-365"); // returns today - 365 days
    aria.utils.Date.interpret("+365"); // returns today + 365 days
    aria.utils.Date.interpret("-366"); // returns null
    aria.utils.Date.interpret("+366"); // returns null
    aria.utils.Date.interpret("1SEP2016/-365"); // returns Wed Sep 02 2015
    aria.utils.Date.interpret("1SEP2016/+365"); // returns Fri Sep 01 2017
    aria.utils.Date.interpret("1SEP2016/-366"); // returns null
    aria.utils.Date.interpret("1SEP2016/+366"); // returns null

    After this commit:

    aria.utils.Date.interpret("-365"); // still returns today - 365 days
    aria.utils.Date.interpret("+365"); // still returns today + 365 days
    aria.utils.Date.interpret("-366"); // now returns today - 366 days
    aria.utils.Date.interpret("+366"); // now returns today + 366 days
    aria.utils.Date.interpret("1SEP2016/-365"); // still returns Wed Sep 02 2015
    aria.utils.Date.interpret("1SEP2016/+365"); // still returns Fri Sep 01 2017
    aria.utils.Date.interpret("1SEP2016/-366"); // now returns Tue Sep 01 2015
    aria.utils.Date.interpret("1SEP2016/+366"); // now returns Sat Sep 02 2017

    The arbitrary limit of +/- 365 is now removed.
    It is possible to add or remove any number of days to the reference date.
    The new limit is the date range supported by the javascript Date object.

  • Some widgets were not autoselected when using the tab key (#1690) (#1690)

    Basso - Fri Sep 23 2016 09:13:36 GMT+0200 (Romance Daylight Time)

  • Adding waiHasPopup on widgets extending ActionWidget (#1689)

    divdavem - Tue Sep 20 2016 17:36:26 GMT+0200 (Romance Daylight Time)

    This commit adds the waiHasPopup property on all widgets which extend
    ActionWidget (aria:Button, aria:Link, ...).

  • fix/test #1681 Removing test suites (#1681)

    divdavem - Mon Sep 19 2016 11:27:25 GMT+0200 (Romance Daylight Time)

    This commit removes all test suites from the test directory (as they are
    not needed anymore).

  • fix/test #1681 Using patterns instead of test suites to specify tests to execute (#1681)

    divdavem - Mon Sep 19 2016 11:27:25 GMT+0200 (Romance Daylight Time)

    This commit changes test campaigns to use patterns instead of test suites,
    in order to remove the need to maintain a list of tests manually.

  • fix/test #1688 IOXDRTestCase no longer uses pipes.yahooapis.com to test XDR (#1688)

    divdavem - Mon Sep 19 2016 10:41:37 GMT+0200 (Romance Daylight Time)

    We now use echo.ariatemplates.com, as pipes.yahooapis.com is no longer
    available.

  • fix/test #1685 Updating Jaws tests after adding a default value for aria-labelledby (#1685) (#1685)

    divdavem - Fri Sep 16 2016 10:01:19 GMT+0200 (Romance Daylight Time)

    After commit 24960cb, the following tests
    failed because the corresponding radio buttons now have a label (which was
    not expected in Jaws history):

    • test.aria.widgets.wai.fieldset.FieldsetLabelJawsTestCase
    • test.aria.widgets.wai.input.radiobutton.RadioButtonGroupJawsTestCase

    This commit updates the expected history in those tests.

  • fix/test #1684 Improving stability of CheckboxJawsTestCase (#1684)

    divdavem - Thu Sep 15 2016 17:16:15 GMT+0200 (Romance Daylight Time)

    test.aria.widgets.wai.input.checkbox.CheckboxJawsTestCase sometimes failed
    because Jaws sometimes breaks "Checkbox B check box not checked" into two
    lines in Jaws history (the new line being inserted before "check box").

  • Adding a default value for aria-labelledby for input widgets. (#1683) (#1683)

    divdavem - Thu Sep 15 2016 10:50:36 GMT+0200 (Romance Daylight Time)

    If there is no waiLabel or waiLabelledBy property and the widget
    (which extends aria.widgets.form.Input) has a label, the id of
    that label is used for the waiLabelledBy property.

  • new readOnlyTextField property on the aria:MultiSelect widget (#1682)

    divdavem - Wed Sep 14 2016 17:18:11 GMT+0200 (Romance Daylight Time)

    This commit adds the readOnlyTextField property to the multiselect.
    If true, the user can only modify the value of the widget by opening
    the popup (the text field is not modifiable).

  • fix/test #1680 Checking new test naming conventions automatically (#1680)

    divdavem - Mon Sep 12 2016 11:58:47 GMT+0200 (Romance Daylight Time)

    This commit adds a grunt task which automatically check new test naming
    conventions and fails the build in case they are not respected.

  • fix/test #1680 Creating specific child test classes to avoid using base test classes as tests

    divdavem - Mon Sep 12 2016 11:58:46 GMT+0200 (Romance Daylight Time)

    With the new naming convention, classes which end with the Base suffix
    should not be run directly as tests. This commit creates corresponding
    child classes for all Base test classes which were previously used as
    tests.

  • fix/test #1680 Updating the content of test files after renaming them

    divdavem - Mon Sep 12 2016 10:21:03 GMT+0200 (Romance Daylight Time)

    This commit was generated automatically. It updates references in test files
    after the previous commit which renamed some test files to follow the new
    naming convention.

  • fix/test #1680 Renaming test files to follow the naming convention.

    divdavem - Mon Sep 12 2016 10:20:29 GMT+0200 (Romance Daylight Time)

    This commit was generated automatically and contains only file renames,
    without updating any content (which is done in the next commit).

  • fix/test #1680 Manually updating some test classpaths which cannot be changed automatically

    divdavem - Mon Sep 12 2016 10:09:30 GMT+0200 (Romance Daylight Time)

    Some test classpaths are built dynamically in the code.
    This commit updates those parts to follow the new tests naming convention.

  • fix/test #1680 Fixing some test files to make them compatible with at-diff

    divdavem - Mon Sep 12 2016 10:09:29 GMT+0200 (Romance Daylight Time)

    at-diff requires each file to only contain one Aria definition and to have it
    exported on module.exports. Other definitions were modified to make them
    undetectable by at-diff.

  • fix/test #1680 Changing test suites to contain the full classpaths of tests

    divdavem - Fri Sep 09 2016 17:24:18 GMT+0200 (Romance Daylight Time)

    This makes sure automatic renames in later commits correctly update those test suites.

  • fix/test #1680 Updating the case of one test file to match its classpath

    divdavem - Fri Sep 09 2016 17:10:25 GMT+0200 (Romance Daylight Time)

  • Improved utilities for Jaws tests (EnhancedJawsTestCase), and simplified the tests using it. (#1679)

    ymeine - Fri Sep 09 2016 10:39:36 GMT+0200 (Romance Daylight Time)

  • Renamed test classes to match conventions, and added missing tests to the Jaws test suite. (#1679)

    ymeine - Fri Sep 09 2016 10:39:17 GMT+0200 (Romance Daylight Time)

  • (#1678) (#1678)

    Basso - Fri Sep 09 2016 09:54:45 GMT+0200 (Romance Daylight Time)

    test.aria.widgets.form.select.valueAndOptionsBinding.SelectTemplateTestCase
    missing in test suite

  • WAI-ARIA - DatePicker - Reading the input date when valid (#1677)

    ymeine - Thu Sep 08 2016 16:46:01 GMT+0200 (Romance Daylight Time)

    Now when the user inputs a date, be it from the calendar or when typing in, if the date is valid it is read by the screen reader following a provided format: waiAriaConfirmDateFormat (which defaults to waiAriaDateFormat or a long date format).

    When the user types the text in, a debouncing algorithm is applied, which is controlled by a delay waiAriaConfirmDateDelay, defaulting to 50 ms.

    References:

    • AT-1509
  • Implement the "disabled" attribute for the Link widget (#1675)

    ymeine - Thu Sep 08 2016 15:56:25 GMT+0200 (Romance Daylight Time)

    Also made the following change to all "ActionWidget" based widgets: now the "aria-disabled" attribute is not set anymore in WAI-ARIA mode, "disabled" must be sufficient.

    References:

    • AT-1398
    • PTR 11630074
  • missing coma that magically passed the CI

    Benoit Charbonnier - Thu Sep 08 2016 10:38:56 GMT+0200 (Romance Daylight Time)

  • Properly adding/removing disabled attribute on button widget (#1662)

    Benoit Charbonnier - Thu Sep 08 2016 10:03:43 GMT+0200 (Romance Daylight Time)

    This commit properly manage the disabled attribute on the generated markup for the button widget. Depending on the state we accordingly set it or completely remove it.

  • fix/test #1673 test.aria.widgets.wai.errorlist.binding.ErrorListBindingJawsTestCase had wrong expected history (#1673)

    ymeine - Wed Sep 07 2016 16:41:59 GMT+0200 (Romance Daylight Time)

    The expected history was not correct.

  • fix/test #1672 test.aria.widgets.wai.tabs.TabsJawsTest to match the latest behavior changes (#1672)

    ymeine - Wed Sep 07 2016 16:41:44 GMT+0200 (Romance Daylight Time)

    The test has been updated to match the new behavior of the two widgets Tab and TabPanel.

    References:

    • AT-1468
  • feat/test #1671 Improved the test output for the default JSUnit TestRunner (#1671)

    ymeine - Wed Sep 07 2016 16:34:11 GMT+0200 (Romance Daylight Time)

    Now line returns are properly displayed, and the errors descriptions are escaped for safety.

  • Configurable default values for any widget property of the Aria library (#1676)

    divdavem - Tue Sep 06 2016 14:52:20 GMT+0200 (Romance Daylight Time)

    This commit adds the widgetDefaults parameter in the environment, allowing
    to specify a default value for any property of any widget in the Aria
    widget library.

    For example, to set the calendarNumberOfUnits property for all instances
    of the @aria:DatePicker widget (if those instances do not specify any
    value for this property):

      aria.core.AppEnvironment.setEnvironment({
        widgetDefaults: {
          DatePicker: {
            calendarNumberOfUnits: 5
          }
        }
      });
  • aria-activedescendant initially not set for the autocomplete widget (#1674)

    divdavem - Wed Aug 31 2016 10:36:57 GMT+0200 (Romance Daylight Time)

    When using the aria:AutoComplete component with waiAria = true, the
    aria-activedescendant attribute was not set until the user navigates the
    suggestions with up/down arrow keys.

    This was an issue when a suggestion is preselected while the user types
    (which can happen, for example, if the preselect property is set to "always")

  • Factorizing filters for Jaws test cases (#1670)

    divdavem - Wed Aug 24 2016 17:32:04 GMT+0200 (Romance Daylight Time)

    This commit refactors the way filters for Jaws history are applied in
    Jaws test cases:

    • retrieveJawsHistory no longer does any filtering, it returns the raw
      Jaws history
    • assertJawsHistoryEquals now first executes filterJawsHistory before any
      provided filter function
    • filterJawsHistory executes by default the 3 following common filters on
      all tests:
      • normalizeSpaces (can be disabled with this.skipNormalizeSpaces = true)
      • removeNoise (can be disabled with this.skipRemoveNoise = true)
      • removeDuplicates (can be disabled with this.skipRemoveDuplicates = true)
    • removeNoise can be configured by changing the array of regular expressions
      stored in this.noiseRegExps
  • fix/test Fixing a regression introduced in the previous commit (#1668)

    divdavem - Tue Aug 23 2016 18:09:28 GMT+0200 (Romance Daylight Time)

    The previous commit introduced the following regression in "npm run attest":
    the exit code is 0 even if the tests fail.

  • fix/test Adding support for SIGINT for "npm run attest" (#1668)

    divdavem - Tue Aug 23 2016 17:19:21 GMT+0200 (Romance Daylight Time)

    This commit allows to use CTRL-C when running the "npm run attest" command,
    in order to interrupt it properly (including on Windows).

  • Improving the readability of Jaws test case failures. (#1667)

    divdavem - Tue Aug 23 2016 12:38:59 GMT+0200 (Romance Daylight Time)

    This commit adds some line breaks in the error message of Jaws test cases
    so that it is easier to compare the actual Jaws history with the expected
    one.

  • # WAI-ARIA - ActionWidget - Implementation of labels, description and disabled (#1666)

    ymeine - Mon Aug 22 2016 18:17:09 GMT+0200 (Romance Daylight Time)

    The impacted widgets are the following:

    • ActionWidget
      • Button, including the simple button where the element is now a "button" instead of an "input"
        • IconButton
      • Link
      • SortIndicator

    Implemented attributes are (on the left the WAI-ARIA attribute name, on the right the widget's property changing its value):

    • aria-label: waiLabel
    • aria-labelledby: waiLabelledBy
    • aria-describedby: waiDescribedBy
    • aria-disabled: disabled

    References:

    • AT-1476
    • AT-1517
    • PTR 11805347
  • # WAI-ARIA - Tab & TabPanel - Specifications update (#1665)

    ymeine - Mon Aug 22 2016 17:07:11 GMT+0200 (Romance Daylight Time)

    Tab:

    • tabs are now "a" elements, and all the accessibility attributes, as well as the tabindex for focusing, are put on this element
    • ability to add a wrapper element around the "a", with a custom tag
    • support for: aria-hidden, aria-label, aria-labelledby, aria-describedby

    TabPanel:

    • now the tabIndex defaults to -1

    Global behavior:

    • when a Tab is selected, the first element of its associated TabPanel is focused

    Glitches:

    • when clicking on a Tab to select it, since the focus is set to the TabPanel the Tab title is not read

    References:

    • AT-1468
  • inconsistencies between addListener and removeListener for 'mousewheel' event (in aria.utils.Event) (#1664)

    vcarle - Thu Aug 18 2016 16:19:46 GMT+0200 (Romance Daylight Time)

    The following inconsistencies are now fixed:

    • in Chrome, the event was changed to 'DOMMouseScroll' in removeListener but not in addListener
    • in IE 11, the target element was changed from the window to the document in addListener but not in removeListener
  • keyboard navigation issues with the multiselect (#1663) (#1663)

    Basso - Thu Aug 18 2016 12:43:36 GMT+0200 (Romance Daylight Time)

  • Jaws reads "not checked unavailable" when the checkbox is checked (and disabled) (#1655)

    divdavem - Thu Aug 11 2016 12:15:43 GMT+0200 (Romance Daylight Time)

    This commit implements a work-around for the following bug in IE 11 / Jaws 16:
    in some cases a disabled checked checkbox is read as "not checked unavailable"
    instead of "checked unavailable". It seems to happen when aria attributes
    (such as aria-disabled or aria-labelledby) are used on the input.