Class: Selenium::DevTools::V139::Network

Inherits:
Object
  • Object
show all
Defined in:
lib/selenium/devtools/v139/network.rb

Constant Summary collapse

EVENTS =
{
  data_received: 'dataReceived',
  event_source_message_received: 'eventSourceMessageReceived',
  loading_failed: 'loadingFailed',
  loading_finished: 'loadingFinished',
  request_intercepted: 'requestIntercepted',
  request_served_from_cache: 'requestServedFromCache',
  request_will_be_sent: 'requestWillBeSent',
  resource_changed_priority: 'resourceChangedPriority',
  signed_exchange_received: 'signedExchangeReceived',
  response_received: 'responseReceived',
  web_socket_closed: 'webSocketClosed',
  web_socket_created: 'webSocketCreated',
  web_socket_frame_error: 'webSocketFrameError',
  web_socket_frame_received: 'webSocketFrameReceived',
  web_socket_frame_sent: 'webSocketFrameSent',
  web_socket_handshake_response_received: 'webSocketHandshakeResponseReceived',
  web_socket_will_send_handshake_request: 'webSocketWillSendHandshakeRequest',
  web_transport_created: 'webTransportCreated',
  web_transport_connection_established: 'webTransportConnectionEstablished',
  web_transport_closed: 'webTransportClosed',
  direct_tcp_socket_created: 'directTCPSocketCreated',
  direct_tcp_socket_opened: 'directTCPSocketOpened',
  direct_tcp_socket_aborted: 'directTCPSocketAborted',
  direct_tcp_socket_closed: 'directTCPSocketClosed',
  direct_tcp_socket_chunk_sent: 'directTCPSocketChunkSent',
  direct_tcp_socket_chunk_received: 'directTCPSocketChunkReceived',
  direct_udp_socket_created: 'directUDPSocketCreated',
  direct_udp_socket_opened: 'directUDPSocketOpened',
  direct_udp_socket_aborted: 'directUDPSocketAborted',
  direct_udp_socket_closed: 'directUDPSocketClosed',
  direct_udp_socket_chunk_sent: 'directUDPSocketChunkSent',
  direct_udp_socket_chunk_received: 'directUDPSocketChunkReceived',
  request_will_be_sent_extra_info: 'requestWillBeSentExtraInfo',
  response_received_extra_info: 'responseReceivedExtraInfo',
  response_received_early_hints: 'responseReceivedEarlyHints',
  trust_token_operation_done: 'trustTokenOperationDone',
  policy_updated: 'policyUpdated',
  subresource_web_bundle_metadata_received: 'subresourceWebBundleMetadataReceived',
  subresource_web_bundle_metadata_error: 'subresourceWebBundleMetadataError',
  subresource_web_bundle_inner_response_parsed: 'subresourceWebBundleInnerResponseParsed',
  subresource_web_bundle_inner_response_error: 'subresourceWebBundleInnerResponseError',
  reporting_api_report_added: 'reportingApiReportAdded',
  reporting_api_report_updated: 'reportingApiReportUpdated',
  reporting_api_endpoints_changed_for_origin: 'reportingApiEndpointsChangedForOrigin',
}.freeze

Instance Method Summary collapse

Constructor Details

#initialize(devtools) ⇒ Network

Returns a new instance of Network.



72
73
74
# File 'lib/selenium/devtools/v139/network.rb', line 72

def initialize(devtools)
  @devtools = devtools
end

Instance Method Details

#can_clear_browser_cacheObject



90
91
92
# File 'lib/selenium/devtools/v139/network.rb', line 90

def can_clear_browser_cache
  @devtools.send_cmd('Network.canClearBrowserCache')
end

#can_clear_browser_cookiesObject



94
95
96
# File 'lib/selenium/devtools/v139/network.rb', line 94

def can_clear_browser_cookies
  @devtools.send_cmd('Network.canClearBrowserCookies')
end

#can_emulate_network_conditionsObject



98
99
100
# File 'lib/selenium/devtools/v139/network.rb', line 98

