diff --git a/js/tests/unit/tab.spec.js b/js/tests/unit/tab.spec.js index 4741b495de83..242bdba2293a 100644 --- a/js/tests/unit/tab.spec.js +++ b/js/tests/unit/tab.spec.js @@ -198,6 +198,35 @@ describe('Tab', () => { }, 30) }) + it('should not create instance when tab is disabled', done => { + fixtureEl.innerHTML = [ + '', + '
', + '
', + '
', + '
' + ].join('') + + const triggerDisabled = fixtureEl.querySelector('a.disabled') + const verify = fixtureEl.querySelector('a:not(.disabled)') + + triggerDisabled.dispatchEvent(new MouseEvent('click', { + bubbles: true + })) + verify.dispatchEvent(new MouseEvent('click', { + bubbles: true + })) + + setTimeout(() => { + expect(Tab.getInstance(triggerDisabled)).toBe(null) + expect(Tab.getInstance(verify) instanceof Tab).toBeTrue() + done() + }, 30) + }) + it('show and shown events should reference correct relatedTarget', done => { fixtureEl.innerHTML = [ '