diff options
Diffstat (limited to 'devtools/client/performance/test/browser_perf-tree-abstract-04.js')
-rw-r--r-- | devtools/client/performance/test/browser_perf-tree-abstract-04.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/devtools/client/performance/test/browser_perf-tree-abstract-04.js b/devtools/client/performance/test/browser_perf-tree-abstract-04.js new file mode 100644 index 000000000..614235ab8 --- /dev/null +++ b/devtools/client/performance/test/browser_perf-tree-abstract-04.js @@ -0,0 +1,35 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ +"use strict"; + +/** + * Tests that the treeview expander arrow doesn't react to dblclick events. + */ + +const { appendAndWaitForPaint } = require("devtools/client/performance/test/helpers/dom-utils"); +const { synthesizeCustomTreeClass } = require("devtools/client/performance/test/helpers/synth-utils"); +const { once } = require("devtools/client/performance/test/helpers/event-utils"); + +add_task(function* () { + let { MyCustomTreeItem, myDataSrc } = synthesizeCustomTreeClass(); + + let container = document.createElement("vbox"); + yield appendAndWaitForPaint(gBrowser.selectedBrowser.parentNode, container); + + // Populate the tree and test the root item... + + let treeRoot = new MyCustomTreeItem(myDataSrc, { parent: null }); + treeRoot.attachTo(container); + + let originalTreeRootExpandedState = treeRoot.expanded; + info("Double clicking on the root item arrow and waiting for focus event."); + + let receivedFocusEvent = once(treeRoot, "focus"); + dblclick(treeRoot.target.querySelector(".arrow")); + yield receivedFocusEvent; + + is(treeRoot.expanded, originalTreeRootExpandedState, + "A double click on the arrow was ignored."); + + container.remove(); +}); |