2
0
mirror of https://github.com/tenrok/bootstrap.git synced 2026-05-15 11:59:39 +03:00
This commit is contained in:
GeoSot
2022-01-30 02:04:04 +02:00
parent a0c39eaf40
commit 49cfa8e313
+45
View File
@@ -333,6 +333,51 @@ describe('Collapse', () => {
})
})
it('should be able to handle quick toggling between siblings', () =>
new Promise(resolve => {
fixtureEl.innerHTML = [
'<div class="accordion" id="accordionExample">',
' <div class="accordion-item">',
' <button class="accordion-button" type="button" data-bs-toggle="collapse" data-bs-target="#collapseOne" aria-expanded="true" aria-controls="collapseOne">',
' Accordion Item #1',
' </button>',
' <div id="collapseOne" class="accordion-collapse collapse" aria-labelledby="headingOne" data-bs-parent="#accordionExample">',
' </div>',
' </div>',
' <div class="accordion-item">',
' <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo">',
' Accordion Item #2',
' </button>',
' <div id="collapseTwo" class="accordion-collapse collapse" aria-labelledby="headingTwo" data-bs-parent="#accordionExample">',
' </div>',
' </div>',
'</div>'
].join('')
const el = selector => fixtureEl.querySelector(selector)
const btn1 = el('[data-bs-target="#collapseOne"]')
const btn2 = el('[data-bs-target="#collapseTwo"]')
const collapseEl1 = el('#collapseOne')
const collapseEl2 = el('#collapseTwo')
collapseEl2.addEventListener('shown.bs.collapse', () => {
throw new Error('should not fire shown event')
})
collapseEl1.addEventListener('shown.bs.collapse', () => {
setTimeout(() => {
expect(collapseEl2).not.toHaveClass('show')
resolve()
}, 1000)
})
btn1.click()
btn2.click()
})
)
it('should not change tab tabpanels descendants on accordion', () => {
return new Promise(resolve => {
fixtureEl.innerHTML = [