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.
Files changed (32) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES +21 -0
  3. data/bin/linux/selenium-manager +0 -0
  4. data/bin/macos/selenium-manager +0 -0
  5. data/bin/windows/selenium-manager.exe +0 -0
  6. data/lib/selenium/webdriver/chrome/driver.rb +2 -2
  7. data/lib/selenium/webdriver/chrome/service.rb +7 -0
  8. data/lib/selenium/webdriver/chrome.rb +0 -2
  9. data/lib/selenium/webdriver/chromium/driver.rb +0 -1
  10. data/lib/selenium/webdriver/chromium/options.rb +1 -1
  11. data/lib/selenium/webdriver/chromium.rb +0 -2
  12. data/lib/selenium/webdriver/common/action_builder.rb +0 -2
  13. data/lib/selenium/webdriver/common/driver.rb +0 -12
  14. data/lib/selenium/webdriver/common/local_driver.rb +8 -17
  15. data/lib/selenium/webdriver/common/selenium_manager.rb +31 -28
  16. data/lib/selenium/webdriver/common/service.rb +4 -0
  17. data/lib/selenium/webdriver/common/service_manager.rb +1 -1
  18. data/lib/selenium/webdriver/common.rb +0 -2
  19. data/lib/selenium/webdriver/edge/driver.rb +2 -2
  20. data/lib/selenium/webdriver/edge/service.rb +7 -0
  21. data/lib/selenium/webdriver/edge.rb +0 -2
  22. data/lib/selenium/webdriver/firefox/driver.rb +2 -2
  23. data/lib/selenium/webdriver/firefox/options.rb +1 -1
  24. data/lib/selenium/webdriver/ie/driver.rb +2 -2
  25. data/lib/selenium/webdriver/ie/options.rb +2 -2
  26. data/lib/selenium/webdriver/remote/driver.rb +12 -0
  27. data/lib/selenium/webdriver/safari/driver.rb +2 -2
  28. data/lib/selenium/webdriver/version.rb +1 -1
  29. data/lib/selenium/webdriver.rb +1 -0
  30. metadata +2 -4
  31. data/lib/selenium/webdriver/common/driver_extensions/has_location.rb +0 -36
  32. 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: 55c2b164be56b90064957852c6b1f890f9cda063d5c0ef164752b7c67f6e40bb
4
- data.tar.gz: 778d0c6d2450a3d178d709762c76b9ef2c24832131d4487f6c84b5789a32b1de
3
+ metadata.gz: 450f23e323427314096b116a5ab78eb32015b00dc5c56d237b2752b87d04c36e
4
+ data.tar.gz: a65e8ab198e7c2a0e67a553700a24647e6b2e9d84868a845f3b5074991efa1b2
5
5
  SHA512:
6
- metadata.gz: 6777b04b259f2e7be27d7c2635f77b0e9006464f931e1e79a1e10f517474b71344534a8b02ba84445801581f4c50cb79901d15ef8e74133c08357625e5ad9de6
7
- data.tar.gz: 5f1e3af40a4bbcc3e4e77407321d64b1e6920ca91fcf7605bce780d42138fd587bfc951563205d8cf6e4b63952e7e4e35dd52aba496fcb1e468e6a086c81c92d
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:
Binary file
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(capabilities: nil, options: nil, service: nil, url: nil, **opts)
34
- caps, url = initialize_local_driver(capabilities, options, service, url)
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
@@ -17,8 +17,6 @@
17
17
  # specific language governing permissions and limitations
18
18
  # under the License.
19
19
 
20
- require 'net/http'
21
-
22
20
  module Selenium
23
21
  module WebDriver
24
22
  module Chrome
@@ -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, capabilities: options)
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
@@ -17,8 +17,6 @@
17
17
  # specific language governing permissions and limitations
18
18
  # under the License.
19
19
 
20
- require 'net/http'
21
-
22
20
  module Selenium
23
21
  module WebDriver
24
22
  module Chromium
@@ -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(capabilities, options, service, url)
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, capabilities, service)
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, capabilities, service)
33
+ def process_options(options, service)
34
34
  default_options = Options.send(browser)
35
+ options ||= default_options
35
36
 
36
- if options && capabilities
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
- path = File.expand_path(bin_path, __FILE__)
79
- path << if Platform.windows?
80
- '/windows/selenium-manager.exe'
81
- elsif Platform.mac?
82
- '/macos/selenium-manager'
83
- elsif Platform.linux?
84
- '/linux/selenium-manager'
85
- end
86
- location = File.expand_path(path, __FILE__)
87
-
88
- begin
89
- Platform.assert_file(location)
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
- (json_output&.fetch('logs') || []).each do |log|
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
- if status.exitstatus.positive?
123
- raise Error::WebDriverError, "Unsuccessful command executed: #{command}\n#{result}#{stderr}"
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(capabilities: nil, options: nil, service: nil, url: nil, **opts)
34
- caps, url = initialize_local_driver(capabilities, options, service, url)
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
@@ -17,8 +17,6 @@
17
17
  # specific language governing permissions and limitations
18
18
  # under the License.
19
19
 
20
- require 'net/http'
21
-
22
20
  module Selenium
23
21
  module WebDriver
24
22
  module Edge
@@ -38,8 +38,8 @@ module Selenium
38
38
 
39
39
  include LocalDriver
40
40
 
41
- def initialize(capabilities: nil, options: nil, service: nil, url: nil, **opts)
42
- caps, url = initialize_local_driver(capabilities, options, service, url)
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, capabilities: options
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(capabilities: nil, options: nil, service: nil, url: nil, **opts)
35
- caps, url = initialize_local_driver(capabilities, options, service, url)
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, capabilities: options)
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, capabilities: options)
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(capabilities: nil, options: nil, service: nil, url: nil, **opts)
36
- caps, url = initialize_local_driver(capabilities, options, service, url)
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
 
@@ -19,6 +19,6 @@
19
19
 
20
20
  module Selenium
21
21
  module WebDriver
22
- VERSION = '4.11.0'
22
+ VERSION = '4.13.0'
23
23
  end # WebDriver
24
24
  end # Selenium
@@ -23,6 +23,7 @@ require 'date'
23
23
  require 'json'
24
24
  require 'set'
25
25
  require 'uri'
26
+ require 'net/http'
26
27
 
27
28
  require 'selenium/webdriver/atoms'
28
29
  require 'selenium/webdriver/common'
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.11.0
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-07-31 00:00:00.000000000 Z
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