diff options
| author | GeoSot <[email protected]> | 2021-12-01 15:10:10 +0200 |
|---|---|---|
| committer | GitHub <[email protected]> | 2021-12-01 15:10:10 +0200 |
| commit | cab62af2e6ecddbadbf799e00f911c2b342d93b2 (patch) | |
| tree | c6fe4cb85a888bf8395f2fc3069f5a5b63ece023 /js/tests | |
| parent | 44a6cd724c0a5c5247492fdb8db7d4df4705641e (diff) | |
| download | bootstrap-cab62af2e6ecddbadbf799e00f911c2b342d93b2.tar.xz bootstrap-cab62af2e6ecddbadbf799e00f911c2b342d93b2.zip | |
Fix popover arrow & tooltip template after the `setContent` addition (#35441)
Diffstat (limited to 'js/tests')
| -rw-r--r-- | js/tests/unit/popover.spec.js | 16 | ||||
| -rw-r--r-- | js/tests/unit/tooltip.spec.js | 15 |
2 files changed, 31 insertions, 0 deletions
diff --git a/js/tests/unit/popover.spec.js b/js/tests/unit/popover.spec.js index ba23ec024..606d7370c 100644 --- a/js/tests/unit/popover.spec.js +++ b/js/tests/unit/popover.spec.js @@ -155,6 +155,22 @@ describe('Popover', () => { popover.show() }) + it('"setContent" should keep the initial template', () => { + fixtureEl.innerHTML = '<a href="#" title="Popover" data-bs-content="https://twitter.com/getbootstrap" data-bs-custom-class="custom-class">BS twitter</a>' + + const popoverEl = fixtureEl.querySelector('a') + const popover = new Popover(popoverEl) + + popover.setContent({ '.tooltip-inner': 'foo' }) + const tip = popover.getTipElement() + + expect(tip).toHaveClass('popover') + expect(tip).toHaveClass('bs-popover-auto') + expect(tip.querySelector('.popover-arrow')).not.toBeNull() + expect(tip.querySelector('.popover-header')).not.toBeNull() + expect(tip.querySelector('.popover-body')).not.toBeNull() + }) + it('should call setContent once', done => { fixtureEl.innerHTML = '<a href="#">BS twitter</a>' diff --git a/js/tests/unit/tooltip.spec.js b/js/tests/unit/tooltip.spec.js index 19eeca2f5..d261986c3 100644 --- a/js/tests/unit/tooltip.spec.js +++ b/js/tests/unit/tooltip.spec.js @@ -1081,6 +1081,21 @@ describe('Tooltip', () => { expect(tip()).not.toHaveClass('show') expect(tip().querySelector('.tooltip-inner').textContent).toEqual('foo') }) + + it('"setContent" should keep the initial template', () => { + fixtureEl.innerHTML = '<a href="#" rel="tooltip" title="Another tooltip">' + + const tooltipEl = fixtureEl.querySelector('a') + const tooltip = new Tooltip(tooltipEl) + + tooltip.setContent({ '.tooltip-inner': 'foo' }) + const tip = tooltip.getTipElement() + + expect(tip).toHaveClass('tooltip') + expect(tip).toHaveClass('bs-tooltip-auto') + expect(tip.querySelector('.tooltip-arrow')).not.toBeNull() + expect(tip.querySelector('.tooltip-inner')).not.toBeNull() + }) }) describe('setContent', () => { |
