watir 1.9.2 → 2.0.0.rc2
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGES +27 -0
- data/VERSION +1 -1
- data/lib/watir/collections.rb +29 -387
- data/lib/watir/container.rb +14 -784
- data/lib/watir/dialogs/javascript.rb +7 -0
- data/lib/watir/element.rb +24 -4
- data/lib/watir/element_collections.rb +35 -57
- data/lib/watir/form.rb +13 -33
- data/lib/watir/frame.rb +14 -27
- data/lib/watir/html_element.rb +11 -3
- data/lib/watir/ie-class.rb +10 -1
- data/lib/watir/image.rb +3 -11
- data/lib/watir/input_elements.rb +11 -11
- data/lib/watir/link.rb +8 -15
- data/lib/watir/locator.rb +98 -73
- data/lib/watir/modal_dialog.rb +7 -1
- data/lib/watir/non_control_elements.rb +5 -89
- data/lib/watir/table.rb +46 -49
- data/unittests/checkbox_test.rb +39 -44
- data/unittests/checkbox_xpath_test.rb +2 -2
- data/unittests/css_test.rb +1 -1
- data/unittests/div_test.rb +43 -43
- data/unittests/div_xpath_test.rb +12 -12
- data/unittests/element_collections_test.rb +85 -0
- data/unittests/element_test.rb +4 -4
- data/unittests/form_test.rb +16 -19
- data/unittests/form_xpath_test.rb +6 -6
- data/unittests/frame_test.rb +114 -120
- data/unittests/html/multiple_specifiers.html +64 -0
- data/unittests/ie_test.rb +5 -5
- data/unittests/images_test.rb +12 -12
- data/unittests/index_specifier_test.rb +32 -0
- data/unittests/js_events_test.rb +3 -3
- data/unittests/links_multi_test.rb +4 -4
- data/unittests/links_test.rb +20 -20
- data/unittests/lists_test.rb +1 -1
- data/unittests/map_test.rb +1 -1
- data/unittests/multiple_specifiers_test.rb +29 -0
- data/unittests/no_wait_test.rb +2 -2
- data/unittests/pagecontainstext_test.rb +2 -2
- data/unittests/parent_child_test.rb +2 -2
- data/unittests/pre_test.rb +5 -5
- data/unittests/radios_test.rb +41 -60
- data/unittests/selectbox_test.rb +15 -15
- data/unittests/speed_settings_test.rb +2 -2
- data/unittests/table_and_tablerow_to_a_test.rb +7 -7
- data/unittests/table_test.rb +81 -94
- data/unittests/textfields_test.rb +26 -27
- data/unittests/windows/attach_to_new_window_test.rb +1 -1
- data/watir-rdoc.rb +1 -1
- data/watir.gemspec +1 -2
- metadata +34 -40
@@ -73,14 +73,14 @@ class TC_Fields < Test::Unit::TestCase
|
|
73
73
|
build_to_s_regex("max length", "20"),
|
74
74
|
build_to_s_regex("read only", "false")
|
75
75
|
]
|
76
|
-
items = browser.text_field(:index,
|
76
|
+
items = browser.text_field(:index, 0).to_s.split(/\n/)
|
77
77
|
expected.each_with_index{|regex, x| assert_match(regex, items[x]) }
|
78
78
|
expected[1] = build_to_s_regex("id", "text2")
|
79
79
|
expected[2] = build_to_s_regex("name", "")
|
80
80
|
expected[3] = build_to_s_regex("value", "goodbye all")
|
81
81
|
expected[6] = build_to_s_regex("max length", "2147483647")
|
82
82
|
|
83
|
-
items = browser.text_field(:index,
|
83
|
+
items = browser.text_field(:index, 1).to_s.split(/\n/)
|
84
84
|
expected.each_with_index{|regex, x| assert_match(regex, items[x]) }
|
85
85
|
assert_raises(UnknownObjectException) { browser.text_field(:index, 999).to_s }
|
86
86
|
end
|
@@ -119,19 +119,19 @@ class TC_Fields < Test::Unit::TestCase
|
|
119
119
|
assert_raises(UnknownObjectException) { browser.text_field(:index, 199).disabled }
|
120
120
|
assert_raises(UnknownObjectException) { browser.text_field(:index, 199).type }
|
121
121
|
|
122
|
-
assert_equal("Hello World" , browser.text_field(:index,
|
123
|
-
assert_equal("text" , browser.text_field(:index,
|
124
|
-
assert_equal("text1" , browser.text_field(:index,
|
125
|
-
assert_equal("" , browser.text_field(:index,
|
126
|
-
assert_equal(false , browser.text_field(:index,
|
122
|
+
assert_equal("Hello World" , browser.text_field(:index, 0).value)
|
123
|
+
assert_equal("text" , browser.text_field(:index, 0).type)
|
124
|
+
assert_equal("text1" , browser.text_field(:index, 0).name)
|
125
|
+
assert_equal("" , browser.text_field(:index, 0).id)
|
126
|
+
assert_equal(false , browser.text_field(:index, 0).disabled)
|
127
127
|
|
128
|
-
assert_equal("" , browser.text_field(:index,
|
129
|
-
assert_equal("text2" , browser.text_field(:index,
|
128
|
+
assert_equal("" , browser.text_field(:index, 1).name)
|
129
|
+
assert_equal("text2" , browser.text_field(:index, 1).id)
|
130
130
|
|
131
|
-
assert(browser.text_field(:index,
|
131
|
+
assert(browser.text_field(:index, 3).disabled)
|
132
132
|
|
133
133
|
assert_equal("This used to test :afterText", browser.text_field(:name, "aftertest").title)
|
134
|
-
assert_equal("", browser.text_field(:index,
|
134
|
+
assert_equal("", browser.text_field(:index, 0).title)
|
135
135
|
# adding for issue: http://jira.openqa.org/browse/WTR-89
|
136
136
|
assert_equal("RegEx test", browser.text_field(:name, /REgEx/i).value)
|
137
137
|
end
|
@@ -139,19 +139,18 @@ class TC_Fields < Test::Unit::TestCase
|
|
139
139
|
def test_text_field_iterators
|
140
140
|
assert_equal(14, browser.text_fields.length)
|
141
141
|
|
142
|
-
|
143
|
-
assert_equal("
|
144
|
-
assert_equal("
|
145
|
-
assert_equal("password", browser.text_fields[browser.text_fields.length].type)
|
142
|
+
assert_equal("Hello World", browser.text_fields[0].value)
|
143
|
+
assert_equal("text1", browser.text_fields[0].name)
|
144
|
+
assert_equal("password", browser.text_fields[browser.text_fields.length - 1].type)
|
146
145
|
|
147
|
-
index =
|
146
|
+
index = 0
|
148
147
|
browser.text_fields.each do |t|
|
149
148
|
assert_equal(browser.text_field(:index, index).value, t.value)
|
150
149
|
assert_equal(browser.text_field(:index, index).id, t.id)
|
151
150
|
assert_equal(browser.text_field(:index, index).name, t.name)
|
152
151
|
index += 1
|
153
152
|
end
|
154
|
-
assert_equal(index
|
153
|
+
assert_equal(index, browser.text_fields.length)
|
155
154
|
end
|
156
155
|
|
157
156
|
tag_method :test_JS_Events, :fails_on_firefox
|
@@ -177,8 +176,8 @@ class TC_Fields < Test::Unit::TestCase
|
|
177
176
|
|
178
177
|
def test_labels_iterator
|
179
178
|
assert_equal(3, browser.labels.length)
|
180
|
-
assert_equal('Label For this Field' , browser.labels[
|
181
|
-
assert_equal('Password With ID ( the text here is a label for it )' , browser.labels[
|
179
|
+
assert_equal('Label For this Field' , browser.labels[0].innerText.strip )
|
180
|
+
assert_equal('Password With ID ( the text here is a label for it )' , browser.labels[2].innerText )
|
182
181
|
|
183
182
|
count=0
|
184
183
|
browser.labels.each do |l|
|
@@ -196,16 +195,16 @@ class TC_Fields < Test::Unit::TestCase
|
|
196
195
|
|
197
196
|
assert_false(browser.label(:index,10).exists?)
|
198
197
|
assert_false(browser.label(:id,'missing').exists?)
|
199
|
-
assert(browser.label(:index,
|
198
|
+
assert(browser.label(:index,0).exists?)
|
200
199
|
|
201
|
-
assert_equal("", browser.label(:index,
|
202
|
-
assert_false(browser.label(:index,
|
203
|
-
assert(browser.label(:index,
|
200
|
+
assert_equal("", browser.label(:index,0).id)
|
201
|
+
assert_false(browser.label(:index,0).disabled?)
|
202
|
+
assert(browser.label(:index,0).enabled?)
|
204
203
|
|
205
|
-
assert_equal("label2", browser.label(:index,
|
204
|
+
assert_equal("label2", browser.label(:index,1).id )
|
206
205
|
|
207
|
-
assert_equal("Password With ID ( the text here is a label for it )" , browser.label(:index,
|
208
|
-
assert_equal("password1", browser.label(:index,
|
206
|
+
assert_equal("Password With ID ( the text here is a label for it )" , browser.label(:index,2).innerText)
|
207
|
+
assert_equal("password1", browser.label(:index,2).for)
|
209
208
|
end
|
210
209
|
|
211
210
|
def test_max_length_is_not_exceeded
|
@@ -221,4 +220,4 @@ class TC_Fields < Test::Unit::TestCase
|
|
221
220
|
browser.text_field(:value, 'foo').set 'bar'
|
222
221
|
assert(browser.text_field(:value, 'bar').exists?)
|
223
222
|
end
|
224
|
-
end
|
223
|
+
end
|
@@ -43,7 +43,7 @@ class TC_NewWindow< Watir::TestCase
|
|
43
43
|
end
|
44
44
|
|
45
45
|
def test_click_no_wait_works_in_a_container
|
46
|
-
browser.p(:index,
|
46
|
+
browser.p(:index, 0).link(:text, 'New Window').click_no_wait
|
47
47
|
IE.attach_timeout = 6.0
|
48
48
|
ie_new = IE.attach(:title, 'Pass Page')
|
49
49
|
assert(ie_new.text.include?('PASS'))
|
data/watir-rdoc.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
$WATIR_RDOC_OPTIONS = [] <<
|
2
2
|
'--title' << 'Watir API Reference' <<
|
3
|
-
'--accessor' << 'def_wrap=R,def_wrap_guard=R
|
3
|
+
'--accessor' << 'def_wrap=R,def_wrap_guard=R' <<
|
4
4
|
'--main' << 'README.rdoc' <<
|
5
5
|
'--exclude' << 'unittests|camel_case.rb'
|
6
6
|
$WATIR_EXTRA_RDOC_FILES = ['README.rdoc']
|
data/watir.gemspec
CHANGED
@@ -37,10 +37,9 @@ spec = Gem::Specification.new do |s|
|
|
37
37
|
s.add_dependency 'win32-process', '>= 0.5.5'
|
38
38
|
s.add_dependency 'windows-pr', '>= 0.6.6'
|
39
39
|
s.add_dependency 'commonwatir', '= ' + version
|
40
|
-
s.add_dependency 'firewatir', '= ' + version
|
41
40
|
s.add_dependency 'nokogiri'
|
42
41
|
s.add_dependency 'ffi', '~>1.0'
|
43
|
-
s.add_dependency 'rautomation', '~>0.6.
|
42
|
+
s.add_dependency 'rautomation', '~>0.6.3'
|
44
43
|
|
45
44
|
s.has_rdoc = true
|
46
45
|
s.rdoc_options += $WATIR_RDOC_OPTIONS
|
metadata
CHANGED
@@ -1,13 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: watir
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 15424081
|
5
|
+
prerelease: 6
|
6
6
|
segments:
|
7
|
-
- 1
|
8
|
-
- 9
|
9
7
|
- 2
|
10
|
-
|
8
|
+
- 0
|
9
|
+
- 0
|
10
|
+
- rc
|
11
|
+
- 2
|
12
|
+
version: 2.0.0.rc2
|
11
13
|
platform: ruby
|
12
14
|
authors:
|
13
15
|
- Bret Pettichord
|
@@ -15,7 +17,7 @@ autorequire:
|
|
15
17
|
bindir: bin
|
16
18
|
cert_chain: []
|
17
19
|
|
18
|
-
date: 2011-07-
|
20
|
+
date: 2011-07-24 00:00:00 Z
|
19
21
|
dependencies:
|
20
22
|
- !ruby/object:Gem::Dependency
|
21
23
|
name: win32-process
|
@@ -57,34 +59,20 @@ dependencies:
|
|
57
59
|
requirements:
|
58
60
|
- - "="
|
59
61
|
- !ruby/object:Gem::Version
|
60
|
-
hash:
|
62
|
+
hash: 15424081
|
61
63
|
segments:
|
62
|
-
- 1
|
63
|
-
- 9
|
64
64
|
- 2
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
- !ruby/object:Gem::Dependency
|
69
|
-
name: firewatir
|
70
|
-
prerelease: false
|
71
|
-
requirement: &id004 !ruby/object:Gem::Requirement
|
72
|
-
none: false
|
73
|
-
requirements:
|
74
|
-
- - "="
|
75
|
-
- !ruby/object:Gem::Version
|
76
|
-
hash: 55
|
77
|
-
segments:
|
78
|
-
- 1
|
79
|
-
- 9
|
65
|
+
- 0
|
66
|
+
- 0
|
67
|
+
- rc
|
80
68
|
- 2
|
81
|
-
version:
|
69
|
+
version: 2.0.0.rc2
|
82
70
|
type: :runtime
|
83
|
-
version_requirements: *
|
71
|
+
version_requirements: *id003
|
84
72
|
- !ruby/object:Gem::Dependency
|
85
73
|
name: nokogiri
|
86
74
|
prerelease: false
|
87
|
-
requirement: &
|
75
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
88
76
|
none: false
|
89
77
|
requirements:
|
90
78
|
- - ">="
|
@@ -94,11 +82,11 @@ dependencies:
|
|
94
82
|
- 0
|
95
83
|
version: "0"
|
96
84
|
type: :runtime
|
97
|
-
version_requirements: *
|
85
|
+
version_requirements: *id004
|
98
86
|
- !ruby/object:Gem::Dependency
|
99
87
|
name: ffi
|
100
88
|
prerelease: false
|
101
|
-
requirement: &
|
89
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
102
90
|
none: false
|
103
91
|
requirements:
|
104
92
|
- - ~>
|
@@ -109,23 +97,23 @@ dependencies:
|
|
109
97
|
- 0
|
110
98
|
version: "1.0"
|
111
99
|
type: :runtime
|
112
|
-
version_requirements: *
|
100
|
+
version_requirements: *id005
|
113
101
|
- !ruby/object:Gem::Dependency
|
114
102
|
name: rautomation
|
115
103
|
prerelease: false
|
116
|
-
requirement: &
|
104
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
117
105
|
none: false
|
118
106
|
requirements:
|
119
107
|
- - ~>
|
120
108
|
- !ruby/object:Gem::Version
|
121
|
-
hash:
|
109
|
+
hash: 1
|
122
110
|
segments:
|
123
111
|
- 0
|
124
112
|
- 6
|
125
|
-
-
|
126
|
-
version: 0.6.
|
113
|
+
- 3
|
114
|
+
version: 0.6.3
|
127
115
|
type: :runtime
|
128
|
-
version_requirements: *
|
116
|
+
version_requirements: *id006
|
129
117
|
description: " WATIR is \"Web Application Testing in Ruby\". Watir (pronounced water) is a free,\n open-source functional testing tool for automating browser-based tests of web applications.\n It works with applications written in any language.\n Watir drives the Internet Explorer browser the same way an end user would.\n It clicks links, fills in forms, presses buttons.\n Watir also checks results, such as whether expected text appears on the\n page, or whether a control is enabled.\n Watir can test web applications written in any language.\n Watir is a Ruby library that works with Internet Explorer on Windows.\n"
|
130
118
|
email: watir-general@groups.google.com
|
131
119
|
executables:
|
@@ -187,6 +175,7 @@ files:
|
|
187
175
|
- unittests/div2_xpath_test.rb
|
188
176
|
- unittests/div_test.rb
|
189
177
|
- unittests/div_xpath_test.rb
|
178
|
+
- unittests/element_collections_test.rb
|
190
179
|
- unittests/element_test.rb
|
191
180
|
- unittests/errorchecker_test.rb
|
192
181
|
- unittests/filefield_test.rb
|
@@ -200,6 +189,7 @@ files:
|
|
200
189
|
- unittests/ie_test.rb
|
201
190
|
- unittests/images_test.rb
|
202
191
|
- unittests/images_xpath_test.rb
|
192
|
+
- unittests/index_specifier_test.rb
|
203
193
|
- unittests/js_events_test.rb
|
204
194
|
- unittests/links_multi_test.rb
|
205
195
|
- unittests/links_test.rb
|
@@ -207,6 +197,7 @@ files:
|
|
207
197
|
- unittests/lists_test.rb
|
208
198
|
- unittests/map_test.rb
|
209
199
|
- unittests/minmax_test.rb
|
200
|
+
- unittests/multiple_specifiers_test.rb
|
210
201
|
- unittests/navigate_test.rb
|
211
202
|
- unittests/nbsp_xpath_test.rb
|
212
203
|
- unittests/non_core_tests.rb
|
@@ -270,6 +261,7 @@ files:
|
|
270
261
|
- unittests/html/map_test.html
|
271
262
|
- unittests/html/modal_dialog.html
|
272
263
|
- unittests/html/modal_dialog_launcher.html
|
264
|
+
- unittests/html/multiple_specifiers.html
|
273
265
|
- unittests/html/nestedFrames.html
|
274
266
|
- unittests/html/new_browser.html
|
275
267
|
- unittests/html/pass.html
|
@@ -332,7 +324,7 @@ rdoc_options:
|
|
332
324
|
- --title
|
333
325
|
- Watir API Reference
|
334
326
|
- --accessor
|
335
|
-
- def_wrap=R,def_wrap_guard=R
|
327
|
+
- def_wrap=R,def_wrap_guard=R
|
336
328
|
- --main
|
337
329
|
- README.rdoc
|
338
330
|
- --exclude
|
@@ -353,12 +345,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
353
345
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
354
346
|
none: false
|
355
347
|
requirements:
|
356
|
-
- - "
|
348
|
+
- - ">"
|
357
349
|
- !ruby/object:Gem::Version
|
358
|
-
hash:
|
350
|
+
hash: 25
|
359
351
|
segments:
|
360
|
-
-
|
361
|
-
|
352
|
+
- 1
|
353
|
+
- 3
|
354
|
+
- 1
|
355
|
+
version: 1.3.1
|
362
356
|
requirements:
|
363
357
|
- Microsoft Windows running Internet Explorer 5.5 or later.
|
364
358
|
rubyforge_project: Watir
|