add unit tests

This commit is contained in:
Tilde Ann Thurium 2018-09-12 17:02:05 -07:00
parent f7b95d03d3
commit 9e6b4b413b

View File

@ -55,6 +55,18 @@ describe('TooltipManager', () => {
disposables.dispose()
})
it('hides the tooltip on keydown events', () => {
const disposable = manager.add(element, { title: 'Title', trigger: 'hover' })
hover(element, function () {
expect(document.body.querySelector('.tooltip')).not.toBeNull()
window.dispatchEvent(new CustomEvent('keydown', {
bubbles: true
}))
expect(document.body.querySelector('.tooltip')).toBeNull()
disposable.dispose()
})
})
})
describe("when the trigger is 'manual'", () =>
@ -93,6 +105,16 @@ describe('TooltipManager', () => {
})
)
it('does not hide the tooltip on keyboard input', () => {
manager.add(element, {title: 'Title', trigger: 'click'})
element.click()
expect(document.body.querySelector('.tooltip')).not.toBeNull()
window.dispatchEvent(new CustomEvent('keydown', {
bubbles: true
}))
expect(document.body.querySelector('.tooltip')).not.toBeNull()
})
it('allows a custom item to be specified for the content of the tooltip', () => {
const tooltipElement = document.createElement('div')
manager.add(element, {item: {element: tooltipElement}})
@ -213,20 +235,6 @@ describe('TooltipManager', () => {
})
)
describe('when a user types', () =>
it('hides the tooltips', () => {
const disposable = manager.add(element, { title: 'Title' })
hover(element, function () {
expect(document.body.querySelector('.tooltip')).not.toBeNull()
window.dispatchEvent(new CustomEvent('keydown', {
bubbles: true
}))
expect(document.body.querySelector('.tooltip')).toBeNull()
disposable.dispose()
})
})
)
describe('findTooltips', () => {
it('adds and remove tooltips correctly', () => {
expect(manager.findTooltips(element).length).toBe(0)