operawatir 0.4.1.pre5-jruby → 0.4.1.pre6-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/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
|