Class: Selenium::DevTools::V145::Network

Inherits:
Object
  • Object
show all
Defined in:
lib/selenium/devtools/v145/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_joined_multicast_group: 'directUDPSocketJoinedMulticastGroup',
  direct_udp_socket_left_multicast_group: 'directUDPSocketLeftMulticastGroup',
  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',
  reporting_api_report_added: 'reportingApiReportAdded',
  reporting_api_report_updated: 'reportingApiReportUpdated',
  reporting_api_endpoints_changed_for_origin: 'reportingApiEndpointsChangedForOrigin',
  device_bound_sessions_added: 'deviceBoundSessionsAdded',
  device_bound_session_event_occurred: 'deviceBoundSessionEventOccurred',
}.freeze

Instance Method Summary collapse

Constructor Details

#initialize(devtools) ⇒ Network

Returns a new instance of Network.



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

def initialize(devtools)
  @devtools = devtools
end

Instance Method Details

#can_clear_browser_cacheObject



90
91
92
# File 'lib/selenium/devtools/v145/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/v145/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/v145/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/v145/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/v145/network.rb', line 102

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

#clear_browser_cookiesObject



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

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

#configure_durable_messages(max_total_buffer_size: nil, max_resource_buffer_size: nil) ⇒ Object



171
172
173
174
175
# File 'lib/selenium/devtools/v145/network.rb', line 171

def configure_durable_messages(max_total_buffer_size: nil, max_resource_buffer_size: nil)
  @devtools.send_cmd('Network.configureDurableMessages',
                     maxTotalBufferSize: max_total_buffer_size,
                     maxResourceBufferSize: max_resource_buffer_size)
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/v145/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/v145/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/v145/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/v145/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

#emulate_network_conditions_by_rule(offline:, matched_network_conditions:) ⇒ Object



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

def emulate_network_conditions_by_rule(offline:, matched_network_conditions:)
  @devtools.send_cmd('Network.emulateNetworkConditionsByRule',
                     offline: offline,
                     matchedNetworkConditions: matched_network_conditions)
end

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



162
163
164
165
166
167
168
169
# File 'lib/selenium/devtools/v145/network.rb', line 162

def enable(max_total_buffer_size: nil, max_resource_buffer_size: nil, max_post_data_size: nil, report_direct_socket_traffic: nil, enable_durable_messages: 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,
                     enableDurableMessages: enable_durable_messages)
end

#enable_device_bound_sessions(enable:) ⇒ Object



301
302
303
304
# File 'lib/selenium/devtools/v145/network.rb', line 301

def enable_device_bound_sessions(enable:)
  @devtools.send_cmd('Network.enableDeviceBoundSessions',
                     enable: enable)
end

#enable_reporting_api(enable:) ⇒ Object



296
297
298
299
# File 'lib/selenium/devtools/v145/network.rb', line 296

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

#fetch_schemeful_site(origin:) ⇒ Object



306
307
308
309
# File 'lib/selenium/devtools/v145/network.rb', line 306

def fetch_schemeful_site(origin:)
  @devtools.send_cmd('Network.fetchSchemefulSite',
                     origin: origin)
end

#get_all_cookiesObject



177
178
179
# File 'lib/selenium/devtools/v145/network.rb', line 177

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

#get_certificate(origin:) ⇒ Object



181
182
183
184
# File 'lib/selenium/devtools/v145/network.rb', line 181

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

#get_cookies(urls: nil) ⇒ Object



186
187
188
189
# File 'lib/selenium/devtools/v145/network.rb', line 186

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

#get_request_post_data(request_id:) ⇒ Object



196
197
198
199
# File 'lib/selenium/devtools/v145/network.rb', line 196

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

#get_response_body(request_id:) ⇒ Object



191
192
193
194
# File 'lib/selenium/devtools/v145/network.rb', line 191

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

#get_response_body_for_interception(interception_id:) ⇒ Object



201
202
203
204
# File 'lib/selenium/devtools/v145/network.rb', line 201

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



291
292
293
294
# File 'lib/selenium/devtools/v145/network.rb', line 291

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



311
312
313
314
315
316
# File 'lib/selenium/devtools/v145/network.rb', line 311

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/v145/network.rb', line 76

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

#override_network_state(offline:, latency:, download_throughput:, upload_throughput:, connection_type: nil) ⇒ Object



153
154
155
156
157
158
159
160
# File 'lib/selenium/devtools/v145/network.rb', line 153

def override_network_state(offline:, latency:, download_throughput:, upload_throughput:, connection_type: nil)
  @devtools.send_cmd('Network.overrideNetworkState',
                     offline: offline,
                     latency: latency,
                     downloadThroughput: download_throughput,
                     uploadThroughput: upload_throughput,
                     connectionType: connection_type)
end

#replay_xhr(request_id:) ⇒ Object



211
212
213
214
# File 'lib/selenium/devtools/v145/network.rb', line 211

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



216
217
218
219
220
221
222
# File 'lib/selenium/devtools/v145/network.rb', line 216

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/v145/network.rb', line 81

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

#set_attach_debug_stack(enabled:) ⇒ Object



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

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

#set_blocked_urls(url_patterns: nil, urls: nil) ⇒ Object



224
225
226
227
228
# File 'lib/selenium/devtools/v145/network.rb', line 224

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

#set_bypass_service_worker(bypass:) ⇒ Object



230
231
232
233
# File 'lib/selenium/devtools/v145/network.rb', line 230

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

#set_cache_disabled(cache_disabled:) ⇒ Object



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

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


240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
# File 'lib/selenium/devtools/v145/network.rb', line 240

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


318
319
320
321
322
323
# File 'lib/selenium/devtools/v145/network.rb', line 318

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



258
259
260
261
# File 'lib/selenium/devtools/v145/network.rb', line 258

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

#set_extra_http_headers(headers:) ⇒ Object



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

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

#set_request_interception(patterns:) ⇒ Object



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

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



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

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



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

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



206
207
208
209
# File 'lib/selenium/devtools/v145/network.rb', line 206

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