def can_emulate_network_conditions
  @devtools.send_cmd('Network.canEmulateNetworkConditions')
end

#clear_accepted_encodings_overrideObject



86
87
88
# File 'lib/selenium/devtools/v139/network.rb', line 86

def clear_accepted_encodings_override
  @devtools.send_cmd('Network.clearAcceptedEncodingsOverride')
end

#clear_browser_cacheObject



102
103
104
# File 'lib/selenium/devtools/v139/network.rb', line 102

def clear_browser_cache
  @devtools.send_cmd('Network.clearBrowserCache')
end

#clear_browser_cookiesObject



106
107
108
# File 'lib/selenium/devtools/v139/network.rb', line 106

def clear_browser_cookies
  @devtools.send_cmd('Network.clearBrowserCookies')
end

#continue_intercepted_request(interception_id:, error_reason: nil, raw_response: nil, url: nil, method: nil, post_data: nil, headers: nil, auth_challenge_response: nil) ⇒ Object



110
111
112
113
114
115
116
117
118
119
120
# File 'lib/selenium/devtools/v139/network.rb', line 110

def continue_intercepted_request(interception_id:, error_reason: nil, raw_response: nil, url: nil, method: nil, post_data: nil, headers: nil, auth_challenge_response: nil)
  @devtools.send_cmd('Network.continueInterceptedRequest',
                     interceptionId: interception_id,
                     errorReason: error_reason,
                     rawResponse: raw_response,
                     url: url,
                     method: method,
                     postData: post_data,
                     headers: headers,
                     authChallengeResponse: auth_challenge_response)
end

#delete_cookies(name:, url: nil, domain: nil, path: nil, partition_key: nil) ⇒ Object



122
123
124
125
126
127
128
129
# File 'lib/selenium/devtools/v139/network.rb', line 122

def delete_cookies(name:, url: nil, domain: nil, path: nil, partition_key: nil)
  @devtools.send_cmd('Network.deleteCookies',
                     name: name,
                     url: url,
                     domain: domain,
                     path: path,
                     partitionKey: partition_key)
end

#disableObject



131
132
133
# File 'lib/selenium/devtools/v139/network.rb', line 131

def disable
  @devtools.send_cmd('Network.disable')
end

#emulate_network_conditions(offline:, latency:, download_throughput:, upload_throughput:, connection_type: nil, packet_loss: nil, packet_queue_length: nil, packet_reordering: nil) ⇒ Object



135
136
137
138
139
140
141
142
143
144
145
# File 'lib/selenium/devtools/v139/network.rb', line 135

def emulate_network_conditions(offline:, latency:, download_throughput:, upload_throughput:, connection_type: nil, packet_loss: nil, packet_queue_length: nil, packet_reordering: nil)
  @devtools.send_cmd('Network.emulateNetworkConditions',
                     offline: offline,
                     latency: latency,
                     downloadThroughput: download_throughput,
                     uploadThroughput: upload_throughput,
                     connectionType: connection_type,
                     packetLoss: packet_loss,
                     packetQueueLength: packet_queue_length,
                     packetReordering: packet_reordering)
end

#enable(max_total_buffer_size: nil, max_resource_buffer_size: nil, max_post_data_size: nil, report_direct_socket_traffic: nil) ⇒ Object



147
148
149
150
151
152
153
# File 'lib/selenium/devtools/v139/network.rb', line 147

def enable(max_total_buffer_size: nil, max_resource_buffer_size: nil, max_post_data_size: nil, report_direct_socket_traffic: nil)
  @devtools.send_cmd('Network.enable',
                     maxTotalBufferSize: max_total_buffer_size,
                     maxResourceBufferSize: max_resource_buffer_size,
                     maxPostDataSize: max_post_data_size,
                     reportDirectSocketTraffic: report_direct_socket_traffic)
end

#enable_reporting_api(enable:) ⇒ Object



273
274
275
276
# File 'lib/selenium/devtools/v139/network.rb', line 273

def enable_reporting_api(enable:)
  @devtools.send_cmd('Network.enableReportingApi',
                     enable: enable)
