selenium-webdriver 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (86) hide show
  1. data/chrome/prebuilt/Win32/Release/npchromedriver.dll +0 -0
  2. data/chrome/prebuilt/x64/Release/npchromedriver.dll +0 -0
  3. data/chrome/src/extension/background.html +9 -0
  4. data/chrome/src/extension/background.js +933 -0
  5. data/chrome/src/extension/content_script.js +1286 -0
  6. data/chrome/src/extension/manifest-nonwin.json +15 -0
  7. data/chrome/src/extension/manifest-win.json +16 -0
  8. data/chrome/src/extension/toolstrip.html +28 -0
  9. data/chrome/src/extension/utils.js +196 -0
  10. data/chrome/src/rb/lib/selenium/webdriver/chrome.rb +8 -0
  11. data/chrome/src/rb/lib/selenium/webdriver/chrome/bridge.rb +324 -0
  12. data/chrome/src/rb/lib/selenium/webdriver/chrome/command_executor.rb +70 -0
  13. data/chrome/src/rb/lib/selenium/webdriver/chrome/launcher.rb +119 -0
  14. data/common/src/js/abstractcommandprocessor.js +161 -0
  15. data/common/src/js/asserts.js +296 -0
  16. data/common/src/js/by.js +147 -0
  17. data/common/src/js/command.js +274 -0
  18. data/common/src/js/context.js +58 -0
  19. data/common/src/js/extension/README +2 -0
  20. data/common/src/js/extension/dommessenger.js +152 -0
  21. data/common/src/js/factory.js +55 -0
  22. data/common/src/js/future.js +118 -0
  23. data/common/src/js/key.js +117 -0
  24. data/common/src/js/localcommandprocessor.js +181 -0
  25. data/common/src/js/logging.js +249 -0
  26. data/common/src/js/testrunner.js +605 -0
  27. data/common/src/js/timing.js +89 -0
  28. data/common/src/js/wait.js +199 -0
  29. data/common/src/js/webdriver.js +853 -0
  30. data/common/src/js/webelement.js +683 -0
  31. data/common/src/rb/lib/selenium-webdriver.rb +1 -0
  32. data/common/src/rb/lib/selenium/webdriver.rb +52 -0
  33. data/common/src/rb/lib/selenium/webdriver/bridge_helper.rb +88 -0
  34. data/common/src/rb/lib/selenium/webdriver/child_process.rb +85 -0
  35. data/common/src/rb/lib/selenium/webdriver/core_ext/dir.rb +41 -0
  36. data/common/src/rb/lib/selenium/webdriver/driver.rb +128 -0
  37. data/common/src/rb/lib/selenium/webdriver/element.rb +126 -0
  38. data/common/src/rb/lib/selenium/webdriver/error.rb +68 -0
  39. data/common/src/rb/lib/selenium/webdriver/find.rb +69 -0
  40. data/common/src/rb/lib/selenium/webdriver/navigation.rb +23 -0
  41. data/common/src/rb/lib/selenium/webdriver/options.rb +50 -0
  42. data/common/src/rb/lib/selenium/webdriver/platform.rb +82 -0
  43. data/common/src/rb/lib/selenium/webdriver/target_locator.rb +23 -0
  44. data/firefox/prebuilt/nsICommandProcessor.xpt +0 -0
  45. data/firefox/prebuilt/nsINativeEvents.xpt +0 -0
  46. data/firefox/prebuilt/nsIResponseHandler.xpt +0 -0
  47. data/firefox/src/extension/chrome.manifest +3 -0
  48. data/firefox/src/extension/components/context.js +37 -0
  49. data/firefox/src/extension/components/driver-component.js +127 -0
  50. data/firefox/src/extension/components/firefoxDriver.js +706 -0
  51. data/firefox/src/extension/components/json2.js +273 -0
  52. data/firefox/src/extension/components/keytest.html +554 -0
  53. data/firefox/src/extension/components/nsCommandProcessor.js +586 -0
  54. data/firefox/src/extension/components/screenshooter.js +70 -0
  55. data/firefox/src/extension/components/socketListener.js +185 -0
  56. data/firefox/src/extension/components/utils.js +1200 -0
  57. data/firefox/src/extension/components/webLoadingListener.js +57 -0
  58. data/firefox/src/extension/components/webdriverserver.js +101 -0
  59. data/firefox/src/extension/components/wrappedElement.js +609 -0
  60. data/firefox/src/extension/content/fxdriver.xul +30 -0
  61. data/firefox/src/extension/content/server.js +95 -0
  62. data/firefox/src/extension/idl/nsICommandProcessor.idl +38 -0
  63. data/firefox/src/extension/idl/nsIResponseHandler.idl +34 -0
  64. data/firefox/src/extension/install.rdf +29 -0
  65. data/firefox/src/rb/lib/selenium/webdriver/firefox.rb +21 -0
  66. data/firefox/src/rb/lib/selenium/webdriver/firefox/binary.rb +86 -0
  67. data/firefox/src/rb/lib/selenium/webdriver/firefox/bridge.rb +426 -0
  68. data/firefox/src/rb/lib/selenium/webdriver/firefox/extension_connection.rb +82 -0
  69. data/firefox/src/rb/lib/selenium/webdriver/firefox/launcher.rb +132 -0
  70. data/firefox/src/rb/lib/selenium/webdriver/firefox/profile.rb +174 -0
  71. data/firefox/src/rb/lib/selenium/webdriver/firefox/profiles_ini.rb +60 -0
  72. data/firefox/src/rb/lib/selenium/webdriver/firefox/util.rb +23 -0
  73. data/jobbie/prebuilt/Win32/Release/InternetExplorerDriver.dll +0 -0
  74. data/jobbie/prebuilt/x64/Release/InternetExplorerDriver.dll +0 -0
  75. data/jobbie/src/rb/lib/selenium/webdriver/ie.rb +14 -0
  76. data/jobbie/src/rb/lib/selenium/webdriver/ie/bridge.rb +552 -0
  77. data/jobbie/src/rb/lib/selenium/webdriver/ie/lib.rb +94 -0
  78. data/jobbie/src/rb/lib/selenium/webdriver/ie/util.rb +147 -0
  79. data/remote/client/src/rb/lib/selenium/webdriver/remote.rb +16 -0
  80. data/remote/client/src/rb/lib/selenium/webdriver/remote/bridge.rb +374 -0
  81. data/remote/client/src/rb/lib/selenium/webdriver/remote/capabilities.rb +105 -0
  82. data/remote/client/src/rb/lib/selenium/webdriver/remote/commands.rb +53 -0
  83. data/remote/client/src/rb/lib/selenium/webdriver/remote/default_http_client.rb +71 -0
  84. data/remote/client/src/rb/lib/selenium/webdriver/remote/response.rb +43 -0
  85. data/remote/client/src/rb/lib/selenium/webdriver/remote/server_error.rb +32 -0
  86. metadata +182 -0
