Skip to content

Commit

Permalink
allow dispose/hide methods usage, when component does not exists.
Browse files Browse the repository at this point in the history
  • Loading branch information
GeoSot committed May 13, 2021
1 parent 58b1be9 commit 587ccef
Show file tree
Hide file tree
Showing 4 changed files with 0 additions and 38 deletions.
4 changes: 0 additions & 4 deletions js/src/popover.js
Expand Up @@ -131,10 +131,6 @@ class Popover extends Tooltip {
let data = Data.get(this, DATA_KEY)
const _config = typeof config === 'object' ? config : null

if (!data && /dispose|hide/.test(config)) {
return
}

if (!data) {
data = new Popover(this, _config)
Data.set(this, DATA_KEY, data)
Expand Down
4 changes: 0 additions & 4 deletions js/src/tooltip.js
Expand Up @@ -725,10 +725,6 @@ class Tooltip extends BaseComponent {
let data = Data.get(this, DATA_KEY)
const _config = typeof config === 'object' && config

if (!data && /dispose|hide/.test(config)) {
return
}

if (!data) {
data = new Tooltip(this, _config)
}
Expand Down
15 changes: 0 additions & 15 deletions js/tests/unit/popover.spec.js
Expand Up @@ -226,21 +226,6 @@ describe('Popover', () => {

expect(popover.show).toHaveBeenCalled()
})

it('should do nothing if dipose is called when a popover do not exist', () => {
fixtureEl.innerHTML = '<a href="#" title="Popover" data-bs-content="https://twitter.com/getbootstrap">BS twitter</a>'

const popoverEl = fixtureEl.querySelector('a')

jQueryMock.fn.popover = Popover.jQueryInterface
jQueryMock.elements = [popoverEl]

spyOn(Popover.prototype, 'dispose')

jQueryMock.fn.popover.call(jQueryMock, 'dispose')

expect(Popover.prototype.dispose).not.toHaveBeenCalled()
})
})

describe('getInstance', () => {
Expand Down
15 changes: 0 additions & 15 deletions js/tests/unit/tooltip.spec.js
Expand Up @@ -1351,21 +1351,6 @@ describe('Tooltip', () => {
expect(tooltip.show).toHaveBeenCalled()
})

it('should do nothing when we call dispose or hide if there is no tooltip created', () => {
fixtureEl.innerHTML = '<div></div>'

const div = fixtureEl.querySelector('div')

spyOn(Tooltip.prototype, 'dispose')

jQueryMock.fn.tooltip = Tooltip.jQueryInterface
jQueryMock.elements = [div]

jQueryMock.fn.tooltip.call(jQueryMock, 'dispose')

expect(Tooltip.prototype.dispose).not.toHaveBeenCalled()
})

it('should throw error on undefined method', () => {
fixtureEl.innerHTML = '<div></div>'

Expand Down

0 comments on commit 587ccef

Please sign in to comment.