From 2fdf15a90927a1743f8cb1a5f161e67b4ee5a0e2 Mon Sep 17 00:00:00 2001 From: Tyson Warner Date: Fri, 11 Oct 2019 00:07:52 -0400 Subject: [PATCH] fix(Collapse): add aria-expanded attribute (#1657) --- src/Collapse.js | 1 + src/__tests__/Collapse.spec.js | 8 ++++++++ src/__tests__/UncontrolledCollapse.spec.js | 10 ++++++++++ 3 files changed, 19 insertions(+) diff --git a/src/Collapse.js b/src/Collapse.js index 9bac27e6d..af2146d20 100644 --- a/src/Collapse.js +++ b/src/Collapse.js @@ -127,6 +127,7 @@ class Collapse extends Component { style={{ ...childProps.style, ...style }} className={classes} ref={this.props.innerRef} + aria-expanded={isOpen ? 'true' : 'false'} > {children} diff --git a/src/__tests__/Collapse.spec.js b/src/__tests__/Collapse.spec.js index 3000ffad9..bc508860f 100644 --- a/src/__tests__/Collapse.spec.js +++ b/src/__tests__/Collapse.spec.js @@ -122,4 +122,12 @@ describe('Collapse', () => { expect(wrapper.state('height')).toBe(null); wrapper.unmount(); }); + + it('should set aria-expanded', () => { + isOpen = false; + wrapper = mount(); + expect(wrapper.find('div').prop('aria-expanded')).toBe('false'); + toggle(); + expect(wrapper.find('div').prop('aria-expanded')).toBe('true'); + }); }); diff --git a/src/__tests__/UncontrolledCollapse.spec.js b/src/__tests__/UncontrolledCollapse.spec.js index dcd5e102f..04c3fd667 100644 --- a/src/__tests__/UncontrolledCollapse.spec.js +++ b/src/__tests__/UncontrolledCollapse.spec.js @@ -95,4 +95,14 @@ describe('UncontrolledCollapse', () => { expect(UncontrolledCollapse.prototype.toggle.mock.calls.length).toBe(1); }); + + it('should set aria-expanded', () => { + const collapse = mount(Yo!); + + expect(collapse.find('div').prop('aria-expanded')).toBe('false'); + toggler.click(); + collapse.update(); + + expect(collapse.find('div').prop('aria-expanded')).toBe('true'); + }); });