selenium-client 1.2.17 → 1.2.18

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.
@@ -153,7 +153,7 @@ Writing Tests
153
153
  If BDD is more your style, here is how you can achieve the same thing using RSpec:
154
154
 
155
155
  require 'rubygems'
156
- gem "rspec", "=1.2.8"
156
+ gem "rspec", ">=1.2.8"
157
157
  gem "selenium-client", ">=1.2.16"
158
158
  require "selenium/client"
159
159
  require "selenium/rspec/spec_helper"
@@ -326,3 +326,8 @@ Contributors
326
326
  - Fix escaping bug when dealing with embedded regexes such as
327
327
  "webratlink=evalregex:/Pastry Lovers \\(Organizer\\)/"
328
328
  [patch](http://github.com/derfred/selenium-client/commit/4342cbb39d1a92b8db8f26ee0dc6c1a8f3287737)
329
+
330
+ * [Alex Chaffe](http://alexch.github.com)
331
+ - Better error reporting and fixed bug where if the response
332
+ doesn't start with "OK" it swallows the first three
333
+ chars (leading to annoying "ed out after 5000 msec" messages)
@@ -1,6 +1,6 @@
1
1
  require 'rubygems'
2
- gem "rspec", "=1.2.8"
3
- gem "selenium-client", ">=1.2.17"
2
+ gem "rspec", ">=1.2.8"
3
+ gem "selenium-client", ">=1.2.18"
4
4
  require "selenium/client"
5
5
  require "selenium/rspec/spec_helper"
6
6
 
@@ -3,7 +3,7 @@
3
3
  # Sample Ruby script using the Selenium client API
4
4
  #
5
5
  require "rubygems"
6
- gem "selenium-client", ">=1.2.17"
6
+ gem "selenium-client", ">=1.2.18"
7
7
  require "selenium/client"
8
8
 
9
9
  begin
@@ -4,7 +4,7 @@
4
4
  #
5
5
  require "test/unit"
6
6
  require "rubygems"
7
- gem "selenium-client", ">=1.2.17"
7
+ gem "selenium-client", ">=1.2.18"
8
8
  require "selenium/client"
9
9
 
10
10
  class ExampleTest < Test::Unit::TestCase
@@ -13,7 +13,7 @@ require File.expand_path(File.dirname(__FILE__) + '/../nautilus/shell')
13
13
  require File.expand_path(File.dirname(__FILE__) + '/command_error')
14
14
  require File.expand_path(File.dirname(__FILE__) + '/protocol_error')
15
15
  require File.expand_path(File.dirname(__FILE__) + '/client/protocol')
16
- require File.expand_path(File.dirname(__FILE__) + '/client/generated_driver')
16
+ require File.expand_path(File.dirname(__FILE__) + '/client/legacy_driver')
17
17
  require File.expand_path(File.dirname(__FILE__) + '/client/javascript_expression_builder')
18
18
  require File.expand_path(File.dirname(__FILE__) + '/client/javascript_frameworks/prototype')
19
19
  require File.expand_path(File.dirname(__FILE__) + '/client/javascript_frameworks/jquery')
@@ -472,7 +472,7 @@ module Selenium
472
472
  # Set the execution delay in milliseconds, i.e. a pause delay following
473
473
  # each selenium operation. By default, there is no such delay.
474
474
  #
475
- # Setting an execution can be useful to troubleshoot of capture videos
475
+ # Setting an execution can be useful to troubleshoot or capture videos
476
476
  def execution_delay=(delay_in_milliseconds)
477
477
  remote_control_command "setSpeed", [delay_in_milliseconds]
478
478
  end
@@ -11,7 +11,7 @@ module Selenium
11
11
  timeout(@default_timeout_in_seconds) do
12
12
  status, response = http_post(http_request_for(verb, args))
13
13
  raise Selenium::CommandError, response unless status == "OK"
14
- response
14
+ response[3..-1] # strip "OK," from response
15
15
  end
16
16
  end
17
17
 
@@ -81,13 +81,21 @@ module Selenium
81
81
  end
82
82
 
83
83
  def http_post(data)
84
- # puts "Requesting ---> #{data.inspect}"
84
+ start = Time.now
85
+ called_from = caller.detect{|line| line !~ /(selenium-client|vendor|usr\/lib\/ruby|\(eval\))/i}
85
86
  http = Net::HTTP.new(@host, @port)
86
87
  http.open_timeout = default_timeout_in_seconds
87
88
  http.read_timeout = default_timeout_in_seconds
88
89
  response = http.post('/selenium-server/driver/', data, HTTP_HEADERS)
89
- # puts "RESULT: #{response.body.inspect}\n"
90
- [ response.body[0..1], response.body[3..-1] ]
90
+ if response.body !~ /^OK/
91
+ puts "#{start} selenium-client received failure from selenium server:"
92
+ puts "requested:"
93
+ puts "\t" + CGI::unescape(data.split('&').join("\n\t"))
94
+ puts "received:"
95
+ puts "\t#{response.body.inspect}"
96
+ puts "\tcalled from #{called_from}"
97
+ end
98
+ [ response.body[0..1], response.body ]
91
99
  end
92
100
 
93
101
  end
@@ -23,7 +23,7 @@ module Selenium
23
23
  # Control. You will find the nightly build at
24
24
  # http://nexus.openqa.org/content/repositories/snapshots/org/seleniumhq/selenium/server/selenium-server/
25
25
  class RemoteControlStartTask
26
- attr_accessor :port, :timeout_in_seconds, :background,
26
+ attr_accessor :host, :port, :timeout_in_seconds, :background,
27
27
  :wait_until_up_and_running, :additional_args,
28
28
  :log_to
29
29
  attr_reader :jar_file
@@ -32,6 +32,7 @@ module Selenium
32
32
 
33
33
  def initialize(name = :'selenium:rc:start')
34
34
  @name = name
35
+ @host = "localhost"
35
36
  @port = 4444
36
37
  @timeout_in_seconds = 5
37
38
  project_specific_jar = Dir[JAR_FILE_PATTERN].first
@@ -2,14 +2,15 @@ module Selenium
2
2
  module RemoteControl
3
3
 
4
4
  class RemoteControl
5
- attr_reader :host, :port, :timeout_in_seconds, :shutdown_command
5
+ attr_reader :host, :port, :timeout_in_seconds, :firefox_profile, :shutdown_command
6
6
  attr_accessor :additional_args, :jar_file, :log_to
7
7
 
8
8
  def initialize(host, port, options={})
9
9
  @host, @port = host, port
10
10
  @timeout_in_seconds = options[:timeout] || (2 * 60)
11
11
  @shutdown_command = options[:shutdown_command] || "shutDownSeleniumServer"
12
- @additional_args = []
12
+ @firefox_profile = options[:firefox_profile]
13
+ @additional_args = options[:additional_args] || []
13
14
  @shell = Nautilus::Shell.new
14
15
  end
15
16
 
@@ -17,6 +18,7 @@ module Selenium
17
18
  command = "java -jar \"#{jar_file}\""
18
19
  command << " -port #{@port}"
19
20
  command << " -timeout #{@timeout_in_seconds}"
21
+ command << " -firefoxProfileTemplate '#{@firefox_profile}'" if @firefox_profile
20
22
  command << " #{additional_args.join(' ')}" unless additional_args.empty?
21
23
  command << " > #{log_to}" if log_to
22
24
 
@@ -7,7 +7,7 @@ require "digest/md5"
7
7
  require "base64"
8
8
  require 'tmpdir'
9
9
  require "rubygems"
10
- gem "rspec", "1.2.8"
10
+ gem "rspec", ">=1.2.8"
11
11
  require "spec"
12
12
  require 'spec/runner/formatter/html_formatter'
13
13
  require File.expand_path(File.dirname(__FILE__) + "/file_path_strategy")
@@ -1,5 +1,5 @@
1
1
  require "rubygems"
2
- gem "rspec", "=1.2.8"
2
+ gem "rspec", ">=1.2.8"
3
3
  require 'spec'
4
4
  require 'spec/example/example_group'
5
5
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: selenium-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.17
4
+ version: 1.2.18
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenQA
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-09-28 00:00:00 -07:00
12
+ date: 2010-01-12 00:00:00 -08:00
13
13
  default_executable:
14
14
  dependencies: []
15
15
 
@@ -26,11 +26,11 @@ files:
26
26
  - lib/selenium/client/base.rb
27
27
  - lib/selenium/client/driver.rb
28
28
  - lib/selenium/client/extensions.rb
29
- - lib/selenium/client/generated_driver.rb
30
29
  - lib/selenium/client/idiomatic.rb
31
30
  - lib/selenium/client/javascript_expression_builder.rb
32
31
  - lib/selenium/client/javascript_frameworks/jquery.rb
33
32
  - lib/selenium/client/javascript_frameworks/prototype.rb
33
+ - lib/selenium/client/legacy_driver.rb
34
34
  - lib/selenium/client/protocol.rb
35
35
  - lib/selenium/client/selenium_helper.rb
36
36
  - lib/selenium/client.rb