watir 1.4.1 → 1.5.2
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/bin/watir-console +1 -0
- data/changes.rb +119 -0
- data/license.rb +37 -0
- data/readme.rb +55 -120
- data/unittests/buttons_test.rb +107 -104
- data/unittests/buttons_xpath_test.rb +69 -0
- data/unittests/checkbox_test.rb +154 -141
- data/unittests/checkbox_xpath_test.rb +107 -0
- data/unittests/core_tests.rb +6 -2
- data/unittests/css_test.rb +50 -50
- data/unittests/defer_test.rb +47 -0
- data/unittests/dialog_test.rb +78 -0
- data/unittests/div2_xpath_test.rb +22 -0
- data/unittests/div_test.rb +159 -159
- data/unittests/div_xpath_test.rb +96 -0
- data/unittests/errorchecker_test.rb +22 -22
- data/unittests/filefield_test.rb +30 -23
- data/unittests/filefield_xpath_test.rb +35 -0
- data/unittests/form_test.rb +250 -229
- data/unittests/form_xpath_test.rb +253 -0
- data/unittests/frame_test.rb +123 -108
- data/unittests/google_form_test.rb +17 -0
- data/unittests/html/JavascriptClick.html +39 -0
- data/unittests/html/buttons1.html +3 -2
- data/unittests/html/checkboxes1.html +32 -14
- data/unittests/html/complex_table.html +1 -1
- data/unittests/html/depot_store.html +59 -0
- data/unittests/html/div.html +3 -21
- data/unittests/html/div_xml.html +21 -0
- data/unittests/html/fileupload.html +2 -2
- data/unittests/html/forms2.html +3 -3
- data/unittests/html/forms3.html +2 -2
- data/unittests/html/frame_links.html +2 -2
- data/unittests/html/google_india.html +119 -0
- data/unittests/html/iframeTest.html +2 -2
- data/unittests/html/images/map.GIF +0 -0
- data/unittests/html/images/map2.gif +0 -0
- data/unittests/html/images1.html +17 -2
- data/unittests/html/javascriptevents.html +3 -7
- data/unittests/html/links1.html +9 -8
- data/unittests/html/links_multi.html +14 -0
- data/unittests/html/list_matters.html +720 -0
- data/unittests/html/lists.html +18 -0
- data/unittests/html/map_test.html +31 -0
- data/unittests/html/modal_dialog.html +10 -0
- data/unittests/html/modal_dialog_launcher.html +12 -0
- data/unittests/html/new_browser.html +17 -0
- data/unittests/html/pass.html +3 -0
- data/unittests/html/popups1.html +1 -1
- data/unittests/html/pre.html +28 -0
- data/unittests/html/radioButtons1.html +6 -5
- data/unittests/html/selectboxes1.html +12 -11
- data/unittests/html/simple_table.html +1 -1
- data/unittests/html/simple_table_columns.html +1 -1
- data/unittests/html/table1.html +1 -1
- data/unittests/html/tableCell_using_xpath.html +19 -0
- data/unittests/html/textfields1.html +6 -4
- data/unittests/html/xpath_nbsp.html +12 -0
- data/unittests/ie_exists_test.rb +32 -0
- data/unittests/ie_mock.rb +78 -79
- data/unittests/ie_test.rb +39 -39
- data/unittests/images_test.rb +132 -155
- data/unittests/images_xpath_test.rb +91 -0
- data/unittests/links_multi_test.rb +36 -0
- data/unittests/links_test.rb +158 -152
- data/unittests/links_xpath_test.rb +40 -0
- data/unittests/lists_test.rb +29 -0
- data/unittests/map_test.rb +99 -0
- data/unittests/minmax_test.rb +23 -23
- data/unittests/navigate_test.rb +43 -51
- data/unittests/nbsp_xpath_test.rb +18 -0
- data/unittests/other/WindowLogonExample.rb +28 -0
- data/unittests/{WindowLogonExtra.rb → other/WindowLogonExtra.rb} +0 -0
- data/unittests/{all_tests_concurrent.rb → other/all_tests_concurrent.rb} +23 -23
- data/unittests/other/navigate_exception_test.rb +14 -0
- data/unittests/other/rexml_unit_test.rb +24 -0
- data/unittests/other/testcase_method_order_test.rb +36 -0
- data/unittests/other/testcase_verify_test.rb +25 -0
- data/unittests/other/wait_until_test.rb +99 -0
- data/unittests/pagecontainstext_test.rb +56 -37
- data/unittests/parent_child_test.rb +55 -0
- data/unittests/popups_test.rb +37 -37
- data/unittests/pre_test.rb +52 -0
- data/unittests/radios_test.rb +186 -155
- data/unittests/radios_xpath_test.rb +101 -0
- data/unittests/screen_capture_test.rb +41 -41
- data/unittests/selectbox_test.rb +223 -181
- data/unittests/selectbox_xpath_test.rb +113 -0
- data/unittests/setup.rb +29 -25
- data/unittests/speed_settings_test.rb +22 -0
- data/unittests/table_cell_using_xpath_test.rb +40 -0
- data/unittests/table_test.rb +315 -284
- data/unittests/table_xpath_test.rb +114 -0
- data/unittests/textarea_test.rb +81 -0
- data/unittests/textarea_xpath_test.rb +82 -0
- data/unittests/textfields_test.rb +205 -229
- data/unittests/textfields_xpath_test.rb +111 -0
- data/unittests/window_tests.rb +7 -0
- data/unittests/windows/attach_to_existing_window_test.rb +52 -0
- data/unittests/windows/attach_to_new_window_test.rb +82 -0
- data/unittests/windows/close_window_test.rb +22 -0
- data/unittests/windows/frame_links_test.rb +25 -0
- data/unittests/windows/ie-each_test.rb +48 -0
- data/unittests/windows/iedialog_test.rb +55 -0
- data/unittests/windows/js_events_test.rb +57 -0
- data/unittests/windows/jscriptExtraAlert.rb +6 -0
- data/unittests/windows/jscriptExtraConfirmCancel.rb +7 -0
- data/unittests/windows/jscriptExtraConfirmOk.rb +7 -0
- data/unittests/{jscriptPushButton.rb → windows/jscriptPushButton.rb} +1 -1
- data/unittests/windows/jscript_test.rb +64 -0
- data/unittests/windows/modal_dialog_test.rb +127 -0
- data/unittests/windows/new.rb +56 -0
- data/unittests/windows/open_close_test.rb +22 -0
- data/unittests/windows/send_keys_test.rb +34 -0
- data/unittests/xpath_tests.rb +10 -0
- data/watir.rb +4344 -3565
- data/watir/IEDialog/Release/IEDialog.dll +0 -0
- data/watir/WindowHelper.rb +13 -11
- data/watir/assertions.rb +36 -0
- data/watir/camel_case.rb +14 -5
- data/watir/close_all.rb +38 -0
- data/watir/contrib/enabled_popup.rb +21 -0
- data/watir/contrib/ie-new-process.rb +27 -0
- data/watir/contrib/page_checker.rb +29 -0
- data/watir/contrib/visible.rb +47 -0
- data/watir/cookiemanager.rb +4 -4
- data/watir/datahandler.rb +107 -0
- data/watir/dialog.rb +46 -0
- data/watir/elements.rb +65 -0
- data/watir/exceptions.rb +18 -36
- data/watir/ie-process.rb +40 -0
- data/watir/irb-history.rb +31 -0
- data/watir/process.rb +20 -0
- data/watir/testUnitAddons.rb +3 -42
- data/watir/testcase.rb +58 -0
- data/watir/utils.rb +20 -0
- data/watir/waiter.rb +88 -0
- data/watir/watir_simple.rb +4 -4
- data/watir/win32ole.rb +8 -0
- data/watir/win32ole/win32ole.so +0 -0
- data/watir/winClicker.rb +374 -400
- metadata +209 -128
- data/unittests/WindowLogonExample.rb +0 -30
- data/unittests/attachToExistingWindow_test.rb +0 -40
- data/unittests/js_events_test.rb +0 -77
- data/unittests/jscriptExtraAlert.rb +0 -6
- data/unittests/jscriptExtraConfirmCancel.rb +0 -7
- data/unittests/jscriptExtraConfirmOk.rb +0 -7
- data/unittests/jscript_test.rb +0 -57
- data/unittests/send_keys_test.rb +0 -29
- data/unittests/textAreafields_test.rb +0 -81
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
<html>
|
|
2
|
+
<body>
|
|
3
|
+
|
|
4
|
+
<h4>An Unordered List:</h4>
|
|
5
|
+
<ul>
|
|
6
|
+
<li id='list1'>Coffee</li>
|
|
7
|
+
<li id='list2'>Tea</li>
|
|
8
|
+
<li id='list3'>Milk</li>
|
|
9
|
+
</ul>
|
|
10
|
+
|
|
11
|
+
<h4>An Ordered List:</h4>
|
|
12
|
+
<ol>
|
|
13
|
+
<li id='ordered1' name='l1'>Phil</li>
|
|
14
|
+
<li id='ordered2'>Bob</li>
|
|
15
|
+
<li id='ordered3'>Joe</li>
|
|
16
|
+
</ol>
|
|
17
|
+
</body>
|
|
18
|
+
</html>
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
<html>
|
|
2
|
+
<head>
|
|
3
|
+
<title>
|
|
4
|
+
Test page for map areas
|
|
5
|
+
</title>
|
|
6
|
+
Test Page for Map Tests<br><br>
|
|
7
|
+
<link rel="stylesheet" type="text/css" href="watir_unit_tests.css">
|
|
8
|
+
</head>
|
|
9
|
+
<body>
|
|
10
|
+
CVS Revision: "$Revision $"
|
|
11
|
+
<br>
|
|
12
|
+
<br>
|
|
13
|
+
<table width="500px" border="0" cellspacing="0" cellpadding="0">
|
|
14
|
+
<tr>
|
|
15
|
+
<td valign="top" align="LEFT"><img SRC="images/map.GIF" USEMAP="#maptest01" BORDER="0"></td>
|
|
16
|
+
<map ID="maptestid01" NAME="maptest01">
|
|
17
|
+
<AREA SHAPE=RECT COORDS="12,150,140,20" HREF="pass.html" ALT="Pass" >
|
|
18
|
+
<AREA SHAPE=RECT COORDS="325,150,153,20" HREF="simple_table_buttons.html" ALT="Table Buttons" >
|
|
19
|
+
<AREA SHAPE=RECT COORDS="333,150,500,20" HREF="images1.html" ALT="Images" >
|
|
20
|
+
</map>
|
|
21
|
+
</tr>
|
|
22
|
+
<tr>
|
|
23
|
+
<td valign="top" align="LEFT"><img SRC="images/map2.gif" USEMAP="#maptest02" BORDER="0"></td>
|
|
24
|
+
<map ID="maptestid02" NAME="maptest02" custom="foo">
|
|
25
|
+
<AREA SHAPE=RECT COORDS="12,150,140,20" HREF="pass.html" ALT="Pass2" >
|
|
26
|
+
<AREA SHAPE=RECT COORDS="325,150,153,20" HREF="simple_table_buttons.html" ALT="Table Buttons2" >
|
|
27
|
+
<AREA SHAPE=RECT COORDS="333,150,500,20" HREF="images1.html" ALT="Images2" >
|
|
28
|
+
</map>
|
|
29
|
+
</tr>
|
|
30
|
+
|
|
31
|
+
</html>
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
<html>
|
|
2
|
+
<head><title>Modal Dialog</title></head>
|
|
3
|
+
|
|
4
|
+
<body>
|
|
5
|
+
<p>Enter some text:</p>
|
|
6
|
+
<input type="text" name="modal_text" />
|
|
7
|
+
<input type="button" value="Close" onClick="javascript:window.returnValue=modal_text.value; window.close();"/>
|
|
8
|
+
<br/><button onClick="showModalDialog('pass.html');">Another Modal</button>
|
|
9
|
+
<br/><button onClick="showModalDialog('frame_buttons.html');">Modal with Frames</button>
|
|
10
|
+
</body></html>
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<html>
|
|
2
|
+
<head>
|
|
3
|
+
<title>Modal Browser Dialog Launcher</title>
|
|
4
|
+
</head>
|
|
5
|
+
<body>
|
|
6
|
+
<h1>Modal Browser Dialog Launcher</h1>
|
|
7
|
+
<input type = "button" value = "Launch Dialog" onclick = "javascript:document.all.modaloutput.value=window.showModalDialog('modal_dialog.html');"></input>
|
|
8
|
+
<br></br>
|
|
9
|
+
<p>Text from Modal:</p>
|
|
10
|
+
<input type = "text" name = "modaloutput"></input>
|
|
11
|
+
</body>
|
|
12
|
+
</html>
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
<html>
|
|
2
|
+
<head>
|
|
3
|
+
<title>New Browser Launcher</title>
|
|
4
|
+
<script language="JavaScript" type="">
|
|
5
|
+
function open_window_slowly(){
|
|
6
|
+
setTimeout("window.open('blankpage.html');", document.all.delay.value * 1000);
|
|
7
|
+
}
|
|
8
|
+
</script>
|
|
9
|
+
</head>
|
|
10
|
+
<body>
|
|
11
|
+
<h1>New Browser Launcher</h1>
|
|
12
|
+
<p>This link brings up a window marked "pass": <a href="pass.html" target="_blank">New Window</a></p>
|
|
13
|
+
<p>This link brings up a window marked "blank for frames" after a delay:
|
|
14
|
+
<span onclick="open_window_slowly();">New Window Slowly</span></p>
|
|
15
|
+
<p> Number of seconds to wait: <input type="text" name="delay" value="0.5"></input></p>
|
|
16
|
+
</body>
|
|
17
|
+
</html>
|
data/unittests/html/pass.html
CHANGED
data/unittests/html/popups1.html
CHANGED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
<html>
|
|
2
|
+
<head>
|
|
3
|
+
<title>PRE tag tests</title>
|
|
4
|
+
</head>
|
|
5
|
+
<body>
|
|
6
|
+
Pre Tag Test
|
|
7
|
+
<br><br>
|
|
8
|
+
<pre id='1' name='1'>
|
|
9
|
+
This is a simple pre space
|
|
10
|
+
|
|
11
|
+
it should work well
|
|
12
|
+
|
|
13
|
+
just making sure
|
|
14
|
+
</pre>
|
|
15
|
+
<hr>
|
|
16
|
+
<pre id='2' name='2'>
|
|
17
|
+
<blockquote>
|
|
18
|
+
A second block
|
|
19
|
+
good to test with
|
|
20
|
+
</blockquote>
|
|
21
|
+
</pre>
|
|
22
|
+
<hr>
|
|
23
|
+
<pre id='3' name='3'>
|
|
24
|
+
this is the last block and it should
|
|
25
|
+
continue to work no matter what
|
|
26
|
+
</pre>
|
|
27
|
+
</body>
|
|
28
|
+
</html>
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<title>
|
|
4
4
|
Test page for Radio Buttons
|
|
5
5
|
</title>
|
|
6
|
-
|
|
6
|
+
<link rel="stylesheet" type="text/css" href="watir_unit_tests.css">
|
|
7
7
|
<script>
|
|
8
8
|
|
|
9
9
|
function setButtonState( )
|
|
@@ -23,7 +23,7 @@ CVS Revision: $Revision $
|
|
|
23
23
|
<table>
|
|
24
24
|
<tr>
|
|
25
25
|
<td>
|
|
26
|
-
Radio (using name) <input type = radio name = box1>
|
|
26
|
+
Radio (using name) <input type = radio name = box1 class='radio_style'>
|
|
27
27
|
<br>
|
|
28
28
|
Radio (using id) <input type = radio id = box5>
|
|
29
29
|
|
|
@@ -62,9 +62,10 @@ Name = box4 value=5 <input type = radio name = box4 value = 5 disabled title="b
|
|
|
62
62
|
<td>
|
|
63
63
|
<input type = button name = foo value = foo disabled><td> This button is used with radio box5. This button gets enabled/disabled on each click
|
|
64
64
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
65
|
+
<tr>
|
|
66
|
+
<td><input type = radio name="box6" value="Tea">Tea</td>
|
|
67
|
+
<td><input type = radio name="box6" value="Milk">Milk</td>
|
|
68
|
+
</tr>
|
|
68
69
|
|
|
69
70
|
</table>
|
|
70
71
|
</body>
|
|
@@ -3,30 +3,31 @@
|
|
|
3
3
|
<title>
|
|
4
4
|
Test page for select boxes
|
|
5
5
|
</title>
|
|
6
|
+
<link rel="stylesheet" type="text/css" href="watir_unit_tests.css">
|
|
6
7
|
</head>
|
|
7
8
|
<body>
|
|
8
|
-
CVS Revision: $Revision
|
|
9
|
+
CVS Revision: $Revision: 817 $
|
|
9
10
|
<br>
|
|
10
11
|
<br>
|
|
11
12
|
<table>
|
|
12
13
|
|
|
13
14
|
<tr>
|
|
14
15
|
<td>
|
|
15
|
-
<select name = sel1 >
|
|
16
|
-
<option value=o1>Option 1
|
|
17
|
-
<option value=o2>Option 2
|
|
16
|
+
<select name = sel1 class='list_style'>
|
|
17
|
+
<option value=o1 >Option 1
|
|
18
|
+
<option value=o2 >Option 2
|
|
18
19
|
<option value=o3 SELECTED >Option 3
|
|
19
|
-
<option value=o4>Option 4
|
|
20
|
+
<option value=o4 >Option 4
|
|
20
21
|
</select>
|
|
21
22
|
<tr>
|
|
22
23
|
<td>
|
|
23
24
|
<select name = sel2 multiple>
|
|
24
|
-
<option value=o1>Option 1
|
|
25
|
-
<option value=o2>Option 2
|
|
26
|
-
<option value=o3 SELECTED >Option 3
|
|
27
|
-
<option value=o4>Option 4
|
|
28
|
-
<option value=o6>Option 5
|
|
29
|
-
<option value=o6 SELECTED >Option 6
|
|
25
|
+
<option value=o1 >Option 1
|
|
26
|
+
<option value=o2 class='option_style'>Option 2
|
|
27
|
+
<option value=o3 class='option_style' SELECTED >Option 3
|
|
28
|
+
<option value=o4 class='option_style'>Option 4
|
|
29
|
+
<option value=o6 class='option_style'>Option 5
|
|
30
|
+
<option value=o6 class='option_style' SELECTED >Option 6
|
|
30
31
|
|
|
31
32
|
|
|
32
33
|
</form>
|
data/unittests/html/table1.html
CHANGED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<html>
|
|
2
|
+
<head>
|
|
3
|
+
<title>Testing table cell using xpath.</title>
|
|
4
|
+
</head>
|
|
5
|
+
<body>
|
|
6
|
+
<table>
|
|
7
|
+
<tr>
|
|
8
|
+
<td colspan="1"><img src="images/square.jpg"> Table Cell with image of square.
|
|
9
|
+
</td>
|
|
10
|
+
<td colspan="2"><img src="images/triangle.jpg"> Table Cell with image of triangle.
|
|
11
|
+
</td>
|
|
12
|
+
<td colspan="3"><img src="images/circle.jpg"> Table Cell with image of circle.
|
|
13
|
+
</td>
|
|
14
|
+
<td colspan="4"><img src="images/button.jpg"> Table Cell with image of button.
|
|
15
|
+
</td>
|
|
16
|
+
</tr>
|
|
17
|
+
</table>
|
|
18
|
+
</body>
|
|
19
|
+
</html>
|
|
@@ -5,7 +5,7 @@ Test page for Text Fields
|
|
|
5
5
|
</title>
|
|
6
6
|
</head>
|
|
7
7
|
<body>
|
|
8
|
-
CVS Revision: "$Revision:
|
|
8
|
+
CVS Revision: "$Revision: 1194 $"
|
|
9
9
|
|
|
10
10
|
<script>
|
|
11
11
|
function addEvent(e) {
|
|
@@ -21,9 +21,11 @@ function addEvent(e) {
|
|
|
21
21
|
|
|
22
22
|
<tr>
|
|
23
23
|
<td>
|
|
24
|
-
<input type = text name = text1 value = 'Hello World'>number 1
|
|
24
|
+
<input type = text name = text1 value = 'Hello World' maxLength = 20 >number 1
|
|
25
25
|
<br>
|
|
26
26
|
<label for=text2>Label For this Field </label><input type = text id= text2 value = 'goodbye all'>
|
|
27
|
+
<br>
|
|
28
|
+
<input type=text name=Regex_test value='RegEx test'>
|
|
27
29
|
|
|
28
30
|
|
|
29
31
|
<td>These text fields are not in a form
|
|
@@ -81,7 +83,7 @@ Password Fields
|
|
|
81
83
|
Password With Name<input type = password name =password1>
|
|
82
84
|
<br>
|
|
83
85
|
<label for=password1>Password With ID ( the text here is a label for it )</label><input type = password id =password1>
|
|
84
|
-
|
|
85
|
-
|
|
86
|
+
<div name="divvy">Div Text</div>
|
|
87
|
+
</body>
|
|
86
88
|
|
|
87
89
|
</html>
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# test IE#exists?
|
|
2
|
+
# revision: $Revision: 962 $
|
|
3
|
+
|
|
4
|
+
$LOAD_PATH.unshift File.join(File.dirname(__FILE__), '..') if $0 == __FILE__
|
|
5
|
+
require 'unittests/setup'
|
|
6
|
+
|
|
7
|
+
class TC_IE_Exists < Test::Unit::TestCase
|
|
8
|
+
def setup
|
|
9
|
+
@ie = Watir::IE.new
|
|
10
|
+
end
|
|
11
|
+
def teardown
|
|
12
|
+
@ie.close
|
|
13
|
+
end
|
|
14
|
+
def test_exists
|
|
15
|
+
assert(@ie.exists?)
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
class TC_IENotExists < Test::Unit::TestCase
|
|
20
|
+
def setup
|
|
21
|
+
@ie = Watir::IE.new
|
|
22
|
+
end
|
|
23
|
+
def test_we_closed_it
|
|
24
|
+
@ie.close
|
|
25
|
+
assert(!@ie.exists?)
|
|
26
|
+
end
|
|
27
|
+
def test_some_one_else_closed_it
|
|
28
|
+
@ie.ie.quit
|
|
29
|
+
sleep 0.3 # give it some time to close
|
|
30
|
+
assert(!@ie.exists?)
|
|
31
|
+
end
|
|
32
|
+
end
|
data/unittests/ie_mock.rb
CHANGED
|
@@ -2,92 +2,91 @@
|
|
|
2
2
|
require 'watir'
|
|
3
3
|
|
|
4
4
|
class FakeFrame
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
end
|
|
9
|
-
|
|
10
|
-
class FakeAll
|
|
11
|
-
def initialize(doc)
|
|
12
|
-
@doc = doc
|
|
13
|
-
end
|
|
14
|
-
def tags(tag)
|
|
15
|
-
@doc.links
|
|
16
|
-
end
|
|
5
|
+
def length
|
|
6
|
+
return 0
|
|
7
|
+
end
|
|
17
8
|
end
|
|
18
9
|
|
|
19
|
-
|
|
20
10
|
class FakeDoc
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
11
|
+
|
|
12
|
+
attr_accessor :links, :all
|
|
13
|
+
|
|
14
|
+
def initialize
|
|
15
|
+
@links = ""
|
|
16
|
+
@doc = self
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def getElementsByTagName(tag)
|
|
20
|
+
@doc.links
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def frames
|
|
24
|
+
return FakeFrame.new
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def readyState
|
|
28
|
+
return "complete"
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
def addLink(value)
|
|
32
|
+
if @links.nil?
|
|
33
|
+
@links = value
|
|
34
|
+
else
|
|
35
|
+
@links << value
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def url
|
|
40
|
+
return "file://fake"
|
|
41
|
+
end
|
|
42
|
+
|
|
49
43
|
end
|
|
50
44
|
|
|
51
45
|
class StubExplorer
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
46
|
+
|
|
47
|
+
attr_accessor :timeToWait
|
|
48
|
+
|
|
49
|
+
def initialize
|
|
50
|
+
@timeToWait = 1
|
|
51
|
+
@visible = $HIDE_IE
|
|
52
|
+
@document = FakeDoc.new
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
def document
|
|
56
|
+
return @document
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
def busy
|
|
60
|
+
sleep @timeToWait
|
|
61
|
+
return FALSE
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
def readyState
|
|
65
|
+
return 4
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
def visible=(value)
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
def visible
|
|
72
|
+
end
|
|
73
|
+
|
|
77
74
|
end
|
|
78
75
|
|
|
79
76
|
class TestIE < Watir::IE
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
77
|
+
|
|
78
|
+
def create_browser_window
|
|
79
|
+
@ie = StubExplorer.new
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
def addLink(link)
|
|
83
|
+
@ie.document.addLink(link)
|
|
84
|
+
end
|
|
85
|
+
|
|
86
|
+
def setTimeToWait(time = 1)
|
|
87
|
+
@ie.timeToWait = time
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
def goto(url)
|
|
91
|
+
end
|
|
93
92
|
end
|