operawatir 0.4.3.pre1-jruby → 0.5-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/.gitmodules +1 -1
- data/CHANGES +230 -0
- data/Gemfile +4 -0
- data/Rakefile +3 -2
- data/VERSION +1 -1
- data/bin/desktopwatir +1 -1
- data/bin/operawatir +16 -4
- data/lib/operadriver/guava-r09.jar +0 -0
- data/lib/operadriver/operadriver-v0.7.2.jar +0 -0
- data/lib/operadriver/selenium-nodeps-20100909.jar +0 -0
- data/lib/operawatir.rb +10 -3
- data/lib/operawatir/actions.rb +111 -0
- data/lib/operawatir/browser.rb +24 -20
- data/lib/operawatir/clickable_item.rb +68 -0
- data/lib/operawatir/compat.rb +4 -4
- data/lib/operawatir/compat/collection.rb +1 -1
- data/lib/operawatir/compat/element.rb +1 -1
- data/lib/operawatir/compat/window.rb +4 -3
- data/lib/operawatir/desktop_browser.rb +299 -95
- data/lib/operawatir/desktop_common.rb +88 -23
- data/lib/operawatir/desktop_container.rb +103 -34
- data/lib/operawatir/desktop_enums.rb +4 -4
- data/lib/operawatir/desktop_exceptions.rb +2 -2
- data/lib/operawatir/desktop_helper.rb +31 -8
- data/lib/operawatir/element.rb +6 -2
- data/lib/operawatir/exceptions.rb +4 -4
- data/lib/operawatir/helper.rb +6 -6
- data/lib/operawatir/keys.rb +4 -4
- data/lib/operawatir/preferences.rb +126 -155
- data/lib/operawatir/quickwidgets.rb +3 -3
- data/lib/operawatir/quickwidgets/quick_addressfield.rb +12 -5
- data/lib/operawatir/quickwidgets/quick_button.rb +39 -53
- data/lib/operawatir/quickwidgets/quick_checkbox.rb +6 -6
- data/lib/operawatir/quickwidgets/quick_dialogtab.rb +5 -5
- data/lib/operawatir/quickwidgets/quick_dropdown.rb +28 -4
- data/lib/operawatir/quickwidgets/quick_dropdownitem.rb +46 -0
- data/lib/operawatir/quickwidgets/quick_editfield.rb +16 -13
- data/lib/operawatir/quickwidgets/quick_label.rb +1 -1
- data/lib/operawatir/quickwidgets/quick_menu.rb +155 -0
- data/lib/operawatir/quickwidgets/quick_menuitem.rb +387 -0
- data/lib/operawatir/quickwidgets/quick_searchfield.rb +7 -4
- data/lib/operawatir/quickwidgets/quick_tab.rb +23 -12
- data/lib/operawatir/quickwidgets/quick_thumbnail.rb +4 -4
- data/lib/operawatir/quickwidgets/quick_toolbar.rb +1 -1
- data/lib/operawatir/quickwidgets/quick_treeitem.rb +45 -29
- data/lib/operawatir/quickwidgets/quick_treeview.rb +2 -2
- data/lib/operawatir/quickwidgets/quick_widget.rb +267 -77
- data/lib/operawatir/quickwidgets/quick_window.rb +64 -38
- data/lib/operawatir/screenshot.rb +1 -1
- data/lib/operawatir/utils.rb +31 -0
- data/lib/operawatir/window.rb +1 -1
- data/operawatir.gemspec +38 -132
- data/spec/operawatir/core/actions_spec.rb +202 -0
- data/spec/operawatir/core/browser_spec.rb +8 -8
- data/spec/operawatir/core/element_spec.rb +11 -2
- data/spec/operawatir/core/keys_spec.rb +50 -2
- data/spec/operawatir/core/preferences_spec.rb +44 -128
- data/spec/operawatir/core/spatnav_spec.rb +16 -16
- data/spec/operawatir/core/utils_spec.rb +47 -0
- data/spec/operawatir/core/window_spec.rb +1 -1
- data/spec/operawatir/desktop/desktopbrowser_spec.rb +191 -22
- data/spec/operawatir/desktop/quickbutton_spec.rb +197 -164
- data/spec/operawatir/desktop/quickcheckbox_spec.rb +12 -12
- data/spec/operawatir/desktop/quickdialogtab_spec.rb +11 -11
- data/spec/operawatir/desktop/quickdropdown_spec.rb +25 -25
- data/spec/operawatir/desktop/quickeditfield_spec.rb +31 -31
- data/spec/operawatir/desktop/quickmenu_spec.rb +57 -0
- data/spec/operawatir/desktop/quickmenuitem_spec.rb +168 -0
- data/spec/operawatir/desktop/quicktab_spec.rb +26 -15
- data/spec/operawatir/desktop/quickthumbnail_spec.rb +18 -4
- data/spec/operawatir/desktop/quicktreeitem_spec.rb +72 -72
- data/spec/operawatir/desktop/quicktreeview_spec.rb +13 -13
- data/spec/operawatir/desktop/quickwidget_spec.rb +51 -13
- data/spec/operawatir/desktop/quickwindow_spec.rb +4 -0
- data/spec/operawatir/desktop/shared/shared.rb +25 -9
- data/spec/operawatir/fixtures/draggableLists.html +67 -0
- data/spec/operawatir/fixtures/formSelectionPage.html +46 -0
- data/spec/operawatir/fixtures/js/jquery-1.4.4.min.js +167 -0
- data/spec/operawatir/fixtures/js/jquery-ui-1.8.10.custom.min.js +782 -0
- data/spec/operawatir/fixtures/keys.html +40 -0
- data/spec/operawatir/fixtures/label_submit.html +5 -0
- data/spec/operawatir/fixtures/mouse.html +59 -0
- data/spec/operawatir/fixtures/simple.html +10 -0
- data/spec/operawatir/matchers.rb +20 -19
- data/spec/operawatir/watirspec_desktophelper.rb +51 -3
- data/spec/operawatir/watirspec_helper.rb +0 -2
- metadata +91 -220
- data/lib/operadriver/client-combined-nodeps.jar +0 -0
- data/lib/operadriver/webdriver-opera.jar +0 -0
- data/spec/watir3/browser_spec.rb +0 -190
- data/spec/watir3/clipboard_spec.rb +0 -64
- data/spec/watir3/collection_spec.rb +0 -387
- data/spec/watir3/element_spec.rb +0 -474
- data/spec/watir3/guards.rb +0 -39
- data/spec/watir3/keys_spec.rb +0 -204
- data/spec/watir3/server.rb +0 -91
- data/spec/watir3/watirspec_helper.rb +0 -62
- data/spec/watir3/window_spec.rb +0 -295
@@ -2,13 +2,13 @@ require File.expand_path('../../watirspec_desktophelper', __FILE__)
|
|
2
2
|
require File.expand_path('../shared/shared', __FILE__)
|
3
3
|
|
4
4
|
describe 'QuickDialogTab' do
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
5
|
+
before(:all) do
|
6
|
+
browser.open_dialog_with_action("New Preferences Dialog", "Show preferences").should > 0
|
7
|
+
end
|
8
|
+
|
9
|
+
after(:all) do
|
10
|
+
browser.close_all_dialogs
|
11
|
+
end
|
12
12
|
|
13
13
|
let(:widget) { browser.quick_dialogtab(:name, "tab_prefs_advanced") }
|
14
14
|
subject { widget }
|
@@ -18,10 +18,10 @@ describe 'QuickDialogTab' do
|
|
18
18
|
its(:type) { should == :dialogtab }
|
19
19
|
|
20
20
|
describe '#activate_tab_with_click' do
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
21
|
+
it 'activates a tab with click' do
|
22
|
+
browser.quick_dialogtab(:name, "tab_prefs_advanced").activate_tab_with_click
|
23
|
+
browser.quick_checkbox(:name, "Thumbnails_in_tab_cycle").should be_visible
|
24
|
+
end
|
25
25
|
end
|
26
26
|
|
27
27
|
end
|
@@ -3,35 +3,35 @@ require File.expand_path('../shared/shared', __FILE__)
|
|
3
3
|
|
4
4
|
describe 'QuickDropdown' do
|
5
5
|
|
6
|
-
|
7
|
-
|
8
|
-
|
6
|
+
before(:all) do
|
7
|
+
browser.open_dialog_with_action("New Preferences Dialog", "Show preferences", 0).should > 0
|
8
|
+
end
|
9
9
|
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
10
|
+
after(:all) do
|
11
|
+
browser.close_all_tabs
|
12
|
+
browser.close_all_dialogs
|
13
|
+
end
|
14
14
|
|
15
|
-
|
16
|
-
|
15
|
+
let(:widget) { browser.quick_dropdown(:name, "Startup_mode_dropdown") }
|
16
|
+
subject { widget }
|
17
17
|
|
18
|
-
|
18
|
+
it_behaves_like 'a widget'
|
19
19
|
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
20
|
+
|
21
|
+
describe '#selected?'do
|
22
|
+
it 'returns true for selected item' do
|
23
|
+
browser.quick_dropdown(:name, "Startup_mode_dropdown").selected?("D_STARTUP_LAST_TIME").should be_true
|
24
|
+
end
|
25
|
+
|
26
|
+
it 'returns false for not selected item' do
|
27
|
+
browser.quick_dropdown(:name, "Startup_mode_dropdown").selected?("D_STARTUP_SAVED_SESSIONS").should be_false
|
28
|
+
end
|
29
|
+
|
30
|
+
it 'raises an exception for not shown widget' do
|
31
|
+
browser.close_all_dialogs
|
32
|
+
expect { browser.quick_dropdown(:name, "Startup_mode_dropdown").selected?("D_STARTUP_SAVED_SESSIONS") }.to raise_error OperaWatir::DesktopExceptions::UnknownObjectException
|
33
|
+
end
|
34
|
+
|
35
35
|
end
|
36
36
|
|
37
37
|
|
@@ -4,47 +4,47 @@ require File.expand_path('../shared/shared', __FILE__)
|
|
4
4
|
|
5
5
|
describe 'QuickEditField' do
|
6
6
|
|
7
|
-
|
8
|
-
|
9
|
-
|
7
|
+
before(:all) do
|
8
|
+
browser.open_dialog_with_action("New Preferences Dialog", "Show preferences", 1).should open_dialog
|
9
|
+
end
|
10
|
+
|
11
|
+
after(:all) do
|
12
|
+
browser.close_all_tabs
|
13
|
+
browser.close_all_dialogs
|
14
|
+
end
|
10
15
|
|
11
|
-
|
12
|
-
|
13
|
-
browser.close_all_dialogs
|
14
|
-
end
|
15
|
-
|
16
|
-
let(:url1) { "http://t/platforms/desktop/automated/resources/documents/page1.html" }
|
17
|
-
let(:url2) { "http://t/platforms/desktop/automated/resources/documents/page2.html" }
|
16
|
+
let(:url1) { "http://t/platforms/desktop/automated/resources/documents/page1.html" }
|
17
|
+
let(:url2) { "http://t/platforms/desktop/automated/resources/documents/page2.html" }
|
18
18
|
|
19
|
-
|
20
|
-
|
19
|
+
let(:widget) { browser.quick_editfield(:name, "Firstname_edit") }
|
20
|
+
subject { widget }
|
21
21
|
|
22
|
-
|
23
|
-
|
22
|
+
it_behaves_like 'a widget'
|
23
|
+
it_behaves_like 'an editfield'
|
24
24
|
|
25
|
-
|
25
|
+
its(:type) { should == :editfield }
|
26
26
|
|
27
27
|
describe '#load_page_with_key_press(key, *modifiers)' do
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
28
|
+
it 'loads page' do
|
29
|
+
browser.close_all_dialogs
|
30
|
+
browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field").focus_with_click
|
31
|
+
browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field").clear
|
32
|
+
browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field").type_text(url1).should == url1
|
33
|
+
browser.load_page_with_key_press("Enter").should > 0
|
34
|
+
browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field").text.should == url1
|
35
|
+
browser.quick_window(:name, "Browser Window").quick_toolbar(:name, "Pagebar").quick_tab(:name, "Tab 0").text.should == "Test Page 1"
|
36
|
+
end
|
37
37
|
end
|
38
38
|
|
39
39
|
=begin # it is a private method
|
40
40
|
describe '#enter_text_and_hit_enter(text)' do
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
41
|
+
it "type text and press enter in the same method" do
|
42
|
+
browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field").focus_with_click
|
43
|
+
browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field").clear
|
44
|
+
browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field").enter_text_and_hit_enter(url2).should == url2
|
45
|
+
browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field").text.should == url2
|
46
|
+
browser.quick_window(:name, "Browser Window").quick_toolbar(:name, "Pagebar").quick_tab(:name, "Tab 0").text.should == "Test Page 2"
|
47
|
+
end
|
48
48
|
end
|
49
49
|
=end
|
50
50
|
|
@@ -0,0 +1,57 @@
|
|
1
|
+
require File.expand_path('../../watirspec_desktophelper', __FILE__)
|
2
|
+
require File.expand_path('../shared/shared', __FILE__)
|
3
|
+
|
4
|
+
describe 'QuickMenu' do
|
5
|
+
let(:addressfield) { browser.quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field") }
|
6
|
+
let(:menu) { browser.quick_menu(:name, "Toolbar Edit Item Popup Menu") }
|
7
|
+
|
8
|
+
subject { menu }
|
9
|
+
|
10
|
+
before(:each) do
|
11
|
+
addressfield.open_menu_with_rightclick("Toolbar Edit Item Popup Menu").should open_menu
|
12
|
+
end
|
13
|
+
after(:each) do
|
14
|
+
browser.close_all_menus
|
15
|
+
end
|
16
|
+
|
17
|
+
its(:name) { should_not be_empty }
|
18
|
+
its(:window_id) { should be_kind_of Integer }
|
19
|
+
its(:to_s) { should_not be_empty } #should == menu.element.toString()
|
20
|
+
its(:width) { should be_kind_of Integer }
|
21
|
+
its(:height) { should be_kind_of Integer }
|
22
|
+
its(:x) { should be_kind_of Integer }
|
23
|
+
its(:y) { should be_kind_of Integer }
|
24
|
+
|
25
|
+
describe '#exists'do
|
26
|
+
it 'should return true' do
|
27
|
+
menu.should exist
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
describe '#parentmenu?' do
|
32
|
+
it 'should return true or false' do
|
33
|
+
menu.should be_parentmenu
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
describe '#quick_menu' do
|
38
|
+
it 'constructs a menu by its name' do
|
39
|
+
menu.should exist
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
describe '#quick_menus' do
|
44
|
+
it 'lists all menus' do
|
45
|
+
browser.quick_menus.should_not be_empty
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
describe '#quick_menuitems' do
|
50
|
+
it 'lists menuitems in this menu' do
|
51
|
+
puts menu.quick_menuitems
|
52
|
+
menu.quick_menuitems.select { |item| item.menu != menu.name }.should be_empty
|
53
|
+
menu.quick_menuitems.select { |item| item.menu == menu.name }.should_not be_empty
|
54
|
+
menu.quick_menuitems.select { |item| item.submenu_item? == true }.should_not be_empty
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
@@ -0,0 +1,168 @@
|
|
1
|
+
require File.expand_path('../../watirspec_desktophelper', __FILE__)
|
2
|
+
require File.expand_path('../shared/shared', __FILE__)
|
3
|
+
|
4
|
+
describe 'QuickMenuItem' do
|
5
|
+
|
6
|
+
let(:addressfield) { browser.quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field") }
|
7
|
+
let(:menuitem) { browser.quick_menuitem(:name, "Clear") }
|
8
|
+
|
9
|
+
before(:all) { addressfield.open_menu_with_rightclick("Toolbar Edit Item Popup Menu") }
|
10
|
+
after(:all) { browser.close_all_menus }
|
11
|
+
|
12
|
+
subject { menuitem }
|
13
|
+
|
14
|
+
its(:shortcut) { should be_kind_of(String) }
|
15
|
+
its(:shortcutletter) { should be_kind_of String }
|
16
|
+
its(:text) { should_not be_empty }
|
17
|
+
its(:enabled?) {should be_true }
|
18
|
+
its(:checked?) { should be_false }
|
19
|
+
its(:pos) { should be_kind_of Integer }
|
20
|
+
its(:name) { should_not be_empty }
|
21
|
+
its(:menu) { should == "Toolbar Edit Item Popup Menu" }
|
22
|
+
its(:separator?) { should be_false }
|
23
|
+
its(:bold?) { should be_false }
|
24
|
+
its(:action_item?) { should be_true }
|
25
|
+
its(:submenu_item?) {should be_false }
|
26
|
+
its(:action_params) { should be_empty }
|
27
|
+
its(:submenu) { should be_empty }
|
28
|
+
its(:width) { should be_kind_of Integer }
|
29
|
+
its(:height) { should be_kind_of Integer }
|
30
|
+
its(:x) { should be_kind_of Integer }
|
31
|
+
its(:y) { should be_kind_of Integer }
|
32
|
+
its(:to_s) { should_not be_empty }
|
33
|
+
|
34
|
+
describe '#open_window_with_click' do
|
35
|
+
it 'opens a window'
|
36
|
+
it 'raises exception if menuitem is disabled'
|
37
|
+
end
|
38
|
+
|
39
|
+
describe '#toggle_with_click' do
|
40
|
+
it 'toggles checkbox of menuitem'
|
41
|
+
end
|
42
|
+
|
43
|
+
|
44
|
+
describe '#quick_menuitem' do
|
45
|
+
it 'constructs a menu item by its action name' do
|
46
|
+
browser.quick_menu(:name, "Toolbar Edit Item Popup Menu").should exist
|
47
|
+
browser.quick_menu(:name, "Toolbar Edit Item Popup Menu").quick_menuitem(:action, "Clear").should exist
|
48
|
+
end
|
49
|
+
|
50
|
+
it 'constructs a menu item by its submenu name' do
|
51
|
+
browser.quick_menu(:name, "Toolbar Edit Item Popup Menu").quick_menuitem(:submenu, "Toolbar Popup Customize Menu").should exist
|
52
|
+
end
|
53
|
+
|
54
|
+
it 'constructs a menu item by its text' do
|
55
|
+
browser.quick_menu(:name, "Toolbar Edit Item Popup Menu").quick_menuitem(:text, "Clear All").should exist
|
56
|
+
end
|
57
|
+
|
58
|
+
it 'constructs a menu item by its position (row)' do
|
59
|
+
browser.quick_menu(:name, "Toolbar Edit Item Popup Menu").quick_menuitem(:pos, 1).should exist
|
60
|
+
end
|
61
|
+
|
62
|
+
it 'constructs a menu item by its shortcutletter' do
|
63
|
+
browser.quick_menu(:name, "Toolbar Edit Item Popup Menu").quick_menuitem(:acckey, "R").should exist
|
64
|
+
end
|
65
|
+
|
66
|
+
it 'constructs a menu item by its shortcut' do
|
67
|
+
browser.quick_menu(:name, "Toolbar Edit Item Popup Menu").quick_menuitem(:shortcut, "Ctrl+V").should exist
|
68
|
+
end
|
69
|
+
|
70
|
+
it 'constructs a menuitem by its stringId' do
|
71
|
+
browser.quick_menu(:name, "Toolbar Edit Item Popup Menu").quick_menuitem(:string_id, "MI_IDM_EDIT_UNDO").should exist
|
72
|
+
end
|
73
|
+
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
describe 'QuickMenuItem' do
|
78
|
+
let(:addressfield) { browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field") }
|
79
|
+
let(:menu) { browser.quick_menu(:name, "Toolbar Edit Item Popup Menu") }
|
80
|
+
let(:submenu) { browser.quick_menu(:name, "Toolbar Popup Customize Menu")}
|
81
|
+
|
82
|
+
before(:each) do
|
83
|
+
addressfield.open_menu_with_rightclick("Toolbar Edit Item Popup Menu").should open_menu
|
84
|
+
end
|
85
|
+
|
86
|
+
after(:each) do
|
87
|
+
browser.close_all_menus
|
88
|
+
browser.close_all_dialogs
|
89
|
+
end
|
90
|
+
|
91
|
+
#describe '#close_menu_with_key_press' do
|
92
|
+
# it 'closes menu' #do
|
93
|
+
#browser.quick_menu(:name, "Toolbar Edit Item Popup Menu").quick_menuitem(:action, "Delete").close_menu_with_key_press("Toolbar Edit Item Popup Menu", "Esc").should close_menu
|
94
|
+
# end
|
95
|
+
#end
|
96
|
+
|
97
|
+
describe '#open_menu_with_hover' do
|
98
|
+
it 'opens submenu' do
|
99
|
+
menu.quick_menuitem(:submenu, "Toolbar Popup Customize Menu").open_menu_with_hover("Toolbar Popup Customize Menu").should open_menu
|
100
|
+
submenu.quick_menuitem(:action, "Customize Toolbars").open_dialog_with_click("Customize Toolbar Dialog").should > 0
|
101
|
+
#submenu.quick_menuitem(:action, "Customize Toolbars").close_menu_with_click("Toolbar Popup Customize Menu").should close_menu
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
105
|
+
describe '#close_menu_with_click' do
|
106
|
+
it 'closes menu'
|
107
|
+
end
|
108
|
+
|
109
|
+
end
|
110
|
+
|
111
|
+
describe 'QuickMenuItem' do
|
112
|
+
let(:addressfield) { browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field") }
|
113
|
+
let(:menu) { browser.quick_menu(:name, "Toolbar Edit Item Popup Menu") }
|
114
|
+
let(:submenu) { browser.quick_menu(:name, "Toolbar Popup Customize Menu")}
|
115
|
+
let(:mainmenu) { browser.quick_menu(:name, "Browser Button Menu Bar")}
|
116
|
+
|
117
|
+
let(:menubutton) { browser.quick_window(:name, "Browser Window").quick_toolbar(:name, "Pagebar Head").quick_button(:name, "tbb_MenuButton")}
|
118
|
+
let(:bookmarksmenu) { browser.quick_menu(:name, "Browser Bookmarks Menu")}
|
119
|
+
|
120
|
+
let(:menubar) {browser.quick_menu(:name, "Main Menu")}
|
121
|
+
|
122
|
+
describe '#load_page_with_click' do
|
123
|
+
it 'loads a page (from bookmark)' #do
|
124
|
+
# menubutton.open_menu_with_click("Browser Button Menu Bar").should open_menu
|
125
|
+
# mainmenu.quick_menuitem(:submenu, "Browser Bookmarks Menu").open_menu_with_hover("Browser Bookmarks Menu").should open_menu
|
126
|
+
# #mainmenu.quick_menuitem(:shortcut, "B").open_menu_with_hover("Browser Bookmarks Menu").should open_menu
|
127
|
+
# bookmarksmenu.quick_menuitem(:text, "Kayak").load_page_with_click.should be > 0
|
128
|
+
# end
|
129
|
+
end
|
130
|
+
|
131
|
+
describe '#open_window_with_click' do
|
132
|
+
it 'opens window (Downloads tab)' do
|
133
|
+
menubutton.open_menu_with_click("Browser Button Menu Bar").should open_menu
|
134
|
+
mainmenu.quick_menuitem(:text, "Downloads").open_window_with_click("Transfers Panel Window").should open_window
|
135
|
+
end
|
136
|
+
after (:all) do
|
137
|
+
browser.close_all_tabs
|
138
|
+
end
|
139
|
+
end
|
140
|
+
|
141
|
+
|
142
|
+
describe '#quick_menuitems' do
|
143
|
+
#before:enable menubar?
|
144
|
+
it 'lists menuitems' do
|
145
|
+
addressfield.open_menu_with_rightclick("Toolbar Edit Item Popup Menu").should open_menu
|
146
|
+
browser.quick_menuitems.should_not be_empty
|
147
|
+
end
|
148
|
+
end
|
149
|
+
|
150
|
+
|
151
|
+
describe '#open_window_with_click using main menu bar' do
|
152
|
+
before(:each) do
|
153
|
+
#enable menubar
|
154
|
+
if menubutton.exists?
|
155
|
+
menubutton.open_menu_with_click("Browser Button Menu Bar").should open_menu
|
156
|
+
mainmenu.quick_menuitem(:action, "Enable menu bar").toggle_with_click
|
157
|
+
end
|
158
|
+
end
|
159
|
+
|
160
|
+
it 'opens window (Downloads tab)' do
|
161
|
+
menubar.quick_menuitem(:name, "Browser Tools Menu").open_menu_with_click("Browser Tools Menu").should open_menu
|
162
|
+
|
163
|
+
browser.quick_menu(:name, "Browser Tools Menu").quick_menuitem(:text, "Downloads").open_window_with_click("Transfers Panel Window").should open_window
|
164
|
+
end
|
165
|
+
end
|
166
|
+
end
|
167
|
+
|
168
|
+
|
@@ -3,8 +3,8 @@ require File.expand_path('../shared/shared', __FILE__)
|
|
3
3
|
|
4
4
|
describe 'QuickTab' do
|
5
5
|
|
6
|
-
|
7
|
-
|
6
|
+
let(:url1) { "http://t/platforms/desktop/automated/resources/documents/page1.html" }
|
7
|
+
let(:url2) { "http://t/platforms/desktop/automated/resources/documents/page2.html" }
|
8
8
|
|
9
9
|
let(:widget) { browser.quick_window(:name, "Browser Window").quick_toolbar(:name, "Pagebar").quick_tab(:name, "Tab 0") }
|
10
10
|
|
@@ -14,7 +14,7 @@ describe 'QuickTab' do
|
|
14
14
|
it_behaves_like "a button"
|
15
15
|
|
16
16
|
its(:type) { should == :tabbutton }
|
17
|
-
|
17
|
+
|
18
18
|
describe '#quick_tab' do
|
19
19
|
before(:all) do
|
20
20
|
browser.quick_window(:name, "Document Window").quick_toolbar(:name, "Document Toolbar").quick_addressfield(:name, "tba_address_field").load_page_with_url(url1).should == url1
|
@@ -38,7 +38,10 @@ describe 'QuickTab' do
|
|
38
38
|
|
39
39
|
describe '#move_with_drag' do
|
40
40
|
describe 'when target is not a tab' do
|
41
|
-
it 'raises UnknownObjectException'
|
41
|
+
it 'raises UnknownObjectException' do
|
42
|
+
browser.load_window_with_action("Document Window", "Open url in current page", "http://t/platforms/desktop/automated/resources/documents/page1.html").should > 0
|
43
|
+
expect { browser.quick_window(:name, "Browser Window").quick_toolbar(:name, "Pagebar").quick_tab(:text, "Test Page 1").move_with_drag(browser.quick_window(:name, "Browser Window")) }.to raise_error OperaWatir::DesktopExceptions::UnknownObjectException
|
44
|
+
end
|
42
45
|
end
|
43
46
|
end
|
44
47
|
|
@@ -52,20 +55,22 @@ describe 'QuickTab' do
|
|
52
55
|
browser.quick_window(:name, "Browser Window").quick_toolbar(:name, "Pagebar").quick_tab(:name, "Tab 0").activate_tab_with_click.should > 0
|
53
56
|
end
|
54
57
|
|
55
|
-
|
56
|
-
it 'returns 0' do
|
58
|
+
it 'when the window is already active returns 0' do
|
57
59
|
browser.quick_window(:name, "Browser Window").quick_toolbar(:name, "Pagebar").quick_tab(:name, "Tab 0").activate_tab_with_click.should == 0
|
58
|
-
end
|
59
60
|
end
|
60
|
-
|
61
|
+
|
61
62
|
context 'when the tab button does not exist' do
|
62
|
-
it 'raises UnknownObjectException'
|
63
|
-
|
64
|
-
|
63
|
+
it 'raises UnknownObjectException' do
|
64
|
+
expect { browser.quick_window(:name, "Browser Window").quick_toolbar(:name, "Pagebar").quick_tab(:name, "Tab 2").activate_tab_with_click }.to raise_error OperaWatir::Exceptions::UnknownObjectException
|
65
|
+
end
|
65
66
|
end
|
66
67
|
|
67
68
|
context 'when the tab button is not visible' do
|
68
|
-
it 'raises WidgetNotVisibleException'
|
69
|
+
it 'raises WidgetNotVisibleException' #do
|
70
|
+
#tab_to_drop_on = browser.quick_window(:name, "Browser Window").quick_toolbar(:name, "Pagebar").quick_tab(:text, "Test Page 2")
|
71
|
+
#browser.quick_window(:name, "Browser Window").quick_toolbar(:name, "Pagebar").quick_tab(:text, "Test Page 1").move_with_drag(tab_to_drop_on)
|
72
|
+
#expect { browser.quick_window(:name, "Browser Window").quick_toolbar(:name, "Pagebar").quick_tab(:name, "Tab 1").activate_tab_with_click }.to raise_error OperaWatir::DesktopExceptions::WidgetNotVisibleException
|
73
|
+
#end
|
69
74
|
end
|
70
75
|
|
71
76
|
it 'activates a tab with click' do
|
@@ -75,12 +80,18 @@ describe 'QuickTab' do
|
|
75
80
|
browser.quick_window(:name, "Browser Window").quick_toolbar(:name, "Pagebar").quick_tab(:name, "Tab 1").text.should == "Test Page 2"
|
76
81
|
end
|
77
82
|
end
|
78
|
-
|
83
|
+
|
79
84
|
#Note this part of api will probably change when new tab grouping is handled
|
80
85
|
describe '#group_with_drag' do
|
81
|
-
|
86
|
+
|
87
|
+
it 'raises UnknownObjectException if target is not a tab'
|
88
|
+
|
82
89
|
it 'returns the number of tabs in the tab group'
|
83
|
-
|
90
|
+
|
91
|
+
it 'returns 1 if not a group'
|
92
|
+
|
84
93
|
end
|
85
94
|
|
95
|
+
|
96
|
+
|
86
97
|
end
|