~osomon/webbrowser-app/maxCacheSizeHint

« back to all changes in this revision

Viewing changes to tests/autopilot/webbrowser_app/emulators/browser.py

  • Committer: Olivier Tilloy
  • Date: 2015-04-08 15:29:44 UTC
  • mfrom: (930.1.25 webbrowser-app)
  • Revision ID: olivier.tilloy@canonical.com-20150408152944-zg7hpedldixspgf7
Merge the latest changes from trunk and resolve a conflict.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
2
2
#
3
 
# Copyright 2013-2014 Canonical
 
3
# Copyright 2013-2015 Canonical
4
4
#
5
5
# This program is free software: you can redistribute it and/or modify it
6
6
# under the terms of the GNU General Public License version 3, as published
70
70
        return self.get_parent()
71
71
 
72
72
    def get_current_webview(self):
73
 
        return self.select_single("WebViewImpl", current=True)
 
73
        return self.select_single("WebViewImpl", visible=True)
74
74
 
75
75
    def get_webviews(self):
76
76
        return self.select_many("WebViewImpl")
77
77
 
78
 
    def get_visible_webviews(self):
79
 
        return self.select_many("WebViewImpl", visible=True)
80
 
 
81
78
    def get_error_sheet(self):
82
79
        return self.select_single("ErrorSheet")
83
80
 
95
92
                                       objectName="selectionActions")
96
93
 
97
94
    def get_tabs_view(self):
98
 
        return self.wait_select_single(TabsView)
 
95
        return self.wait_select_single(TabsList, visible=True)
 
96
 
 
97
    def get_recent_view_toolbar(self):
 
98
        return self.wait_select_single(Toolbar, objectName="recentToolbar",
 
99
                                       state="shown")
99
100
 
100
101
    def get_new_tab_view(self):
101
102
        return self.wait_select_single("NewTabView", visible=True)
105
106
        return self.wait_select_single("PopupBase",
106
107
                                       objectName="contentPickerDialog")
107
108
 
 
109
    def get_bottom_edge_hint(self):
 
110
        return self.select_single("QQuickImage", objectName="bottomEdgeHint")
 
111
 
108
112
 
109
113
class Chrome(uitk.UbuntuUIToolkitCustomProxyObjectBase):
110
114
 
150
154
 
151
155
    def get_drawer_action(self, actionName):
152
156
        drawer = self.get_drawer()
153
 
        return drawer.select_single("AbstractButton", objectName=actionName)
 
157
        return drawer.select_single("AbstractButton", objectName=actionName,
 
158
                                    visible=True)
154
159
 
155
160
 
156
161
class AddressBar(uitk.UbuntuUIToolkitCustomProxyObjectBase):
216
221
 
217
222
class TabPreview(uitk.UbuntuUIToolkitCustomProxyObjectBase):
218
223
 
219
 
    def get_close_button(self):
220
 
        return self.select_single("AbstractButton", objectName="closeButton")
221
 
 
222
 
 
223
 
class TabsView(uitk.UbuntuUIToolkitCustomProxyObjectBase):
 
224
    @autopilot.logging.log_action(logger.info)
 
225
    def select(self):
 
226
        area = self.select_single("QQuickMouseArea", objectName="selectArea")
 
227
        # click towards the top of the area to ensure we’re not selecting
 
228
        # the following preview that might be overlapping
 
229
        ca = area.globalRect
 
230
        self.pointing_device.move(ca.x + ca.width // 2, ca.y + ca.height // 4)
 
231
        self.pointing_device.click()
 
232
 
 
233
    @autopilot.logging.log_action(logger.info)
 
234
    def close(self):
 
235
        button = self.select_single("AbstractButton", objectName="closeButton")
 
236
        self.pointing_device.click_object(button)
 
237
 
 
238
 
 
239
class TabsList(uitk.UbuntuUIToolkitCustomProxyObjectBase):
224
240
 
225
241
    def get_previews(self):
226
 
        return self.select_many(TabPreview)
227
 
 
228
 
    def get_ordered_previews(self):
229
 
        previews = self.get_previews()
230
 
        previews.sort(key=lambda tab: tab.y)
 
242
        previews = self.select_many(TabPreview)
 
243
        previews.sort(key=lambda tab: tab.globalRect.y)
231
244
        return previews
232
245
 
233
 
    def get_done_button(self):
234
 
        return self.select_single("Button", objectName="doneButton")
235
 
 
236
 
    def get_add_button(self):
237
 
        return self.select_single("ToolbarAction", objectName="addTabButton")
 
246
 
 
247
class Toolbar(uitk.UbuntuUIToolkitCustomProxyObjectBase):
 
248
 
 
249
    @autopilot.logging.log_action(logger.info)
 
250
    def click_button(self, name):
 
251
        self.isFullyShown.wait_for(True)
 
252
        button = self.select_single("Button", objectName=name)
 
253
        self.pointing_device.click_object(button)
 
254
 
 
255
    @autopilot.logging.log_action(logger.info)
 
256
    def click_action(self, name):
 
257
        self.isFullyShown.wait_for(True)
 
258
        action = self.select_single("ToolbarAction", objectName=name)
 
259
        self.pointing_device.click_object(action)