summaryrefslogtreecommitdiffstats
path: root/devtools/client/inspector/test/browser_inspector_highlighter-xbl.js
diff options
context:
space:
mode:
Diffstat (limited to 'devtools/client/inspector/test/browser_inspector_highlighter-xbl.js')
-rw-r--r--devtools/client/inspector/test/browser_inspector_highlighter-xbl.js39
1 files changed, 39 insertions, 0 deletions
diff --git a/devtools/client/inspector/test/browser_inspector_highlighter-xbl.js b/devtools/client/inspector/test/browser_inspector_highlighter-xbl.js
new file mode 100644
index 000000000..2421fd3f3
--- /dev/null
+++ b/devtools/client/inspector/test/browser_inspector_highlighter-xbl.js
@@ -0,0 +1,39 @@
+/* Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ */
+
+"use strict";
+
+// Test that the picker works correctly with XBL anonymous nodes
+
+const TEST_URL = URL_ROOT + "doc_inspector_highlighter_xbl.xul";
+
+add_task(function* () {
+ let {inspector, toolbox, testActor} = yield openInspectorForURL(TEST_URL);
+
+ yield startPicker(toolbox);
+
+ info("Selecting the scale");
+ yield moveMouseOver("#scale");
+ yield doKeyPick({key: "VK_RETURN", options: {}});
+ is(inspector.selection.nodeFront.className, "scale-slider",
+ "The .scale-slider inside the scale was selected");
+
+ function doKeyPick(msg) {
+ info("Key pressed. Waiting for element to be picked");
+ testActor.synthesizeKey(msg);
+ return promise.all([
+ inspector.selection.once("new-node-front"),
+ inspector.once("inspector-updated")
+ ]);
+ }
+
+ function moveMouseOver(selector) {
+ info("Waiting for element " + selector + " to be highlighted");
+ testActor.synthesizeMouse({
+ options: {type: "mousemove"},
+ center: true,
+ selector: selector
+ });
+ return inspector.toolbox.once("picker-node-hovered");
+ }
+});