@@ -0,0 +1,105 @@
1
+ module Selenium
2
+ module WebDriver
3
+ module Remote
4
+
5
+ #
6
+ # Specification of the desired and/or actual capabilities of the browser that the
7
+ # server is being asked to create.
8
+ #
9
+ # @option browser_name [String] required browser name
10
+ # @option version [String] required browser version number
11
+ # @option platform [Symbol] one of :any, :win, :mac, or :x
12
+ # @option javascript_enabled [Boolean] should the test run with javascript enabled?
13
+ #
14
+ # @api public
15
+ #
16
+
17
+ class Capabilities
18
+
19
+ attr_accessor :browser_name, :version, :platform, :javascript_enabled
20
+ alias_method :javascript?, :javascript_enabled
21
+
22
+ #
23
+ # Convenience methods for the common choices.
24
+ #
25
+
26
+ class << self
27
+ def firefox(opts = {})
28
+ new({
29
+ :browser_name => "firefox",
30
+ :javascript_enabled => true
31
+ }.merge(opts))
32
+ end
33
+
34
+ def internet_explorer(opts = {})
35
+ new({
36
+ :browser_name => "internet explorer",
37
+ :platform => :windows
38
+ }.merge(opts))
39
+ end
40
+
41
+ def htmlunit(opts = {})
42
+ new({
43
+ :browser_name => "htmlunit"
44
+ }.merge(opts))
45
+ end
46
+
47
+ def safari(opts = {})
48
+ new({
49
+ :browser_name => "safari",
50
+ :platform => :mac
51
+ }.merge(opts))
52
+ end
53
+
54
+ def iphone(opts = {})
55
+ new({
56
+ :browser_name => "iphone",
57
+ :platform => :mac
58
+ }.merge(opts))
59
+ end
60
+
61
+ def chrome(opts = {})
62
+ new({
63
+ :browser_name => "chrome",
64
+ :javascript_enabled => true
65
+ }.merge(opts))
66
+ end
67
+ end
68
+
69
+ def initialize(opts = {})
70
+ @browser_name = opts[:browser_name] || ""
71
+ @version = opts[:version] || ""
72
+ @platform = opts[:platform] || :any
73
+ @javascript_enabled = opts[:javascript_enabled] || false
74
+ end
75
+
76
+ #
77
+ # @api private
78
+ #
79
+
80
+ def self.json_create(data)
81
+ new(
82
+ :browser_name => data["browserName"],
83
+ :version => data["version"],
84
+ :platform => data["platform"].downcase.to_sym,
85
+ :javascript_enabled => data["javascriptEnabled"]
86
+ )
87
+ end
88
+
89
+ #
90
+ # @api private
91
+ #
92
+
93
+ def to_json
94
+ {
95
+ "browserName" => browser_name,
96
+ "version" => version,
97
+ "platform" => platform.to_s.upcase,
98
+ "javascriptEnabled" => javascript?
99
+ }.to_json
100
+ end
101
+
102
+ end # Capabilities
103
+ end # Remote
104
+ end # WebDriver
105
+ end # Selenium
@@ -0,0 +1,53 @@
1
+ class Selenium::WebDriver::Remote::Bridge
2
+ command :addCookie, :post, "session/:session_id/:context/cookie"
3
+ command :goBack, :post, "session/:session_id/:context/back"
4
+ command :clearElement, :post, "session/:session_id/:context/element/:id/clear"
5
+ command :clickElement, :post, "session/:session_id/:context/element/:id/click"
6
+ command :close, :delete, "session/:session_id/:context/window"
7
+ command :getCurrentUrl, :get, "session/:session_id/:context/url"
8
+ command :deleteAllCookies, :delete, "session/:session_id/:context/cookie"
9
+ command :deleteCookie, :delete, "session/:session_id/:context/cookie/:name"
10
+ command :dragElement, :post, "session/:session_id/:context/element/:id/drag"
11
+ command :elementEquals, :get, "session/:session_id/:context/element/:id/equals/:other"
12
+ command :executeScript, :post, "session/:session_id/:context/execute"
13
+ command :findElement, :post, "session/:session_id/:context/element"
14
+ command :findElements, :post, "session/:session_id/:context/elements"
15
+ command :findChildElement, :post, "session/:session_id/:context/element/:id/element/:using"
16
+ command :findChildElements, :post, "session/:session_id/:context/element/:id/elements/:using"
17
+ command :goForward, :post, "session/:session_id/:context/forward"
18
+ command :get, :post, "session/:session_id/:context/url"
19
+ command :getActiveElement, :post, "session/:session_id/:context/element/active"
20
+ command :getAllCookies, :get, "session/:session_id/:context/cookie"
21
+ # command :getCookie # TODO: getCookie
22
+ command :getCurrentWindowHandle, :get, "session/:session_id/:context/window_handle"
23
+ command :getElementAttribute, :get, "session/:session_id/:context/element/:id/attribute/:name"
24
+ command :getElementLocation, :get, "session/:session_id/:context/element/:id/location"
25
+ command :getElementSize, :get, "session/:session_id/:context/element/:id/size"
26
+ command :getElementText, :get, "session/:session_id/:context/element/:id/text"
27
+ command :getElementValue, :get, "session/:session_id/:context/element/:id/value"
28
+ command :getSpeed, :get, "session/:session_id/:context/speed"
29
+ command :getElementTagName, :get, "session/:session_id/:context/element/:id/name"
30
+ command :getTitle, :get, "session/:session_id/:context/title"
31
+ command :getElementValueOfCssProperty, :get, "session/:session_id/:context/element/:id/css/:property_name"
32
+ command :getVisible, :get, "session/:session_id/:context/visible"
33
+ command :getWindowHandles, :get, "session/:session_id/:context/window_handles"
34
+ command :hoverOverElement, :post, "session/:session_id/:context/element/:id/hover"
35
+ command :isElementDisplayed, :get, "session/:session_id/:context/element/:id/displayed"
36
+ command :isElementEnabled, :get, "session/:session_id/:context/element/:id/enabled"
37
+ command :isElementSelected, :get, "session/:session_id/:context/element/:id/selected"
38
+ command :newSession, :post, "session"
39
+ command :getPageSource, :get, "session/:session_id/:context/source"
40
+ command :quit, :delete, "session/:session_id"
41
+ command :refresh, :post, "session/:session_id/:context/refresh"
42
+ command :screenshot, :get, "session/:session_id/:context/screenshot"
43
+ command :sendKeysToElement, :post, "session/:session_id/:context/element/:id/value"
44
+ command :setElementSelected, :post, "session/:session_id/:context/element/:id/selected"
45
+ command :setSpeed, :post, "session/:session_id/:context/speed"
46
+ command :setVisible, :post, "session/:session_id/:context/visible"
47
+ command :submitElement, :post, "session/:session_id/:context/element/:id/submit"
48
+ command :switchToFrame, :post, "session/:session_id/:context/frame/:id"
49
+ # command :switchToFrameByIndex # TODO: switchToFrameByIndex
50
+ # command :switchToDefaultContent # TODO: switchToDefaultContent
51
+ command :switchToWindow, :post, "session/:session_id/:context/window/:name"
52
+ command :toggleElement, :post, "session/:session_id/:context/element/:id/toggle"
53
+ end
@@ -0,0 +1,71 @@
1
+ require "net/http"
2
+
3
+ module Selenium
4
+ module WebDriver
5
+ module Remote
6
+ class DefaultHttpClient
7
+ CONTENT_TYPE = "application/json"
8
+ DEBUG = $VERBOSE == true
9
+
10
+ class RetryException < StandardError; end
11
+
12
+ def initialize(url)
13
+ @server_url = url
14
+ end
15
+
16
+ def call(verb, url, *args)
17
+ response = nil
18
+ url = @server_url.merge(url) unless url.kind_of?(URI)
19
+ headers = { "Accept" => CONTENT_TYPE }
20
+
21
+ if args.any?
22
+ headers.merge!("Content-Type" => "#{CONTENT_TYPE}; charset=utf-8")
23
+ payload = args.to_json
24
+ puts " >>> #{payload}" if DEBUG
25
+ end
26
+
27
+ begin
28
+ request = Net::HTTP.const_get(verb.to_s.capitalize).new(url.path, headers)
29
+
30
+ # TODO: should be checking against a maximum redirect count
31
+ http.request(request, payload) do |res|
32
+ if res.kind_of? Net::HTTPRedirection
33
+ verb, payload = :get, nil
34
+ url = URI.parse(res["Location"])
35
+ raise RetryException
36
+ else
37
+ response = create_response(res)
38
+ end
39
+ end
40
+
41
+ response
42
+ rescue RetryException
43
+ retry
44
+ end
45
+ end
46
+
47
+ private
48
+
49
+ def http
50
+ # ignoring SSL for now
51
+ @http ||= Net::HTTP.new @server_url.host, @server_url.port
52
+ end
53
+
54
+ def create_response(res)
55
+ puts "<- #{res.body}\n" if DEBUG
56
+ if res.content_type == CONTENT_TYPE
57
+ Response.new do |r|
58
+ r.code = res.code.to_i
59
+ r.payload = JSON.parse(res.body)
60
+ end
61
+ elsif res.code == '204'
62
+ Response.new { |r| r.code = res.code.to_i }
63
+ else
64
+ raise "Unexpected content type: #{res.content_type.inspect} (#{res.code})\n#{res.body}"
65
+ end
66
+ end
67
+
68
+ end # DefaultHttpClient
69
+ end # Remote
70
+ end # WebDriver
71
+ end # Selenium
@@ -0,0 +1,43 @@
1
+ module Selenium
2
+ module WebDriver
3
+ module Remote
4
+ class Response
5
+
6
+ attr_accessor :code
7
+ attr_writer :payload
8
+
9
+ def initialize
10
+ yield self if block_given?
11
+ assert_ok
12
+ end
13
+
14
+ def error
15
+ if payload['error']
16
+ JSON.parse(payload['value'])
17
+ end
18
+ end
19
+
20
+ def [](key)
21
+ payload[key]
22
+ end
23
+
24
+ def payload
25
+ @payload ||= {}
26
+ end
27
+
28
+ private
29
+
30
+ def assert_ok
31
+ if @code.nil? || @code > 400
32
+ if e = error()
33
+ raise Error.for_remote_class(e['class']), e['message']
34
+ else
35
+ raise ServerError, self
36
+ end
37
+ end
38
+ end
39
+
40
+ end # Response
41
+ end # Remote
42
+ end # WebDriver
43
+ end # Selenium
@@ -0,0 +1,32 @@
1
+ module Selenium
2
+ module WebDriver
3
+ module Error
4
+ class ServerError < StandardError
5
+
6
+ def initialize(response)
7
+ return super(response) if response.kind_of?(String)
8
+
9
+ if response.error
10
+ super(response.error["message"])
11
+ else
12
+ super("status code #{response.code}")
13
+ end
14
+ end
15
+
16
+ end
17
+
18
+ REMOTE_EXCEPTIONS = {
19
+ 'org.openqa.selenium.NoSuchElementException' => NoSuchElementError,
20
+ 'org.openqa.selenium.NoSuchFrameException' => NoSuchFrameError,
21
+ 'org.openqa.selenium.NoSuchWindowException' => NoSuchWindowError,
22
+ }
23
+
24
+ class << self
25
+ def for_remote_class(klass)
26
+ REMOTE_EXCEPTIONS[klass] || ServerError
27
+ end
28
+ end
29
+
30
+ end # Error
31
+ end # WebDriver
32
+ end # Selenium
metadata ADDED
@@ -0,0 +1,182 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: selenium-webdriver
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Jari Bakken
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-11-13 00:00:00 +01:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: json_pure
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: ffi
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: "0"
34
+ version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: rspec
37
+ type: :development
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: "0"
44
+ version:
45
+ - !ruby/object:Gem::Dependency
46
+ name: rack
47
+ type: :development
48
+ version_requirement:
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: "0"
54
+ version:
55
+ description: WebDriver is a tool for writing automated tests of websites. It aims to mimic the behaviour of a real user, and as such interacts with the HTML of the application.
56
+ email: jari.bakken@gmail.com
57
+ executables: []
58
+
59
+ extensions: []
60
+
61
+ extra_rdoc_files: []
62
+
63
+ files:
64
+ - common/src/rb/lib/selenium/webdriver/bridge_helper.rb
65
+ - common/src/rb/lib/selenium/webdriver/child_process.rb
66
+ - common/src/rb/lib/selenium/webdriver/core_ext/dir.rb
67
+ - common/src/rb/lib/selenium/webdriver/driver.rb
68
+ - common/src/rb/lib/selenium/webdriver/element.rb
69
+ - common/src/rb/lib/selenium/webdriver/error.rb
70
+ - common/src/rb/lib/selenium/webdriver/find.rb
71
+ - common/src/rb/lib/selenium/webdriver/navigation.rb
72
+ - common/src/rb/lib/selenium/webdriver/options.rb
73
+ - common/src/rb/lib/selenium/webdriver/platform.rb
74
+ - common/src/rb/lib/selenium/webdriver/target_locator.rb
75
+ - common/src/rb/lib/selenium/webdriver.rb
76
+ - common/src/rb/lib/selenium-webdriver.rb
77
+ - common/src/js/abstractcommandprocessor.js
78
+ - common/src/js/asserts.js
79
+ - common/src/js/by.js
80
+ - common/src/js/command.js
81
+ - common/src/js/context.js
82
+ - common/src/js/extension/dommessenger.js
83
+ - common/src/js/extension/README
84
+ - common/src/js/factory.js
85
+ - common/src/js/future.js
86
+ - common/src/js/key.js
87
+ - common/src/js/localcommandprocessor.js
88
+ - common/src/js/logging.js
89
+ - common/src/js/testrunner.js
90
+ - common/src/js/timing.js
91
+ - common/src/js/wait.js
92
+ - common/src/js/webdriver.js
93
+ - common/src/js/webelement.js
94
+ - firefox/src/rb/lib/selenium/webdriver/firefox/binary.rb
95
+ - firefox/src/rb/lib/selenium/webdriver/firefox/bridge.rb
96
+ - firefox/src/rb/lib/selenium/webdriver/firefox/extension_connection.rb
97
+ - firefox/src/rb/lib/selenium/webdriver/firefox/launcher.rb
98
+ - firefox/src/rb/lib/selenium/webdriver/firefox/profile.rb
99
+ - firefox/src/rb/lib/selenium/webdriver/firefox/profiles_ini.rb
100
+ - firefox/src/rb/lib/selenium/webdriver/firefox/util.rb
101
+ - firefox/src/rb/lib/selenium/webdriver/firefox.rb
102
+ - firefox/src/extension/chrome.manifest
103
+ - firefox/src/extension/components/context.js
104
+ - firefox/src/extension/components/driver-component.js
105
+ - firefox/src/extension/components/firefoxDriver.js
106
+ - firefox/src/extension/components/json2.js
107
+ - firefox/src/extension/components/keytest.html
108
+ - firefox/src/extension/components/nsCommandProcessor.js
109
+ - firefox/src/extension/components/screenshooter.js
110
+ - firefox/src/extension/components/socketListener.js
111
+ - firefox/src/extension/components/utils.js
112
+ - firefox/src/extension/components/webdriverserver.js
113
+ - firefox/src/extension/components/webLoadingListener.js
114
+ - firefox/src/extension/components/wrappedElement.js
115
+ - firefox/src/extension/content/fxdriver.xul
116
+ - firefox/src/extension/content/server.js
117
+ - firefox/src/extension/idl/nsICommandProcessor.idl
118
+ - firefox/src/extension/idl/nsIResponseHandler.idl
119
+ - firefox/src/extension/install.rdf
120
+ - firefox/prebuilt/nsICommandProcessor.xpt
121
+ - firefox/prebuilt/nsINativeEvents.xpt
122
+ - firefox/prebuilt/nsIResponseHandler.xpt
123
+ - chrome/src/rb/lib/selenium/webdriver/chrome/bridge.rb
124
+ - chrome/src/rb/lib/selenium/webdriver/chrome/command_executor.rb
125
+ - chrome/src/rb/lib/selenium/webdriver/chrome/launcher.rb
126
+ - chrome/src/rb/lib/selenium/webdriver/chrome.rb
127
+ - chrome/src/extension/background.html
128
+ - chrome/src/extension/background.js
129
+ - chrome/src/extension/content_script.js
130
+ - chrome/src/extension/manifest-nonwin.json
131
+ - chrome/src/extension/manifest-win.json
132
+ - chrome/src/extension/toolstrip.html
133
+ - chrome/src/extension/utils.js
134
+ - chrome/prebuilt/Win32/Release/npchromedriver.dll
135
+ - chrome/prebuilt/x64/Release/npchromedriver.dll
136
+ - jobbie/src/rb/lib/selenium/webdriver/ie/bridge.rb
137
+ - jobbie/src/rb/lib/selenium/webdriver/ie/lib.rb
138
+ - jobbie/src/rb/lib/selenium/webdriver/ie/util.rb
139
+ - jobbie/src/rb/lib/selenium/webdriver/ie.rb
140
+ - jobbie/prebuilt/Win32/Release/InternetExplorerDriver.dll
141
+ - jobbie/prebuilt/x64/Release/InternetExplorerDriver.dll
142
+ - remote/client/src/rb/lib/selenium/webdriver/remote/bridge.rb
143
+ - remote/client/src/rb/lib/selenium/webdriver/remote/capabilities.rb
144
+ - remote/client/src/rb/lib/selenium/webdriver/remote/commands.rb
145
+ - remote/client/src/rb/lib/selenium/webdriver/remote/default_http_client.rb
146
+ - remote/client/src/rb/lib/selenium/webdriver/remote/response.rb
147
+ - remote/client/src/rb/lib/selenium/webdriver/remote/server_error.rb
148
+ - remote/client/src/rb/lib/selenium/webdriver/remote.rb
149
+ has_rdoc: true
150
+ homepage: http://selenium.googlecode.com
151
+ licenses: []
152
+
153
+ post_install_message:
154
+ rdoc_options: []
155
+
156
+ require_paths:
157
+ - common/src/rb/lib
158
+ - firefox/src/rb/lib
159
+ - chrome/src/rb/lib
160
+ - jobbie/src/rb/lib
161
+ - remote/client/src/rb/lib
162
+ required_ruby_version: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: "0"
167
+ version:
168
+ required_rubygems_version: !ruby/object:Gem::Requirement
169
+ requirements:
170
+ - - ">="
171
+ - !ruby/object:Gem::Version
172
+ version: "0"
173
+ version:
174
+ requirements: []
175
+
176
+ rubyforge_project:
177
+ rubygems_version: 1.3.5
178
+ signing_key:
179
+ specification_version: 3
180
+ summary: The next generation developer focused tool for automated testing of webapps
181
+ test_files: []
182
+