From 5f8de423f190bbb79a62f804151bc24824fa32d8 Mon Sep 17 00:00:00 2001 From: "Matt A. Tobin" Date: Fri, 2 Feb 2018 04:16:08 -0500 Subject: Add m-esr52 at 52.6.0 --- devtools/client/inspector/markup/test/.eslintrc.js | 6 + .../inspector/markup/test/actor_events_form.js | 62 + devtools/client/inspector/markup/test/browser.ini | 155 ++ .../browser_markup_accessibility_focus_blur.js | 59 + .../browser_markup_accessibility_navigation.js | 277 +++ ...r_markup_accessibility_navigation_after_edit.js | 126 ++ .../test/browser_markup_accessibility_semantics.js | 100 + .../markup/test/browser_markup_anonymous_01.js | 44 + .../markup/test/browser_markup_anonymous_02.js | 31 + .../markup/test/browser_markup_anonymous_03.js | 34 + .../markup/test/browser_markup_anonymous_04.js | 37 + .../markup/test/browser_markup_copy_image_data.js | 67 + ...ser_markup_css_completion_style_attribute_01.js | 76 + ...ser_markup_css_completion_style_attribute_02.js | 106 + ...ser_markup_css_completion_style_attribute_03.js | 54 + .../test/browser_markup_dragdrop_autoscroll_01.js | 51 + .../test/browser_markup_dragdrop_autoscroll_02.js | 49 + .../test/browser_markup_dragdrop_distance.js | 49 + .../test/browser_markup_dragdrop_dragRootNode.js | 22 + .../test/browser_markup_dragdrop_draggable.js | 63 + .../test/browser_markup_dragdrop_escapeKeyPress.js | 34 + .../test/browser_markup_dragdrop_invalidNodes.js | 48 + .../markup/test/browser_markup_dragdrop_reorder.js | 109 + .../markup/test/browser_markup_dragdrop_tooltip.js | 35 + .../markup/test/browser_markup_events-overflow.js | 91 + .../test/browser_markup_events-windowed-host.js | 61 + .../markup/test/browser_markup_events1.js | 149 ++ .../markup/test/browser_markup_events2.js | 163 ++ .../markup/test/browser_markup_events3.js | 161 ++ .../markup/test/browser_markup_events_form.js | 61 + .../test/browser_markup_events_jquery_1.0.js | 237 +++ .../test/browser_markup_events_jquery_1.1.js | 271 +++ .../test/browser_markup_events_jquery_1.11.1.js | 196 ++ .../test/browser_markup_events_jquery_1.2.js | 191 ++ .../test/browser_markup_events_jquery_1.3.js | 224 ++ .../test/browser_markup_events_jquery_1.4.js | 287 +++ .../test/browser_markup_events_jquery_1.6.js | 388 ++++ .../test/browser_markup_events_jquery_1.7.js | 234 +++ .../test/browser_markup_events_jquery_2.1.1.js | 196 ++ .../markup/test/browser_markup_html_edit_01.js | 84 + .../markup/test/browser_markup_html_edit_02.js | 119 ++ .../markup/test/browser_markup_html_edit_03.js | 200 ++ .../markup/test/browser_markup_image_tooltip.js | 60 + .../test/browser_markup_image_tooltip_mutations.js | 83 + .../markup/test/browser_markup_keybindings_01.js | 49 + .../markup/test/browser_markup_keybindings_02.js | 32 + .../markup/test/browser_markup_keybindings_03.js | 50 + .../markup/test/browser_markup_keybindings_04.js | 58 + ...browser_markup_keybindings_delete_attributes.js | 63 + .../browser_markup_keybindings_scrolltonode.js | 87 + .../markup/test/browser_markup_links_01.js | 128 ++ .../markup/test/browser_markup_links_02.js | 38 + .../markup/test/browser_markup_links_03.js | 38 + .../markup/test/browser_markup_links_04.js | 116 ++ .../markup/test/browser_markup_links_05.js | 69 + .../markup/test/browser_markup_links_06.js | 53 + .../markup/test/browser_markup_links_07.js | 109 + .../markup/test/browser_markup_load_01.js | 71 + .../markup/test/browser_markup_mutation_01.js | 340 +++ .../markup/test/browser_markup_mutation_02.js | 159 ++ .../markup/test/browser_markup_navigation.js | 147 ++ .../markup/test/browser_markup_node_names.js | 28 + .../test/browser_markup_node_names_namespaced.js | 43 + .../test/browser_markup_node_not_displayed_01.js | 35 + .../test/browser_markup_node_not_displayed_02.js | 150 ++ .../markup/test/browser_markup_pagesize_01.js | 86 + .../markup/test/browser_markup_pagesize_02.js | 47 + .../test/browser_markup_remove_xul_attributes.js | 28 + .../markup/test/browser_markup_search_01.js | 51 + .../markup/test/browser_markup_tag_edit_01.js | 68 + .../markup/test/browser_markup_tag_edit_02.js | 44 + .../markup/test/browser_markup_tag_edit_03.js | 51 + .../test/browser_markup_tag_edit_04-backspace.js | 59 + .../test/browser_markup_tag_edit_04-delete.js | 59 + .../markup/test/browser_markup_tag_edit_05.js | 77 + .../markup/test/browser_markup_tag_edit_06.js | 85 + .../markup/test/browser_markup_tag_edit_07.js | 135 ++ .../markup/test/browser_markup_tag_edit_08.js | 132 ++ .../markup/test/browser_markup_tag_edit_09.js | 71 + .../markup/test/browser_markup_tag_edit_10.js | 34 + .../markup/test/browser_markup_tag_edit_11.js | 38 + .../markup/test/browser_markup_tag_edit_12.js | 98 + .../test/browser_markup_tag_edit_13-other.js | 38 + .../test/browser_markup_tag_edit_long-classname.js | 41 + .../test/browser_markup_textcontent_display.js | 89 + .../test/browser_markup_textcontent_edit_01.js | 84 + .../test/browser_markup_textcontent_edit_02.js | 116 ++ .../markup/test/browser_markup_toggle_01.js | 58 + .../markup/test/browser_markup_toggle_02.js | 49 + .../markup/test/browser_markup_toggle_03.js | 35 + .../test/browser_markup_update-on-navigtion.js | 44 + .../test/browser_markup_void_elements_html.js | 44 + .../test/browser_markup_void_elements_xhtml.js | 28 + .../markup/test/browser_markup_whitespace.js | 66 + .../markup/test/doc_markup_anonymous.html | 34 + .../inspector/markup/test/doc_markup_dragdrop.html | 23 + .../test/doc_markup_dragdrop_autoscroll_01.html | 87 + .../test/doc_markup_dragdrop_autoscroll_02.html | 40 + .../inspector/markup/test/doc_markup_edit.html | 48 + .../markup/test/doc_markup_events-overflow.html | 19 + .../inspector/markup/test/doc_markup_events1.html | 113 + .../inspector/markup/test/doc_markup_events2.html | 111 + .../inspector/markup/test/doc_markup_events3.html | 115 ++ .../markup/test/doc_markup_events_form.html | 11 + .../markup/test/doc_markup_events_jquery.html | 67 + .../inspector/markup/test/doc_markup_flashing.html | 15 + .../markup/test/doc_markup_html_mixed_case.html | 12 + .../markup/test/doc_markup_image_and_canvas.html | 24 + .../markup/test/doc_markup_image_and_canvas_2.html | 25 + .../inspector/markup/test/doc_markup_links.html | 42 + .../inspector/markup/test/doc_markup_mutation.html | 42 + .../markup/test/doc_markup_navigation.html | 28 + .../markup/test/doc_markup_not_displayed.html | 18 + .../markup/test/doc_markup_pagesize_01.html | 32 + .../markup/test/doc_markup_pagesize_02.html | 33 + .../inspector/markup/test/doc_markup_search.html | 11 + .../markup/test/doc_markup_svg_attributes.html | 8 + .../inspector/markup/test/doc_markup_toggle.html | 28 + .../inspector/markup/test/doc_markup_tooltip.png | Bin 0 -> 1095 bytes .../markup/test/doc_markup_void_elements.html | 18 + .../markup/test/doc_markup_void_elements.xhtml | 21 + .../markup/test/doc_markup_whitespace.html | 25 + .../inspector/markup/test/doc_markup_xul.xul | 9 + devtools/client/inspector/markup/test/head.js | 653 ++++++ .../markup/test/helper_attributes_test_runner.js | 160 ++ .../markup/test/helper_events_test_runner.js | 111 + .../test/helper_markup_accessibility_navigation.js | 70 + .../markup/test/helper_outerhtml_test_runner.js | 82 + .../markup/test/helper_style_attr_test_runner.js | 132 ++ .../client/inspector/markup/test/lib_jquery_1.0.js | 1814 ++++++++++++++++ .../client/inspector/markup/test/lib_jquery_1.1.js | 2172 ++++++++++++++++++++ .../inspector/markup/test/lib_jquery_1.11.1_min.js | 4 + .../inspector/markup/test/lib_jquery_1.2_min.js | 32 + .../inspector/markup/test/lib_jquery_1.3_min.js | 19 + .../inspector/markup/test/lib_jquery_1.4_min.js | 151 ++ .../inspector/markup/test/lib_jquery_1.6_min.js | 16 + .../inspector/markup/test/lib_jquery_1.7_min.js | 4 + .../inspector/markup/test/lib_jquery_2.1.1_min.js | 4 + 138 files changed, 15351 insertions(+) create mode 100644 devtools/client/inspector/markup/test/.eslintrc.js create mode 100644 devtools/client/inspector/markup/test/actor_events_form.js create mode 100644 devtools/client/inspector/markup/test/browser.ini create mode 100644 devtools/client/inspector/markup/test/browser_markup_accessibility_focus_blur.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_accessibility_navigation.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_accessibility_navigation_after_edit.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_accessibility_semantics.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_anonymous_01.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_anonymous_02.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_anonymous_03.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_anonymous_04.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_copy_image_data.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_css_completion_style_attribute_01.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_css_completion_style_attribute_02.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_css_completion_style_attribute_03.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_dragdrop_autoscroll_01.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_dragdrop_autoscroll_02.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_dragdrop_distance.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_dragdrop_dragRootNode.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_dragdrop_draggable.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_dragdrop_escapeKeyPress.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_dragdrop_invalidNodes.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_dragdrop_reorder.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_dragdrop_tooltip.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_events-overflow.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_events-windowed-host.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_events1.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_events2.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_events3.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_events_form.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_events_jquery_1.0.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_events_jquery_1.1.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_events_jquery_1.11.1.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_events_jquery_1.2.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_events_jquery_1.3.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_events_jquery_1.4.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_events_jquery_1.6.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_events_jquery_1.7.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_events_jquery_2.1.1.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_html_edit_01.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_html_edit_02.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_html_edit_03.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_image_tooltip.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_image_tooltip_mutations.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_keybindings_01.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_keybindings_02.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_keybindings_03.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_keybindings_04.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_keybindings_delete_attributes.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_keybindings_scrolltonode.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_links_01.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_links_02.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_links_03.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_links_04.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_links_05.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_links_06.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_links_07.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_load_01.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_mutation_01.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_mutation_02.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_navigation.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_node_names.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_node_names_namespaced.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_node_not_displayed_01.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_node_not_displayed_02.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_pagesize_01.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_pagesize_02.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_remove_xul_attributes.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_search_01.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_tag_edit_01.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_tag_edit_02.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_tag_edit_03.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_tag_edit_04-backspace.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_tag_edit_04-delete.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_tag_edit_05.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_tag_edit_06.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_tag_edit_07.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_tag_edit_08.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_tag_edit_09.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_tag_edit_10.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_tag_edit_11.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_tag_edit_12.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_tag_edit_13-other.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_tag_edit_long-classname.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_textcontent_display.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_textcontent_edit_01.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_textcontent_edit_02.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_toggle_01.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_toggle_02.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_toggle_03.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_update-on-navigtion.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_void_elements_html.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_void_elements_xhtml.js create mode 100644 devtools/client/inspector/markup/test/browser_markup_whitespace.js create mode 100644 devtools/client/inspector/markup/test/doc_markup_anonymous.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_dragdrop.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_dragdrop_autoscroll_01.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_dragdrop_autoscroll_02.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_edit.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_events-overflow.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_events1.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_events2.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_events3.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_events_form.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_events_jquery.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_flashing.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_html_mixed_case.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_image_and_canvas.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_image_and_canvas_2.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_links.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_mutation.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_navigation.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_not_displayed.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_pagesize_01.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_pagesize_02.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_search.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_svg_attributes.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_toggle.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_tooltip.png create mode 100644 devtools/client/inspector/markup/test/doc_markup_void_elements.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_void_elements.xhtml create mode 100644 devtools/client/inspector/markup/test/doc_markup_whitespace.html create mode 100644 devtools/client/inspector/markup/test/doc_markup_xul.xul create mode 100644 devtools/client/inspector/markup/test/head.js create mode 100644 devtools/client/inspector/markup/test/helper_attributes_test_runner.js create mode 100644 devtools/client/inspector/markup/test/helper_events_test_runner.js create mode 100644 devtools/client/inspector/markup/test/helper_markup_accessibility_navigation.js create mode 100644 devtools/client/inspector/markup/test/helper_outerhtml_test_runner.js create mode 100644 devtools/client/inspector/markup/test/helper_style_attr_test_runner.js create mode 100644 devtools/client/inspector/markup/test/lib_jquery_1.0.js create mode 100644 devtools/client/inspector/markup/test/lib_jquery_1.1.js create mode 100644 devtools/client/inspector/markup/test/lib_jquery_1.11.1_min.js create mode 100644 devtools/client/inspector/markup/test/lib_jquery_1.2_min.js create mode 100644 devtools/client/inspector/markup/test/lib_jquery_1.3_min.js create mode 100644 devtools/client/inspector/markup/test/lib_jquery_1.4_min.js create mode 100644 devtools/client/inspector/markup/test/lib_jquery_1.6_min.js create mode 100644 devtools/client/inspector/markup/test/lib_jquery_1.7_min.js create mode 100644 devtools/client/inspector/markup/test/lib_jquery_2.1.1_min.js (limited to 'devtools/client/inspector/markup/test') diff --git a/devtools/client/inspector/markup/test/.eslintrc.js b/devtools/client/inspector/markup/test/.eslintrc.js new file mode 100644 index 000000000..698ae9181 --- /dev/null +++ b/devtools/client/inspector/markup/test/.eslintrc.js @@ -0,0 +1,6 @@ +"use strict"; + +module.exports = { + // Extend from the shared list of defined globals for mochitests. + "extends": "../../../../.eslintrc.mochitests.js" +}; diff --git a/devtools/client/inspector/markup/test/actor_events_form.js b/devtools/client/inspector/markup/test/actor_events_form.js new file mode 100644 index 000000000..bd1b1e91a --- /dev/null +++ b/devtools/client/inspector/markup/test/actor_events_form.js @@ -0,0 +1,62 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +// This test actor is used for testing the addition of custom form data +// on NodeActor. Custom form property is set when 'form' event is sent +// by NodeActor actor (see 'onNodeActorForm' method). + +const Events = require("sdk/event/core"); +const {ActorClassWithSpec, Actor, FrontClassWithSpec, Front, generateActorSpec} = + require("devtools/shared/protocol"); + +const {NodeActor} = require("devtools/server/actors/inspector"); + +var eventsSpec = generateActorSpec({ + typeName: "eventsFormActor", + + methods: { + attach: { + request: {}, + response: {} + }, + detach: { + request: {}, + response: {} + } + } +}); + +var EventsFormActor = ActorClassWithSpec(eventsSpec, { + initialize: function () { + Actor.prototype.initialize.apply(this, arguments); + }, + + attach: function () { + Events.on(NodeActor, "form", this.onNodeActorForm); + }, + + detach: function () { + Events.off(NodeActor, "form", this.onNodeActorForm); + }, + + onNodeActorForm: function (event) { + let nodeActor = event.target; + if (nodeActor.rawNode.id == "container") { + let form = event.data; + form.setFormProperty("test-property", "test-value"); + } + } +}); + +var EventsFormFront = FrontClassWithSpec(eventsSpec, { + initialize: function (client, form) { + Front.prototype.initialize.apply(this, arguments); + + this.actorID = form[EventsFormActor.prototype.typeName]; + this.manage(this); + } +}); + +exports.EventsFormFront = EventsFormFront; diff --git a/devtools/client/inspector/markup/test/browser.ini b/devtools/client/inspector/markup/test/browser.ini new file mode 100644 index 000000000..3116e4beb --- /dev/null +++ b/devtools/client/inspector/markup/test/browser.ini @@ -0,0 +1,155 @@ +[DEFAULT] +tags = devtools +subsuite = devtools +support-files = + actor_events_form.js + doc_markup_anonymous.html + doc_markup_dragdrop.html + doc_markup_dragdrop_autoscroll_01.html + doc_markup_dragdrop_autoscroll_02.html + doc_markup_edit.html + doc_markup_events1.html + doc_markup_events2.html + doc_markup_events3.html + doc_markup_events_form.html + doc_markup_events_jquery.html + doc_markup_events-overflow.html + doc_markup_flashing.html + doc_markup_html_mixed_case.html + doc_markup_image_and_canvas.html + doc_markup_image_and_canvas_2.html + doc_markup_links.html + doc_markup_mutation.html + doc_markup_navigation.html + doc_markup_not_displayed.html + doc_markup_pagesize_01.html + doc_markup_pagesize_02.html + doc_markup_search.html + doc_markup_svg_attributes.html + doc_markup_toggle.html + doc_markup_tooltip.png + doc_markup_void_elements.html + doc_markup_void_elements.xhtml + doc_markup_whitespace.html + doc_markup_xul.xul + head.js + helper_attributes_test_runner.js + helper_events_test_runner.js + helper_markup_accessibility_navigation.js + helper_outerhtml_test_runner.js + helper_style_attr_test_runner.js + lib_jquery_1.0.js + lib_jquery_1.1.js + lib_jquery_1.2_min.js + lib_jquery_1.3_min.js + lib_jquery_1.4_min.js + lib_jquery_1.6_min.js + lib_jquery_1.7_min.js + lib_jquery_1.11.1_min.js + lib_jquery_2.1.1_min.js + !/devtools/client/commandline/test/helpers.js + !/devtools/client/framework/test/shared-head.js + !/devtools/client/inspector/test/head.js + !/devtools/client/inspector/test/shared-head.js + !/devtools/client/shared/test/test-actor.js + !/devtools/client/shared/test/test-actor-registry.js + +[browser_markup_accessibility_focus_blur.js] +skip-if = os == "mac" # Full keyboard navigation on OSX only works if Full Keyboard Access setting is set to All Control in System Keyboard Preferences +[browser_markup_accessibility_navigation.js] +skip-if = os == "mac" # Full keyboard navigation on OSX only works if Full Keyboard Access setting is set to All Control in System Keyboard Preferences +[browser_markup_accessibility_navigation_after_edit.js] +skip-if = os == "mac" # Full keyboard navigation on OSX only works if Full Keyboard Access setting is set to All Control in System Keyboard Preferences +[browser_markup_accessibility_semantics.js] +[browser_markup_anonymous_01.js] +[browser_markup_anonymous_02.js] +skip-if = e10s # scratchpad.xul is not loading in e10s window +[browser_markup_anonymous_03.js] +[browser_markup_anonymous_04.js] +[browser_markup_copy_image_data.js] +subsuite = clipboard +[browser_markup_css_completion_style_attribute_01.js] +[browser_markup_css_completion_style_attribute_02.js] +[browser_markup_css_completion_style_attribute_03.js] +[browser_markup_dragdrop_autoscroll_01.js] +[browser_markup_dragdrop_autoscroll_02.js] +[browser_markup_dragdrop_distance.js] +[browser_markup_dragdrop_draggable.js] +[browser_markup_dragdrop_dragRootNode.js] +[browser_markup_dragdrop_escapeKeyPress.js] +[browser_markup_dragdrop_invalidNodes.js] +[browser_markup_dragdrop_reorder.js] +[browser_markup_dragdrop_tooltip.js] +[browser_markup_events1.js] +[browser_markup_events2.js] +[browser_markup_events3.js] +[browser_markup_events_form.js] +[browser_markup_events_jquery_1.0.js] +[browser_markup_events_jquery_1.1.js] +[browser_markup_events_jquery_1.2.js] +[browser_markup_events_jquery_1.3.js] +[browser_markup_events_jquery_1.4.js] +[browser_markup_events_jquery_1.6.js] +[browser_markup_events_jquery_1.7.js] +[browser_markup_events_jquery_1.11.1.js] +[browser_markup_events_jquery_2.1.1.js] +[browser_markup_events-overflow.js] +skip-if = true # Bug 1177550 +[browser_markup_events-windowed-host.js] +[browser_markup_links_01.js] +[browser_markup_links_02.js] +[browser_markup_links_03.js] +[browser_markup_links_04.js] +subsuite = clipboard +[browser_markup_links_05.js] +[browser_markup_links_06.js] +[browser_markup_links_07.js] +[browser_markup_load_01.js] +[browser_markup_html_edit_01.js] +[browser_markup_html_edit_02.js] +[browser_markup_html_edit_03.js] +[browser_markup_image_tooltip.js] +[browser_markup_image_tooltip_mutations.js] +[browser_markup_keybindings_01.js] +[browser_markup_keybindings_02.js] +[browser_markup_keybindings_03.js] +[browser_markup_keybindings_04.js] +[browser_markup_keybindings_delete_attributes.js] +[browser_markup_keybindings_scrolltonode.js] +[browser_markup_mutation_01.js] +[browser_markup_mutation_02.js] +[browser_markup_navigation.js] +[browser_markup_node_names.js] +[browser_markup_node_names_namespaced.js] +[browser_markup_node_not_displayed_01.js] +[browser_markup_node_not_displayed_02.js] +[browser_markup_pagesize_01.js] +[browser_markup_pagesize_02.js] +[browser_markup_remove_xul_attributes.js] +skip-if = e10s # Bug 1036409 - The last selected node isn't reselected +[browser_markup_search_01.js] +[browser_markup_tag_edit_01.js] +[browser_markup_tag_edit_02.js] +[browser_markup_tag_edit_03.js] +[browser_markup_tag_edit_04-backspace.js] +[browser_markup_tag_edit_04-delete.js] +[browser_markup_tag_edit_05.js] +[browser_markup_tag_edit_06.js] +[browser_markup_tag_edit_07.js] +[browser_markup_tag_edit_08.js] +[browser_markup_tag_edit_09.js] +[browser_markup_tag_edit_10.js] +[browser_markup_tag_edit_11.js] +[browser_markup_tag_edit_12.js] +[browser_markup_tag_edit_13-other.js] +[browser_markup_tag_edit_long-classname.js] +[browser_markup_textcontent_display.js] +[browser_markup_textcontent_edit_01.js] +[browser_markup_textcontent_edit_02.js] +[browser_markup_toggle_01.js] +[browser_markup_toggle_02.js] +[browser_markup_toggle_03.js] +[browser_markup_update-on-navigtion.js] +[browser_markup_void_elements_html.js] +[browser_markup_void_elements_xhtml.js] +[browser_markup_whitespace.js] diff --git a/devtools/client/inspector/markup/test/browser_markup_accessibility_focus_blur.js b/devtools/client/inspector/markup/test/browser_markup_accessibility_focus_blur.js new file mode 100644 index 000000000..7e94669c0 --- /dev/null +++ b/devtools/client/inspector/markup/test/browser_markup_accessibility_focus_blur.js @@ -0,0 +1,59 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +"use strict"; + +// Test inspector markup view handling focus and blur when moving between markup +// view, its root and other containers, and other parts of inspector. + +add_task(function* () { + let {inspector, testActor} = yield openInspectorForURL( + "data:text/html;charset=utf-8,

foo

bar"); + let markup = inspector.markup; + let doc = markup.doc; + let win = doc.defaultView; + + let spanContainer = yield getContainerForSelector("span", inspector); + let rootContainer = markup.getContainer(markup._rootNode); + + is(doc.activeElement, doc.body, + "Keyboard focus by default is on document body"); + + yield selectNode("span", inspector); + + is(doc.activeElement, doc.body, + "Keyboard focus is still on document body"); + + info("Focusing on the test span node using 'Return' key"); + // Focus on the tree element. + rootContainer.elt.focus(); + EventUtils.synthesizeKey("VK_RETURN", {}, win); + + is(doc.activeElement, spanContainer.editor.tag, + "Keyboard focus should be on tag element of focused container"); + + info("Focusing on search box, external to markup view document"); + yield focusSearchBoxUsingShortcut(inspector.panelWin); + + is(doc.activeElement, doc.body, + "Keyboard focus should be removed from focused container"); + + info("Selecting the test span node again"); + yield selectNode("span", inspector); + + is(doc.activeElement, doc.body, + "Keyboard focus should again be on document body"); + + info("Focusing on the test span node using 'Space' key"); + // Focus on the tree element. + rootContainer.elt.focus(); + EventUtils.synthesizeKey("VK_SPACE", {}, win); + + is(doc.activeElement, spanContainer.editor.tag, + "Keyboard focus should again be on tag element of focused container"); + + yield clickOnInspectMenuItem(testActor, "h1"); + is(doc.activeElement, rootContainer.elt, + "When inspect menu item is used keyboard focus should move to tree."); +}); diff --git a/devtools/client/inspector/markup/test/browser_markup_accessibility_navigation.js b/devtools/client/inspector/markup/test/browser_markup_accessibility_navigation.js new file mode 100644 index 000000000..41e35afef --- /dev/null +++ b/devtools/client/inspector/markup/test/browser_markup_accessibility_navigation.js @@ -0,0 +1,277 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +/* import-globals-from helper_markup_accessibility_navigation.js */ + +"use strict"; + +// Test keyboard navigation accessibility of inspector's markup view. + +loadHelperScript("helper_markup_accessibility_navigation.js"); + +/** + * Test data has the format of: + * { + * desc {String} description for better logging + * key {String} key event's key + * options {?Object} optional event data such as shiftKey, etc + * focused {String} path to expected focused element relative to + * its container + * activedescendant {String} path to expected aria-activedescendant element + * relative to its container + * waitFor {String} optional event to wait for if keyboard actions + * result in asynchronous updates + * } + */ +const TESTS = [ + { + desc: "Collapse body container", + focused: "root.elt", + activedescendant: "body.tagLine", + key: "VK_LEFT", + options: { }, + waitFor: "collapsed" + }, + { + desc: "Expand body container", + focused: "root.elt", + activedescendant: "body.tagLine", + key: "VK_RIGHT", + options: { }, + waitFor: "expanded" + }, + { + desc: "Select header container", + focused: "root.elt", + activedescendant: "header.tagLine", + key: "VK_DOWN", + options: { }, + waitFor: "inspector-updated" + }, + { + desc: "Expand header container", + focused: "root.elt", + activedescendant: "header.tagLine", + key: "VK_RIGHT", + options: { }, + waitFor: "expanded" + }, + { + desc: "Select text container", + focused: "root.elt", + activedescendant: "container-0.tagLine", + key: "VK_DOWN", + options: { }, + waitFor: "inspector-updated" + }, + { + desc: "Select header container again", + focused: "root.elt", + activedescendant: "header.tagLine", + key: "VK_UP", + options: { }, + waitFor: "inspector-updated" + }, + { + desc: "Collapse header container", + focused: "root.elt", + activedescendant: "header.tagLine", + key: "VK_LEFT", + options: { }, + waitFor: "collapsed" + }, + { + desc: "Focus on header container tag", + focused: "header.focusableElms.0", + activedescendant: "header.tagLine", + key: "VK_RETURN", + options: { } + }, + { + desc: "Remove focus from header container tag", + focused: "root.elt", + activedescendant: "header.tagLine", + key: "VK_ESCAPE", + options: { } + }, + { + desc: "Focus on header container tag again", + focused: "header.focusableElms.0", + activedescendant: "header.tagLine", + key: "VK_SPACE", + options: { } + }, + { + desc: "Focus on header id attribute", + focused: "header.focusableElms.1", + activedescendant: "header.tagLine", + key: "VK_TAB", + options: { } + }, + { + desc: "Focus on header class attribute", + focused: "header.focusableElms.2", + activedescendant: "header.tagLine", + key: "VK_TAB", + options: { } + }, + { + desc: "Focus on header new attribute", + focused: "header.focusableElms.3", + activedescendant: "header.tagLine", + key: "VK_TAB", + options: { } + }, + { + desc: "Circle back and focus on header tag again", + focused: "header.focusableElms.0", + activedescendant: "header.tagLine", + key: "VK_TAB", + options: { } + }, + { + desc: "Circle back and focus on header new attribute again", + focused: "header.focusableElms.3", + activedescendant: "header.tagLine", + key: "VK_TAB", + options: { shiftKey: true } + }, + { + desc: "Tab back and focus on header class attribute", + focused: "header.focusableElms.2", + activedescendant: "header.tagLine", + key: "VK_TAB", + options: { shiftKey: true } + }, + { + desc: "Tab back and focus on header id attribute", + focused: "header.focusableElms.1", + activedescendant: "header.tagLine", + key: "VK_TAB", + options: { shiftKey: true } + }, + { + desc: "Tab back and focus on header tag", + focused: "header.focusableElms.0", + activedescendant: "header.tagLine", + key: "VK_TAB", + options: { shiftKey: true } + }, + { + desc: "Expand header container, ensure that focus is still on header tag", + focused: "header.focusableElms.0", + activedescendant: "header.tagLine", + key: "VK_RIGHT", + options: { }, + waitFor: "expanded" + }, + { + desc: "Activate header tag editor", + focused: "header.editor.tag.inplaceEditor.input", + activedescendant: "header.tagLine", + key: "VK_RETURN", + options: { } + }, + { + desc: "Activate header id attribute editor", + focused: "header.editor.attrList.children.0.children.1.inplaceEditor.input", + activedescendant: "header.tagLine", + key: "VK_TAB", + options: { } + }, + { + desc: "Deselect text in header id attribute editor", + focused: "header.editor.attrList.children.0.children.1.inplaceEditor.input", + activedescendant: "header.tagLine", + key: "VK_TAB", + options: { } + }, + { + desc: "Activate header class attribute editor", + focused: "header.editor.attrList.children.1.children.1.inplaceEditor.input", + activedescendant: "header.tagLine", + key: "VK_TAB", + options: { } + }, + { + desc: "Deselect text in header class attribute editor", + focused: "header.editor.attrList.children.1.children.1.inplaceEditor.input", + activedescendant: "header.tagLine", + key: "VK_TAB", + options: { } + }, + { + desc: "Activate header new attribute editor", + focused: "header.editor.newAttr.inplaceEditor.input", + activedescendant: "header.tagLine", + key: "VK_TAB", + options: { } + }, + { + desc: "Circle back and activate header tag editor again", + focused: "header.editor.tag.inplaceEditor.input", + activedescendant: "header.tagLine", + key: "VK_TAB", + options: { } + }, + { + desc: "Circle back and activate header new attribute editor again", + focused: "header.editor.newAttr.inplaceEditor.input", + activedescendant: "header.tagLine", + key: "VK_TAB", + options: { shiftKey: true } + }, + { + desc: "Exit edit mode and keep focus on header new attribute", + focused: "header.focusableElms.3", + activedescendant: "header.tagLine", + key: "VK_ESCAPE", + options: { } + }, + { + desc: "Move the selection to body and reset focus to container tree", + focused: "docBody", + activedescendant: "body.tagLine", + key: "VK_UP", + options: { }, + waitFor: "inspector-updated" + }, +]; + +let containerID = 0; +let elms = {}; + +add_task(function* () { + let { inspector } = yield openInspectorForURL(`data:text/html;charset=utf-8, +

fooChild span

`); + + // Record containers that are created after inspector is initialized to be + // useful in testing. + inspector.on("container-created", memorizeContainer); + registerCleanupFunction(() => { + inspector.off("container-created", memorizeContainer); + }); + + elms.docBody = inspector.markup.doc.body; + elms.root = inspector.markup.getContainer(inspector.markup._rootNode); + elms.header = yield getContainerForSelector("h1", inspector); + elms.body = yield getContainerForSelector("body", inspector); + + // Initial focus is on root element and active descendant should be set on + // body tag line. + testNavigationState(inspector, elms, elms.docBody, elms.body.tagLine); + + // Focus on the tree element. + elms.root.elt.focus(); + + for (let testData of TESTS) { + yield runAccessibilityNavigationTest(inspector, elms, testData); + } + + elms = null; +}); + +// Record all containers that are created dynamically into elms object. +function memorizeContainer(event, container) { + elms[`container-${containerID++}`] = container; +} diff --git a/devtools/client/inspector/markup/test/browser_markup_accessibility_navigation_after_edit.js b/devtools/client/inspector/markup/test/browser_markup_accessibility_navigation_after_edit.js new file mode 100644 index 000000000..ec217db09 --- /dev/null +++ b/devtools/client/inspector/markup/test/browser_markup_accessibility_navigation_after_edit.js @@ -0,0 +1,126 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +/* import-globals-from helper_markup_accessibility_navigation.js */ + +"use strict"; + +// Test keyboard navigation accessibility is preserved after editing attributes. + +loadHelperScript("helper_markup_accessibility_navigation.js"); + +const TEST_URI = '
'; + +/** + * Test data has the format of: + * { + * desc {String} description for better logging + * key {String} key event's key + * options {?Object} optional event data such as shiftKey, etc + * focused {String} path to expected focused element relative to + * its container + * activedescendant {String} path to expected aria-activedescendant element + * relative to its container + * waitFor {String} optional event to wait for if keyboard actions + * result in asynchronous updates + * } + */ +const TESTS = [ + { + desc: "Select header container", + focused: "root.elt", + activedescendant: "div.tagLine", + key: "VK_DOWN", + options: { }, + waitFor: "inspector-updated" + }, + { + desc: "Focus on header tag", + focused: "div.focusableElms.0", + activedescendant: "div.tagLine", + key: "VK_RETURN", + options: { } + }, + { + desc: "Activate header tag editor", + focused: "div.editor.tag.inplaceEditor.input", + activedescendant: "div.tagLine", + key: "VK_RETURN", + options: { } + }, + { + desc: "Activate header id attribute editor", + focused: "div.editor.attrList.children.0.children.1.inplaceEditor.input", + activedescendant: "div.tagLine", + key: "VK_TAB", + options: { } + }, + { + desc: "Deselect text in header id attribute editor", + focused: "div.editor.attrList.children.0.children.1.inplaceEditor.input", + activedescendant: "div.tagLine", + key: "VK_TAB", + options: { } + }, + { + desc: "Move the cursor to the left", + focused: "div.editor.attrList.children.0.children.1.inplaceEditor.input", + activedescendant: "div.tagLine", + key: "VK_LEFT", + options: { } + }, + { + desc: "Modify the attribute", + focused: "div.editor.attrList.children.0.children.1.inplaceEditor.input", + activedescendant: "div.tagLine", + key: "A", + options: { } + }, + { + desc: "Commit the attribute change", + focused: "div.focusableElms.1", + activedescendant: "div.tagLine", + key: "VK_RETURN", + options: { }, + waitFor: "inspector-updated" + }, + { + desc: "Tab and focus on header class attribute", + focused: "div.focusableElms.2", + activedescendant: "div.tagLine", + key: "VK_TAB", + options: { } + }, + { + desc: "Tab and focus on header new attribute node", + focused: "div.focusableElms.3", + activedescendant: "div.tagLine", + key: "VK_TAB", + options: { } + }, +]; + +let elms = {}; + +add_task(function* () { + let url = `data:text/html;charset=utf-8,${TEST_URI}`; + let { inspector } = yield openInspectorForURL(url); + + elms.docBody = inspector.markup.doc.body; + elms.root = inspector.markup.getContainer(inspector.markup._rootNode); + elms.div = yield getContainerForSelector("div", inspector); + elms.body = yield getContainerForSelector("body", inspector); + + // Initial focus is on root element and active descendant should be set on + // body tag line. + testNavigationState(inspector, elms, elms.docBody, elms.body.tagLine); + + // Focus on the tree element. + elms.root.elt.focus(); + + for (let testData of TESTS) { + yield runAccessibilityNavigationTest(inspector, elms, testData); + } + + elms = null; +}); diff --git a/devtools/client/inspector/markup/test/browser_markup_accessibility_semantics.js b/devtools/client/inspector/markup/test/browser_markup_accessibility_semantics.js new file mode 100644 index 000000000..b38a68c10 --- /dev/null +++ b/devtools/client/inspector/markup/test/browser_markup_accessibility_semantics.js @@ -0,0 +1,100 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +"use strict"; + +// Test that inspector markup view has all expected ARIA properties set and +// updated. + +const TOP_CONTAINER_LEVEL = 3; + +add_task(function* () { + let {inspector} = yield openInspectorForURL(` + data:text/html;charset=utf-8, +

foo

+ bar + `); + let markup = inspector.markup; + let doc = markup.doc; + let win = doc.defaultView; + + let rootElt = markup.getContainer(markup._rootNode).elt; + let bodyContainer = yield getContainerForSelector("body", inspector); + let spanContainer = yield getContainerForSelector("span", inspector); + let headerContainer = yield getContainerForSelector("h1", inspector); + let listContainer = yield getContainerForSelector("ul", inspector); + + // Focus on the tree element. + rootElt.focus(); + + // Test tree related semantics + is(rootElt.getAttribute("role"), "tree", + "Root container should have tree semantics"); + is(rootElt.getAttribute("aria-dropeffect"), "none", + "By default root container's drop effect should be set to none"); + is(rootElt.getAttribute("aria-activedescendant"), + bodyContainer.tagLine.getAttribute("id"), + "Default active descendant should be set to body"); + is(bodyContainer.tagLine.getAttribute("aria-level"), TOP_CONTAINER_LEVEL - 1, + "Body container tagLine should have nested level up to date"); + [spanContainer, headerContainer, listContainer].forEach(container => { + let treeitem = container.tagLine; + is(treeitem.getAttribute("role"), "treeitem", + "Child container tagLine elements should have tree item semantics"); + is(treeitem.getAttribute("aria-level"), TOP_CONTAINER_LEVEL, + "Child container tagLine should have nested level up to date"); + is(treeitem.getAttribute("aria-grabbed"), "false", + "Child container should be draggable but not grabbed by default"); + is(container.children.getAttribute("role"), "group", + "Container with children should have its children element have group " + + "semantics"); + ok(treeitem.id, "Tree item should have id assigned"); + if (container.closeTagLine) { + is(container.closeTagLine.getAttribute("role"), "presentation", + "Ignore closing tag"); + } + if (container.expander) { + is(container.expander.getAttribute("role"), "presentation", + "Ignore expander"); + } + }); + + // Test expanding/expandable semantics + ok(!spanContainer.tagLine.hasAttribute("aria-expanded"), + "Non expandable tree items should not have aria-expanded attribute"); + ok(!headerContainer.tagLine.hasAttribute("aria-expanded"), + "Non expandable tree items should not have aria-expanded attribute"); + is(listContainer.tagLine.getAttribute("aria-expanded"), "false", + "Closed tree item should have aria-expanded unset"); + + info("Selecting and expanding list container"); + let updated = waitForMultipleChildrenUpdates(inspector); + yield selectNode("ul", inspector); + EventUtils.synthesizeKey("VK_RIGHT", {}, win); + yield updated; + + is(rootElt.getAttribute("aria-activedescendant"), + listContainer.tagLine.getAttribute("id"), + "Active descendant should not be set to list container tagLine"); + is(listContainer.tagLine.getAttribute("aria-expanded"), "true", + "Open tree item should have aria-expanded set"); + let listItemContainer = yield getContainerForSelector("li", inspector); + is(listItemContainer.tagLine.getAttribute("aria-level"), + TOP_CONTAINER_LEVEL + 1, + "Grand child container tagLine should have nested level up to date"); + is(listItemContainer.children.getAttribute("role"), "presentation", + "Container with no children should have its children element ignored by " + + "accessibility"); + + info("Collapsing list container"); + updated = waitForMultipleChildrenUpdates(inspector); + EventUtils.synthesizeKey("VK_LEFT", {}, win); + yield updated; + + is(listContainer.tagLine.getAttribute("aria-expanded"), "false", + "Closed tree item should have aria-expanded unset"); +}); + diff --git a/devtools/client/inspector/markup/test/browser_markup_anonymous_01.js b/devtools/client/inspector/markup/test/browser_markup_anonymous_01.js new file mode 100644 index 000000000..fd32251d0 --- /dev/null +++ b/devtools/client/inspector/markup/test/browser_markup_anonymous_01.js @@ -0,0 +1,44 @@ +/* vim: set ts=2 et sw=2 tw=80: */ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +// Test native anonymous content in the markupview. +const TEST_URL = URL_ROOT + "doc_markup_anonymous.html"; + +add_task(function* () { + let {inspector} = yield openInspectorForURL(TEST_URL); + + let pseudo = yield getNodeFront("#pseudo", inspector); + + // Markup looks like:
<::before /><::after />
+ let children = yield inspector.walker.children(pseudo); + is(children.nodes.length, 3, "Children returned from walker"); + + info("Checking the ::before pseudo element"); + let before = children.nodes[0]; + yield isEditingMenuDisabled(before, inspector); + + info("Checking the normal child element"); + let span = children.nodes[1]; + yield isEditingMenuEnabled(span, inspector); + + info("Checking the ::after pseudo element"); + let after = children.nodes[2]; + yield isEditingMenuDisabled(after, inspector); + + let native = yield getNodeFront("#native", inspector); + + // Markup looks like:
+ let nativeChildren = yield inspector.walker.children(native); + is(nativeChildren.nodes.length, 1, "Children returned from walker"); + + info("Checking the video element"); + let video = nativeChildren.nodes[0]; + ok(!video.isAnonymous, "