operawatir 0.7.pre1-jruby → 0.7.pre2-jruby

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.7.pre1
1
+ 0.7.pre2
@@ -5,8 +5,8 @@ require 'java'
5
5
  include Java
6
6
 
7
7
  %w(commons-jxpath-1.3.jar commons-exec-1.1.jar protobuf-java-2.4.1.jar
8
- selenium-java-2.17.jar operalaunchers-0.6.jar operadriver-v0.11.jar
9
- guava-11.0.1.jar ini4j-0.5.2.jar json-20080701.jar).each { |jar| require "operadriver/#{jar}" }
8
+ selenium-java-2.21.0.jar operalaunchers-0.7.jar operadriver-v0.12.jar
9
+ guava-12.0.jar ini4j-0.5.2.jar json-20080701.jar).each { |jar| require "operadriver/#{jar}" }
10
10
 
11
11
  include_class org.openqa.selenium.WebDriver
12
12
  include_class org.openqa.selenium.remote.RemoteWebElement
@@ -88,7 +88,7 @@ class OperaWatir::Actions
88
88
  end
89
89
 
90
90
  def drag_and_drop_by(source, x_offset, y_offset)
91
- @actions.dragAndDrop(source, x_offset, y_offset)
91
+ @actions.dragAndDrop(source.node, x_offset.to_i, y_offset.to_i)
92
92
  self
93
93
  end
94
94
 
@@ -102,7 +102,7 @@ class OperaWatir::Collection
102
102
  =end
103
103
 
104
104
  def select(option_text)
105
- option(:text => option_text).node.setSelected
105
+ option(:text => option_text).node.click
106
106
  end
107
107
 
108
108
  def selected?(option_text)
@@ -66,21 +66,21 @@ class OperaWatir::Element
66
66
  alias_method :caption, :text
67
67
 
68
68
  #
69
- # Clicks on the top left of the element, or the given x, y offset.
70
- # Asserts whether element is enabled first.
69
+ # Clicks the element with an offset of x, y.
71
70
  #
72
- # @param [optional, Fixnum] x The offset from the left of the
71
+ # @param [Optional, Fixnum] x The offset from the left of the
73
72
  # element
74
- # @param [optional, Fixnum] y The offset from the top of the element
73
+ # @param [Optional, Fixnum] y The offset from the top of the element
75
74
  #
76
75
 
77
- def click(x=1, y=1)
78
- assert_enabled!
79
- node.click(x.to_i, y.to_i)
76
+ def click(x=nil, y=nil)
77
+ if x and i
78
+ @browser.actions.move_to_element(self, x.to_i, y.to_i).click.perform
79
+ else
80
+ node.click
81
+ end
80
82
  end
81
83
 
82
- alias_method :click_no_wait, :click_async
83
-
84
84
  #
85
85
  # Focuses the element
86
86
  #
@@ -3,8 +3,8 @@ class OperaWatir::Element
3
3
 
4
4
  attr_reader :node
5
5
 
6
- def initialize(node)
7
- @node = node
6
+ def initialize(node, browser)
7
+ @node, @browser = node, browser
8
8
  end
9
9
 
10
10
  # TODO Need support for this in Webdriver
@@ -61,7 +61,7 @@ class OperaWatir::Element
61
61
  def_delegator :node, :isEnabled, :enabled?
62
62
  def_delegator :node, :isSelected, :checked?
63
63
 
64
- def_delegator :node, :setSelected, :select
64
+ def_delegator :node, :click, :select
65
65
 
66
66
  def_delegator :node, :isSelected, :selected?
67
67
 
@@ -123,48 +123,34 @@ class OperaWatir::Element
123
123
 
124
124
  # Events
125
125
 
126
- #
127
- # Clicks on the top left of the element, or the given x,y offset
128
- # relative to the element.
129
- #
130
- # @param [Integer] x The offset from the top left of the element.
131
- # @param [Integer] y The offset from the top of the element.
132
- #
126
+ def_delegator :node, :click, :click
133
127
 
134
- def click(x=1, y=1)
135
- node.click(x.to_i, y.to_i)
136
- end
137
-
138
- def click_async
139
- node.click 1
128
+ def click_no_wait
129
+ click
140
130
  end
141
131
 
142
132
  def double_click
143
- node.click 2
133
+ @browser.actions.move_to_element(self).double_click.perform
144
134
  end
145
135
 
146
136
  def triple_click
147
- node.click 3
137
+ 3.times { click }
148
138
  end
149
139
 
150
140
  def quadruple_click
151
- node.click 4
141
+ 4.times { click }
152
142
  end
153
143
 
154
144
  def right_click
155
- node.rightClick
156
- end
157
-
158
- def middle_click
159
- node.middleClick
145
+ @browser.actions.move_to_element(self).context_click.perform
160
146
  end
161
147
 
162
148
  def drag_and_drop_on(other)
163
- node.dragAndDropOn other.node
149
+ @browser.actions.drag_and_drop(self, other)
164
150
  end
165
151
 
166
152
  def drag_and_drop_by(x, y)
167
- node.dragAndDropBy(x.to_i, y.to_i)
153
+ @browser.actions.drag_and_drop_by(self, x, y)
168
154
  end
169
155
 
170
156
  def_delegator :node, :submit, :submit!
@@ -242,37 +228,37 @@ private
242
228
 
243
229
  def find_elements_by_id(value)
244
230
  node.findElementsById(value).to_a.map do |n|
