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

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/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