safariwatir 0.2.2 → 0.2.3
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/safariwatir.rb +13 -3
- data/safariwatir/scripter.rb +5 -5
- data/safariwatir_script.rb +11 -4
- metadata +4 -3
data/safariwatir.rb
CHANGED
@@ -133,9 +133,19 @@ module Watir
|
|
133
133
|
end
|
134
134
|
end
|
135
135
|
|
136
|
-
class
|
136
|
+
class Image < HtmlElement
|
137
|
+
def tag; "IMG"; end
|
138
|
+
|
139
|
+
protected
|
140
|
+
|
141
|
+
def operate_by_src(&block)
|
142
|
+
@scripter.operate_by(self, 'src', &block)
|
143
|
+
end
|
137
144
|
end
|
138
145
|
|
146
|
+
class Button < InputElement
|
147
|
+
end
|
148
|
+
|
139
149
|
class Checkbox < InputElement
|
140
150
|
def_init :scripter, :how, :what, :value
|
141
151
|
def by_value
|
@@ -154,7 +164,7 @@ module Watir
|
|
154
164
|
protected
|
155
165
|
|
156
166
|
def operate_by_text(&block)
|
157
|
-
@scripter.
|
167
|
+
@scripter.operate_by(self, 'innerText', &block)
|
158
168
|
end
|
159
169
|
end
|
160
170
|
|
@@ -339,7 +349,7 @@ module Watir
|
|
339
349
|
end
|
340
350
|
|
341
351
|
def image(how, what)
|
342
|
-
|
352
|
+
Image.new(scripter, how, what)
|
343
353
|
end
|
344
354
|
|
345
355
|
def label(how, what)
|
data/safariwatir/scripter.rb
CHANGED
@@ -301,8 +301,8 @@ for (var i = 0; i < document.links.length; i++) {
|
|
301
301
|
end
|
302
302
|
private :find_link
|
303
303
|
|
304
|
-
def handle_match(element)
|
305
|
-
how = {:text => "text", :url => "href"}[element.how]
|
304
|
+
def handle_match(element, how = nil)
|
305
|
+
how = {:text => "text", :url => "href"}[element.how] unless how
|
306
306
|
case element.what
|
307
307
|
when Regexp:
|
308
308
|
%|#{how}.match(/#{element.what.source}/#{element.what.casefold? ? "i":nil})|
|
@@ -357,11 +357,11 @@ for (var i = 0; i < elements.length; i++) {
|
|
357
357
|
js.operate(%|var element = document.getElementsByTagName('#{element.tag}')[#{element.what-1}];|, yield)
|
358
358
|
end
|
359
359
|
|
360
|
-
def
|
361
|
-
js.operate(%|var elements = document.getElementsByTagName('
|
360
|
+
def operate_by(element, attribute)
|
361
|
+
js.operate(%|var elements = document.getElementsByTagName('#{element.tag}');
|
362
362
|
var element = undefined;
|
363
363
|
for (var i = 0; i < elements.length; i++) {
|
364
|
-
if (elements[i]
|
364
|
+
if (elements[i].#{handle_match(element, attribute)}) {
|
365
365
|
element = elements[i];
|
366
366
|
break;
|
367
367
|
}
|
data/safariwatir_script.rb
CHANGED
@@ -42,10 +42,10 @@ end
|
|
42
42
|
def safari.amazon
|
43
43
|
goto("http://amazon.com")
|
44
44
|
select_list(:name, "url").select("VHS")
|
45
|
-
select_list(:name, "url").select_value("search-alias=
|
46
|
-
text_field(:name, "field-keywords").set("
|
47
|
-
|
48
|
-
puts "FAILURE amazon" unless contains_text("
|
45
|
+
select_list(:name, "url").select_value("search-alias=stripbooks")
|
46
|
+
text_field(:name, "field-keywords").set("potter")
|
47
|
+
button(:name, "Go").click
|
48
|
+
puts "FAILURE amazon" unless contains_text("Deathly Hallows")
|
49
49
|
end
|
50
50
|
|
51
51
|
def safari.google_advanced
|
@@ -127,6 +127,12 @@ def safari.onchange
|
|
127
127
|
select_list(:name, "model").select_value("Z4 ROADSTER")
|
128
128
|
end
|
129
129
|
|
130
|
+
def safari.ruby_sponsor_images
|
131
|
+
goto("http://mtnwestruby.org/")
|
132
|
+
puts "FAILURE image obtiva" unless image(:src, "http://mtnwestruby.org/images/sponsors/obtiva_logo.png").exists?
|
133
|
+
puts "FAILURE image thoughtworks" unless image(:src, /thoughtworks/).exists?
|
134
|
+
end
|
135
|
+
|
130
136
|
begin
|
131
137
|
safari.google_to_prag
|
132
138
|
safari.ala
|
@@ -138,6 +144,7 @@ begin
|
|
138
144
|
safari.weinberg
|
139
145
|
safari.tables
|
140
146
|
safari.onchange
|
147
|
+
safari.ruby_sponsor_images
|
141
148
|
ensure
|
142
149
|
safari.close
|
143
150
|
end
|
metadata
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
|
-
rubygems_version: 0.
|
2
|
+
rubygems_version: 0.9.2
|
3
3
|
specification_version: 1
|
4
4
|
name: safariwatir
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.2.
|
7
|
-
date: 2007-
|
6
|
+
version: 0.2.3
|
7
|
+
date: 2007-03-26 00:00:00 -05:00
|
8
8
|
summary: Automated testing tool for web applications.
|
9
9
|
require_paths:
|
10
10
|
- .
|
@@ -25,6 +25,7 @@ required_ruby_version: !ruby/object:Gem::Version::Requirement
|
|
25
25
|
platform: ruby
|
26
26
|
signing_key:
|
27
27
|
cert_chain:
|
28
|
+
post_install_message:
|
28
29
|
authors:
|
29
30
|
- Dave Hoover
|
30
31
|
files:
|