Ports from aria-toolkit and enhancements

Added audit for multiple explicit owners.
Added audit for aria-owns DOM descendant.

Enhanced (and renamed) "non-existent-labelledby" audit to cover all id reference types: 
 * aria-activedescendant
 * aria-controls
 * aria-describedby
 * aria-flowto
 * aria-labelledby
 * aria-owns

Added a few utility methods to support some of the new functionality.
Added IE11 support.
Added unit tests for RequiredAriaAttributeMissing audit.
Unit tests for all changes.
For what it's worth, I think the Record type does what you want?
https://developers.google.com/closure/compiler/docs/js-for-compiler#records

As you said though, no big deal - happy this is merged :)


On Fri, Aug 15, 2014 at 8:26 PM, RickSBrown <notifications@github.com>
wrote:

> In test/audits/multiple-aria-owners-test.js:
>
> > +        deepEqual(result.elements, []);
> > +    });
> > +
> > +    /**
> > +     * Helper for aria-owns testing:
> > +     *  - adds owned elements to the fixture
> > +     *  - creates owner element/s
> > +     *  - sets aria-owns on owners
> > +     *  - returns the fixture
> > +     * @param {!Array.<string>} ownedIds The ids that will be 'owned'.
> > +     * @param {Array.<string>} ownerIds An id for each 'owner' element.
> > +     * @param {string=} attributeValue The value of 'aria-owns'
> > +     * otherwise the ownedIds will be used.
> > +     * @return {!Element} The test container (qunit fixture).
> > +     */
> > +    function setup(ownedIds, ownerIds, attributeValue)
>
> Regarding "making arguments a named arguments object".
> So I did this and then when I tried to refactor the jsdoc I got rather
> stuck. I know how to do it in vanilla jsdoc but not the closure version. It
> seems that no matter how I do it we would lose the descriptions for the
> parameters? It seemed like typedef was the closest tag but I couldn't find
> examples with doco for each param.
>
> Since it's optional I think I'll leave that one and perhaps revisit when I
> have worked out how to doc this properly.
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/GoogleChrome/accessibility-developer-tools/pull/100/files#r16322766>
> .
>