selenium-webdriver 2.25.0 → 2.26.0.rc1

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.
data/CHANGES CHANGED
@@ -1,3 +1,20 @@
1
+ 2.26.0 (2012-11-02)
2
+ ===================
3
+
4
+ Firefox:
5
+ * Added support for native events for Firefox 15 and 16.
6
+ * Modified FirefoxDriver to use atoms to switch between frames.
7
+ * FIXED: 4309: 'Could not convert Native argument arg 0' error with Firefox.
8
+ * FIXED: 4375: Executing javascript hangs Firefox.
9
+ * FIXED: 4165: WebDriver fails on a machine with no IP address.
10
+ Safari:
11
+ * Fixed SafariDriver to allow calling .quit() consecutively without error.
12
+ * FIXED: 4676: Unable to fire javascript events into SVG's.
13
+ * FIXED: 3969: SafariDriver should auto-dismiss alerts.
14
+ IE:
15
+ * FIXED: 4535: Hover still does not work perfectly in IE.
16
+ * FIXED: 4593: Alert.accept() Cancels the Resend Alert/Dialog Box.
17
+
1
18
  2.25.0 (2012-07-19)
2
19
  ===================
3
20
 
@@ -53,12 +53,13 @@ module Selenium
53
53
  private
54
54
 
55
55
  def create_capabilities(opts)
56
- args = opts.delete(:args) || opts.delete(:switches)
57
- native_events = opts.delete(:native_events)
58
- verbose = opts.delete(:verbose)
59
- profile = opts.delete(:profile)
60
- detach = opts.delete(:detach)
61
- proxy = opts.delete(:proxy)
56
+ args = opts.delete(:args) || opts.delete(:switches)
57
+ native_events = opts.delete(:native_events)
58
+ verbose = opts.delete(:verbose)
59
+ profile = opts.delete(:profile)
60
+ detach = opts.delete(:detach)
61
+ proxy = opts.delete(:proxy)
62
+ no_website_testing_defaults = opts.delete(:no_website_testing_defaults)
62
63
 
63
64
  unless opts.empty?
64
65
  raise ArgumentError, "unknown option#{'s' if opts.size != 1}: #{opts.inspect}"
@@ -82,10 +83,11 @@ module Selenium
82
83
  end
83
84
 
84
85
 
85
- chrome_options['binary'] = Chrome.path if Chrome.path
86
- chrome_options['nativeEvents'] = true if native_events
87
- chrome_options['verbose'] = true if verbose
88
- chrome_options['detach'] = detach.nil? || !!detach
86
+ chrome_options['binary'] = Chrome.path if Chrome.path
87
+ chrome_options['nativeEvents'] = true if native_events
88
+ chrome_options['verbose'] = true if verbose
89
+ chrome_options['detach'] = detach.nil? || !!detach
90
+ chrome_options['noWebsiteTestingDefaults'] = true if no_website_testing_defaults
89
91
 
90
92
  caps = Remote::Capabilities.chrome
91
93
  caps['chromeOptions'] = chrome_options
@@ -93,7 +95,7 @@ module Selenium
93
95
 
94
96
  # legacy options - for chromedriver < 17.0.963.0
95
97
  caps["chrome.switches"] = chrome_options['args'] if chrome_options.member?('args')
96
- %w[binary detach extensions nativeEvents profile verbose].each do |key|
98
+ %w[binary detach extensions nativeEvents noWebsiteTestingDefaults profile verbose].each do |key|
97
99
  caps["chrome.#{key}"] = chrome_options[key] if chrome_options.member?(key)
98
100
  end
99
101
 
@@ -279,7 +279,7 @@ module Selenium
279
279
  # @return [ActionBuilder] A self reference.
280
280
  #
281
281
 
282
- def context_click(element)
282
+ def context_click(element = nil)
283
283
  @actions << [:mouse, :context_click, [element]]
284
284
  self
285
285
  end
@@ -161,7 +161,7 @@ module Selenium
161
161
  ensure
162
162
  Socket.do_not_reverse_lookup = orig
163
163
  end
164
- rescue Errno::ENETUNREACH
164
+ rescue Errno::ENETUNREACH, Errno::EHOSTUNREACH
165
165
  # no external ip
166
166
  end
167
167
 
@@ -29,7 +29,12 @@ module Selenium
29
29
 
30
30
  remote_opts.merge!(:http_client => http_client) if http_client
31
31
 
32
- super(remote_opts)
32
+ begin
33
+ super(remote_opts)
34
+ rescue
35
+ @launcher.quit
36
+ raise
37
+ end
33
38
  end
34
39
 
35
40
  def browser
@@ -18,6 +18,7 @@
18
18
  "devtools.errorconsole.enabled": true,
19
19
  "dom.disable_open_during_load": false,
20
20
  "extensions.autoDisableScopes": 10,
21
+ "extensions.blocklist.enabled": false,
21
22
  "extensions.logging.enabled": true,
22
23
  "extensions.update.enabled": false,
23
24
  "extensions.update.notifyUser": false,
@@ -1,4 +1,5 @@
1
1
  require 'net/https'
2
+ require 'ipaddr'
2
3
 
3
4
  module Selenium
4
5
  module WebDriver
@@ -113,8 +114,19 @@ module Selenium
113
114
  return false if proxy.nil?
114
115
 
115
116
  if proxy.no_proxy
116
- hosts = proxy.no_proxy.split(",")
117
- !(hosts.include?(server_url.host) || hosts.first == "*")
117
+ ignored = proxy.no_proxy.split(",").any? do |host|
118
+ host == "*" ||
119
+ host == server_url.host || (
120
+ begin
121
+ IPAddr.new(host).include?(server_url.host)
122
+ rescue ArgumentError
123
+ false
124
+ end
125
+ )
126
+
127
+ end
128
+
129
+ not ignored
118
130
  else
119
131
  true
120
132
  end
@@ -79,6 +79,18 @@ module Selenium
79
79
  @alpha = Float(alpha)
80
80
  end
81
81
 
82
+ def ==(other)
83
+ return true if equal?(other)
84
+ return false unless other.kind_of?(self.class)
85
+
86
+ [red, green, blue, alpha] == [other.red, other.green, other.blue, other.alpha]
87
+ end
88
+ alias_method :eql?, :==
89
+
90
+ def hash
91
+ [red, green, blue, alpha].hash ^ self.class.hash
92
+ end
93
+
82
94
  def rgb
83
95
  "rgb(#{red}, #{green}, #{blue})"
84
96
  end
metadata CHANGED
@@ -1,8 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: selenium-webdriver
3
3
  version: !ruby/object:Gem::Version
4
- prerelease:
5
- version: 2.25.0
4
+ prerelease: 7
5
+ version: 2.26.0.rc1
6
6
  platform: ruby
7
7
  authors:
8
8
  - Jari Bakken
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2012-07-19 00:00:00 +02:00
13
+ date: 2012-11-02 00:00:00 +01:00
14
14
  default_executable:
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
@@ -237,9 +237,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
237
237
  required_rubygems_version: !ruby/object:Gem::Requirement
238
238
  none: false
239
239
  requirements:
240
- - - ">="
240
+ - - ">"
241
241
  - !ruby/object:Gem::Version
242
- version: "0"
242
+ version: 1.3.1
243
243
  requirements: []
244
244
 
245
245
  rubyforge_project: