operawatir 0.4.1.pre5-jruby → 0.4.1.pre6-jruby
Sign up to get free protection for your applications and to get access to all the features.
- data/AUTHORS +1 -0
- data/CHANGES +170 -3
- data/README.md +30 -27
- data/VERSION +1 -1
- data/bin/desktopwatir +19 -16
- data/bin/operawatir +4 -4
- data/lib/operadriver/client-combined-nodeps.jar +0 -0
- data/lib/operadriver/webdriver-opera.jar +0 -0
- data/lib/operawatir/browser.rb +1 -2
- data/lib/operawatir/collection.rb +1 -1
- data/lib/operawatir/compat/collection.rb +13 -0
- data/lib/operawatir/compat/element.rb +57 -15
- data/lib/operawatir/compat/window.rb +41 -0
- data/lib/operawatir/desktop_browser.rb +26 -9
- data/lib/operawatir/desktop_container.rb +82 -29
- data/lib/operawatir/element.rb +48 -24
- data/lib/operawatir/keys.rb +18 -25
- data/lib/operawatir/preferences.rb +223 -6
- data/lib/operawatir/quickwidgets/quick_button.rb +8 -2
- data/lib/operawatir/quickwidgets/quick_checkbox.rb +4 -4
- data/lib/operawatir/quickwidgets/quick_editfield.rb +1 -1
- data/lib/operawatir/quickwidgets/quick_find.rb +11 -0
- data/lib/operawatir/quickwidgets/quick_griditem.rb +11 -0
- data/lib/operawatir/quickwidgets/quick_gridlayout.rb +11 -0
- data/lib/operawatir/quickwidgets/quick_searchfield.rb +5 -1
- data/lib/operawatir/quickwidgets/quick_tab.rb +0 -1
- data/lib/operawatir/quickwidgets/quick_treeitem.rb +22 -1
- data/lib/operawatir/quickwidgets/quick_widget.rb +61 -22
- data/lib/operawatir/quickwidgets/quick_window.rb +26 -0
- data/lib/operawatir/quickwidgets.rb +2 -1
- data/lib/operawatir/window.rb +36 -25
- data/lib/operawatir.rb +1 -1
- data/operawatir.gemspec +38 -5
- data/spec/operawatir/core/element_spec.rb +5 -0
- data/spec/operawatir/core/window_spec.rb +42 -0
- data/spec/operawatir/desktop/desktopbrowser_spec.rb +16 -0
- data/spec/operawatir/desktop/quickaddressfield_spec.rb +15 -3
- data/spec/operawatir/desktop/quickbutton_spec.rb +234 -20
- data/spec/operawatir/desktop/quickcheckbox_spec.rb +36 -0
- data/spec/operawatir/desktop/quickdialogtab_spec.rb +30 -0
- data/spec/operawatir/desktop/quickdropdown_spec.rb +39 -0
- data/spec/operawatir/desktop/quickeditfield_spec.rb +51 -0
- data/spec/operawatir/desktop/quickfind_spec.rb +30 -0
- data/spec/operawatir/desktop/quickgriditem_spec.rb +16 -0
- data/spec/operawatir/desktop/quickgridlayout_spec.rb +15 -0
- data/spec/operawatir/desktop/quicklabel_spec.rb +28 -0
- data/spec/operawatir/desktop/quickradiobutton_spec.rb +24 -0
- data/spec/operawatir/desktop/quicksearchfield_spec.rb +26 -0
- data/spec/operawatir/desktop/quicktab_spec.rb +86 -0
- data/spec/operawatir/desktop/quickthumbnail_spec.rb +37 -0
- data/spec/operawatir/desktop/quicktreeitem_spec.rb +135 -0
- data/spec/operawatir/desktop/quicktreeview_spec.rb +30 -0
- data/spec/operawatir/desktop/quickwidget_spec.rb +52 -11
- data/spec/operawatir/desktop/quickwindow_spec.rb +11 -0
- data/spec/operawatir/desktop/shared/shared.rb +100 -10
- data/spec/operawatir/fixtures/browsers.svg +367 -0
- data/spec/operawatir/fixtures/frames.html +13 -0
- data/spec/watir2/select_list_spec.rb +84 -71
- metadata +37 -4
- data/lib/operadriver/selenium-common.jar +0 -0
data/lib/operawatir.rb
CHANGED
@@ -4,7 +4,7 @@ require 'deprecated'
|
|
4
4
|
require 'java'
|
5
5
|
include Java
|
6
6
|
|
7
|
-
%w(commons-jxpath-1.3.jar protobuf-java-2.3.0.jar
|
7
|
+
%w(commons-jxpath-1.3.jar protobuf-java-2.3.0.jar client-combined-nodeps.jar
|
8
8
|
webdriver-opera.jar commons-io-2.0.1.jar).each { |jar| require "operadriver/#{jar}" }
|
9
9
|
|
10
10
|
include_class org.openqa.selenium.WebDriver
|
data/operawatir.gemspec
CHANGED
@@ -5,12 +5,12 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{operawatir}
|
8
|
-
s.version = "0.4.1.
|
8
|
+
s.version = "0.4.1.pre6"
|
9
9
|
s.platform = %q{jruby}
|
10
10
|
|
11
11
|
s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
|
12
12
|
s.authors = ["Andreas Tolf Tolfsen", "Chris Lloyd", "Stuart Knightley", "Deniz Turkoglu"]
|
13
|
-
s.date = %q{2011-
|
13
|
+
s.date = %q{2011-05-09}
|
14
14
|
s.description = %q{ OperaWatir is a part of the Watir (pronounced water) family of
|
15
15
|
free software Ruby libraries for automating web browsers.
|
16
16
|
OperaWatir provides a querying engine and Ruby bindings for a
|
@@ -37,10 +37,10 @@ Gem::Specification.new do |s|
|
|
37
37
|
"bin/operawatir",
|
38
38
|
"lib/operadriver/APACHE_2.0_LICENSE.txt",
|
39
39
|
"lib/operadriver/NEW_BSD_LICENSE.txt",
|
40
|
+
"lib/operadriver/client-combined-nodeps.jar",
|
40
41
|
"lib/operadriver/commons-io-2.0.1.jar",
|
41
42
|
"lib/operadriver/commons-jxpath-1.3.jar",
|
42
43
|
"lib/operadriver/protobuf-java-2.3.0.jar",
|
43
|
-
"lib/operadriver/selenium-common.jar",
|
44
44
|
"lib/operadriver/webdriver-opera.jar",
|
45
45
|
"lib/operawatir.rb",
|
46
46
|
"lib/operawatir/browser.rb",
|
@@ -72,6 +72,9 @@ Gem::Specification.new do |s|
|
|
72
72
|
"lib/operawatir/quickwidgets/quick_dialogtab.rb",
|
73
73
|
"lib/operawatir/quickwidgets/quick_dropdown.rb",
|
74
74
|
"lib/operawatir/quickwidgets/quick_editfield.rb",
|
75
|
+
"lib/operawatir/quickwidgets/quick_find.rb",
|
76
|
+
"lib/operawatir/quickwidgets/quick_griditem.rb",
|
77
|
+
"lib/operawatir/quickwidgets/quick_gridlayout.rb",
|
75
78
|
"lib/operawatir/quickwidgets/quick_label.rb",
|
76
79
|
"lib/operawatir/quickwidgets/quick_radiobutton.rb",
|
77
80
|
"lib/operawatir/quickwidgets/quick_searchfield.rb",
|
@@ -110,10 +113,26 @@ Gem::Specification.new do |s|
|
|
110
113
|
"spec/operawatir/desktop/desktopbrowser_spec.rb",
|
111
114
|
"spec/operawatir/desktop/quickaddressfield_spec.rb",
|
112
115
|
"spec/operawatir/desktop/quickbutton_spec.rb",
|
116
|
+
"spec/operawatir/desktop/quickcheckbox_spec.rb",
|
117
|
+
"spec/operawatir/desktop/quickdialogtab_spec.rb",
|
118
|
+
"spec/operawatir/desktop/quickdropdown_spec.rb",
|
119
|
+
"spec/operawatir/desktop/quickeditfield_spec.rb",
|
120
|
+
"spec/operawatir/desktop/quickfind_spec.rb",
|
121
|
+
"spec/operawatir/desktop/quickgriditem_spec.rb",
|
122
|
+
"spec/operawatir/desktop/quickgridlayout_spec.rb",
|
123
|
+
"spec/operawatir/desktop/quicklabel_spec.rb",
|
124
|
+
"spec/operawatir/desktop/quickradiobutton_spec.rb",
|
125
|
+
"spec/operawatir/desktop/quicksearchfield_spec.rb",
|
126
|
+
"spec/operawatir/desktop/quicktab_spec.rb",
|
127
|
+
"spec/operawatir/desktop/quickthumbnail_spec.rb",
|
128
|
+
"spec/operawatir/desktop/quicktreeitem_spec.rb",
|
129
|
+
"spec/operawatir/desktop/quicktreeview_spec.rb",
|
113
130
|
"spec/operawatir/desktop/quickwidget_spec.rb",
|
114
131
|
"spec/operawatir/desktop/quickwindow_spec.rb",
|
115
132
|
"spec/operawatir/desktop/shared/shared.rb",
|
116
133
|
"spec/operawatir/fixtures/boxes.html",
|
134
|
+
"spec/operawatir/fixtures/browsers.svg",
|
135
|
+
"spec/operawatir/fixtures/frames.html",
|
117
136
|
"spec/operawatir/fixtures/grid.html",
|
118
137
|
"spec/operawatir/fixtures/input_fields_value.html",
|
119
138
|
"spec/operawatir/fixtures/onclick.html",
|
@@ -254,7 +273,7 @@ Gem::Specification.new do |s|
|
|
254
273
|
s.homepage = %q{http://www.opera.com/developer/tools/operawatir/}
|
255
274
|
s.require_paths = ["lib"]
|
256
275
|
s.rubyforge_project = %q{operawatir}
|
257
|
-
s.rubygems_version = %q{1.3.
|
276
|
+
s.rubygems_version = %q{1.3.7}
|
258
277
|
s.summary = %q{Toolkit for automating interactions with the Opera web browser.}
|
259
278
|
s.test_files = [
|
260
279
|
"spec/fire_event/fire_event.rb",
|
@@ -267,6 +286,20 @@ Gem::Specification.new do |s|
|
|
267
286
|
"spec/operawatir/desktop/desktopbrowser_spec.rb",
|
268
287
|
"spec/operawatir/desktop/quickaddressfield_spec.rb",
|
269
288
|
"spec/operawatir/desktop/quickbutton_spec.rb",
|
289
|
+
"spec/operawatir/desktop/quickcheckbox_spec.rb",
|
290
|
+
"spec/operawatir/desktop/quickdialogtab_spec.rb",
|
291
|
+
"spec/operawatir/desktop/quickdropdown_spec.rb",
|
292
|
+
"spec/operawatir/desktop/quickeditfield_spec.rb",
|
293
|
+
"spec/operawatir/desktop/quickfind_spec.rb",
|
294
|
+
"spec/operawatir/desktop/quickgriditem_spec.rb",
|
295
|
+
"spec/operawatir/desktop/quickgridlayout_spec.rb",
|
296
|
+
"spec/operawatir/desktop/quicklabel_spec.rb",
|
297
|
+
"spec/operawatir/desktop/quickradiobutton_spec.rb",
|
298
|
+
"spec/operawatir/desktop/quicksearchfield_spec.rb",
|
299
|
+
"spec/operawatir/desktop/quicktab_spec.rb",
|
300
|
+
"spec/operawatir/desktop/quickthumbnail_spec.rb",
|
301
|
+
"spec/operawatir/desktop/quicktreeitem_spec.rb",
|
302
|
+
"spec/operawatir/desktop/quicktreeview_spec.rb",
|
270
303
|
"spec/operawatir/desktop/quickwidget_spec.rb",
|
271
304
|
"spec/operawatir/desktop/quickwindow_spec.rb",
|
272
305
|
"spec/operawatir/desktop/shared/shared.rb",
|
@@ -371,7 +404,7 @@ Gem::Specification.new do |s|
|
|
371
404
|
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
372
405
|
s.specification_version = 3
|
373
406
|
|
374
|
-
if Gem::Version.new(Gem::
|
407
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
375
408
|
s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
|
376
409
|
s.add_development_dependency(%q<jeweler>, [">= 0"])
|
377
410
|
s.add_development_dependency(%q<BlueCloth>, ["= 1.0.1"])
|
@@ -78,6 +78,11 @@ describe 'Element' do
|
|
78
78
|
@two.visual_hash.should_not == @three.visual_hash
|
79
79
|
end
|
80
80
|
|
81
|
+
it 'returns a hash of an SVG element' do
|
82
|
+
browser.url = fixture('browsers.svg')
|
83
|
+
window.find_by_tag('svg').visual_hash.should =~ /^(0x)[a-f0-9]{32}$/
|
84
|
+
end
|
85
|
+
|
81
86
|
end
|
82
87
|
|
83
88
|
end
|
@@ -22,13 +22,55 @@ describe 'Window' do
|
|
22
22
|
browser.url = fixture('grid.html')
|
23
23
|
window.visual_hash.should_not == @reference
|
24
24
|
end
|
25
|
+
|
26
|
+
it 'returns a hash of an SVG document' do
|
27
|
+
browser.url = fixture('browsers.svg')
|
28
|
+
browser.visual_hash.should match /^(0x)[a-f0-9]{32}$/
|
29
|
+
end
|
25
30
|
end
|
26
31
|
|
32
|
+
|
33
|
+
#
|
27
34
|
# This method is deprecated, but must be tested anyway.
|
35
|
+
#
|
36
|
+
|
28
37
|
describe '#eval_js' do
|
29
38
|
it 'works the same way as execute_script' do
|
30
39
|
window.eval_js('1+1').should == window.execute_script('1+1');
|
31
40
|
end
|
32
41
|
end
|
33
42
|
|
43
|
+
#
|
44
|
+
# The frames implementation is a relic from the old OperaWatir. We
|
45
|
+
# need to replace this with a better frames implementation in the
|
46
|
+
# future.
|
47
|
+
#
|
48
|
+
|
49
|
+
describe '#frame' do
|
50
|
+
before :all do
|
51
|
+
require 'operawatir/compat/window'
|
52
|
+
OperaWatir::Window.send :include, OperaWatir::Compat::Window
|
53
|
+
browser.url = fixture('frames.html')
|
54
|
+
end
|
55
|
+
|
56
|
+
it 'will switch to the specified frame' do
|
57
|
+
window.frame(:name, 'test')
|
58
|
+
window.text.should include 'Lorem ipsum'
|
59
|
+
window.text.should_not include 'foobar'
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
describe '#switch_to_default' do
|
64
|
+
before :all do
|
65
|
+
browser.url = fixture('frames.html')
|
66
|
+
window.frame(:name, 'test')
|
67
|
+
end
|
68
|
+
|
69
|
+
it 'will switch back to the default top frame' do
|
70
|
+
window.switch_to_default
|
71
|
+
window.text.should include 'foobar'
|
72
|
+
window.text.should_not include 'Lorem ipsum'
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
34
76
|
end
|
@@ -224,6 +224,22 @@ describe 'DesktopBrowser' do
|
|
224
224
|
browser.cache_preferences_path.should_not be_empty
|
225
225
|
end
|
226
226
|
end
|
227
|
+
|
228
|
+
describe '#string' do
|
229
|
+
it 'returns string corresponding to string_id' do
|
230
|
+
browser.string("D_NEW_PREFERENCES_GENERAL").should == "General"
|
231
|
+
end
|
232
|
+
it 'removes ampersands in string with ampersand' do
|
233
|
+
browser.string("S_FIND_IN_PAGE").should == "Find in page"
|
234
|
+
end
|
235
|
+
it 'leaves ampersand in string when skip_ampersand is true' do
|
236
|
+
browser.string("S_FIND_IN_PAGE", false).should == "&Find in page"
|
237
|
+
end
|
238
|
+
#it 'fails in some reasonable way if string_id doesn\'t exist' do
|
239
|
+
# browser.string("SOME_STRING")
|
240
|
+
#end
|
241
|
+
|
242
|
+
end
|
227
243
|
|
228
244
|
describe '#mac?' do
|
229
245
|
end
|
@@ -9,9 +9,20 @@ describe 'QuickAddressfield' do
|
|
9
9
|
|
10
10
|
subject { addressfield }
|
11
11
|
|
12
|
-
it_behaves_like
|
13
|
-
it_behaves_like
|
14
|
-
|
12
|
+
it_behaves_like 'a widget'
|
13
|
+
it_behaves_like 'an editfield'
|
14
|
+
|
15
|
+
describe '#quick_addressfield' do
|
16
|
+
it 'constructs addressfield by its name' do
|
17
|
+
browser.quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field")
|
18
|
+
end
|
19
|
+
it 'constructs addressfield by its name' do
|
20
|
+
browser.quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field2")
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
its(:type) { should == :addressfield }
|
25
|
+
|
15
26
|
describe '#load_page_with_url' do
|
16
27
|
it 'loads page' do
|
17
28
|
addressfield.load_page_with_url("opera:debug").should == "opera:debug"
|
@@ -44,4 +55,5 @@ describe 'QuickAddressfield' do
|
|
44
55
|
expect { unknown_addressfield.highlighted_text }.to raise_error OperaWatir::Exceptions::UnknownObjectException
|
45
56
|
end
|
46
57
|
end
|
58
|
+
|
47
59
|
end
|
@@ -1,34 +1,248 @@
|
|
1
1
|
require File.expand_path('../../watirspec_desktophelper', __FILE__)
|
2
|
+
require File.expand_path('../shared/shared', __FILE__)
|
2
3
|
|
3
4
|
describe 'QuickButton' do
|
4
|
-
describe '#default?' do
|
5
|
-
end
|
6
5
|
|
7
|
-
|
8
|
-
|
6
|
+
let(:url) { "http://t/platforms/desktop/automated/resources/documents/page1.html" }
|
7
|
+
let(:url2) { "http://t/platforms/desktop/automated/resources/documents/page2.html" }
|
8
|
+
|
9
|
+
let(:widget) { browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Document Toolbar") .quick_button(:name, "tbb_Home") }
|
10
|
+
subject { widget }
|
9
11
|
|
10
|
-
|
11
|
-
|
12
|
+
it_behaves_like 'a widget'
|
13
|
+
it_behaves_like 'a button'
|
12
14
|
|
13
|
-
|
14
|
-
|
15
|
-
|
15
|
+
its(:type) { should == :button }
|
16
|
+
|
17
|
+
describe '#quick_button' do
|
18
|
+
it "constructs a button by its name"
|
19
|
+
end
|
16
20
|
|
17
|
-
|
21
|
+
after(:all) do
|
22
|
+
browser.close_all_tabs
|
23
|
+
end
|
24
|
+
|
25
|
+
describe 'position' do
|
26
|
+
before(:all) do
|
27
|
+
browser.open_dialog_with_action("Customize Toolbar Dialog", "Customize Toolbars")
|
28
|
+
browser.quick_dialogtab(:name, "tab_appearance_toolbars").activate_tab_with_click
|
29
|
+
bookmarks = browser.quick_checkbox(:name, "bookmarks_bar")
|
30
|
+
bookmarks.toggle_with_click unless bookmarks.value == 1
|
31
|
+
browser.close_dialog("Customize Toolbar Dialog")
|
18
32
|
end
|
19
|
-
|
20
|
-
|
33
|
+
after(:all) do
|
34
|
+
browser.open_dialog_with_action("Customize Toolbar Dialog", "Customize Toolbars")
|
35
|
+
browser.quick_dialogtab(:name, "tab_appearance_toolbars").activate_tab_with_click
|
36
|
+
browser.quick_checkbox(:name, "bookmarks_bar").toggle_with_click
|
37
|
+
browser.close_dialog("Customize Toolbar Dialog")
|
21
38
|
end
|
22
|
-
|
23
|
-
|
39
|
+
it 'returns position for button in personalbar' do
|
40
|
+
browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Personalbar Inline").quick_button(:text, "Kayak").position >= 0
|
24
41
|
end
|
25
|
-
|
26
|
-
|
42
|
+
it "can specify which button to construct" do
|
43
|
+
browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Personalbar Inline").quick_button(:pos, 1).should exist
|
27
44
|
end
|
45
|
+
end
|
28
46
|
|
29
|
-
|
30
|
-
|
47
|
+
#This is already in shared for a button
|
48
|
+
describe '#default?' do
|
49
|
+
before(:each) do
|
50
|
+
browser.open_dialog_with_action("New Preferences Dialog", "Show preferences").should > 0
|
51
|
+
end
|
52
|
+
|
53
|
+
after(:each) do
|
54
|
+
browser.close_dialog("New Preferences Dialog").should > 0
|
55
|
+
end
|
56
|
+
|
57
|
+
it 'default button' do
|
58
|
+
browser.quick_button(:name, "button_OK").should be_default
|
59
|
+
end
|
60
|
+
|
61
|
+
it 'non-default button' do
|
62
|
+
browser.quick_button(:name, "button_Cancel").should_not be_default
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
66
|
+
describe '#open_window_with_click' do
|
67
|
+
=begin
|
68
|
+
it 'a click does not open any windows' do
|
69
|
+
browser.open_window_with_key_press("Document Window", "t", :ctrl).should > 0
|
70
|
+
browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field").quick_button(:name, "af_ProtocolButton").open_window_with_click("Addressbar Overlay Window").should_not open_window
|
71
|
+
end
|
72
|
+
=end
|
73
|
+
it 'opens a window' do
|
74
|
+
browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field").load_page_with_url(url).should == url
|
75
|
+
browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field").quick_button(:name, "af_ProtocolButton").open_window_with_click("Addressbar Overlay Window").should open_window
|
76
|
+
end
|
77
|
+
|
78
|
+
it 'raises exception' do
|
79
|
+
browser.open_dialog_with_action("Customize Toolbar Dialog", "Customize Toolbars").should open_dialog
|
80
|
+
browser.quick_dialogtab(:name, "tab_appearance_toolbars").activate_tab_with_click
|
81
|
+
if browser.quick_checkbox(:name, "address_bar").checked? == true
|
82
|
+
browser.quick_checkbox(:name, "address_bar").toggle_with_click.should == false
|
83
|
+
end
|
84
|
+
browser.quick_button(:name, "button_OK").close_dialog_with_click("Customize Toolbar Dialog").should close_dialog
|
85
|
+
lambda { browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field").quick_button(:name, "af_ProtocolButton").open_window_with_click("Addressbar Overlay Window") }.should raise_error OperaWatir::DesktopExceptions::WidgetNotVisibleException
|
86
|
+
end
|
87
|
+
|
88
|
+
after(:all) do
|
89
|
+
browser.open_dialog_with_action("Customize Toolbar Dialog", "Customize Toolbars").should open_dialog
|
90
|
+
browser.quick_dialogtab(:name, "tab_appearance_toolbars").activate_tab_with_click
|
91
|
+
if browser.quick_checkbox(:name, "address_bar").checked? == false
|
92
|
+
browser.quick_checkbox(:name, "address_bar").toggle_with_click.should == true
|
93
|
+
end
|
94
|
+
browser.quick_button(:name, "button_OK").close_dialog_with_click("Customize Toolbar Dialog").should close_dialog
|
95
|
+
end
|
96
|
+
end
|
97
|
+
|
98
|
+
describe '#change_page_with_click' do
|
99
|
+
|
100
|
+
before(:each) do
|
101
|
+
browser.open_dialog_with_action("New Account Wizard", "New account").should > 0
|
102
|
+
end
|
103
|
+
|
104
|
+
it 'change to a different page, with ID > 0' do
|
105
|
+
browser.quick_button(:name, "button_Next").change_page_with_click.should > 0
|
106
|
+
browser.close_dialog("New Account Wizard").should > 0
|
107
|
+
end
|
108
|
+
=begin
|
109
|
+
it 'returns 0 - no new page is loaded ' do
|
110
|
+
browser.quick_button(:name, "button_Cancel").change_page_with_click.should == 0
|
111
|
+
end
|
112
|
+
=end
|
113
|
+
end
|
114
|
+
|
115
|
+
describe '#close_window_with_click' do
|
116
|
+
it 'raises exception'
|
117
|
+
|
118
|
+
it 'returns window id of closed dialog window' do
|
119
|
+
browser.open_dialog_with_action("Add Bookmark Dialog", "Add to bookmarks").should > 0
|
120
|
+
browser.quick_button(:name, "button_Cancel").close_dialog_with_click("Add Bookmark Dialog").should > 0
|
121
|
+
end
|
122
|
+
|
123
|
+
it 'returns window id of closed window' do
|
124
|
+
browser.open_window_with_key_press("Document Window", "t", :ctrl).should > 0
|
125
|
+
browser.quick_window(:name, "Browser Window").quick_toolbar(:name, "Pagebar").quick_tab(:name, "Tab 1").quick_button(:name, "pb_CloseButton").close_window_with_click("Document Window").should > 0
|
126
|
+
end
|
127
|
+
end
|
128
|
+
|
129
|
+
describe '#load_page_with_click' do
|
130
|
+
it 'returns window id' do
|
131
|
+
browser.quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field").load_page_with_url(url).should == url
|
132
|
+
browser.quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field").load_page_with_url(url2).should == url2
|
133
|
+
browser.quick_toolbar(:name, "Document Toolbar").quick_button(:name, "tbb_Back").load_page_with_click.should > 0
|
134
|
+
end
|
135
|
+
=begin
|
136
|
+
it 'returns 0 - no windows is open' do
|
137
|
+
browser.open_window_with_key_press("Document Window", "t", :ctrl).should open_window
|
138
|
+
browser.quick_toolbar(:name, "Document Toolbar").quick_button(:name, "tbb_Stop_Reload").load_page_with_click.should == 0
|
139
|
+
browser.close_window_with_key_press("Document Window", "w", :ctrl).should close_window
|
140
|
+
end
|
141
|
+
=end
|
142
|
+
end
|
143
|
+
|
144
|
+
describe '#toggle_with_click' do
|
145
|
+
|
146
|
+
before(:all) do
|
147
|
+
browser.open_dialog_with_action("Clear Private Data Dialog", "Delete private data").should open_dialog
|
148
|
+
end
|
149
|
+
|
150
|
+
it 'returns value = 1 of button when button is pressed' do
|
151
|
+
browser.quick_button(:name, "Destails_expand").toggle_with_click.should == 1
|
152
|
+
end
|
153
|
+
|
154
|
+
it 'returns value = 0 of button when button is unpressed' do
|
155
|
+
browser.quick_button(:name, "Destails_expand").toggle_with_click.should == 0
|
156
|
+
end
|
157
|
+
|
158
|
+
it "returns false when it removes a button" #New in Task 5
|
159
|
+
|
160
|
+
after(:all) do
|
161
|
+
browser.close_dialog("Clear Private Data Dialog").should close_dialog
|
162
|
+
end
|
163
|
+
end
|
164
|
+
|
165
|
+
describe '#close_toolbar_with_click' do
|
166
|
+
end
|
167
|
+
|
168
|
+
describe '#expand_with_click' do
|
169
|
+
|
170
|
+
before(:all) do
|
171
|
+
browser.open_dialog_with_action("Clear Private Data Dialog", "Delete private data").should open_dialog
|
172
|
+
end
|
173
|
+
|
174
|
+
it 'expand with click' do
|
175
|
+
browser.quick_button(:name, "Destails_expand").expand_with_click
|
176
|
+
browser.quick_button(:name, "button_manage_wand").visible?.should be_true
|
177
|
+
end
|
178
|
+
|
179
|
+
|
180
|
+
it 'collapse with click ' do
|
181
|
+
browser.quick_button(:name, "Destails_expand").expand_with_click
|
182
|
+
browser.quick_button(:name, "button_manage_wand").visible?.should be_false
|
183
|
+
end
|
184
|
+
|
185
|
+
it 'raises exception' do
|
186
|
+
lambda { browser.quick_button(:name, "button_manage_wand").expand_with_click }.should raise_error OperaWatir::DesktopExceptions::WidgetNotVisibleException
|
187
|
+
end
|
188
|
+
|
189
|
+
after(:all) do
|
190
|
+
browser.close_dialog("Clear Private Data Dialog").should close_dialog
|
191
|
+
end
|
192
|
+
end
|
193
|
+
|
194
|
+
describe '#value' do
|
195
|
+
|
196
|
+
before(:all) do
|
197
|
+
browser.open_dialog_with_action("Clear Private Data Dialog", "Delete private data").should open_dialog
|
198
|
+
end
|
199
|
+
|
200
|
+
it 'returns 1 when button is pressed' do
|
201
|
+
browser.quick_button(:name, "Destails_expand").toggle_with_click.should == 1
|
202
|
+
browser.quick_button(:name, "Destails_expand").value.should == 1
|
203
|
+
end
|
204
|
+
|
205
|
+
it 'returns 0 when button is unpressed' do
|
206
|
+
browser.quick_button(:name, "Destails_expand").toggle_with_click.should == 0
|
207
|
+
browser.quick_button(:name, "Destails_expand").value.should == 0
|
208
|
+
end
|
209
|
+
|
210
|
+
after(:all) do
|
211
|
+
browser.close_dialog("Clear Private Data Dialog")
|
212
|
+
end
|
213
|
+
end
|
214
|
+
|
215
|
+
describe '#close_toolbar_with_click' do
|
216
|
+
before(:each) do
|
217
|
+
browser.quick_window(:name, "Browser Window").quick_toolbar(:name, "Status Toolbar Head").quick_button(:name, "tbb_Panel").toggle_with_click
|
218
|
+
end
|
219
|
+
|
220
|
+
it 'closes toolbar' do
|
221
|
+
browser.quick_window(:name, "Browser Window").quick_toolbar(:name, "Hotlist Panel Selector").should be_visible
|
222
|
+
browser.quick_window(:name, "Browser Window").quick_toolbar(:name, "Status Toolbar Head").quick_button(:name, "tbb_Panel").close_toolbar_with_click
|
223
|
+
browser.quick_window(:name, "Browser Window").quick_toolbar(:name, "Hotlist Panel Selector").should_not be_visible
|
224
|
+
end
|
225
|
+
|
226
|
+
end
|
31
227
|
|
32
|
-
|
228
|
+
describe '#wait_for_enabled' do
|
229
|
+
after(:each) do
|
230
|
+
browser.close_all_dialogs
|
33
231
|
end
|
34
|
-
|
232
|
+
it 'returns true when button is enabled' do
|
233
|
+
browser.open_dialog_with_url("Setup Apply Dialog Confirm Dialog", "http://t/platforms/desktop/bts/DSK-311302/keyboard.ini").should > 0
|
234
|
+
browser.quick_button(:name, "button_OK").wait_for_enabled.should be_true
|
235
|
+
browser.quick_button(:name, "button_OK").should be_enabled
|
236
|
+
end
|
237
|
+
=begin
|
238
|
+
it 'returns false' do
|
239
|
+
browser.open_dialog_with_action("Customize Toolbar Dialog", "Customize Toolbars").should open_dialog
|
240
|
+
browser.quick_dialogtab(:name, "tab_appearance_buttons").activate_tab_with_click
|
241
|
+
browser.quick_treeview(:name, "Buttons_treeview").quick_treeitem(:string_id, "D_CUSTOMIZE_TOOLBAR_DEFAULTS").focus_with_click
|
242
|
+
browser.quick_button(:name, "Reset button").wait_for_enabled.should be_false
|
243
|
+
browser.quick_button(:name, "Reset button").enabled?.should be_false
|
244
|
+
browser.close_dialog("Customize Toolbar Dialog").should close_dialog
|
245
|
+
end
|
246
|
+
=end
|
247
|
+
end
|
248
|
+
end
|