diff --git a/src/Terminal.test.ts b/src/Terminal.test.ts index b83692e7..a050f227 100644 --- a/src/Terminal.test.ts +++ b/src/Terminal.test.ts @@ -94,6 +94,7 @@ describe('Terminal', () => { expect(e.domEvent).to.be.an.instanceof(Object); done(); }); + (term).textarea = { value: '' }; const evKeyDown = { preventDefault: () => { }, stopPropagation: () => { }, @@ -555,12 +556,16 @@ describe('Terminal', () => { afterEach(() => term.browser.isMac = originalIsMac); it('should interfere with the alt key on keyDown', () => { + (term)._keyDownHandled = false; evKeyDown.altKey = true; evKeyDown.keyCode = 81; - assert.equal(term.keyDown(evKeyDown), false); + term.keyDown(evKeyDown);; + assert.equal((term)._keyDownHandled, true); + (term)._keyDownHandled = false; evKeyDown.altKey = true; evKeyDown.keyCode = 192; - assert.equal(term.keyDown(evKeyDown), false); + term.keyDown(evKeyDown); + assert.equal((term)._keyDownHandled, true); }); }); @@ -573,21 +578,29 @@ describe('Terminal', () => { afterEach(() => term.browser.isMac = originalIsMac); it('should not interfere with the alt key on keyDown', () => { + (term)._keyDownHandled = false; evKeyDown.altKey = true; evKeyDown.keyCode = 81; - assert.equal(term.keyDown(evKeyDown), true); + term.keyDown(evKeyDown); + assert.equal((term)._keyDownHandled, false); + (term)._keyDownHandled = false; evKeyDown.altKey = true; evKeyDown.keyCode = 192; - assert.equal(term.keyDown(evKeyDown), true); + term.keyDown(evKeyDown); + assert.equal((term)._keyDownHandled, false); }); - it('should interefere with the alt + arrow keys', () => { + it('should interfere with the alt + arrow keys', () => { + (term)._keyDownHandled = false; evKeyDown.altKey = true; evKeyDown.keyCode = 37; - assert.equal(term.keyDown(evKeyDown), false); + term.keyDown(evKeyDown); + assert.equal((term)._keyDownHandled, true); + (term)._keyDownHandled = false; evKeyDown.altKey = true; evKeyDown.keyCode = 39; - assert.equal(term.keyDown(evKeyDown), false); + term.keyDown(evKeyDown); + assert.equal((term)._keyDownHandled, true); }); it('should emit key with alt + key on keyPress', (done) => { @@ -639,24 +652,32 @@ describe('Terminal', () => { afterEach(() => term.browser.isWindows = originalIsWindows); it('should not interfere with the alt + ctrl key on keyDown', () => { + (term)._keyDownHandled = false; evKeyPress.altKey = true; evKeyPress.ctrlKey = true; evKeyPress.keyCode = 81; - assert.equal(term.keyDown(evKeyPress), true); + term.keyDown(evKeyPress); + assert.equal((term)._keyDownHandled, false); + (term)._keyDownHandled = false; evKeyDown.altKey = true; evKeyDown.ctrlKey = true; evKeyDown.keyCode = 81; - assert.equal(term.keyDown(evKeyDown), true); + term.keyDown(evKeyDown); + assert.equal((term)._keyDownHandled, false); }); it('should interefere with the alt + ctrl + arrow keys', () => { evKeyDown.altKey = true; evKeyDown.ctrlKey = true; + (term)._keyDownHandled = false; evKeyDown.keyCode = 37; - assert.equal(term.keyDown(evKeyDown), false); + term.keyDown(evKeyDown); + assert.equal((term)._keyDownHandled, true); + (term)._keyDownHandled = false; evKeyDown.keyCode = 39; - assert.equal(term.keyDown(evKeyDown), false); + term.keyDown(evKeyDown); + assert.equal((term)._keyDownHandled, true); }); it('should emit key with alt + ctrl + key on keyPress', (done) => {