Class: Selenium::DevTools::V129::DOM
- Inherits:
-
Object
- Object
- Selenium::DevTools::V129::DOM
- Defined in:
- lib/selenium/devtools/v129/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', 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
- #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) ⇒ 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) ⇒ 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.
43 44 45 |
# File 'lib/selenium/devtools/v129/dom.rb', line 43 def initialize(devtools) @devtools = devtools end |
Instance Method Details
#collect_class_names_from_subtree(node_id:) ⇒ Object
52 53 54 55 |
# File 'lib/selenium/devtools/v129/dom.rb', line 52 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
57 58 59 60 61 62 |
# File 'lib/selenium/devtools/v129/dom.rb', line 57 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
64 65 66 67 68 69 70 71 |
# File 'lib/selenium/devtools/v129/dom.rb', line 64 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
81 82 83 |
# File 'lib/selenium/devtools/v129/dom.rb', line 81 def disable @devtools.send_cmd('DOM.disable') end |
#discard_search_results(search_id:) ⇒ Object
85 86 87 88 |
# File 'lib/selenium/devtools/v129/dom.rb', line 85 def discard_search_results(search_id:) @devtools.send_cmd('DOM.discardSearchResults', searchId: search_id) end |
#enable(include_whitespace: nil) ⇒ Object
90 91 92 93 |
# File 'lib/selenium/devtools/v129/dom.rb', line 90 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
95 96 97 98 99 100 |
# File 'lib/selenium/devtools/v129/dom.rb', line 95 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 |
#get_anchor_element(node_id:, anchor_specifier: nil) ⇒ Object
349 350 351 352 353 |
# File 'lib/selenium/devtools/v129/dom.rb', line 349 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
102 103 104 105 |
# File 'lib/selenium/devtools/v129/dom.rb', line 102 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
107 108 109 110 111 112 |
# File 'lib/selenium/devtools/v129/dom.rb', line 107 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) ⇒ Object
336 337 338 339 340 341 342 |
# File 'lib/selenium/devtools/v129/dom.rb', line 336 def get_container_for_node(node_id:, container_name: nil, physical_axes: nil, logical_axes: nil) @devtools.send_cmd('DOM.getContainerForNode', nodeId: node_id, containerName: container_name, physicalAxes: physical_axes, logicalAxes: logical_axes) end |
#get_content_quads(node_id: nil, backend_node_id: nil, object_id: nil) ⇒ Object
114 115 116 117 118 119 |
# File 'lib/selenium/devtools/v129/dom.rb', line 114 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
300 301 302 |
# File 'lib/selenium/devtools/v129/dom.rb', line 300 def get_detached_dom_nodes @devtools.send_cmd('DOM.getDetachedDomNodes') end |
#get_document(depth: nil, pierce: nil) ⇒ Object
121 122 123 124 125 |
# File 'lib/selenium/devtools/v129/dom.rb', line 121 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
222 223 224 225 226 |
# File 'lib/selenium/devtools/v129/dom.rb', line 222 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
295 296 297 298 |
# File 'lib/selenium/devtools/v129/dom.rb', line 295 def get_file_info(object_id:) @devtools.send_cmd('DOM.getFileInfo', objectId: object_id) end |
#get_flattened_document(depth: nil, pierce: nil) ⇒ Object
127 128 129 130 131 |
# File 'lib/selenium/devtools/v129/dom.rb', line 127 def get_flattened_document(depth: nil, pierce: nil) @devtools.send_cmd('DOM.getFlattenedDocument', depth: depth, pierce: pierce) end |
#get_frame_owner(frame_id:) ⇒ Object
331 332 333 334 |
# File 'lib/selenium/devtools/v129/dom.rb', line 331 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
140 141 142 143 144 145 146 |
# File 'lib/selenium/devtools/v129/dom.rb', line 140 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
290 291 292 293 |
# File 'lib/selenium/devtools/v129/dom.rb', line 290 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
133 134 135 136 137 138 |
# File 'lib/selenium/devtools/v129/dom.rb', line 133 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) ⇒ Object
148 149 150 151 152 153 |
# File 'lib/selenium/devtools/v129/dom.rb', line 148 def get_outer_html(node_id: nil, backend_node_id: nil, object_id: nil) @devtools.send_cmd('DOM.getOuterHTML', nodeId: node_id, backendNodeId: backend_node_id, objectId: object_id) end |
#get_querying_descendants_for_container(node_id:) ⇒ Object
344 345 346 347 |
# File 'lib/selenium/devtools/v129/dom.rb', line 344 def (node_id:) @devtools.send_cmd('DOM.getQueryingDescendantsForContainer', nodeId: node_id) end |
#get_relayout_boundary(node_id:) ⇒ Object
155 156 157 158 |
# File 'lib/selenium/devtools/v129/dom.rb', line 155 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
160 161 162 163 164 165 |
# File 'lib/selenium/devtools/v129/dom.rb', line 160 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
218 219 220 |
# File 'lib/selenium/devtools/v129/dom.rb', line 218 def get_top_layer_elements @devtools.send_cmd('DOM.getTopLayerElements') end |
#hide_highlight ⇒ Object
167 168 169 |
# File 'lib/selenium/devtools/v129/dom.rb', line 167 def hide_highlight @devtools.send_cmd('DOM.hideHighlight') end |
#highlight_node ⇒ Object
171 172 173 |
# File 'lib/selenium/devtools/v129/dom.rb', line 171 def highlight_node @devtools.send_cmd('DOM.highlightNode') end |
#highlight_rect ⇒ Object
175 176 177 |
# File 'lib/selenium/devtools/v129/dom.rb', line 175 def highlight_rect @devtools.send_cmd('DOM.highlightRect') end |
#mark_undoable_state ⇒ Object
179 180 181 |
# File 'lib/selenium/devtools/v129/dom.rb', line 179 def mark_undoable_state @devtools.send_cmd('DOM.markUndoableState') end |
#move_to(node_id:, target_node_id:, insert_before_node_id: nil) ⇒ Object
183 184 185 186 187 188 |
# File 'lib/selenium/devtools/v129/dom.rb', line 183 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
47 48 49 50 |
# File 'lib/selenium/devtools/v129/dom.rb', line 47 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
190 191 192 193 194 |
# File 'lib/selenium/devtools/v129/dom.rb', line 190 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
196 197 198 199 |
# File 'lib/selenium/devtools/v129/dom.rb', line 196 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
201 202 203 204 |
# File 'lib/selenium/devtools/v129/dom.rb', line 201 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
206 207 208 209 210 |
# File 'lib/selenium/devtools/v129/dom.rb', line 206 def query_selector(node_id:, selector:) @devtools.send_cmd('DOM.querySelector', nodeId: node_id, selector: selector) end |
#query_selector_all(node_id:, selector:) ⇒ Object
212 213 214 215 216 |
# File 'lib/selenium/devtools/v129/dom.rb', line 212 def query_selector_all(node_id:, selector:) @devtools.send_cmd('DOM.querySelectorAll', nodeId: node_id, selector: selector) end |
#redo ⇒ Object
228 229 230 |
# File 'lib/selenium/devtools/v129/dom.rb', line 228 def redo @devtools.send_cmd('DOM.redo') end |
#remove_attribute(node_id:, name:) ⇒ Object
232 233 234 235 236 |
# File 'lib/selenium/devtools/v129/dom.rb', line 232 def remove_attribute(node_id:, name:) @devtools.send_cmd('DOM.removeAttribute', nodeId: node_id, name: name) end |
#remove_node(node_id:) ⇒ Object
238 239 240 241 |
# File 'lib/selenium/devtools/v129/dom.rb', line 238 def remove_node(node_id:) @devtools.send_cmd('DOM.removeNode', nodeId: node_id) end |
#request_child_nodes(node_id:, depth: nil, pierce: nil) ⇒ Object
243 244 245 246 247 248 |
# File 'lib/selenium/devtools/v129/dom.rb', line 243 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
250 251 252 253 |
# File 'lib/selenium/devtools/v129/dom.rb', line 250 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
255 256 257 258 259 260 261 |
# File 'lib/selenium/devtools/v129/dom.rb', line 255 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
73 74 75 76 77 78 79 |
# File 'lib/selenium/devtools/v129/dom.rb', line 73 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
263 264 265 266 267 268 |
# File 'lib/selenium/devtools/v129/dom.rb', line 263 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
270 271 272 273 274 275 |
# File 'lib/selenium/devtools/v129/dom.rb', line 270 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
277 278 279 280 281 282 283 |
# File 'lib/selenium/devtools/v129/dom.rb', line 277 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
304 305 306 307 |
# File 'lib/selenium/devtools/v129/dom.rb', line 304 def set_inspected_node(node_id:) @devtools.send_cmd('DOM.setInspectedNode', nodeId: node_id) end |
#set_node_name(node_id:, name:) ⇒ Object
309 310 311 312 313 |
# File 'lib/selenium/devtools/v129/dom.rb', line 309 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
285 286 287 288 |
# File 'lib/selenium/devtools/v129/dom.rb', line 285 def set_node_stack_traces_enabled(enable:) @devtools.send_cmd('DOM.setNodeStackTracesEnabled', enable: enable) end |
#set_node_value(node_id:, value:) ⇒ Object
315 316 317 318 319 |
# File 'lib/selenium/devtools/v129/dom.rb', line 315 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
321 322 323 324 325 |
# File 'lib/selenium/devtools/v129/dom.rb', line 321 def set_outer_html(node_id:, outer_html:) @devtools.send_cmd('DOM.setOuterHTML', nodeId: node_id, outerHTML: outer_html) end |
#undo ⇒ Object
327 328 329 |
# File 'lib/selenium/devtools/v129/dom.rb', line 327 def undo @devtools.send_cmd('DOM.undo') end |