selenium-webdriver 4.11.0 → 4.13.0
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 +4 -4
- data/CHANGES +21 -0
- data/bin/linux/selenium-manager +0 -0
- data/bin/macos/selenium-manager +0 -0
- data/bin/windows/selenium-manager.exe +0 -0
- data/lib/selenium/webdriver/chrome/driver.rb +2 -2
- data/lib/selenium/webdriver/chrome/service.rb +7 -0
- data/lib/selenium/webdriver/chrome.rb +0 -2
- data/lib/selenium/webdriver/chromium/driver.rb +0 -1
- data/lib/selenium/webdriver/chromium/options.rb +1 -1
- data/lib/selenium/webdriver/chromium.rb +0 -2
- data/lib/selenium/webdriver/common/action_builder.rb +0 -2
- data/lib/selenium/webdriver/common/driver.rb +0 -12
- data/lib/selenium/webdriver/common/local_driver.rb +8 -17
- data/lib/selenium/webdriver/common/selenium_manager.rb +31 -28
- data/lib/selenium/webdriver/common/service.rb +4 -0
- data/lib/selenium/webdriver/common/service_manager.rb +1 -1
- data/lib/selenium/webdriver/common.rb +0 -2
- data/lib/selenium/webdriver/edge/driver.rb +2 -2
- data/lib/selenium/webdriver/edge/service.rb +7 -0
- data/lib/selenium/webdriver/edge.rb +0 -2
- data/lib/selenium/webdriver/firefox/driver.rb +2 -2
- data/lib/selenium/webdriver/firefox/options.rb +1 -1
- data/lib/selenium/webdriver/ie/driver.rb +2 -2
- data/lib/selenium/webdriver/ie/options.rb +2 -2
- data/lib/selenium/webdriver/remote/driver.rb +12 -0
- data/lib/selenium/webdriver/safari/driver.rb +2 -2
- data/lib/selenium/webdriver/version.rb +1 -1
- data/lib/selenium/webdriver.rb +1 -0
- metadata +2 -4
- data/lib/selenium/webdriver/common/driver_extensions/has_location.rb +0 -36
- data/lib/selenium/webdriver/common/driver_extensions/has_network_connection.rb +0 -37
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 450f23e323427314096b116a5ab78eb32015b00dc5c56d237b2752b87d04c36e
|
4
|
+
data.tar.gz: a65e8ab198e7c2a0e67a553700a24647e6b2e9d84868a845f3b5074991efa1b2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a6e1db6add8c3791a107fc670e82f54350afbd79a7fa238ab140d5881a59347b2dfe3f3512bfb16476bbf0b7c419088350a5b357067b1ef2c9efb5a5be2890c6
|
7
|
+
data.tar.gz: d96ba24461b579290ca5e02bbb27013557fba5bcba84fd9efa0c7b75e497b6f71b24641ae88bea49ffb1ad9721dedfe12fb7b2f1864a67c4c44761dc1c94f34e
|
data/CHANGES
CHANGED
@@ -1,3 +1,24 @@
|
|
1
|
+
4.13.0 (2023-09-25)
|
2
|
+
=========================
|
3
|
+
Ruby:
|
4
|
+
* Fix bug preventing using performance logging with chromium
|
5
|
+
* Allow users to set Selenium Manager path by environment variable (#12752)
|
6
|
+
* Allow service to be started before the driver
|
7
|
+
* remove deprecated driver extensions for location and network connection
|
8
|
+
|
9
|
+
BiDi:
|
10
|
+
* Released selenium-devtools 0.117.0 (supports CDP v85, v115, v116, v117)
|
11
|
+
|
12
|
+
4.12.0 (2023-08-31)
|
13
|
+
=========================
|
14
|
+
Ruby:
|
15
|
+
* Fix bug preventing good error messages in Selenium Manager when stdout empty
|
16
|
+
* Fix bug with Firefox not loading net/http library by default (#12506)
|
17
|
+
* Remove support for using capabilities in local drivers
|
18
|
+
|
19
|
+
BiDi:
|
20
|
+
* Released selenium-devtools 0.116.0 (supports CDP v85, v114, v115, v116)
|
21
|
+
|
1
22
|
4.11.0 (2023-07-31)
|
2
23
|
=========================
|
3
24
|
Ruby:
|
data/bin/linux/selenium-manager
CHANGED
Binary file
|
data/bin/macos/selenium-manager
CHANGED
Binary file
|
Binary file
|
@@ -30,8 +30,8 @@ module Selenium
|
|
30
30
|
class Driver < Chromium::Driver
|
31
31
|
include LocalDriver
|
32
32
|
|
33
|
-
def initialize(
|
34
|
-
caps, url = initialize_local_driver(
|
33
|
+
def initialize(options: nil, service: nil, url: nil, **opts)
|
34
|
+
caps, url = initialize_local_driver(options, service, url)
|
35
35
|
super(caps: caps, url: url, **opts)
|
36
36
|
end
|
37
37
|
|
@@ -24,6 +24,13 @@ module Selenium
|
|
24
24
|
DEFAULT_PORT = 9515
|
25
25
|
EXECUTABLE = 'chromedriver'
|
26
26
|
SHUTDOWN_SUPPORTED = true
|
27
|
+
|
28
|
+
def log
|
29
|
+
return @log unless @log.is_a? String
|
30
|
+
|
31
|
+
@args += ['--log-path', @log]
|
32
|
+
@log = nil
|
33
|
+
end
|
27
34
|
end # Service
|
28
35
|
end # Chrome
|
29
36
|
end # WebDriver
|
@@ -33,7 +33,6 @@ module Selenium
|
|
33
33
|
DriverExtensions::HasNetworkInterception,
|
34
34
|
DriverExtensions::HasWebStorage,
|
35
35
|
DriverExtensions::HasLaunching,
|
36
|
-
DriverExtensions::HasLocation,
|
37
36
|
DriverExtensions::HasPermissions,
|
38
37
|
DriverExtensions::DownloadsFiles,
|
39
38
|
DriverExtensions::HasDevTools,
|
@@ -47,7 +47,7 @@ module Selenium
|
|
47
47
|
#
|
48
48
|
# @example
|
49
49
|
# options = Selenium::WebDriver::Chrome::Options.new(args: ['start-maximized', 'user-data-dir=/tmp/temp_profile'])
|
50
|
-
# driver = Selenium::WebDriver.for(:chrome,
|
50
|
+
# driver = Selenium::WebDriver.for(:chrome, options: options)
|
51
51
|
#
|
52
52
|
# @param [Profile] profile An instance of a Chrome::Profile Class
|
53
53
|
# @param [Hash] opts the pre-defined options to create the Chrome::Options with
|
@@ -33,8 +33,6 @@ module Selenium
|
|
33
33
|
# correctly when using asynchronous.
|
34
34
|
#
|
35
35
|
# @param [Selenium::WebDriver::Remote::Bridge] bridge the bridge for the current driver instance.
|
36
|
-
# @param [Selenium::WebDriver::Interactions::PointerInput] deprecated_mouse PointerInput for the mouse.
|
37
|
-
# @param [Selenium::WebDriver::Interactions::KeyInput] deprecated_keyboard KeyInput for the keyboard.
|
38
36
|
# @param [Boolean] deprecated_async Whether to perform the actions asynchronously per device.
|
39
37
|
# Defaults to false for backwards compatibility.
|
40
38
|
# @param [Array<Selenium::WebDriver::Interactions::InputDevices>] devices list of valid sources of input.
|
@@ -318,18 +318,6 @@ module Selenium
|
|
318
318
|
end
|
319
319
|
end
|
320
320
|
|
321
|
-
def generate_capabilities(capabilities)
|
322
|
-
Array(capabilities).map { |cap|
|
323
|
-
if cap.is_a? Symbol
|
324
|
-
cap = WebDriver::Options.send(cap)
|
325
|
-
elsif !cap.respond_to? :as_json
|
326
|
-
msg = ":capabilities parameter only accepts objects responding to #as_json which #{cap.class} does not"
|
327
|
-
raise ArgumentError, msg
|
328
|
-
end
|
329
|
-
cap.as_json
|
330
|
-
}.inject(:merge)
|
331
|
-
end
|
332
|
-
|
333
321
|
def service_url(service)
|
334
322
|
@service_manager = service.launch
|
335
323
|
@service_manager.uri
|
@@ -20,35 +20,26 @@
|
|
20
20
|
module Selenium
|
21
21
|
module WebDriver
|
22
22
|
module LocalDriver
|
23
|
-
def initialize_local_driver(
|
23
|
+
def initialize_local_driver(options, service, url)
|
24
24
|
raise ArgumentError, "Can't initialize #{self.class} with :url" if url
|
25
25
|
|
26
26
|
service ||= Service.send(browser)
|
27
|
-
caps = process_options(options,
|
27
|
+
caps = process_options(options, service)
|
28
28
|
url = service_url(service)
|
29
29
|
|
30
30
|
[caps, url]
|
31
31
|
end
|
32
32
|
|
33
|
-
def process_options(options,
|
33
|
+
def process_options(options, service)
|
34
34
|
default_options = Options.send(browser)
|
35
|
+
options ||= default_options
|
35
36
|
|
36
|
-
|
37
|
-
msg = "Don't use both :options and :capabilities when initializing #{self.class}, prefer :options"
|
38
|
-
raise ArgumentError, msg
|
39
|
-
elsif options && !options.is_a?(default_options.class)
|
37
|
+
unless options.is_a?(default_options.class)
|
40
38
|
raise ArgumentError, ":options must be an instance of #{default_options.class}"
|
41
|
-
elsif capabilities
|
42
|
-
WebDriver.logger.deprecate("The :capabilities parameter for #{self.class}",
|
43
|
-
":options argument with an instance of #{self.class}",
|
44
|
-
id: :capabilities)
|
45
|
-
service.executable_path ||= WebDriver::DriverFinder.path(capabilities, service.class)
|
46
|
-
generate_capabilities(capabilities)
|
47
|
-
else
|
48
|
-
options ||= default_options
|
49
|
-
service.executable_path ||= WebDriver::DriverFinder.path(options, service.class)
|
50
|
-
options.as_json
|
51
39
|
end
|
40
|
+
|
41
|
+
service.executable_path ||= WebDriver::DriverFinder.path(options, service.class)
|
42
|
+
options.as_json
|
52
43
|
end
|
53
44
|
end
|
54
45
|
end
|
@@ -75,31 +75,36 @@ module Selenium
|
|
75
75
|
# @return [String] the path to the correct selenium manager
|
76
76
|
def binary
|
77
77
|
@binary ||= begin
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
Platform.assert_executable(location)
|
91
|
-
rescue TypeError
|
92
|
-
raise Error::WebDriverError,
|
93
|
-
"Unable to locate or obtain Selenium Manager binary; #{location} is not a valid file object"
|
94
|
-
rescue Error::WebDriverError => e
|
95
|
-
raise Error::WebDriverError, "Selenium Manager binary located, but #{e.message}"
|
96
|
-
end
|
97
|
-
|
98
|
-
WebDriver.logger.debug("Selenium Manager binary found at #{location}", id: :selenium_manager)
|
78
|
+
location = ENV.fetch('SE_MANAGER_PATH', begin
|
79
|
+
directory = File.expand_path(bin_path, __FILE__)
|
80
|
+
if Platform.windows?
|
81
|
+
"#{directory}/windows/selenium-manager.exe"
|
82
|
+
elsif Platform.mac?
|
83
|
+
"#{directory}/macos/selenium-manager"
|
84
|
+
elsif Platform.linux?
|
85
|
+
"#{directory}/linux/selenium-manager"
|
86
|
+
end
|
87
|
+
end)
|
88
|
+
|
89
|
+
validate_location(location)
|
99
90
|
location
|
100
91
|
end
|
101
92
|
end
|
102
93
|
|
94
|
+
def validate_location(location)
|
95
|
+
begin
|
96
|
+
Platform.assert_file(location)
|
97
|
+
Platform.assert_executable(location)
|
98
|
+
rescue TypeError
|
99
|
+
raise Error::WebDriverError,
|
100
|
+
"Unable to locate or obtain Selenium Manager binary; #{location} is not a valid file object"
|
101
|
+
rescue Error::WebDriverError => e
|
102
|
+
raise Error::WebDriverError, "Selenium Manager binary located, but #{e.message}"
|
103
|
+
end
|
104
|
+
|
105
|
+
WebDriver.logger.debug("Selenium Manager binary found at #{location}", id: :selenium_manager)
|
106
|
+
end
|
107
|
+
|
103
108
|
def run(*command)
|
104
109
|
command += %w[--output json]
|
105
110
|
command << '--debug' if WebDriver.logger.debug?
|
@@ -108,22 +113,20 @@ module Selenium
|
|
108
113
|
|
109
114
|
begin
|
110
115
|
stdout, stderr, status = Open3.capture3(*command)
|
111
|
-
json_output = stdout.empty? ? nil : JSON.parse(stdout)
|
112
|
-
result = json_output['result']
|
113
116
|
rescue StandardError => e
|
114
117
|
raise Error::WebDriverError, "Unsuccessful command executed: #{command}; #{e.message}"
|
115
118
|
end
|
116
119
|
|
117
|
-
|
120
|
+
json_output = stdout.empty? ? {} : JSON.parse(stdout)
|
121
|
+
(json_output['logs'] || []).each do |log|
|
118
122
|
level = log['level'].casecmp('info').zero? ? 'debug' : log['level'].downcase
|
119
123
|
WebDriver.logger.send(level, log['message'], id: :selenium_manager)
|
120
124
|
end
|
121
125
|
|
122
|
-
|
123
|
-
|
124
|
-
end
|
126
|
+
result = json_output['result']
|
127
|
+
return result unless status.exitstatus.positive?
|
125
128
|
|
126
|
-
result
|
129
|
+
raise Error::WebDriverError, "Unsuccessful command executed: #{command}\n#{result}#{stderr}"
|
127
130
|
end
|
128
131
|
end
|
129
132
|
end # SeleniumManager
|
@@ -87,6 +87,10 @@ module Selenium
|
|
87
87
|
end
|
88
88
|
|
89
89
|
def launch
|
90
|
+
@executable_path ||= begin
|
91
|
+
default_options = WebDriver.const_get("#{self.class.name.split('::')[2]}::Options").new
|
92
|
+
DriverFinder.path(default_options, self.class)
|
93
|
+
end
|
90
94
|
ServiceManager.new(self).tap(&:start)
|
91
95
|
end
|
92
96
|
|
@@ -40,8 +40,8 @@ module Selenium
|
|
40
40
|
@executable_path = config.executable_path
|
41
41
|
@host = Platform.localhost
|
42
42
|
@port = config.port
|
43
|
-
@extra_args = config.args
|
44
43
|
@io = config.log
|
44
|
+
@extra_args = config.args
|
45
45
|
@shutdown_supported = config.shutdown_supported
|
46
46
|
|
47
47
|
raise Error::WebDriverError, "invalid port: #{@port}" if @port < 1
|
@@ -68,10 +68,8 @@ require 'selenium/webdriver/common/html5/local_storage'
|
|
68
68
|
require 'selenium/webdriver/common/html5/session_storage'
|
69
69
|
require 'selenium/webdriver/common/driver_extensions/has_web_storage'
|
70
70
|
require 'selenium/webdriver/common/driver_extensions/downloads_files'
|
71
|
-
require 'selenium/webdriver/common/driver_extensions/has_location'
|
72
71
|
require 'selenium/webdriver/common/driver_extensions/has_session_id'
|
73
72
|
require 'selenium/webdriver/common/driver_extensions/has_network_conditions'
|
74
|
-
require 'selenium/webdriver/common/driver_extensions/has_network_connection'
|
75
73
|
require 'selenium/webdriver/common/driver_extensions/has_network_interception'
|
76
74
|
require 'selenium/webdriver/common/driver_extensions/has_apple_permissions'
|
77
75
|
require 'selenium/webdriver/common/driver_extensions/has_permissions'
|
@@ -30,8 +30,8 @@ module Selenium
|
|
30
30
|
class Driver < Chromium::Driver
|
31
31
|
include LocalDriver
|
32
32
|
|
33
|
-
def initialize(
|
34
|
-
caps, url = initialize_local_driver(
|
33
|
+
def initialize(options: nil, service: nil, url: nil, **opts)
|
34
|
+
caps, url = initialize_local_driver(options, service, url)
|
35
35
|
super(caps: caps, url: url, **opts)
|
36
36
|
end
|
37
37
|
|
@@ -24,6 +24,13 @@ module Selenium
|
|
24
24
|
DEFAULT_PORT = 9515
|
25
25
|
EXECUTABLE = 'msedgedriver'
|
26
26
|
SHUTDOWN_SUPPORTED = true
|
27
|
+
|
28
|
+
def log
|
29
|
+
return @log unless @log.is_a? String
|
30
|
+
|
31
|
+
@args += ['--log-path', @log]
|
32
|
+
@log = nil
|
33
|
+
end
|
27
34
|
end # Service
|
28
35
|
end # Edge
|
29
36
|
end # WebDriver
|
@@ -38,8 +38,8 @@ module Selenium
|
|
38
38
|
|
39
39
|
include LocalDriver
|
40
40
|
|
41
|
-
def initialize(
|
42
|
-
caps, url = initialize_local_driver(
|
41
|
+
def initialize(options: nil, service: nil, url: nil, **opts)
|
42
|
+
caps, url = initialize_local_driver(options, service, url)
|
43
43
|
super(caps: caps, url: url, **opts)
|
44
44
|
end
|
45
45
|
|
@@ -45,7 +45,7 @@ module Selenium
|
|
45
45
|
#
|
46
46
|
# @example
|
47
47
|
# options = Selenium::WebDriver::Firefox::Options.new(args: ['--host=127.0.0.1'])
|
48
|
-
# driver = Selenium::WebDriver.for :firefox,
|
48
|
+
# driver = Selenium::WebDriver.for :firefox, options: options
|
49
49
|
#
|
50
50
|
# @param [Hash] opts the pre-defined options to create the Firefox::Options with
|
51
51
|
# @option opts [String] :binary Path to the Firefox executable to use
|
@@ -31,8 +31,8 @@ module Selenium
|
|
31
31
|
|
32
32
|
include LocalDriver
|
33
33
|
|
34
|
-
def initialize(
|
35
|
-
caps, url = initialize_local_driver(
|
34
|
+
def initialize(options: nil, service: nil, url: nil, **opts)
|
35
|
+
caps, url = initialize_local_driver(options, service, url)
|
36
36
|
super(caps: caps, url: url, **opts)
|
37
37
|
end
|
38
38
|
|
@@ -53,12 +53,12 @@ module Selenium
|
|
53
53
|
#
|
54
54
|
# @example
|
55
55
|
# options = Selenium::WebDriver::IE::Options.new(args: ['--host=127.0.0.1'])
|
56
|
-
# driver = Selenium::WebDriver.for(:ie,
|
56
|
+
# driver = Selenium::WebDriver.for(:ie, options: options)
|
57
57
|
#
|
58
58
|
# @example
|
59
59
|
# options = Selenium::WebDriver::IE::Options.new
|
60
60
|
# options.element_scroll_behavior = Selenium::WebDriver::IE::Options::SCROLL_BOTTOM
|
61
|
-
# driver = Selenium::WebDriver.for(:ie,
|
61
|
+
# driver = Selenium::WebDriver.for(:ie, options: options)
|
62
62
|
#
|
63
63
|
# @param [Hash] opts the pre-defined options
|
64
64
|
# @option opts [Array<String>] args
|
@@ -60,6 +60,18 @@ module Selenium
|
|
60
60
|
end
|
61
61
|
options ? options.as_json : generate_capabilities(capabilities)
|
62
62
|
end
|
63
|
+
|
64
|
+
def generate_capabilities(capabilities)
|
65
|
+
Array(capabilities).map { |cap|
|
66
|
+
if cap.is_a? Symbol
|
67
|
+
cap = WebDriver::Options.send(cap)
|
68
|
+
elsif !cap.respond_to? :as_json
|
69
|
+
msg = ":capabilities parameter only accepts objects responding to #as_json which #{cap.class} does not"
|
70
|
+
raise ArgumentError, msg
|
71
|
+
end
|
72
|
+
cap.as_json
|
73
|
+
}.inject(:merge)
|
74
|
+
end
|
63
75
|
end # Driver
|
64
76
|
end # Remote
|
65
77
|
end # WebDriver
|
@@ -32,8 +32,8 @@ module Selenium
|
|
32
32
|
|
33
33
|
include LocalDriver
|
34
34
|
|
35
|
-
def initialize(
|
36
|
-
caps, url = initialize_local_driver(
|
35
|
+
def initialize(options: nil, service: nil, url: nil, **opts)
|
36
|
+
caps, url = initialize_local_driver(options, service, url)
|
37
37
|
super(caps: caps, url: url, **opts)
|
38
38
|
end
|
39
39
|
|
data/lib/selenium/webdriver.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: selenium-webdriver
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.13.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alex Rodionov
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2023-
|
13
|
+
date: 2023-09-25 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rexml
|
@@ -259,11 +259,9 @@ files:
|
|
259
259
|
- lib/selenium/webdriver/common/driver_extensions/has_debugger.rb
|
260
260
|
- lib/selenium/webdriver/common/driver_extensions/has_devtools.rb
|
261
261
|
- lib/selenium/webdriver/common/driver_extensions/has_launching.rb
|
262
|
-
- lib/selenium/webdriver/common/driver_extensions/has_location.rb
|
263
262
|
- lib/selenium/webdriver/common/driver_extensions/has_log_events.rb
|
264
263
|
- lib/selenium/webdriver/common/driver_extensions/has_logs.rb
|
265
264
|
- lib/selenium/webdriver/common/driver_extensions/has_network_conditions.rb
|
266
|
-
- lib/selenium/webdriver/common/driver_extensions/has_network_connection.rb
|
267
265
|
- lib/selenium/webdriver/common/driver_extensions/has_network_interception.rb
|
268
266
|
- lib/selenium/webdriver/common/driver_extensions/has_permissions.rb
|
269
267
|
- lib/selenium/webdriver/common/driver_extensions/has_pinned_scripts.rb
|
@@ -1,36 +0,0 @@
|
|
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
|
-
# TODO: Deprecated; Delete after 4.0 release
|
21
|
-
module Selenium
|
22
|
-
module WebDriver
|
23
|
-
module DriverExtensions
|
24
|
-
module HasLocation
|
25
|
-
def location
|
26
|
-
raise Error::UnsupportedOperationError, 'The W3C standard does not currently support getting location'
|
27
|
-
end
|
28
|
-
|
29
|
-
def location=(*)
|
30
|
-
raise Error::UnsupportedOperationError, 'The W3C standard does not currently support setting location'
|
31
|
-
end
|
32
|
-
alias set_location location
|
33
|
-
end # HasLocation
|
34
|
-
end # DriverExtensions
|
35
|
-
end # WebDriver
|
36
|
-
end # Selenium
|
@@ -1,37 +0,0 @@
|
|
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
|
-
# TODO: Deprecated; Delete after 4.0 release
|
21
|
-
module Selenium
|
22
|
-
module WebDriver
|
23
|
-
module DriverExtensions
|
24
|
-
module HasNetworkConnection
|
25
|
-
def network_connection_type
|
26
|
-
raise Error::UnsupportedOperationError,
|
27
|
-
'The W3C standard does not currently support getting network connection'
|
28
|
-
end
|
29
|
-
|
30
|
-
def network_connection_type=(*)
|
31
|
-
raise Error::UnsupportedOperationError,
|
32
|
-
'The W3C standard does not currently support setting network connection'
|
33
|
-
end
|
34
|
-
end # HasNetworkConnection
|
35
|
-
end # DriverExtensions
|
36
|
-
end # WebDriver
|
37
|
-
end # Selenium
|