end

#get_all_cookiesObject



155
156
157
# File 'lib/selenium/devtools/v139/network.rb', line 155

def get_all_cookies
  @devtools.send_cmd('Network.getAllCookies')
end

#get_certificate(origin:) ⇒ Object



159
160
161
162
# File 'lib/selenium/devtools/v139/network.rb', line 159

def get_certificate(origin:)
  @devtools.send_cmd('Network.getCertificate',
                     origin: origin)
end

#get_cookies(urls: nil) ⇒ Object



164
165
166
167
# File 'lib/selenium/devtools/v139/network.rb', line 164

def get_cookies(urls: nil)
  @devtools.send_cmd('Network.getCookies',
                     urls: urls)
end

#get_request_post_data(request_id:) ⇒ Object



174
175
176
177
# File 'lib/selenium/devtools/v139/network.rb', line 174

def get_request_post_data(request_id:)
  @devtools.send_cmd('Network.getRequestPostData',
                     requestId: request_id)
end

#get_response_body(request_id:) ⇒ Object



169
170
171
172
# File 'lib/selenium/devtools/v139/network.rb', line 169

def get_response_body(request_id:)
  @devtools.send_cmd('Network.getResponseBody',
                     requestId: request_id)
end

#get_response_body_for_interception(interception_id:) ⇒ Object



179
180
181
182
# File 'lib/selenium/devtools/v139/network.rb', line 179

def get_response_body_for_interception(interception_id:)
  @devtools.send_cmd('Network.getResponseBodyForInterception',
                     interceptionId: interception_id)
end

#get_security_isolation_status(frame_id: nil) ⇒ Object



268
269
270
271
# File 'lib/selenium/devtools/v139/network.rb', line 268

def get_security_isolation_status(frame_id: nil)
  @devtools.send_cmd('Network.getSecurityIsolationStatus',
                     frameId: frame_id)
end

#load_network_resource(frame_id: nil, url:, options:) ⇒ Object



278
279
280
281
282
283
# File 'lib/selenium/devtools/v139/network.rb', line 278

def load_network_resource(frame_id: nil, url:, options:)
  @devtools.send_cmd('Network.loadNetworkResource',
                     frameId: frame_id,
                     url: url,
                     options: options)
end

#on(event, &block) ⇒ Object



76
77
78
79
# File 'lib/selenium/devtools/v139/network.rb', line 76

def on(event, &block)
  event = EVENTS[event] if event.is_a?(Symbol)
  @devtools.callbacks["Network.#{event}"] << block
end

#replay_xhr(request_id:) ⇒ Object



189
190
191
192
# File 'lib/selenium/devtools/v139/network.rb', line 189

def replay_xhr(request_id:)
  @devtools.send_cmd('Network.replayXHR',
                     requestId: request_id)
end

#search_in_response_body(request_id:, query:, case_sensitive: nil, is_regex: nil) ⇒ Object



194
195
196
197
198
199
200
# File 'lib/selenium/devtools/v139/network.rb', line 194

def search_in_response_body(request_id:, query:, case_sensitive: nil, is_regex: nil)
  @devtools.send_cmd('Network.searchInResponseBody',
                     requestId: request_id,
                     query: query,
                     caseSensitive: case_sensitive,
                     isRegex: is_regex)
end

#set_accepted_encodings(encodings:) ⇒ Object



81
82
83
84
# File 'lib/selenium/devtools/v139/network.rb', line 81

def set_accepted_encodings(encodings:)
  @devtools.send_cmd('Network.setAcceptedEncodings',
                     encodings: encodings)
end

#set_attach_debug_stack(enabled:) ⇒ Object



245
246
247
248
# File 'lib/selenium/devtools/v139/network.rb', line 245

def set_attach_debug_stack(enabled:)
  @devtools.send_cmd('Network.setAttachDebugStack',
                     enabled: enabled)
end

#set_blocked_urls(urls:) ⇒ Object



202
203
204
205
# File 'lib/selenium/devtools/v139/network.rb', line 202

