Class: Selenium::DevTools::V90::Network

Inherits:
Object
  • Object
show all
Defined in:
lib/selenium/devtools/v90/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',
  request_will_be_sent_extra_info: 'requestWillBeSentExtraInfo',
  response_received_extra_info: 'responseReceivedExtraInfo',
  trust_token_operation_done: 'trustTokenOperationDone',
}.freeze

Instance Method Summary collapse

Constructor Details

#initialize(devtools) ⇒ Network

Returns a new instance of Network.



51
52
53
# File 'lib/selenium/devtools/v90/network.rb', line 51

def initialize(devtools)
  @devtools = devtools
end

Instance Method Details

#can_clear_browser_cacheObject



60
61
62
# File 'lib/selenium/devtools/v90/network.rb', line 60

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

#can_clear_browser_cookiesObject



64
65
66
# File 'lib/selenium/devtools/v90/network.rb', line 64

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

#can_emulate_network_conditionsObject



68
69
70
# File 'lib/selenium/devtools/v90/network.rb', line 68

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

#clear_browser_cacheObject



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

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

#clear_browser_cookiesObject



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

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



80
81
82
83
84
85
86
87
88
89
90
# File 'lib/selenium/devtools/v90/network.rb', line 80

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) ⇒ Object



92
93
94
95
96
97
98
# File 'lib/selenium/devtools/v90/network.rb', line 92

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

#disableObject



100
101
102
# File 'lib/selenium/devtools/v90/network.rb', line 100

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

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



104
105
106
107
108
109
110
111
# File 'lib/selenium/devtools/v90/network.rb', line 104

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

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



113
114
115
116
117
118
# File 'lib/selenium/devtools/v90/network.rb', line 113

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

#get_all_cookiesObject



120
121
122
# File 'lib/selenium/devtools/v90/network.rb', line 120

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

#get_certificate(origin:) ⇒ Object



124
125
126
127
# File 'lib/selenium/devtools/v90/network.rb', line 124

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

#get_cookies(urls: nil) ⇒ Object



129
130
131
132
# File 'lib/selenium/devtools/v90/network.rb', line 129

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

#get_request_post_data(request_id:) ⇒ Object



139
140
141
142
# File 'lib/selenium/devtools/v90/network.rb', line 139

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

#get_response_body(request_id:) ⇒ Object



134
135
136
137
# File 'lib/selenium/devtools/v90/network.rb', line 134

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

#get_response_body_for_interception(interception_id:) ⇒ Object



144
145
146
147
# File 'lib/selenium/devtools/v90/network.rb', line 144

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



233
234
235
236
# File 'lib/selenium/devtools/v90/network.rb', line 233

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

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



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

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

#on(event, &block) ⇒ Object



55
56
57
58
# File 'lib/selenium/devtools/v90/network.rb', line 55

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

#replay_xhr(request_id:) ⇒ Object



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

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



159
160
161
162
163
164
165
# File 'lib/selenium/devtools/v90/network.rb', line 159

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_attach_debug_stack(enabled:) ⇒ Object



215
216
217
218
# File 'lib/selenium/devtools/v90/network.rb', line 215

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

#set_blocked_urls(urls:) ⇒ Object



167
168
169
170
# File 'lib/selenium/devtools/v90/network.rb', line 167

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

#set_bypass_service_worker(bypass:) ⇒ Object



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

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

#set_cache_disabled(cache_disabled:) ⇒ Object



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

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


182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
# File 'lib/selenium/devtools/v90/network.rb', line 182

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)
  @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)
end

#set_cookies(cookies:) ⇒ Object



199
200
201
202
# File 'lib/selenium/devtools/v90/network.rb', line 199

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

#set_data_size_limits_for_test(max_total_size:, max_resource_size:) ⇒ Object



204
205
206
207
208
# File 'lib/selenium/devtools/v90/network.rb', line 204

def set_data_size_limits_for_test(max_total_size:, max_resource_size:)
  @devtools.send_cmd('Network.setDataSizeLimitsForTest',
                     maxTotalSize: max_total_size,
                     maxResourceSize: max_resource_size)
end

#set_extra_http_headers(headers:) ⇒ Object



210
211
212
213
# File 'lib/selenium/devtools/v90/network.rb', line 210

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

#set_request_interception(patterns:) ⇒ Object



220
221
222
223
# File 'lib/selenium/devtools/v90/network.rb', line 220

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



225
226
227
228
229
230
231
# File 'lib/selenium/devtools/v90/network.rb', line 225

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

#take_response_body_for_interception_as_stream(interception_id:) ⇒ Object



149
150
151
152
# File 'lib/selenium/devtools/v90/network.rb', line 149

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