diff options
| author | Patrick H. Lauke <[email protected]> | 2022-01-05 17:20:15 +0000 |
|---|---|---|
| committer | GitHub <[email protected]> | 2022-01-05 19:20:15 +0200 |
| commit | 0d054bb0f1484dbc0c778d3643e96e37ff46d708 (patch) | |
| tree | de1cbfd7831b1a8487e1fefe8312c9ed6b6cc215 /js/tests/unit | |
| parent | f7a1b183209affbec48af744006f330bac5ddd98 (diff) | |
| download | bootstrap-0d054bb0f1484dbc0c778d3643e96e37ff46d708.tar.xz bootstrap-0d054bb0f1484dbc0c778d3643e96e37ff46d708.zip | |
Remove explicit use of aria-hidden for offcanvas when closed (#35589)
Remove explicit use of aria-hidden & visibility for offcanvas when closed, handling it with css
Co-authored-by: GeoSot <[email protected]>
Co-authored-by: Gaƫl Poupard <[email protected]>
Diffstat (limited to 'js/tests/unit')
| -rw-r--r-- | js/tests/unit/offcanvas.spec.js | 59 |
1 files changed, 53 insertions, 6 deletions
diff --git a/js/tests/unit/offcanvas.spec.js b/js/tests/unit/offcanvas.spec.js index f4b0b6482..f87527fb2 100644 --- a/js/tests/unit/offcanvas.spec.js +++ b/js/tests/unit/offcanvas.spec.js @@ -242,23 +242,46 @@ describe('Offcanvas', () => { expect(offCanvas.show).toHaveBeenCalled() }) - it('should call hide method if show class is present', () => { + it('should call hide method if show class is present', done => { fixtureEl.innerHTML = '<div class="offcanvas"></div>' const offCanvasEl = fixtureEl.querySelector('.offcanvas') const offCanvas = new Offcanvas(offCanvasEl) - offCanvas.show() - expect(offCanvasEl).toHaveClass('show') - spyOn(offCanvas, 'hide') + offCanvasEl.addEventListener('shown.bs.offcanvas', () => { + expect(offCanvasEl).toHaveClass('show') + spyOn(offCanvas, 'hide') - offCanvas.toggle() + offCanvas.toggle() - expect(offCanvas.hide).toHaveBeenCalled() + expect(offCanvas.hide).toHaveBeenCalled() + done() + }) + + offCanvas.show() }) }) describe('show', () => { + it('should add `showing` class during opening and `show` class on end', done => { + fixtureEl.innerHTML = '<div class="offcanvas"></div>' + const offCanvasEl = fixtureEl.querySelector('.offcanvas') + const offCanvas = new Offcanvas(offCanvasEl) + + offCanvasEl.addEventListener('show.bs.offcanvas', () => { + expect(offCanvasEl).not.toHaveClass('show') + }) + + offCanvasEl.addEventListener('shown.bs.offcanvas', () => { + expect(offCanvasEl).not.toHaveClass('showing') + expect(offCanvasEl).toHaveClass('show') + done() + }) + + offCanvas.show() + expect(offCanvasEl).toHaveClass('showing') + }) + it('should do nothing if already shown', () => { fixtureEl.innerHTML = '<div class="offcanvas show"></div>' @@ -353,6 +376,30 @@ describe('Offcanvas', () => { }) describe('hide', () => { + it('should add `hiding` class during closing and remover `show` & `hiding` classes on end', done => { + fixtureEl.innerHTML = '<div class="offcanvas"></div>' + const offCanvasEl = fixtureEl.querySelector('.offcanvas') + const offCanvas = new Offcanvas(offCanvasEl) + + offCanvasEl.addEventListener('hide.bs.offcanvas', () => { + expect(offCanvasEl).not.toHaveClass('showing') + expect(offCanvasEl).toHaveClass('show') + }) + + offCanvasEl.addEventListener('hidden.bs.offcanvas', () => { + expect(offCanvasEl).not.toHaveClass('hiding') + expect(offCanvasEl).not.toHaveClass('show') + done() + }) + + offCanvas.show() + offCanvasEl.addEventListener('shown.bs.offcanvas', () => { + offCanvas.hide() + expect(offCanvasEl).not.toHaveClass('showing') + expect(offCanvasEl).toHaveClass('hiding') + }) + }) + it('should do nothing if already shown', () => { fixtureEl.innerHTML = '<div class="offcanvas"></div>' |