def set_blocked_urls(urls:)
  @devtools.send_cmd('Network.setBlockedURLs',
                     urls: urls)
end

#set_bypass_service_worker(bypass:) ⇒ Object



207
208
209
210
# File 'lib/selenium/devtools/v139/network.rb', line 207

def set_bypass_service_worker(bypass:)
  @devtools.send_cmd('Network.setBypassServiceWorker',
                     bypass: bypass)
end

#set_cache_disabled(cache_disabled:) ⇒ Object



212
213
214
215
# File 'lib/selenium/devtools/v139/network.rb', line 212

def set_cache_disabled(cache_disabled:)
  @devtools.send_cmd('Network.setCacheDisabled',
                     cacheDisabled: cache_disabled)
end


217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
# File 'lib/selenium/devtools/v139/network.rb', line 217

def set_cookie(name:, value:, url: nil, domain: nil, path: nil, secure: nil, http_only: nil, same_site: nil, expires: nil, priority: nil, same_party: nil, source_scheme: nil, source_port: nil, partition_key: nil)
  @devtools.send_cmd('Network.setCookie',
                     name: name,
                     value: value,
                     url: url,
                     domain: domain,
                     path: path,
                     secure: secure,
                     httpOnly: http_only,
                     sameSite: same_site,
                     expires: expires,
                     priority: priority,
                     sameParty: same_party,
                     sourceScheme: source_scheme,
                     sourcePort: source_port,
                     partitionKey: partition_key)
end


285
286
287
288
289
290
# File 'lib/selenium/devtools/v139/network.rb', line 285

def set_cookie_controls(enable_third_party_cookie_restriction:, disable_third_party_cookie_metadata:, disable_third_party_cookie_heuristics:)
  @devtools.send_cmd('Network.setCookieControls',
                     enableThirdPartyCookieRestriction: enable_third_party_cookie_restriction,
                     disableThirdPartyCookieMetadata: ,
                     disableThirdPartyCookieHeuristics: disable_third_party_cookie_heuristics)
end

#set_cookies(cookies:) ⇒ Object



235
236
237
238
# File 'lib/selenium/devtools/v139/network.rb', line 235

def set_cookies(cookies:)
  @devtools.send_cmd('Network.setCookies',
                     cookies: cookies)
end

#set_extra_http_headers(headers:) ⇒ Object



240
241
242
243
# File 'lib/selenium/devtools/v139/network.rb', line 240

def set_extra_http_headers(headers:)
  @devtools.send_cmd('Network.setExtraHTTPHeaders',
                     headers: headers)
end

#set_request_interception(patterns:) ⇒ Object



250
251
252
253
# File 'lib/selenium/devtools/v139/network.rb', line 250

def set_request_interception(patterns:)
  @devtools.send_cmd('Network.setRequestInterception',
                     patterns: patterns)
end

#set_user_agent_override(user_agent:, accept_language: nil, platform: nil, user_agent_metadata: nil) ⇒ Object



255
256
257
258
259
260
261
# File 'lib/selenium/devtools/v139/network.rb', line 255

def set_user_agent_override(user_agent:, accept_language: nil, platform: nil, user_agent_metadata: nil)
  @devtools.send_cmd('Network.setUserAgentOverride',
                     userAgent: user_agent,
                     acceptLanguage: accept_language,
                     platform: platform,
                     userAgentMetadata: )
end

#stream_resource_content(request_id:) ⇒ Object



263
264
265
266
# File 'lib/selenium/devtools/v139/network.rb', line 263

def stream_resource_content(request_id:)
  @devtools.send_cmd('Network.streamResourceContent',
                     requestId: request_id)
end

#take_response_body_for_interception_as_stream(interception_id:) ⇒ Object



184
185
186
187
# File 'lib/selenium/devtools/v139/network.rb', line 184

def take_response_body_for_interception_as_stream(interception_id:)
  @devtools.send_cmd('Network.takeResponseBodyForInterceptionAsStream',
                     interceptionId: interception_id)
end