diff options
| author | Stephen Blott | 2016-03-30 12:49:40 +0100 |
|---|---|---|
| committer | Stephen Blott | 2016-03-30 12:49:40 +0100 |
| commit | a2fba970e089254adae2631a5b154e6bd92ec1e2 (patch) | |
| tree | ecdbf35236b300478789c01f179f13123ad918cd /tests | |
| parent | 8fc46ff8b00ae82b574e3314ebc8ae6046c3215f (diff) | |
| download | vimium-a2fba970e089254adae2631a5b154e6bd92ec1e2.tar.bz2 | |
Add tests for GrabBackFocus.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/dom_tests/dom_tests.coffee | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/dom_tests/dom_tests.coffee b/tests/dom_tests/dom_tests.coffee index 158112b3..ccb84fe0 100644 --- a/tests/dom_tests/dom_tests.coffee +++ b/tests/dom_tests/dom_tests.coffee @@ -1034,3 +1034,39 @@ context "SuppressAllKeyboardEvents", sendKeyboardEvent "a" assert.equal 0, pageKeyboardEventCount +context "GrabBackFocus", + setup -> + testContent = "<input type='text' value='some value' id='input'/>" + document.getElementById("test-div").innerHTML = testContent + stubSettings "grabBackFocus", true + + tearDown -> + document.getElementById("test-div").innerHTML = "" + + should "blur an already focused input", -> + document.getElementById("input").focus() + assert.isTrue document.activeElement + assert.isTrue DomUtils.isEditable document.activeElement + initializeModeState() + assert.isTrue document.activeElement + assert.isFalse DomUtils.isEditable document.activeElement + + should "blur a newly focused input", -> + initializeModeState() + document.getElementById("input").focus() + assert.isTrue document.activeElement + assert.isFalse DomUtils.isEditable document.activeElement + + should "exit on a key event", -> + initializeModeState() + sendKeyboardEvent "a" + document.getElementById("input").focus() + assert.isTrue document.activeElement + assert.isTrue DomUtils.isEditable document.activeElement + + should "exit on a mousedown event", -> + initializeModeState() + handlerStack.bubbleEvent "mousedown", target: document.body + document.getElementById("input").focus() + assert.isTrue document.activeElement + assert.isTrue DomUtils.isEditable document.activeElement |
