Class: Selenium::DevTools::V143::DOM
- Inherits:
-
Object
- Object
- Selenium::DevTools::V143::DOM
- Defined in:
- lib/selenium/devtools/v143/dom.rb
Constant Summary collapse
- EVENTS =
{ attribute_modified: 'attributeModified', attribute_removed: 'attributeRemoved', character_data_modified: 'characterDataModified', child_node_count_updated: 'childNodeCountUpdated', child_node_inserted: 'childNodeInserted', child_node_removed: 'childNodeRemoved', distributed_nodes_updated: 'distributedNodesUpdated', document_updated: 'documentUpdated', inline_style_invalidated: 'inlineStyleInvalidated', pseudo_element_added: 'pseudoElementAdded', top_layer_elements_updated: 'topLayerElementsUpdated', scrollable_flag_updated: 'scrollableFlagUpdated', affected_by_starting_styles_flag_updated: 'affectedByStartingStylesFlagUpdated', pseudo_element_removed: 'pseudoElementRemoved', set_child_nodes: 'setChildNodes', shadow_root_popped: 'shadowRootPopped', shadow_root_pushed: 'shadowRootPushed', }.freeze
Instance Method Summary collapse
- #collect_class_names_from_subtree(node_id:) ⇒ Object
- #copy_to(node_id:, target_node_id:, insert_before_node_id: nil) ⇒ Object
- #describe_node(node_id: nil, backend_node_id: nil, object_id: nil, depth: nil, pierce: nil) ⇒ Object
- #disable ⇒ Object
- #discard_search_results(search_id:) ⇒ Object
- #enable(include_whitespace: nil) ⇒ Object
- #focus(node_id: nil, backend_node_id: nil, object_id: nil) ⇒ Object
- #force_show_popover(node_id:, enable:) ⇒ Object
- #get_anchor_element(node_id:, anchor_specifier: nil) ⇒ Object
- #get_attributes(node_id:) ⇒ Object
- #get_box_model(node_id: nil, backend_node_id: nil, object_id: nil) ⇒ Object
- #get_container_for_node(node_id:, container_name: nil, physical_axes: nil, logical_axes: nil, queries_scroll_state: nil, queries_anchored: nil) ⇒ Object
- #get_content_quads(node_id: nil, backend_node_id: nil, object_id: nil) ⇒ Object
- #get_detached_dom_nodes ⇒ Object
- #get_document(depth: nil, pierce: nil) ⇒ Object
- #get_element_by_relation(node_id:, relation:) ⇒ Object
- #get_file_info(object_id:) ⇒ Object
- #get_flattened_document(depth: nil, pierce: nil) ⇒ Object
- #get_frame_owner(frame_id:) ⇒ Object
- #get_node_for_location(x:, y:, include_user_agent_shadow_dom: nil, ignore_pointer_events_none: nil) ⇒ Object
- #get_node_stack_traces(node_id:) ⇒ Object
- #get_nodes_for_subtree_by_style(node_id:, computed_styles:, pierce: nil) ⇒ Object
- #get_outer_html(node_id: nil, backend_node_id: nil, object_id: nil, include_shadow_dom: nil) ⇒ Object
- #get_querying_descendants_for_container(node_id:) ⇒ Object
- #get_relayout_boundary(node_id:) ⇒ Object
- #get_search_results(search_id:, from_index:, to_index:) ⇒ Object
- #get_top_layer_elements ⇒ Object
- #hide_highlight ⇒ Object
- #highlight_node ⇒ Object
- #highlight_rect ⇒ Object
-
#initialize(devtools) ⇒ DOM
constructor
A new instance of DOM.
- #mark_undoable_state ⇒ Object
- #move_to(node_id:, target_node_id:, insert_before_node_id: nil) ⇒ Object
- #on(event, &block) ⇒ Object
- #perform_search(query:, include_user_agent_shadow_dom: nil) ⇒ Object
- #push_node_by_path_to_frontend(path:) ⇒ Object
- #push_nodes_by_backend_ids_to_frontend(backend_node_ids:) ⇒ Object
- #query_selector(node_id:, selector:) ⇒ Object
- #query_selector_all(node_id:, selector:) ⇒ Object
- #redo ⇒ Object
- #remove_attribute(node_id:, name:) ⇒ Object
- #remove_node(node_id:) ⇒ Object
- #request_child_nodes(node_id:, depth: nil, pierce: nil) ⇒ Object
- #request_node(object_id:) ⇒ Object
- #resolve_node(node_id: nil, backend_node_id: nil, object_group: nil, execution_context_id: nil) ⇒ Object
- #scroll_into_view_if_needed(node_id: nil, backend_node_id: nil, object_id: nil, rect: nil) ⇒ Object
- #set_attribute_value(node_id:, name:, value:) ⇒ Object
- #set_attributes_as_text(node_id:, text:, name: nil) ⇒ Object
- #set_file_input_files(files:, node_id: nil, backend_node_id: nil, object_id: nil) ⇒ Object
- #set_inspected_node(node_id:) ⇒ Object
- #set_node_name(node_id:, name:) ⇒ Object
- #set_node_stack_traces_enabled(enable:) ⇒ Object
- #set_node_value(node_id:, value:) ⇒ Object
- #set_outer_html(node_id:, outer_html:) ⇒ Object
- #undo ⇒ Object
Constructor Details
#initialize(devtools) ⇒ DOM
Returns a new instance of DOM.
45 46 47 |
# File 'lib/selenium/devtools/v143/dom.rb', line 45 def initialize(devtools) @devtools = devtools end |
Instance Method Details
#collect_class_names_from_subtree(node_id:) ⇒ Object
54 55 56 57 |
# File 'lib/selenium/devtools/v143/dom.rb', line 54 def collect_class_names_from_subtree(node_id:) @devtools.send_cmd('DOM.collectClassNamesFromSubtree', nodeId: node_id) end |
#copy_to(node_id:, target_node_id:, insert_before_node_id: nil) ⇒ Object
59 60 61 62 63 64 |
# File 'lib/selenium/devtools/v143/dom.rb', line 59 def copy_to(node_id:, target_node_id:, insert_before_node_id: nil) @devtools.send_cmd('DOM.copyTo', nodeId: node_id, targetNodeId: target_node_id, insertBeforeNodeId: insert_before_node_id) end |
#describe_node(node_id: nil, backend_node_id: nil, object_id: nil, depth: nil, pierce: nil) ⇒ Object
66 67 68 69 70 71 72 73 |
# File 'lib/selenium/devtools/v143/dom.rb', line 66 def describe_node(node_id: nil, backend_node_id: nil, object_id: nil, depth: nil, pierce: nil) @devtools.send_cmd('DOM.describeNode', nodeId: node_id, backendNodeId: backend_node_id, objectId: object_id, depth: depth, pierce: pierce) end |
#disable ⇒ Object
83 84 85 |
# File 'lib/selenium/devtools/v143/dom.rb', line 83 def disable @devtools.send_cmd('DOM.disable') end |
#discard_search_results(search_id:) ⇒ Object
87 88 89 90 |
# File 'lib/selenium/devtools/v143/dom.rb', line 87 def discard_search_results(search_id:) @devtools.send_cmd('DOM.discardSearchResults', searchId: search_id) end |
#enable(include_whitespace: nil) ⇒ Object
92 93 94 95 |
# File 'lib/selenium/devtools/v143/dom.rb', line 92 def enable(include_whitespace: nil) @devtools.send_cmd('DOM.enable', includeWhitespace: include_whitespace) end |
#focus(node_id: nil, backend_node_id: nil, object_id: nil) ⇒ Object
97 98 99 100 101 102 |
# File 'lib/selenium/devtools/v143/dom.rb', line 97 def focus(node_id: nil, backend_node_id: nil, object_id: nil) @devtools.send_cmd('DOM.focus', nodeId: node_id, backendNodeId: backend_node_id, objectId: object_id) end |
#force_show_popover(node_id:, enable:) ⇒ Object
360 361 362 363 364 |
# File 'lib/selenium/devtools/v143/dom.rb', line 360 def force_show_popover(node_id:, enable:) @devtools.send_cmd('DOM.forceShowPopover', nodeId: node_id, enable: enable) end |
#get_anchor_element(node_id:, anchor_specifier: nil) ⇒ Object
354 355 356 357 358 |
# File 'lib/selenium/devtools/v143/dom.rb', line 354 def get_anchor_element(node_id:, anchor_specifier: nil) @devtools.send_cmd('DOM.getAnchorElement', nodeId: node_id, anchorSpecifier: anchor_specifier) end |
#get_attributes(node_id:) ⇒ Object
104 105 106 107 |
# File 'lib/selenium/devtools/v143/dom.rb', line 104 def get_attributes(node_id:) @devtools.send_cmd('DOM.getAttributes', nodeId: node_id) end |
#get_box_model(node_id: nil, backend_node_id: nil, object_id: nil) ⇒ Object
109 110 111 112 113 114 |
# File 'lib/selenium/devtools/v143/dom.rb', line 109 def get_box_model(node_id: nil, backend_node_id: nil, object_id: nil) @devtools.send_cmd('DOM.getBoxModel', nodeId: node_id, backendNodeId: backend_node_id, objectId: object_id) end |
#get_container_for_node(node_id:, container_name: nil, physical_axes: nil, logical_axes: nil, queries_scroll_state: nil, queries_anchored: nil) ⇒ Object
339 340 341 342 343 344 345 346 347 |
# File 'lib/selenium/devtools/v143/dom.rb', line 339 def get_container_for_node(node_id:, container_name: nil, physical_axes: nil, logical_axes: nil, queries_scroll_state: nil, queries_anchored: nil) @devtools.send_cmd('DOM.getContainerForNode', nodeId: node_id, containerName: container_name, physicalAxes: physical_axes, logicalAxes: logical_axes, queriesScrollState: queries_scroll_state, queriesAnchored: queries_anchored) end |
#get_content_quads(node_id: nil, backend_node_id: nil, object_id: nil) ⇒ Object
116 117 118 119 120 121 |
# File 'lib/selenium/devtools/v143/dom.rb', line 116 def get_content_quads(node_id: nil, backend_node_id: nil, object_id: nil) @devtools.send_cmd('DOM.getContentQuads', nodeId: node_id, backendNodeId: backend_node_id, objectId: object_id) end |
#get_detached_dom_nodes ⇒ Object
303 304 305 |
# File 'lib/selenium/devtools/v143/dom.rb', line 303 def get_detached_dom_nodes @devtools.send_cmd('DOM.getDetachedDomNodes') end |
#get_document(depth: nil, pierce: nil) ⇒ Object
123 124 125 126 127 |
# File 'lib/selenium/devtools/v143/dom.rb', line 123 def get_document(depth: nil, pierce: nil) @devtools.send_cmd('DOM.getDocument', depth: depth, pierce: pierce) end |
#get_element_by_relation(node_id:, relation:) ⇒ Object
225 226 227 228 229 |
# File 'lib/selenium/devtools/v143/dom.rb', line 225 def get_element_by_relation(node_id:, relation:) @devtools.send_cmd('DOM.getElementByRelation', nodeId: node_id, relation: relation) end |
#get_file_info(object_id:) ⇒ Object
298 299 300 301 |
# File 'lib/selenium/devtools/v143/dom.rb', line 298 def get_file_info(object_id:) @devtools.send_cmd('DOM.getFileInfo', objectId: object_id) end |
#get_flattened_document(depth: nil, pierce: nil) ⇒ Object
129 130 131 132 133 |
# File 'lib/selenium/devtools/v143/dom.rb', line 129 def get_flattened_document(depth: nil, pierce: nil) @devtools.send_cmd('DOM.getFlattenedDocument', depth: depth, pierce: pierce) end |
#get_frame_owner(frame_id:) ⇒ Object
334 335 336 337 |
# File 'lib/selenium/devtools/v143/dom.rb', line 334 def get_frame_owner(frame_id:) @devtools.send_cmd('DOM.getFrameOwner', frameId: frame_id) end |
#get_node_for_location(x:, y:, include_user_agent_shadow_dom: nil, ignore_pointer_events_none: nil) ⇒ Object
142 143 144 145 146 147 148 |
# File 'lib/selenium/devtools/v143/dom.rb', line 142 def get_node_for_location(x:, y:, include_user_agent_shadow_dom: nil, ignore_pointer_events_none: nil) @devtools.send_cmd('DOM.getNodeForLocation', x: x, y: y, includeUserAgentShadowDOM: include_user_agent_shadow_dom, ignorePointerEventsNone: ignore_pointer_events_none) end |
#get_node_stack_traces(node_id:) ⇒ Object
293 294 295 296 |
# File 'lib/selenium/devtools/v143/dom.rb', line 293 def get_node_stack_traces(node_id:) @devtools.send_cmd('DOM.getNodeStackTraces', nodeId: node_id) end |
#get_nodes_for_subtree_by_style(node_id:, computed_styles:, pierce: nil) ⇒ Object
135 136 137 138 139 140 |
# File 'lib/selenium/devtools/v143/dom.rb', line 135 def get_nodes_for_subtree_by_style(node_id:, computed_styles:, pierce: nil) @devtools.send_cmd('DOM.getNodesForSubtreeByStyle', nodeId: node_id, computedStyles: computed_styles, pierce: pierce) end |
#get_outer_html(node_id: nil, backend_node_id: nil, object_id: nil, include_shadow_dom: nil) ⇒ Object
150 151 152 153 154 155 156 |
# File 'lib/selenium/devtools/v143/dom.rb', line 150 def get_outer_html(node_id: nil, backend_node_id: nil, object_id: nil, include_shadow_dom: nil) @devtools.send_cmd('DOM.getOuterHTML', nodeId: node_id, backendNodeId: backend_node_id, objectId: object_id, includeShadowDOM: include_shadow_dom) end |
#get_querying_descendants_for_container(node_id:) ⇒ Object
349 350 351 352 |
# File 'lib/selenium/devtools/v143/dom.rb', line 349 def (node_id:) @devtools.send_cmd('DOM.getQueryingDescendantsForContainer', nodeId: node_id) end |
#get_relayout_boundary(node_id:) ⇒ Object
158 159 160 161 |
# File 'lib/selenium/devtools/v143/dom.rb', line 158 def get_relayout_boundary(node_id:) @devtools.send_cmd('DOM.getRelayoutBoundary', nodeId: node_id) end |
#get_search_results(search_id:, from_index:, to_index:) ⇒ Object
163 164 165 166 167 168 |
# File 'lib/selenium/devtools/v143/dom.rb', line 163 def get_search_results(search_id:, from_index:, to_index:) @devtools.send_cmd('DOM.getSearchResults', searchId: search_id, fromIndex: from_index, toIndex: to_index) end |
#get_top_layer_elements ⇒ Object
221 222 223 |
# File 'lib/selenium/devtools/v143/dom.rb', line 221 def get_top_layer_elements @devtools.send_cmd('DOM.getTopLayerElements') end |
#hide_highlight ⇒ Object
170 171 172 |
# File 'lib/selenium/devtools/v143/dom.rb', line 170 def hide_highlight @devtools.send_cmd('DOM.hideHighlight') end |
#highlight_node ⇒ Object
174 175 176 |
# File 'lib/selenium/devtools/v143/dom.rb', line 174 def highlight_node @devtools.send_cmd('DOM.highlightNode') end |
#highlight_rect ⇒ Object
178 179 180 |
# File 'lib/selenium/devtools/v143/dom.rb', line 178 def highlight_rect @devtools.send_cmd('DOM.highlightRect') end |
#mark_undoable_state ⇒ Object
182 183 184 |
# File 'lib/selenium/devtools/v143/dom.rb', line 182 def mark_undoable_state @devtools.send_cmd('DOM.markUndoableState') end |
#move_to(node_id:, target_node_id:, insert_before_node_id: nil) ⇒ Object
186 187 188 189 190 191 |
# File 'lib/selenium/devtools/v143/dom.rb', line 186 def move_to(node_id:, target_node_id:, insert_before_node_id: nil) @devtools.send_cmd('DOM.moveTo', nodeId: node_id, targetNodeId: target_node_id, insertBeforeNodeId: insert_before_node_id) end |
#on(event, &block) ⇒ Object
49 50 51 52 |
# File 'lib/selenium/devtools/v143/dom.rb', line 49 def on(event, &block) event = EVENTS[event] if event.is_a?(Symbol) @devtools.callbacks["DOM.#{event}"] << block end |
#perform_search(query:, include_user_agent_shadow_dom: nil) ⇒ Object
193 194 195 196 197 |
# File 'lib/selenium/devtools/v143/dom.rb', line 193 def perform_search(query:, include_user_agent_shadow_dom: nil) @devtools.send_cmd('DOM.performSearch', query: query, includeUserAgentShadowDOM: include_user_agent_shadow_dom) end |
#push_node_by_path_to_frontend(path:) ⇒ Object
199 200 201 202 |
# File 'lib/selenium/devtools/v143/dom.rb', line 199 def push_node_by_path_to_frontend(path:) @devtools.send_cmd('DOM.pushNodeByPathToFrontend', path: path) end |
#push_nodes_by_backend_ids_to_frontend(backend_node_ids:) ⇒ Object
204 205 206 207 |
# File 'lib/selenium/devtools/v143/dom.rb', line 204 def push_nodes_by_backend_ids_to_frontend(backend_node_ids:) @devtools.send_cmd('DOM.pushNodesByBackendIdsToFrontend', backendNodeIds: backend_node_ids) end |
#query_selector(node_id:, selector:) ⇒ Object
209 210 211 212 213 |
# File 'lib/selenium/devtools/v143/dom.rb', line 209 def query_selector(node_id:, selector:) @devtools.send_cmd('DOM.querySelector', nodeId: node_id, selector: selector) end |
#query_selector_all(node_id:, selector:) ⇒ Object
215 216 217 218 219 |
# File 'lib/selenium/devtools/v143/dom.rb', line 215 def query_selector_all(node_id:, selector:) @devtools.send_cmd('DOM.querySelectorAll', nodeId: node_id, selector: selector) end |
#redo ⇒ Object
231 232 233 |
# File 'lib/selenium/devtools/v143/dom.rb', line 231 def redo @devtools.send_cmd('DOM.redo') end |
#remove_attribute(node_id:, name:) ⇒ Object
235 236 237 238 239 |
# File 'lib/selenium/devtools/v143/dom.rb', line 235 def remove_attribute(node_id:, name:) @devtools.send_cmd('DOM.removeAttribute', nodeId: node_id, name: name) end |
#remove_node(node_id:) ⇒ Object
241 242 243 244 |
# File 'lib/selenium/devtools/v143/dom.rb', line 241 def remove_node(node_id:) @devtools.send_cmd('DOM.removeNode', nodeId: node_id) end |
#request_child_nodes(node_id:, depth: nil, pierce: nil) ⇒ Object
246 247 248 249 250 251 |
# File 'lib/selenium/devtools/v143/dom.rb', line 246 def request_child_nodes(node_id:, depth: nil, pierce: nil) @devtools.send_cmd('DOM.requestChildNodes', nodeId: node_id, depth: depth, pierce: pierce) end |
#request_node(object_id:) ⇒ Object
253 254 255 256 |
# File 'lib/selenium/devtools/v143/dom.rb', line 253 def request_node(object_id:) @devtools.send_cmd('DOM.requestNode', objectId: object_id) end |
#resolve_node(node_id: nil, backend_node_id: nil, object_group: nil, execution_context_id: nil) ⇒ Object
258 259 260 261 262 263 264 |
# File 'lib/selenium/devtools/v143/dom.rb', line 258 def resolve_node(node_id: nil, backend_node_id: nil, object_group: nil, execution_context_id: nil) @devtools.send_cmd('DOM.resolveNode', nodeId: node_id, backendNodeId: backend_node_id, objectGroup: object_group, executionContextId: execution_context_id) end |
#scroll_into_view_if_needed(node_id: nil, backend_node_id: nil, object_id: nil, rect: nil) ⇒ Object
75 76 77 78 79 80 81 |
# File 'lib/selenium/devtools/v143/dom.rb', line 75 def scroll_into_view_if_needed(node_id: nil, backend_node_id: nil, object_id: nil, rect: nil) @devtools.send_cmd('DOM.scrollIntoViewIfNeeded', nodeId: node_id, backendNodeId: backend_node_id, objectId: object_id, rect: rect) end |
#set_attribute_value(node_id:, name:, value:) ⇒ Object
266 267 268 269 270 271 |
# File 'lib/selenium/devtools/v143/dom.rb', line 266 def set_attribute_value(node_id:, name:, value:) @devtools.send_cmd('DOM.setAttributeValue', nodeId: node_id, name: name, value: value) end |
#set_attributes_as_text(node_id:, text:, name: nil) ⇒ Object
273 274 275 276 277 278 |
# File 'lib/selenium/devtools/v143/dom.rb', line 273 def set_attributes_as_text(node_id:, text:, name: nil) @devtools.send_cmd('DOM.setAttributesAsText', nodeId: node_id, text: text, name: name) end |
#set_file_input_files(files:, node_id: nil, backend_node_id: nil, object_id: nil) ⇒ Object
280 281 282 283 284 285 286 |
# File 'lib/selenium/devtools/v143/dom.rb', line 280 def set_file_input_files(files:, node_id: nil, backend_node_id: nil, object_id: nil) @devtools.send_cmd('DOM.setFileInputFiles', files: files, nodeId: node_id, backendNodeId: backend_node_id, objectId: object_id) end |
#set_inspected_node(node_id:) ⇒ Object
307 308 309 310 |
# File 'lib/selenium/devtools/v143/dom.rb', line 307 def set_inspected_node(node_id:) @devtools.send_cmd('DOM.setInspectedNode', nodeId: node_id) end |
#set_node_name(node_id:, name:) ⇒ Object
312 313 314 315 316 |
# File 'lib/selenium/devtools/v143/dom.rb', line 312 def set_node_name(node_id:, name:) @devtools.send_cmd('DOM.setNodeName', nodeId: node_id, name: name) end |
#set_node_stack_traces_enabled(enable:) ⇒ Object
288 289 290 291 |
# File 'lib/selenium/devtools/v143/dom.rb', line 288 def set_node_stack_traces_enabled(enable:) @devtools.send_cmd('DOM.setNodeStackTracesEnabled', enable: enable) end |
#set_node_value(node_id:, value:) ⇒ Object
318 319 320 321 322 |
# File 'lib/selenium/devtools/v143/dom.rb', line 318 def set_node_value(node_id:, value:) @devtools.send_cmd('DOM.setNodeValue', nodeId: node_id, value: value) end |
#set_outer_html(node_id:, outer_html:) ⇒ Object
324 325 326 327 328 |
# File 'lib/selenium/devtools/v143/dom.rb', line 324 def set_outer_html(node_id:, outer_html:) @devtools.send_cmd('DOM.setOuterHTML', nodeId: node_id, outerHTML: outer_html) end |
#undo ⇒ Object
330 331 332 |
# File 'lib/selenium/devtools/v143/dom.rb', line 330 def undo @devtools.send_cmd('DOM.undo') end |