Check menu.popup options are an object (#12325)
* check menu.popup options are an object * Add a spec for menu.popup options check * remove stray .only
This commit is contained in:
parent
792837bd71
commit
31d688ad3d
2 changed files with 9 additions and 0 deletions
|
@ -47,6 +47,9 @@ Menu.prototype._init = function () {
|
||||||
}
|
}
|
||||||
|
|
||||||
Menu.prototype.popup = function (options) {
|
Menu.prototype.popup = function (options) {
|
||||||
|
if (options == null || typeof options !== 'object') {
|
||||||
|
throw new TypeError('Options must be an object')
|
||||||
|
}
|
||||||
let {window, x, y, positioningItem, callback} = options
|
let {window, x, y, positioningItem, callback} = options
|
||||||
|
|
||||||
// no callback passed
|
// no callback passed
|
||||||
|
|
|
@ -309,6 +309,12 @@ describe('Menu module', () => {
|
||||||
return closeWindow(w).then(() => { w = null })
|
return closeWindow(w).then(() => { w = null })
|
||||||
})
|
})
|
||||||
|
|
||||||
|
it('throws an error if options is not an object', () => {
|
||||||
|
assert.throws(() => {
|
||||||
|
menu.popup()
|
||||||
|
}, /Options must be an object/)
|
||||||
|
})
|
||||||
|
|
||||||
it('should emit menu-will-show event', (done) => {
|
it('should emit menu-will-show event', (done) => {
|
||||||
menu.on('menu-will-show', () => { done() })
|
menu.on('menu-will-show', () => { done() })
|
||||||
menu.popup({window: w})
|
menu.popup({window: w})
|
||||||
|
|
Loading…
Reference in a new issue