245
- OperaWatir::Element.new(n)
231
+ OperaWatir::Element.new(n, @browser)
246
232
  end
247
233
  end
248
234
 
249
235
  def find_elements_by_class_name(value)
250
236
  node.findElementsByClassName(value).to_a.map do |n|
251
- OperaWatir::Element.new(n)
237
+ OperaWatir::Element.new(n, @browser)
252
238
  end
253
239
  end
254
240
 
255
241
  def find_elements_by_tag_name(value)
256
242
  node.findElementsByTagName(value).to_a.map do |n|
257
- OperaWatir::Element.new(n)
243
+ OperaWatir::Element.new(n, @browser)
258
244
  end
259
245
  end
260
246
 
261
247
  def find_elements_by_css(value)
262
248
  node.findElementsByCssSelector(value).to_a.map do |n|
263
- OperaWatir::Element.new(n)
249
+ OperaWatir::Element.new(n, @browser)
264
250
  end
265
251
  end
266
252
 
267
253
  def find_elements_by_xpath(value)
268
254
  node.findElementsByXPath(value).to_a.map do |n|
269
- OperaWatir::Element.new(n)
255
+ OperaWatir::Element.new(n, @browser)
270
256
  end
271
257
  end
272
258
 
273
259
  def find_elements_by_name(value)
274
260
  node.findElementsByName(value).to_a.map do |n|
275
- OperaWatir::Element.new(n)
261
+ OperaWatir::Element.new(n, @browser)
276
262
  end
277
263
  end
278
264
 
@@ -192,37 +192,37 @@ private
192
192
 
193
193
  def find_elements_by_id(value)
194
194
  driver.findElementsById(value).to_a.map do |node|
195
- OperaWatir::Element.new(node)
195
+ OperaWatir::Element.new(node, @browser)
196
196
  end
197
197
  end
198
198
 
199
199
  def find_elements_by_class_name(value)
200
200
  driver.findElementsByClassName(value).to_a.map do |node|
201
- OperaWatir::Element.new(node)
201
+ OperaWatir::Element.new(node, @browser)
202
202
  end
203
203
  end
204
204
 
205
205
  def find_elements_by_tag_name(value)
206
206
  driver.findElementsByTagName(value).to_a.map do |node|
207
- OperaWatir::Element.new(node)
207
+ OperaWatir::Element.new(node, @browser)
208
208
  end
209
209
  end
210
210
 
211
211
  def find_elements_by_css(value)
212
212
  driver.findElementsByCssSelector(value).to_a.map do |node|
213
- OperaWatir::Element.new(node)
213
+ OperaWatir::Element.new(node, @browser)
214
214
  end
215
215
  end
216
216
 
217
217
  def find_elements_by_xpath(value)
218
218
  driver.findElementsByXPath(value).to_a.map do |node|
219
- OperaWatir::Element.new(node)
219
+ OperaWatir::Element.new(node, @browser)
220
220
  end
221
221
  end
222
222
 
223
223
  def find_elements_by_name(value)
224
224
  driver.findElementsByName(value).to_a.map do |node|
225
- OperaWatir::Element.new(node)
225
+ OperaWatir::Element.new(node, @browser)
226
226
  end
227
227
  end
228
228
 
@@ -147,10 +147,11 @@ describe OperaWatir::Actions do
147
147
  window.text.should include 'click 0'
148
148
  end
149
149
 
150
- it 'cannot move to a nil element' do
150
+ # last known mouse position
151
+ it 'can move to a nil element' do
151
152
  browser.url = fixture('mouse.html')
152
153
 
153
- lambda { @actions.click().perform() }.should raise_error
154
+ lambda { @actions.click().perform() }.should_not raise_error
154
155
  end
155
156
 
156
157
  it 'moves by an offset' do
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: operawatir
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease: 4
5
- version: 0.7.pre1
5
+ version: 0.7.pre2
6
6
  platform: jruby
7
7
  authors:
8
8
  - Andreas Tolf Tolfsen
@@ -13,7 +13,7 @@ autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
15
 
16
- date: 2012-03-12 00:00:00 Z
16
+ date: 2012-05-07 00:00:00 Z
17
17
  dependencies:
18
18
  - !ruby/object:Gem::Dependency
19
19
  name: bundler
@@ -287,14 +287,14 @@ files:
287
287
  - lib/operadriver/NEW_BSD_LICENSE.txt
288
288
  - lib/operadriver/commons-exec-1.1.jar
289
289
  - lib/operadriver/commons-jxpath-1.3.jar
290
- - lib/operadriver/guava-11.0.1.jar
290
+ - lib/operadriver/guava-12.0.jar
291
291
  - lib/operadriver/ini4j-0.5.2.jar
292
292
  - lib/operadriver/json-20080701.jar
293
- - lib/operadriver/operadriver-v0.11.jar
293
+ - lib/operadriver/operadriver-v0.12.jar
294
294
  - lib/operadriver/operadriver-v0.8.1.jar
295
- - lib/operadriver/operalaunchers-0.6.jar
295
+ - lib/operadriver/operalaunchers-0.7.jar
296
296
  - lib/operadriver/protobuf-java-2.4.1.jar
297
- - lib/operadriver/selenium-java-2.17.jar
297
+ - lib/operadriver/selenium-java-2.21.0.jar
298
298
  - lib/operawatir.rb
299
299
  - lib/operawatir/actions.rb
300
300
  - lib/operawatir/browser.rb