selenium-devtools 0.0.1.alpha
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/lib/selenium/devtools/v88.rb +1 -0
- data/lib/selenium/devtools/v88/accessibility.rb +73 -0
- data/lib/selenium/devtools/v88/animation.rb +100 -0
- data/lib/selenium/devtools/v88/application_cache.rb +66 -0
- data/lib/selenium/devtools/v88/audits.rb +63 -0
- data/lib/selenium/devtools/v88/background_service.rb +69 -0
- data/lib/selenium/devtools/v88/browser.rb +130 -0
- data/lib/selenium/devtools/v88/cache_storage.rb +75 -0
- data/lib/selenium/devtools/v88/cast.rb +72 -0
- data/lib/selenium/devtools/v88/console.rb +59 -0
- data/lib/selenium/devtools/v88/css.rb +181 -0
- data/lib/selenium/devtools/v88/database.rb +66 -0
- data/lib/selenium/devtools/v88/debugger.rb +233 -0
- data/lib/selenium/devtools/v88/device_orientation.rb +55 -0
- data/lib/selenium/devtools/v88/dom.rb +329 -0
- data/lib/selenium/devtools/v88/dom_debugger.rb +95 -0
- data/lib/selenium/devtools/v88/dom_snapshot.rb +67 -0
- data/lib/selenium/devtools/v88/dom_storage.rb +81 -0
- data/lib/selenium/devtools/v88/emulation.rb +198 -0
- data/lib/selenium/devtools/v88/fetch.rb +99 -0
- data/lib/selenium/devtools/v88/headless_experimental.rb +63 -0
- data/lib/selenium/devtools/v88/heap_profiler.rb +109 -0
- data/lib/selenium/devtools/v88/indexed_db.rb +102 -0
- data/lib/selenium/devtools/v88/input.rb +148 -0
- data/lib/selenium/devtools/v88/inspector.rb +57 -0
- data/lib/selenium/devtools/v88/io.rb +61 -0
- data/lib/selenium/devtools/v88/layer_tree.rb +97 -0
- data/lib/selenium/devtools/v88/log.rb +68 -0
- data/lib/selenium/devtools/v88/media.rb +59 -0
- data/lib/selenium/devtools/v88/memory.rb +88 -0
- data/lib/selenium/devtools/v88/network.rb +247 -0
- data/lib/selenium/devtools/v88/overlay.rb +183 -0
- data/lib/selenium/devtools/v88/page.rb +376 -0
- data/lib/selenium/devtools/v88/performance.rb +65 -0
- data/lib/selenium/devtools/v88/profiler.rb +125 -0
- data/lib/selenium/devtools/v88/runtime.rb +197 -0
- data/lib/selenium/devtools/v88/schema.rb +48 -0
- data/lib/selenium/devtools/v88/security.rb +73 -0
- data/lib/selenium/devtools/v88/service_worker.rb +118 -0
- data/lib/selenium/devtools/v88/storage.rb +103 -0
- data/lib/selenium/devtools/v88/system_info.rb +52 -0
- data/lib/selenium/devtools/v88/target.rb +145 -0
- data/lib/selenium/devtools/v88/tethering.rb +57 -0
- data/lib/selenium/devtools/v88/tracing.rb +79 -0
- data/lib/selenium/devtools/v88/web_audio.rb +72 -0
- data/lib/selenium/devtools/v88/web_authn.rb +102 -0
- data/lib/selenium/devtools/version.rb +24 -0
- metadata +99 -0
@@ -0,0 +1,95 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Licensed to the Software Freedom Conservancy (SFC) under one
|
4
|
+
# or more contributor license agreements. See the NOTICE file
|
5
|
+
# distributed with this work for additional information
|
6
|
+
# regarding copyright ownership. The SFC licenses this file
|
7
|
+
# to you under the Apache License, Version 2.0 (the
|
8
|
+
# "License"); you may not use this file except in compliance
|
9
|
+
# with the License. You may obtain a copy of the License at
|
10
|
+
#
|
11
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
12
|
+
#
|
13
|
+
# Unless required by applicable law or agreed to in writing,
|
14
|
+
# software distributed under the License is distributed on an
|
15
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
16
|
+
# KIND, either express or implied. See the License for the
|
17
|
+
# specific language governing permissions and limitations
|
18
|
+
# under the License.
|
19
|
+
|
20
|
+
# This file is automatically generated. Any changes will be lost!
|
21
|
+
module Selenium
|
22
|
+
module WebDriver
|
23
|
+
class DevTools
|
24
|
+
def dom_debugger
|
25
|
+
@dom_debugger ||= V88::DOMDebugger.new(self)
|
26
|
+
end
|
27
|
+
|
28
|
+
module V88
|
29
|
+
class DOMDebugger
|
30
|
+
|
31
|
+
def initialize(devtools)
|
32
|
+
@devtools = devtools
|
33
|
+
end
|
34
|
+
|
35
|
+
def on(event, &block)
|
36
|
+
event = EVENTS[event] if event.is_a?(Symbol)
|
37
|
+
@devtools.callbacks["DOMDebugger.#{event}"] << block
|
38
|
+
end
|
39
|
+
|
40
|
+
def get_event_listeners(object_id:, depth: nil, pierce: nil)
|
41
|
+
@devtools.send_cmd('DOMDebugger.getEventListeners',
|
42
|
+
objectId: object_id,
|
43
|
+
depth: depth,
|
44
|
+
pierce: pierce)
|
45
|
+
end
|
46
|
+
|
47
|
+
def remove_dom_breakpoint(node_id:, type:)
|
48
|
+
@devtools.send_cmd('DOMDebugger.removeDOMBreakpoint',
|
49
|
+
nodeId: node_id,
|
50
|
+
type: type)
|
51
|
+
end
|
52
|
+
|
53
|
+
def remove_event_listener_breakpoint(event_name:, target_name: nil)
|
54
|
+
@devtools.send_cmd('DOMDebugger.removeEventListenerBreakpoint',
|
55
|
+
eventName: event_name,
|
56
|
+
targetName: target_name)
|
57
|
+
end
|
58
|
+
|
59
|
+
def remove_instrumentation_breakpoint(event_name:)
|
60
|
+
@devtools.send_cmd('DOMDebugger.removeInstrumentationBreakpoint',
|
61
|
+
eventName: event_name)
|
62
|
+
end
|
63
|
+
|
64
|
+
def remove_xhr_breakpoint(url:)
|
65
|
+
@devtools.send_cmd('DOMDebugger.removeXHRBreakpoint',
|
66
|
+
url: url)
|
67
|
+
end
|
68
|
+
|
69
|
+
def set_dom_breakpoint(node_id:, type:)
|
70
|
+
@devtools.send_cmd('DOMDebugger.setDOMBreakpoint',
|
71
|
+
nodeId: node_id,
|
72
|
+
type: type)
|
73
|
+
end
|
74
|
+
|
75
|
+
def set_event_listener_breakpoint(event_name:, target_name: nil)
|
76
|
+
@devtools.send_cmd('DOMDebugger.setEventListenerBreakpoint',
|
77
|
+
eventName: event_name,
|
78
|
+
targetName: target_name)
|
79
|
+
end
|
80
|
+
|
81
|
+
def set_instrumentation_breakpoint(event_name:)
|
82
|
+
@devtools.send_cmd('DOMDebugger.setInstrumentationBreakpoint',
|
83
|
+
eventName: event_name)
|
84
|
+
end
|
85
|
+
|
86
|
+
def set_xhr_breakpoint(url:)
|
87
|
+
@devtools.send_cmd('DOMDebugger.setXHRBreakpoint',
|
88
|
+
url: url)
|
89
|
+
end
|
90
|
+
|
91
|
+
end # V88
|
92
|
+
end # DOMDebugger
|
93
|
+
end # DevTools
|
94
|
+
end # WebDriver
|
95
|
+
end # Selenium
|
@@ -0,0 +1,67 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Licensed to the Software Freedom Conservancy (SFC) under one
|
4
|
+
# or more contributor license agreements. See the NOTICE file
|
5
|
+
# distributed with this work for additional information
|
6
|
+
# regarding copyright ownership. The SFC licenses this file
|
7
|
+
# to you under the Apache License, Version 2.0 (the
|
8
|
+
# "License"); you may not use this file except in compliance
|
9
|
+
# with the License. You may obtain a copy of the License at
|
10
|
+
#
|
11
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
12
|
+
#
|
13
|
+
# Unless required by applicable law or agreed to in writing,
|
14
|
+
# software distributed under the License is distributed on an
|
15
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
16
|
+
# KIND, either express or implied. See the License for the
|
17
|
+
# specific language governing permissions and limitations
|
18
|
+
# under the License.
|
19
|
+
|
20
|
+
# This file is automatically generated. Any changes will be lost!
|
21
|
+
module Selenium
|
22
|
+
module WebDriver
|
23
|
+
class DevTools
|
24
|
+
def dom_snapshot
|
25
|
+
@dom_snapshot ||= V88::DOMSnapshot.new(self)
|
26
|
+
end
|
27
|
+
|
28
|
+
module V88
|
29
|
+
class DOMSnapshot
|
30
|
+
|
31
|
+
def initialize(devtools)
|
32
|
+
@devtools = devtools
|
33
|
+
end
|
34
|
+
|
35
|
+
def on(event, &block)
|
36
|
+
event = EVENTS[event] if event.is_a?(Symbol)
|
37
|
+
@devtools.callbacks["DOMSnapshot.#{event}"] << block
|
38
|
+
end
|
39
|
+
|
40
|
+
def disable
|
41
|
+
@devtools.send_cmd('DOMSnapshot.disable')
|
42
|
+
end
|
43
|
+
|
44
|
+
def enable
|
45
|
+
@devtools.send_cmd('DOMSnapshot.enable')
|
46
|
+
end
|
47
|
+
|
48
|
+
def get_snapshot(computed_style_whitelist:, include_event_listeners: nil, include_paint_order: nil, include_user_agent_shadow_tree: nil)
|
49
|
+
@devtools.send_cmd('DOMSnapshot.getSnapshot',
|
50
|
+
computedStyleWhitelist: computed_style_whitelist,
|
51
|
+
includeEventListeners: include_event_listeners,
|
52
|
+
includePaintOrder: include_paint_order,
|
53
|
+
includeUserAgentShadowTree: include_user_agent_shadow_tree)
|
54
|
+
end
|
55
|
+
|
56
|
+
def capture_snapshot(computed_styles:, include_paint_order: nil, include_dom_rects: nil)
|
57
|
+
@devtools.send_cmd('DOMSnapshot.captureSnapshot',
|
58
|
+
computedStyles: computed_styles,
|
59
|
+
includePaintOrder: include_paint_order,
|
60
|
+
includeDOMRects: include_dom_rects)
|
61
|
+
end
|
62
|
+
|
63
|
+
end # V88
|
64
|
+
end # DOMSnapshot
|
65
|
+
end # DevTools
|
66
|
+
end # WebDriver
|
67
|
+
end # Selenium
|
@@ -0,0 +1,81 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Licensed to the Software Freedom Conservancy (SFC) under one
|
4
|
+
# or more contributor license agreements. See the NOTICE file
|
5
|
+
# distributed with this work for additional information
|
6
|
+
# regarding copyright ownership. The SFC licenses this file
|
7
|
+
# to you under the Apache License, Version 2.0 (the
|
8
|
+
# "License"); you may not use this file except in compliance
|
9
|
+
# with the License. You may obtain a copy of the License at
|
10
|
+
#
|
11
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
12
|
+
#
|
13
|
+
# Unless required by applicable law or agreed to in writing,
|
14
|
+
# software distributed under the License is distributed on an
|
15
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
16
|
+
# KIND, either express or implied. See the License for the
|
17
|
+
# specific language governing permissions and limitations
|
18
|
+
# under the License.
|
19
|
+
|
20
|
+
# This file is automatically generated. Any changes will be lost!
|
21
|
+
module Selenium
|
22
|
+
module WebDriver
|
23
|
+
class DevTools
|
24
|
+
def dom_storage
|
25
|
+
@dom_storage ||= V88::DOMStorage.new(self)
|
26
|
+
end
|
27
|
+
|
28
|
+
module V88
|
29
|
+
class DOMStorage
|
30
|
+
EVENTS = {
|
31
|
+
dom_storage_item_added: 'domStorageItemAdded',
|
32
|
+
dom_storage_item_removed: 'domStorageItemRemoved',
|
33
|
+
dom_storage_item_updated: 'domStorageItemUpdated',
|
34
|
+
dom_storage_items_cleared: 'domStorageItemsCleared',
|
35
|
+
}.freeze
|
36
|
+
|
37
|
+
def initialize(devtools)
|
38
|
+
@devtools = devtools
|
39
|
+
end
|
40
|
+
|
41
|
+
def on(event, &block)
|
42
|
+
event = EVENTS[event] if event.is_a?(Symbol)
|
43
|
+
@devtools.callbacks["DOMStorage.#{event}"] << block
|
44
|
+
end
|
45
|
+
|
46
|
+
def clear(storage_id:)
|
47
|
+
@devtools.send_cmd('DOMStorage.clear',
|
48
|
+
storageId: storage_id)
|
49
|
+
end
|
50
|
+
|
51
|
+
def disable
|
52
|
+
@devtools.send_cmd('DOMStorage.disable')
|
53
|
+
end
|
54
|
+
|
55
|
+
def enable
|
56
|
+
@devtools.send_cmd('DOMStorage.enable')
|
57
|
+
end
|
58
|
+
|
59
|
+
def get_dom_storage_items(storage_id:)
|
60
|
+
@devtools.send_cmd('DOMStorage.getDOMStorageItems',
|
61
|
+
storageId: storage_id)
|
62
|
+
end
|
63
|
+
|
64
|
+
def remove_dom_storage_item(storage_id:, key:)
|
65
|
+
@devtools.send_cmd('DOMStorage.removeDOMStorageItem',
|
66
|
+
storageId: storage_id,
|
67
|
+
key: key)
|
68
|
+
end
|
69
|
+
|
70
|
+
def set_dom_storage_item(storage_id:, key:, value:)
|
71
|
+
@devtools.send_cmd('DOMStorage.setDOMStorageItem',
|
72
|
+
storageId: storage_id,
|
73
|
+
key: key,
|
74
|
+
value: value)
|
75
|
+
end
|
76
|
+
|
77
|
+
end # V88
|
78
|
+
end # DOMStorage
|
79
|
+
end # DevTools
|
80
|
+
end # WebDriver
|
81
|
+
end # Selenium
|
@@ -0,0 +1,198 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Licensed to the Software Freedom Conservancy (SFC) under one
|
4
|
+
# or more contributor license agreements. See the NOTICE file
|
5
|
+
# distributed with this work for additional information
|
6
|
+
# regarding copyright ownership. The SFC licenses this file
|
7
|
+
# to you under the Apache License, Version 2.0 (the
|
8
|
+
# "License"); you may not use this file except in compliance
|
9
|
+
# with the License. You may obtain a copy of the License at
|
10
|
+
#
|
11
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
12
|
+
#
|
13
|
+
# Unless required by applicable law or agreed to in writing,
|
14
|
+
# software distributed under the License is distributed on an
|
15
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
16
|
+
# KIND, either express or implied. See the License for the
|
17
|
+
# specific language governing permissions and limitations
|
18
|
+
# under the License.
|
19
|
+
|
20
|
+
# This file is automatically generated. Any changes will be lost!
|
21
|
+
module Selenium
|
22
|
+
module WebDriver
|
23
|
+
class DevTools
|
24
|
+
def emulation
|
25
|
+
@emulation ||= V88::Emulation.new(self)
|
26
|
+
end
|
27
|
+
|
28
|
+
module V88
|
29
|
+
class Emulation
|
30
|
+
EVENTS = {
|
31
|
+
virtual_time_budget_expired: 'virtualTimeBudgetExpired',
|
32
|
+
}.freeze
|
33
|
+
|
34
|
+
def initialize(devtools)
|
35
|
+
@devtools = devtools
|
36
|
+
end
|
37
|
+
|
38
|
+
def on(event, &block)
|
39
|
+
event = EVENTS[event] if event.is_a?(Symbol)
|
40
|
+
@devtools.callbacks["Emulation.#{event}"] << block
|
41
|
+
end
|
42
|
+
|
43
|
+
def can_emulate
|
44
|
+
@devtools.send_cmd('Emulation.canEmulate')
|
45
|
+
end
|
46
|
+
|
47
|
+
def clear_device_metrics_override
|
48
|
+
@devtools.send_cmd('Emulation.clearDeviceMetricsOverride')
|
49
|
+
end
|
50
|
+
|
51
|
+
def clear_geolocation_override
|
52
|
+
@devtools.send_cmd('Emulation.clearGeolocationOverride')
|
53
|
+
end
|
54
|
+
|
55
|
+
def reset_page_scale_factor
|
56
|
+
@devtools.send_cmd('Emulation.resetPageScaleFactor')
|
57
|
+
end
|
58
|
+
|
59
|
+
def set_focus_emulation_enabled(enabled:)
|
60
|
+
@devtools.send_cmd('Emulation.setFocusEmulationEnabled',
|
61
|
+
enabled: enabled)
|
62
|
+
end
|
63
|
+
|
64
|
+
def set_cpu_throttling_rate(rate:)
|
65
|
+
@devtools.send_cmd('Emulation.setCPUThrottlingRate',
|
66
|
+
rate: rate)
|
67
|
+
end
|
68
|
+
|
69
|
+
def set_default_background_color_override(color: nil)
|
70
|
+
@devtools.send_cmd('Emulation.setDefaultBackgroundColorOverride',
|
71
|
+
color: color)
|
72
|
+
end
|
73
|
+
|
74
|
+
def set_device_metrics_override(width:, height:, device_scale_factor:, mobile:, scale: nil, screen_width: nil, screen_height: nil, position_x: nil, position_y: nil, dont_set_visible_size: nil, screen_orientation: nil, viewport: nil, display_feature: nil)
|
75
|
+
@devtools.send_cmd('Emulation.setDeviceMetricsOverride',
|
76
|
+
width: width,
|
77
|
+
height: height,
|
78
|
+
deviceScaleFactor: device_scale_factor,
|
79
|
+
mobile: mobile,
|
80
|
+
scale: scale,
|
81
|
+
screenWidth: screen_width,
|
82
|
+
screenHeight: screen_height,
|
83
|
+
positionX: position_x,
|
84
|
+
positionY: position_y,
|
85
|
+
dontSetVisibleSize: dont_set_visible_size,
|
86
|
+
screenOrientation: screen_orientation,
|
87
|
+
viewport: viewport,
|
88
|
+
displayFeature: display_feature)
|
89
|
+
end
|
90
|
+
|
91
|
+
def set_scrollbars_hidden(hidden:)
|
92
|
+
@devtools.send_cmd('Emulation.setScrollbarsHidden',
|
93
|
+
hidden: hidden)
|
94
|
+
end
|
95
|
+
|
96
|
+
def set_document_cookie_disabled(disabled:)
|
97
|
+
@devtools.send_cmd('Emulation.setDocumentCookieDisabled',
|
98
|
+
disabled: disabled)
|
99
|
+
end
|
100
|
+
|
101
|
+
def set_emit_touch_events_for_mouse(enabled:, configuration: nil)
|
102
|
+
@devtools.send_cmd('Emulation.setEmitTouchEventsForMouse',
|
103
|
+
enabled: enabled,
|
104
|
+
configuration: configuration)
|
105
|
+
end
|
106
|
+
|
107
|
+
def set_emulated_media(media: nil, features: nil)
|
108
|
+
@devtools.send_cmd('Emulation.setEmulatedMedia',
|
109
|
+
media: media,
|
110
|
+
features: features)
|
111
|
+
end
|
112
|
+
|
113
|
+
def set_emulated_vision_deficiency(type:)
|
114
|
+
@devtools.send_cmd('Emulation.setEmulatedVisionDeficiency',
|
115
|
+
type: type)
|
116
|
+
end
|
117
|
+
|
118
|
+
def set_geolocation_override(latitude: nil, longitude: nil, accuracy: nil)
|
119
|
+
@devtools.send_cmd('Emulation.setGeolocationOverride',
|
120
|
+
latitude: latitude,
|
121
|
+
longitude: longitude,
|
122
|
+
accuracy: accuracy)
|
123
|
+
end
|
124
|
+
|
125
|
+
def set_idle_override(is_user_active:, is_screen_unlocked:)
|
126
|
+
@devtools.send_cmd('Emulation.setIdleOverride',
|
127
|
+
isUserActive: is_user_active,
|
128
|
+
isScreenUnlocked: is_screen_unlocked)
|
129
|
+
end
|
130
|
+
|
131
|
+
def clear_idle_override
|
132
|
+
@devtools.send_cmd('Emulation.clearIdleOverride')
|
133
|
+
end
|
134
|
+
|
135
|
+
def set_navigator_overrides(platform:)
|
136
|
+
@devtools.send_cmd('Emulation.setNavigatorOverrides',
|
137
|
+
platform: platform)
|
138
|
+
end
|
139
|
+
|
140
|
+
def set_page_scale_factor(page_scale_factor:)
|
141
|
+
@devtools.send_cmd('Emulation.setPageScaleFactor',
|
142
|
+
pageScaleFactor: page_scale_factor)
|
143
|
+
end
|
144
|
+
|
145
|
+
def set_script_execution_disabled(value:)
|
146
|
+
@devtools.send_cmd('Emulation.setScriptExecutionDisabled',
|
147
|
+
value: value)
|
148
|
+
end
|
149
|
+
|
150
|
+
def set_touch_emulation_enabled(enabled:, max_touch_points: nil)
|
151
|
+
@devtools.send_cmd('Emulation.setTouchEmulationEnabled',
|
152
|
+
enabled: enabled,
|
153
|
+
maxTouchPoints: max_touch_points)
|
154
|
+
end
|
155
|
+
|
156
|
+
def set_virtual_time_policy(policy:, budget: nil, max_virtual_time_task_starvation_count: nil, wait_for_navigation: nil, initial_virtual_time: nil)
|
157
|
+
@devtools.send_cmd('Emulation.setVirtualTimePolicy',
|
158
|
+
policy: policy,
|
159
|
+
budget: budget,
|
160
|
+
maxVirtualTimeTaskStarvationCount: max_virtual_time_task_starvation_count,
|
161
|
+
waitForNavigation: wait_for_navigation,
|
162
|
+
initialVirtualTime: initial_virtual_time)
|
163
|
+
end
|
164
|
+
|
165
|
+
def set_locale_override(locale: nil)
|
166
|
+
@devtools.send_cmd('Emulation.setLocaleOverride',
|
167
|
+
locale: locale)
|
168
|
+
end
|
169
|
+
|
170
|
+
def set_timezone_override(timezone_id:)
|
171
|
+
@devtools.send_cmd('Emulation.setTimezoneOverride',
|
172
|
+
timezoneId: timezone_id)
|
173
|
+
end
|
174
|
+
|
175
|
+
def set_visible_size(width:, height:)
|
176
|
+
@devtools.send_cmd('Emulation.setVisibleSize',
|
177
|
+
width: width,
|
178
|
+
height: height)
|
179
|
+
end
|
180
|
+
|
181
|
+
def set_disabled_image_types(image_types:)
|
182
|
+
@devtools.send_cmd('Emulation.setDisabledImageTypes',
|
183
|
+
imageTypes: image_types)
|
184
|
+
end
|
185
|
+
|
186
|
+
def set_user_agent_override(user_agent:, accept_language: nil, platform: nil, user_agent_metadata: nil)
|
187
|
+
@devtools.send_cmd('Emulation.setUserAgentOverride',
|
188
|
+
userAgent: user_agent,
|
189
|
+
acceptLanguage: accept_language,
|
190
|
+
platform: platform,
|
191
|
+
userAgentMetadata: user_agent_metadata)
|
192
|
+
end
|
193
|
+
|
194
|
+
end # V88
|
195
|
+
end # Emulation
|
196
|
+
end # DevTools
|
197
|
+
end # WebDriver
|
198
|
+
end # Selenium
|
@@ -0,0 +1,99 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Licensed to the Software Freedom Conservancy (SFC) under one
|
4
|
+
# or more contributor license agreements. See the NOTICE file
|
5
|
+
# distributed with this work for additional information
|
6
|
+
# regarding copyright ownership. The SFC licenses this file
|
7
|
+
# to you under the Apache License, Version 2.0 (the
|
8
|
+
# "License"); you may not use this file except in compliance
|
9
|
+
# with the License. You may obtain a copy of the License at
|
10
|
+
#
|
11
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
12
|
+
#
|
13
|
+
# Unless required by applicable law or agreed to in writing,
|
14
|
+
# software distributed under the License is distributed on an
|
15
|
+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
16
|
+
# KIND, either express or implied. See the License for the
|
17
|
+
# specific language governing permissions and limitations
|
18
|
+
# under the License.
|
19
|
+
|
20
|
+
# This file is automatically generated. Any changes will be lost!
|
21
|
+
module Selenium
|
22
|
+
module WebDriver
|
23
|
+
class DevTools
|
24
|
+
def fetch
|
25
|
+
@fetch ||= V88::Fetch.new(self)
|
26
|
+
end
|
27
|
+
|
28
|
+
module V88
|
29
|
+
class Fetch
|
30
|
+
EVENTS = {
|
31
|
+
request_paused: 'requestPaused',
|
32
|
+
auth_required: 'authRequired',
|
33
|
+
}.freeze
|
34
|
+
|
35
|
+
def initialize(devtools)
|
36
|
+
@devtools = devtools
|
37
|
+
end
|
38
|
+
|
39
|
+
def on(event, &block)
|
40
|
+
event = EVENTS[event] if event.is_a?(Symbol)
|
41
|
+
@devtools.callbacks["Fetch.#{event}"] << block
|
42
|
+
end
|
43
|
+
|
44
|
+
def disable
|
45
|
+
@devtools.send_cmd('Fetch.disable')
|
46
|
+
end
|
47
|
+
|
48
|
+
def enable(patterns: nil, handle_auth_requests: nil)
|
49
|
+
@devtools.send_cmd('Fetch.enable',
|
50
|
+
patterns: patterns,
|
51
|
+
handleAuthRequests: handle_auth_requests)
|
52
|
+
end
|
53
|
+
|
54
|
+
def fail_request(request_id:, error_reason:)
|
55
|
+
@devtools.send_cmd('Fetch.failRequest',
|
56
|
+
requestId: request_id,
|
57
|
+
errorReason: error_reason)
|
58
|
+
end
|
59
|
+
|
60
|
+
def fulfill_request(request_id:, response_code:, response_headers: nil, binary_response_headers: nil, body: nil, response_phrase: nil)
|
61
|
+
@devtools.send_cmd('Fetch.fulfillRequest',
|
62
|
+
requestId: request_id,
|
63
|
+
responseCode: response_code,
|
64
|
+
responseHeaders: response_headers,
|
65
|
+
binaryResponseHeaders: binary_response_headers,
|
66
|
+
body: body,
|
67
|
+
responsePhrase: response_phrase)
|
68
|
+
end
|
69
|
+
|
70
|
+
def continue_request(request_id:, url: nil, method: nil, post_data: nil, headers: nil)
|
71
|
+
@devtools.send_cmd('Fetch.continueRequest',
|
72
|
+
requestId: request_id,
|
73
|
+
url: url,
|
74
|
+
method: method,
|
75
|
+
postData: post_data,
|
76
|
+
headers: headers)
|
77
|
+
end
|
78
|
+
|
79
|
+
def continue_with_auth(request_id:, auth_challenge_response:)
|
80
|
+
@devtools.send_cmd('Fetch.continueWithAuth',
|
81
|
+
requestId: request_id,
|
82
|
+
authChallengeResponse: auth_challenge_response)
|
83
|
+
end
|
84
|
+
|
85
|
+
def get_response_body(request_id:)
|
86
|
+
@devtools.send_cmd('Fetch.getResponseBody',
|
87
|
+
requestId: request_id)
|
88
|
+
end
|
89
|
+
|
90
|
+
def take_response_body_as_stream(request_id:)
|
91
|
+
@devtools.send_cmd('Fetch.takeResponseBodyAsStream',
|
92
|
+
requestId: request_id)
|
93
|
+
end
|
94
|
+
|
95
|
+
end # V88
|
96
|
+
end # Fetch
|
97
|
+
end # DevTools
|
98
|
+
end # WebDriver
|
99
|
+
end # Selenium
|