Merge lp:~lderan/ubuntu-autopilot-tests/ubuntu-autopilot-tests into lp:ubuntu-autopilot-tests

Proposed by Thomas Molloy on 2014-01-20
Status: Needs review
Proposed branch: lp:~lderan/ubuntu-autopilot-tests/ubuntu-autopilot-tests
Merge into: lp:ubuntu-autopilot-tests
Diff against target: 1649 lines (+1350/-3)
52 files modified
xubuntu_autopilot_tests/abiword/__init__.py (+2/-0)
xubuntu_autopilot_tests/abiword/test_abiword.py (+65/-0)
xubuntu_autopilot_tests/catfish/__init__.py (+2/-0)
xubuntu_autopilot_tests/catfish/test_catfish.py (+51/-0)
xubuntu_autopilot_tests/evince/__init__.py (+2/-0)
xubuntu_autopilot_tests/evince/test_evince.py (+51/-0)
xubuntu_autopilot_tests/file-roller/__init__.py (+2/-0)
xubuntu_autopilot_tests/file-roller/test_file_roller.py (+51/-0)
xubuntu_autopilot_tests/gmusicbrowser/__init__.py (+2/-0)
xubuntu_autopilot_tests/gmusicbrowser/test_gmusicbrowser.py (+51/-0)
xubuntu_autopilot_tests/gnome-calculator/__init__.py (+2/-0)
xubuntu_autopilot_tests/gnome-calculator/test_gnome_calculator.py (+51/-0)
xubuntu_autopilot_tests/gnumeric/__init__.py (+2/-0)
xubuntu_autopilot_tests/gnumeric/test_gnumeric.py (+51/-0)
xubuntu_autopilot_tests/gthumb/__init__.py (+2/-0)
xubuntu_autopilot_tests/gthumb/test_gthumb.py (+51/-0)
xubuntu_autopilot_tests/gucharmap/__init__.py (+2/-0)
xubuntu_autopilot_tests/gucharmap/test_gucharmap.py (+51/-0)
xubuntu_autopilot_tests/mousepad/__init__.py (+2/-0)
xubuntu_autopilot_tests/mousepad/test_mousepad.py (+51/-0)
xubuntu_autopilot_tests/onboard/__init__.py (+2/-0)
xubuntu_autopilot_tests/onboard/test_onboard.py (+51/-0)
xubuntu_autopilot_tests/orage-calendar/__init__.py (+2/-0)
xubuntu_autopilot_tests/orage-calendar/test_orage_calendar.py (+51/-0)
xubuntu_autopilot_tests/orage-globaltime/__init__.py (+2/-0)
xubuntu_autopilot_tests/orage-globaltime/test_orage_globaltime.py (+51/-0)
xubuntu_autopilot_tests/pavucontrol/__init__.py (+2/-0)
xubuntu_autopilot_tests/pavucontrol/test_pavucontrol.py (+51/-0)
xubuntu_autopilot_tests/pidgin/__init__.py (+2/-0)
xubuntu_autopilot_tests/pidgin/test_pidgin.py (+51/-0)
xubuntu_autopilot_tests/ristretto/__init__.py (+2/-0)
xubuntu_autopilot_tests/ristretto/test_ristretto.py (+51/-0)
xubuntu_autopilot_tests/simple-scan/__init__.py (+2/-0)
xubuntu_autopilot_tests/simple-scan/test_simple_scan.py (+50/-0)
xubuntu_autopilot_tests/sudoku/__init__.py (+2/-0)
xubuntu_autopilot_tests/sudoku/test_sudoku.py (+49/-0)
xubuntu_autopilot_tests/thunderbird/__init__.py (+2/-0)
xubuntu_autopilot_tests/thunderbird/test_thunderbird.py (+49/-0)
xubuntu_autopilot_tests/transmission-gtk/__init__.py (+2/-0)
xubuntu_autopilot_tests/transmission-gtk/test_transmission_gtk.py (+49/-0)
xubuntu_autopilot_tests/xfce4-appfinder/__init__.py (+2/-0)
xubuntu_autopilot_tests/xfce4-appfinder/test_xfce4_appfinder.py (+51/-0)
xubuntu_autopilot_tests/xfce4-dict/__init__.py (+2/-0)
xubuntu_autopilot_tests/xfce4-dict/test_xfce4_dict.py (+51/-0)
xubuntu_autopilot_tests/xfce4-screenshooter/__init__.py (+2/-0)
xubuntu_autopilot_tests/xfce4-screenshooter/test_xfce4_screenshooter.py (+51/-0)
xubuntu_autopilot_tests/xfce4-settings-manager/__init__.py (+2/-0)
xubuntu_autopilot_tests/xfce4-settings-manager/test_xfce4_settings_manager.py (+66/-0)
xubuntu_autopilot_tests/xfce4-taskmanager/__init__.py (+2/-0)
xubuntu_autopilot_tests/xfce4-taskmanager/test_xfce4_taskmanager.py (+51/-0)
xubuntu_autopilot_tests/xfce4-terminal/__init__.py (+1/-1)
xubuntu_autopilot_tests/xfce4-terminal/test_terminal.py (+2/-2)
To merge this branch: bzr merge lp:~lderan/ubuntu-autopilot-tests/ubuntu-autopilot-tests
Reviewer Review Type Date Requested Status
Nicholas Skaggs (community) 2014-01-20 Needs Fixing on 2014-01-23
Review via email: mp+202335@code.launchpad.net

Description of the change

Added simple tests for Sudoku and gThumb to the Xubuntu Autopilot tests

To post a comment you must log in.
66. By Thomas Molloy on 2014-01-20

Added Simple-scan test to Xubuntu tests

67. By Thomas Molloy on 2014-01-20

gmusicbrowser simple test for Xubuntu

68. By Thomas Molloy on 2014-01-20

Added Ristretto Image Viewer test to the Xubuntu test directory

Nicholas Skaggs (nskaggs) wrote :

Thanks for these tests! Glad to see you trying out autopilot. I'll leave a few quick comments.

You should change the author to be yourself in these tests :-)
In gmusicbrowser/__init__.py, I'm confused why you have terminalapp classes, etc. Is this correct? Actually it seems all of your __init__.py are this way. They can be blank files instead if you don't have a class to put in them :-)

In the gmusicbrowser test;

I take it you want the window to be the only one?
windows = self.app.get_windows()
self.assertTrue(len(windows) == 1)

This is ok, but note that mainWindow.title will never change as it's already set (well, the app could change it, but I don't think that's what we're looking for here :-) ) I'm not exactly sure you need the eventually here, but if so you should ensure you get the window as part of the lambda function.
mainWindow = windows[0]
self.assertThat(lambda: mainWindow.title, Eventually(Contains('gmusicbrowser')))

Reviewing several apps at once is a bit hard; ideally split these up in the future :-) Overall this is a great first start. It seems you can't get introspection to work for these apps is that correct? If so, I would still like to see a bit more of the application tested if at all possible. I know using process manager will severely limit you, but it's worthwhile to see how creative you can be. Ping me on IRC @ balloons anytime for help or further info. Looking forward to seeing your tweaks.

review: Needs Fixing
Thomas Molloy (lderan) wrote :

The __init__ must of come from my copying and pasting the terminal app folder to make the others, my apologies. Shall fix this as soon as I can. and try to expand on the tests before submitting another MP.

Thomas Molloy (lderan) wrote :

> In the gmusicbrowser test;
>
> I take it you want the window to be the only one?
> windows = self.app.get_windows()
> self.assertTrue(len(windows) == 1)
Yes, that is correct

> This is ok, but note that mainWindow.title will never change as it's already
> set (well, the app could change it, but I don't think that's what we're
> looking for here :-) ) I'm not exactly sure you need the eventually here, but
> if so you should ensure you get the window as part of the lambda function.
> mainWindow = windows[0]
> self.assertThat(lambda: mainWindow.title,
> Eventually(Contains('gmusicbrowser')))
Okay shall approach it differently :)

> Reviewing several apps at once is a bit hard; ideally split these up in the
> future :-)
Yup will do, I can get rid of this mp and do each on individually.

69. By Thomas Molloy on 2014-03-22

fixes for the xubuntu tests

70. By Thomas Molloy on 2014-03-30

working tests, need to be individually merged and if possible improved before doing so

Unmerged revisions

70. By Thomas Molloy on 2014-03-30

working tests, need to be individually merged and if possible improved before doing so

69. By Thomas Molloy on 2014-03-22

fixes for the xubuntu tests

68. By Thomas Molloy on 2014-01-20

Added Ristretto Image Viewer test to the Xubuntu test directory

67. By Thomas Molloy on 2014-01-20

gmusicbrowser simple test for Xubuntu

66. By Thomas Molloy on 2014-01-20

Added Simple-scan test to Xubuntu tests

65. By Thomas Molloy on 2014-01-20

Corrected the gThumb test text

64. By Thomas Molloy on 2014-01-20

Added simple tests for Sudoku and gThumb to the Xubuntu Autopilot tests

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added directory 'xubuntu_autopilot_tests/abiword'
2=== added file 'xubuntu_autopilot_tests/abiword/__init__.py'
3--- xubuntu_autopilot_tests/abiword/__init__.py 1970-01-01 00:00:00 +0000
4+++ xubuntu_autopilot_tests/abiword/__init__.py 2014-03-30 18:20:04 +0000
5@@ -0,0 +1,2 @@
6+# -*- coding: utf-8 -*-
7+
8
9=== added file 'xubuntu_autopilot_tests/abiword/test_abiword.py'
10--- xubuntu_autopilot_tests/abiword/test_abiword.py 1970-01-01 00:00:00 +0000
11+++ xubuntu_autopilot_tests/abiword/test_abiword.py 2014-03-30 18:20:04 +0000
12@@ -0,0 +1,65 @@
13+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
14+#
15+# Copyright (C) 2014
16+#
17+# Author: Thomas Molloy beetyrootey@gmail.com
18+#
19+# This program is free software; you can redistribute it and/or modify
20+# it under the terms of the GNU Lesser General Public License as published by
21+# the Free Software Foundation; version 3.
22+#
23+# This program is distributed in the hope that it will be useful,
24+# but WITHOUT ANY WARRANTY; without even the implied warranty of
25+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
26+# GNU Lesser General Public License for more details.
27+#
28+# You should have received a copy of the GNU Lesser General Public License
29+# along with this program. If not, see <http://www.gnu.org/licenses/>.
30+import os
31+from autopilot.matchers import Eventually
32+from testtools.matchers import Equals, Contains
33+from autopilot.testcase import AutopilotTestCase
34+from autopilot.process import ProcessManager
35+from testtools.matchers import Equals, Contains, FileExists, DirExists, \
36+ DirContains
37+
38+# register abiword app
39+ProcessManager.register_known_application(
40+ "abiword",
41+ "abiword.desktop",
42+ "abiword")
43+
44+class AbiwordWindowTests(AutopilotTestCase):
45+ """ Window tests for the xfce4-screenshooter """
46+
47+ def setUp(self):
48+ """ Basic setup instruction to run before each test """
49+ super(AbiwordWindowTests, self).setUp()
50+ self.manager = ProcessManager.create('BAMF')
51+ self.app = self.manager.start_app("abiword")
52+ # This will make sure Screenshooter window you launched is focused and ready
53+ # to accept your keyboard input
54+ self.assertTrue(self.app.is_active)
55+
56+ def test_window_visible(self):
57+ """ Check to see if the main window has the proper title """
58+ windows = self.app.get_windows()
59+ window = windows[0]
60+
61+ # We must assert the window title = Untitled1
62+ # It fails with assertTrue(self.app.is_focused)
63+ self.assertThat(lambda: window.title, Eventually(Contains('Untitled1')))
64+
65+ for window in windows:
66+ window.close()
67+
68+ def test_file_saving(self):
69+ self.keyboard.press_and_release('Ctrl+Shift+s')
70+ self.keyboard.type("/tmp/")
71+ self.keyboard.press_and_release('Enter')
72+ self.keyboard.type("test-file")
73+ self.keyboard.press_and_release('Enter')
74+ # Verify that test-file has been created
75+ self.assertThat(lambda: '/tmp/test-file.abw', Eventually(FileExists()))
76+ # Delete the file we created
77+ self.addCleanup(os.remove, "/tmp/test-file.abw")
78
79=== added directory 'xubuntu_autopilot_tests/catfish'
80=== added file 'xubuntu_autopilot_tests/catfish/__init__.py'
81--- xubuntu_autopilot_tests/catfish/__init__.py 1970-01-01 00:00:00 +0000
82+++ xubuntu_autopilot_tests/catfish/__init__.py 2014-03-30 18:20:04 +0000
83@@ -0,0 +1,2 @@
84+# -*- coding: utf-8 -*-
85+
86
87=== added file 'xubuntu_autopilot_tests/catfish/test_catfish.py'
88--- xubuntu_autopilot_tests/catfish/test_catfish.py 1970-01-01 00:00:00 +0000
89+++ xubuntu_autopilot_tests/catfish/test_catfish.py 2014-03-30 18:20:04 +0000
90@@ -0,0 +1,51 @@
91+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
92+#
93+# Copyright (C) 2014
94+#
95+# Author: Thomas Molloy beetyrootey@gmail.com
96+#
97+# This program is free software; you can redistribute it and/or modify
98+# it under the terms of the GNU Lesser General Public License as published by
99+# the Free Software Foundation; version 3.
100+#
101+# This program is distributed in the hope that it will be useful,
102+# but WITHOUT ANY WARRANTY; without even the implied warranty of
103+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
104+# GNU Lesser General Public License for more details.
105+#
106+# You should have received a copy of the GNU Lesser General Public License
107+# along with this program. If not, see <http://www.gnu.org/licenses/>.
108+from autopilot.matchers import Eventually
109+from testtools.matchers import Equals, Contains
110+from autopilot.testcase import AutopilotTestCase
111+from autopilot.process import ProcessManager
112+
113+# register catfish app
114+ProcessManager.register_known_application(
115+ "catfish",
116+ "catfish.desktop",
117+ "catfish")
118+
119+class CatfishWindowTests(AutopilotTestCase):
120+ """ Window tests for the xfce4-screenshooter """
121+
122+ def setUp(self):
123+ """ Basic setup instruction to run before each test """
124+ super(CatfishWindowTests, self).setUp()
125+ self.manager = ProcessManager.create('BAMF')
126+ self.app = self.manager.start_app("catfish")
127+ # This will make sure Screenshooter window you launched is focused and ready
128+ # to accept your keyboard input
129+ self.assertTrue(self.app.is_active)
130+
131+ def test_window_visible(self):
132+ """ Check to see if the main window has the proper title """
133+ windows = self.app.get_windows()
134+ window = windows[0]
135+
136+ # We must assert the window title = Catfish
137+ # It fails with assertTrue(self.app.is_focused)
138+ self.assertThat(lambda: window.title, Eventually(Contains('Catfish')))
139+
140+ for window in windows:
141+ window.close()
142
143=== added directory 'xubuntu_autopilot_tests/evince'
144=== added file 'xubuntu_autopilot_tests/evince/__init__.py'
145--- xubuntu_autopilot_tests/evince/__init__.py 1970-01-01 00:00:00 +0000
146+++ xubuntu_autopilot_tests/evince/__init__.py 2014-03-30 18:20:04 +0000
147@@ -0,0 +1,2 @@
148+# -*- coding: utf-8 -*-
149+
150
151=== added file 'xubuntu_autopilot_tests/evince/test_evince.py'
152--- xubuntu_autopilot_tests/evince/test_evince.py 1970-01-01 00:00:00 +0000
153+++ xubuntu_autopilot_tests/evince/test_evince.py 2014-03-30 18:20:04 +0000
154@@ -0,0 +1,51 @@
155+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
156+#
157+# Copyright (C) 2014
158+#
159+# Author: Thomas Molloy beetyrootey@gmail.com
160+#
161+# This program is free software; you can redistribute it and/or modify
162+# it under the terms of the GNU Lesser General Public License as published by
163+# the Free Software Foundation; version 3.
164+#
165+# This program is distributed in the hope that it will be useful,
166+# but WITHOUT ANY WARRANTY; without even the implied warranty of
167+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
168+# GNU Lesser General Public License for more details.
169+#
170+# You should have received a copy of the GNU Lesser General Public License
171+# along with this program. If not, see <http://www.gnu.org/licenses/>.
172+from autopilot.matchers import Eventually
173+from testtools.matchers import Equals, Contains
174+from autopilot.testcase import AutopilotTestCase
175+from autopilot.process import ProcessManager
176+
177+# register evince app
178+ProcessManager.register_known_application(
179+ "evince",
180+ "evince.desktop",
181+ "evince")
182+
183+class EvinceWindowTests(AutopilotTestCase):
184+ """ Window tests for the xfce4-screenshooter """
185+
186+ def setUp(self):
187+ """ Basic setup instruction to run before each test """
188+ super(EvinceWindowTests, self).setUp()
189+ self.manager = ProcessManager.create('BAMF')
190+ self.app = self.manager.start_app("evince")
191+ # This will make sure Screenshooter window you launched is focused and ready
192+ # to accept your keyboard input
193+ self.assertTrue(self.app.is_active)
194+
195+ def test_window_visible(self):
196+ """ Check to see if the main window has the proper title """
197+ windows = self.app.get_windows()
198+ window = windows[0]
199+
200+ # We must assert the window title = Document Viewer
201+ # It fails with assertTrue(self.app.is_focused)
202+ self.assertThat(lambda: window.title, Eventually(Contains('Document Viewer')))
203+
204+ for window in windows:
205+ window.close()
206
207=== added directory 'xubuntu_autopilot_tests/file-roller'
208=== added file 'xubuntu_autopilot_tests/file-roller/__init__.py'
209--- xubuntu_autopilot_tests/file-roller/__init__.py 1970-01-01 00:00:00 +0000
210+++ xubuntu_autopilot_tests/file-roller/__init__.py 2014-03-30 18:20:04 +0000
211@@ -0,0 +1,2 @@
212+# -*- coding: utf-8 -*-
213+
214
215=== added file 'xubuntu_autopilot_tests/file-roller/test_file_roller.py'
216--- xubuntu_autopilot_tests/file-roller/test_file_roller.py 1970-01-01 00:00:00 +0000
217+++ xubuntu_autopilot_tests/file-roller/test_file_roller.py 2014-03-30 18:20:04 +0000
218@@ -0,0 +1,51 @@
219+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
220+#
221+# Copyright (C) 2014
222+#
223+# Author: Thomas Molloy beetyrootey@gmail.com
224+#
225+# This program is free software; you can redistribute it and/or modify
226+# it under the terms of the GNU Lesser General Public License as published by
227+# the Free Software Foundation; version 3.
228+#
229+# This program is distributed in the hope that it will be useful,
230+# but WITHOUT ANY WARRANTY; without even the implied warranty of
231+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
232+# GNU Lesser General Public License for more details.
233+#
234+# You should have received a copy of the GNU Lesser General Public License
235+# along with this program. If not, see <http://www.gnu.org/licenses/>.
236+from autopilot.matchers import Eventually
237+from testtools.matchers import Equals, Contains
238+from autopilot.testcase import AutopilotTestCase
239+from autopilot.process import ProcessManager
240+
241+# register file-roller app
242+ProcessManager.register_known_application(
243+ "file-roller",
244+ "file-roller.desktop",
245+ "file-roller")
246+
247+class FileRollerWindowTests(AutopilotTestCase):
248+ """ Window tests for the xfce4-screenshooter """
249+
250+ def setUp(self):
251+ """ Basic setup instruction to run before each test """
252+ super(FileRollerWindowTests, self).setUp()
253+ self.manager = ProcessManager.create('BAMF')
254+ self.app = self.manager.start_app("file-roller")
255+ # This will make sure Screenshooter window you launched is focused and ready
256+ # to accept your keyboard input
257+ self.assertTrue(self.app.is_active)
258+
259+ def test_window_visible(self):
260+ """ Check to see if the main window has the proper title """
261+ windows = self.app.get_windows()
262+ window = windows[0]
263+
264+ # We must assert the window title = Archive Manager
265+ # It fails with assertTrue(self.app.is_focused)
266+ self.assertThat(lambda: window.title, Eventually(Contains('Archive Manager')))
267+
268+ for window in windows:
269+ window.close()
270
271=== added directory 'xubuntu_autopilot_tests/gmusicbrowser'
272=== added file 'xubuntu_autopilot_tests/gmusicbrowser/__init__.py'
273--- xubuntu_autopilot_tests/gmusicbrowser/__init__.py 1970-01-01 00:00:00 +0000
274+++ xubuntu_autopilot_tests/gmusicbrowser/__init__.py 2014-03-30 18:20:04 +0000
275@@ -0,0 +1,2 @@
276+# -*- coding: utf-8 -*-
277+
278
279=== added file 'xubuntu_autopilot_tests/gmusicbrowser/test_gmusicbrowser.py'
280--- xubuntu_autopilot_tests/gmusicbrowser/test_gmusicbrowser.py 1970-01-01 00:00:00 +0000
281+++ xubuntu_autopilot_tests/gmusicbrowser/test_gmusicbrowser.py 2014-03-30 18:20:04 +0000
282@@ -0,0 +1,51 @@
283+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
284+#
285+# Copyright (C) 2014
286+#
287+# Author: Thomas Molloy beetyrootey@gmail.com
288+#
289+# This program is free software; you can redistribute it and/or modify
290+# it under the terms of the GNU Lesser General Public License as published by
291+# the Free Software Foundation; version 3.
292+#
293+# This program is distributed in the hope that it will be useful,
294+# but WITHOUT ANY WARRANTY; without even the implied warranty of
295+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
296+# GNU Lesser General Public License for more details.
297+#
298+# You should have received a copy of the GNU Lesser General Public License
299+# along with this program. If not, see <http://www.gnu.org/licenses/>.
300+
301+from autopilot.matchers import Eventually
302+from testtools.matchers import Equals, Contains
303+from autopilot.testcase import AutopilotTestCase
304+from autopilot.process import ProcessManager
305+
306+# register gmusicbrowser app
307+ProcessManager.register_known_application(
308+ "gmusicbrowser",
309+ "gmusicbrowser.desktop",
310+ "gmusicbrowser")
311+
312+class GMusicBrowserWindowTests(AutopilotTestCase):
313+ """ Window tests for the game Simple scan """
314+
315+ def setUp(self):
316+ """ Basic setup instruction to run before each test """
317+ super(GMusicBrowserWindowTests, self).setUp()
318+ self.manager = ProcessManager.create('BAMF')
319+ self.app = self.manager.start_app("gmusicbrowser")
320+ # This will make sure Sudoku window you launched is focused and ready
321+ # to accept your keyboard input
322+ self.assertTrue(self.app.is_active)
323+
324+ def test_window_visible(self):
325+ """ Basic test to see if the window opens with the correct name """
326+ # We must assert the window title = gmusicbrowser here to keep focus of gmusicbrowser
327+ # It fails with assertTrue(self.app.is_focused)
328+ windows = self.app.get_windows()
329+ self.assertTrue(len(windows) == 1)
330+ mainWindow = windows[0]
331+ self.assertThat(lambda: mainWindow.title, Eventually(Contains('gmusicbrowser')))
332+ # We must close the window else the test fails as it is unable to close it automatically
333+ mainWindow.close()
334
335=== added directory 'xubuntu_autopilot_tests/gnome-calculator'
336=== added file 'xubuntu_autopilot_tests/gnome-calculator/__init__.py'
337--- xubuntu_autopilot_tests/gnome-calculator/__init__.py 1970-01-01 00:00:00 +0000
338+++ xubuntu_autopilot_tests/gnome-calculator/__init__.py 2014-03-30 18:20:04 +0000
339@@ -0,0 +1,2 @@
340+# -*- coding: utf-8 -*-
341+
342
343=== added file 'xubuntu_autopilot_tests/gnome-calculator/test_gnome_calculator.py'
344--- xubuntu_autopilot_tests/gnome-calculator/test_gnome_calculator.py 1970-01-01 00:00:00 +0000
345+++ xubuntu_autopilot_tests/gnome-calculator/test_gnome_calculator.py 2014-03-30 18:20:04 +0000
346@@ -0,0 +1,51 @@
347+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
348+#
349+# Copyright (C) 2014
350+#
351+# Author: Thomas Molloy beetyrootey@gmail.com
352+#
353+# This program is free software; you can redistribute it and/or modify
354+# it under the terms of the GNU Lesser General Public License as published by
355+# the Free Software Foundation; version 3.
356+#
357+# This program is distributed in the hope that it will be useful,
358+# but WITHOUT ANY WARRANTY; without even the implied warranty of
359+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
360+# GNU Lesser General Public License for more details.
361+#
362+# You should have received a copy of the GNU Lesser General Public License
363+# along with this program. If not, see <http://www.gnu.org/licenses/>.
364+from autopilot.matchers import Eventually
365+from testtools.matchers import Equals, Contains
366+from autopilot.testcase import AutopilotTestCase
367+from autopilot.process import ProcessManager
368+
369+# register gnome-calculator app
370+ProcessManager.register_known_application(
371+ "gnome-calculator",
372+ "gnome-calculator.desktop",
373+ "gnome-calculator")
374+
375+class GnomeCalculatorWindowTests(AutopilotTestCase):
376+ """ Window tests for the xfce4-screenshooter """
377+
378+ def setUp(self):
379+ """ Basic setup instruction to run before each test """
380+ super(GnomeCalculatorWindowTests, self).setUp()
381+ self.manager = ProcessManager.create('BAMF')
382+ self.app = self.manager.start_app("gnome-calculator")
383+ # This will make sure Screenshooter window you launched is focused and ready
384+ # to accept your keyboard input
385+ self.assertTrue(self.app.is_active)
386+
387+ def test_window_visible(self):
388+ """ Check to see if the main window has the proper title """
389+ windows = self.app.get_windows()
390+ window = windows[0]
391+
392+ # We must assert the window title = Calculator
393+ # It fails with assertTrue(self.app.is_focused)
394+ self.assertThat(lambda: window.title, Eventually(Contains('Calculator')))
395+
396+ for window in windows:
397+ window.close()
398
399=== added directory 'xubuntu_autopilot_tests/gnumeric'
400=== added file 'xubuntu_autopilot_tests/gnumeric/__init__.py'
401--- xubuntu_autopilot_tests/gnumeric/__init__.py 1970-01-01 00:00:00 +0000
402+++ xubuntu_autopilot_tests/gnumeric/__init__.py 2014-03-30 18:20:04 +0000
403@@ -0,0 +1,2 @@
404+# -*- coding: utf-8 -*-
405+
406
407=== added file 'xubuntu_autopilot_tests/gnumeric/test_gnumeric.py'
408--- xubuntu_autopilot_tests/gnumeric/test_gnumeric.py 1970-01-01 00:00:00 +0000
409+++ xubuntu_autopilot_tests/gnumeric/test_gnumeric.py 2014-03-30 18:20:04 +0000
410@@ -0,0 +1,51 @@
411+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
412+#
413+# Copyright (C) 2014
414+#
415+# Author: Thomas Molloy beetyrootey@gmail.com
416+#
417+# This program is free software; you can redistribute it and/or modify
418+# it under the terms of the GNU Lesser General Public License as published by
419+# the Free Software Foundation; version 3.
420+#
421+# This program is distributed in the hope that it will be useful,
422+# but WITHOUT ANY WARRANTY; without even the implied warranty of
423+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
424+# GNU Lesser General Public License for more details.
425+#
426+# You should have received a copy of the GNU Lesser General Public License
427+# along with this program. If not, see <http://www.gnu.org/licenses/>.
428+from autopilot.matchers import Eventually
429+from testtools.matchers import Equals, Contains
430+from autopilot.testcase import AutopilotTestCase
431+from autopilot.process import ProcessManager
432+
433+# register gnumeric app
434+ProcessManager.register_known_application(
435+ "gnumeric",
436+ "gnumeric.desktop",
437+ "gnumeric")
438+
439+class GnumericWindowTests(AutopilotTestCase):
440+ """ Window tests for the xfce4-screenshooter """
441+
442+ def setUp(self):
443+ """ Basic setup instruction to run before each test """
444+ super(GnumericWindowTests, self).setUp()
445+ self.manager = ProcessManager.create('BAMF')
446+ self.app = self.manager.start_app("gnumeric")
447+ # This will make sure Screenshooter window you launched is focused and ready
448+ # to accept your keyboard input
449+ self.assertTrue(self.app.is_active)
450+
451+ def test_window_visible(self):
452+ """ Check to see if the main window has the proper title """
453+ windows = self.app.get_windows()
454+ window = windows[0]
455+
456+ # We must assert the window title = Archive Manager
457+ # It fails with assertTrue(self.app.is_focused)
458+ self.assertThat(lambda: window.title, Eventually(Contains('Gnumeric')))
459+
460+ for window in windows:
461+ window.close()
462
463=== added directory 'xubuntu_autopilot_tests/gthumb'
464=== added file 'xubuntu_autopilot_tests/gthumb/__init__.py'
465--- xubuntu_autopilot_tests/gthumb/__init__.py 1970-01-01 00:00:00 +0000
466+++ xubuntu_autopilot_tests/gthumb/__init__.py 2014-03-30 18:20:04 +0000
467@@ -0,0 +1,2 @@
468+# -*- coding: utf-8 -*-
469+
470
471=== added file 'xubuntu_autopilot_tests/gthumb/test_gthumb.py'
472--- xubuntu_autopilot_tests/gthumb/test_gthumb.py 1970-01-01 00:00:00 +0000
473+++ xubuntu_autopilot_tests/gthumb/test_gthumb.py 2014-03-30 18:20:04 +0000
474@@ -0,0 +1,51 @@
475+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
476+#
477+# Copyright (C) 2014
478+#
479+# Author: Thomas Molloy beetyrootey@gmail.com
480+#
481+# This program is free software; you can redistribute it and/or modify
482+# it under the terms of the GNU Lesser General Public License as published by
483+# the Free Software Foundation; version 3.
484+#
485+# This program is distributed in the hope that it will be useful,
486+# but WITHOUT ANY WARRANTY; without even the implied warranty of
487+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
488+# GNU Lesser General Public License for more details.
489+#
490+# You should have received a copy of the GNU Lesser General Public License
491+# along with this program. If not, see <http://www.gnu.org/licenses/>.
492+from autopilot.matchers import Eventually
493+from testtools.matchers import Equals, Contains
494+from autopilot.testcase import AutopilotTestCase
495+from autopilot.process import ProcessManager
496+
497+# register gThumb app
498+ProcessManager.register_known_application(
499+ "gthumb",
500+ "gthumb.desktop",
501+ "gThumb")
502+
503+class GThumbWindowTests(AutopilotTestCase):
504+ """ Window tests for the gthumb """
505+
506+ def setUp(self):
507+ """ Basic setup instruction to run before each test """
508+ super(GThumbWindowTests, self).setUp()
509+ self.manager = ProcessManager.create('BAMF')
510+ self.app = self.manager.start_app("gthumb")
511+ # This will make sure Mines window you launched is focused and ready
512+ # to accept your keyboard input
513+ self.assertTrue(self.app.is_active)
514+
515+ def test_window_visible(self):
516+ """ Check to see if the main window has the proper title """
517+ windows = self.app.get_windows()
518+ window = windows[0]
519+
520+ # We must assert the window title = gThumb here to keep focus of Sudoku
521+ # It fails with assertTrue(self.app.is_focused)
522+ self.assertThat(lambda: window.title, Eventually(Contains('gThumb')))
523+
524+ for window in windows:
525+ window.close()
526
527=== added directory 'xubuntu_autopilot_tests/gucharmap'
528=== added file 'xubuntu_autopilot_tests/gucharmap/__init__.py'
529--- xubuntu_autopilot_tests/gucharmap/__init__.py 1970-01-01 00:00:00 +0000
530+++ xubuntu_autopilot_tests/gucharmap/__init__.py 2014-03-30 18:20:04 +0000
531@@ -0,0 +1,2 @@
532+# -*- coding: utf-8 -*-
533+
534
535=== added file 'xubuntu_autopilot_tests/gucharmap/test_gucharmap.py'
536--- xubuntu_autopilot_tests/gucharmap/test_gucharmap.py 1970-01-01 00:00:00 +0000
537+++ xubuntu_autopilot_tests/gucharmap/test_gucharmap.py 2014-03-30 18:20:04 +0000
538@@ -0,0 +1,51 @@
539+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
540+#
541+# Copyright (C) 2014
542+#
543+# Author: Thomas Molloy beetyrootey@gmail.com
544+#
545+# This program is free software; you can redistribute it and/or modify
546+# it under the terms of the GNU Lesser General Public License as published by
547+# the Free Software Foundation; version 3.
548+#
549+# This program is distributed in the hope that it will be useful,
550+# but WITHOUT ANY WARRANTY; without even the implied warranty of
551+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
552+# GNU Lesser General Public License for more details.
553+#
554+# You should have received a copy of the GNU Lesser General Public License
555+# along with this program. If not, see <http://www.gnu.org/licenses/>.
556+from autopilot.matchers import Eventually
557+from testtools.matchers import Equals, Contains
558+from autopilot.testcase import AutopilotTestCase
559+from autopilot.process import ProcessManager
560+
561+# register gnumeric app
562+ProcessManager.register_known_application(
563+ "gucharmap",
564+ "gucharmap.desktop",
565+ "gucharmap")
566+
567+class GucharmapWindowTests(AutopilotTestCase):
568+ """ Window tests for the xfce4-screenshooter """
569+
570+ def setUp(self):
571+ """ Basic setup instruction to run before each test """
572+ super(GucharmapWindowTests, self).setUp()
573+ self.manager = ProcessManager.create('BAMF')
574+ self.app = self.manager.start_app("gucharmap")
575+ # This will make sure Screenshooter window you launched is focused and ready
576+ # to accept your keyboard input
577+ self.assertTrue(self.app.is_active)
578+
579+ def test_window_visible(self):
580+ """ Check to see if the main window has the proper title """
581+ windows = self.app.get_windows()
582+ window = windows[0]
583+
584+ # We must assert the window title = Archive Manager
585+ # It fails with assertTrue(self.app.is_focused)
586+ self.assertThat(lambda: window.title, Eventually(Contains('Character Map')))
587+
588+ for window in windows:
589+ window.close()
590
591=== added directory 'xubuntu_autopilot_tests/mousepad'
592=== added file 'xubuntu_autopilot_tests/mousepad/__init__.py'
593--- xubuntu_autopilot_tests/mousepad/__init__.py 1970-01-01 00:00:00 +0000
594+++ xubuntu_autopilot_tests/mousepad/__init__.py 2014-03-30 18:20:04 +0000
595@@ -0,0 +1,2 @@
596+# -*- coding: utf-8 -*-
597+
598
599=== added file 'xubuntu_autopilot_tests/mousepad/test_mousepad.py'
600--- xubuntu_autopilot_tests/mousepad/test_mousepad.py 1970-01-01 00:00:00 +0000
601+++ xubuntu_autopilot_tests/mousepad/test_mousepad.py 2014-03-30 18:20:04 +0000
602@@ -0,0 +1,51 @@
603+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
604+#
605+# Copyright (C) 2014
606+#
607+# Author: Thomas Molloy beetyrootey@gmail.com
608+#
609+# This program is free software; you can redistribute it and/or modify
610+# it under the terms of the GNU Lesser General Public License as published by
611+# the Free Software Foundation; version 3.
612+#
613+# This program is distributed in the hope that it will be useful,
614+# but WITHOUT ANY WARRANTY; without even the implied warranty of
615+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
616+# GNU Lesser General Public License for more details.
617+#
618+# You should have received a copy of the GNU Lesser General Public License
619+# along with this program. If not, see <http://www.gnu.org/licenses/>.
620+from autopilot.matchers import Eventually
621+from testtools.matchers import Equals, Contains
622+from autopilot.testcase import AutopilotTestCase
623+from autopilot.process import ProcessManager
624+
625+# register gnumeric app
626+ProcessManager.register_known_application(
627+ "mousepad",
628+ "mousepad.desktop",
629+ "mousepad")
630+
631+class MousepadWindowTests(AutopilotTestCase):
632+ """ Window tests for the xfce4-screenshooter """
633+
634+ def setUp(self):
635+ """ Basic setup instruction to run before each test """
636+ super(MousepadWindowTests, self).setUp()
637+ self.manager = ProcessManager.create('BAMF')
638+ self.app = self.manager.start_app("mousepad")
639+ # This will make sure Screenshooter window you launched is focused and ready
640+ # to accept your keyboard input
641+ self.assertTrue(self.app.is_active)
642+
643+ def test_window_visible(self):
644+ """ Check to see if the main window has the proper title """
645+ windows = self.app.get_windows()
646+ window = windows[0]
647+
648+ # We must assert the window title = Archive Manager
649+ # It fails with assertTrue(self.app.is_focused)
650+ self.assertThat(lambda: window.title, Eventually(Contains('Mousepad')))
651+
652+ for window in windows:
653+ window.close()
654
655=== added directory 'xubuntu_autopilot_tests/onboard'
656=== added file 'xubuntu_autopilot_tests/onboard/__init__.py'
657--- xubuntu_autopilot_tests/onboard/__init__.py 1970-01-01 00:00:00 +0000
658+++ xubuntu_autopilot_tests/onboard/__init__.py 2014-03-30 18:20:04 +0000
659@@ -0,0 +1,2 @@
660+# -*- coding: utf-8 -*-
661+
662
663=== added file 'xubuntu_autopilot_tests/onboard/test_onboard.py'
664--- xubuntu_autopilot_tests/onboard/test_onboard.py 1970-01-01 00:00:00 +0000
665+++ xubuntu_autopilot_tests/onboard/test_onboard.py 2014-03-30 18:20:04 +0000
666@@ -0,0 +1,51 @@
667+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
668+#
669+# Copyright (C) 2014
670+#
671+# Author: Thomas Molloy beetyrootey@gmail.com
672+#
673+# This program is free software; you can redistribute it and/or modify
674+# it under the terms of the GNU Lesser General Public License as published by
675+# the Free Software Foundation; version 3.
676+#
677+# This program is distributed in the hope that it will be useful,
678+# but WITHOUT ANY WARRANTY; without even the implied warranty of
679+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
680+# GNU Lesser General Public License for more details.
681+#
682+# You should have received a copy of the GNU Lesser General Public License
683+# along with this program. If not, see <http://www.gnu.org/licenses/>.
684+from autopilot.matchers import Eventually
685+from testtools.matchers import Equals, Contains
686+from autopilot.testcase import AutopilotTestCase
687+from autopilot.process import ProcessManager
688+
689+# register gnumeric app
690+ProcessManager.register_known_application(
691+ "onboard",
692+ "onboard.desktop",
693+ "onboard")
694+
695+class OnboardWindowTests(AutopilotTestCase):
696+ """ Window tests for the xfce4-screenshooter """
697+
698+ def setUp(self):
699+ """ Basic setup instruction to run before each test """
700+ super(OnboardWindowTests, self).setUp()
701+ self.manager = ProcessManager.create('BAMF')
702+ self.app = self.manager.start_app("onboard")
703+ # This will make sure Screenshooter window you launched is focused and ready
704+ # to accept your keyboard input
705+ self.assertTrue(self.app.is_active)
706+
707+ def test_window_visible(self):
708+ """ Check to see if the main window has the proper title """
709+ windows = self.app.get_windows()
710+ window = windows[0]
711+
712+ # We must assert the window title = Archive Manager
713+ # It fails with assertTrue(self.app.is_focused)
714+ self.assertThat(lambda: window.title, Eventually(Contains('Onboard')))
715+
716+ for window in windows:
717+ window.close()
718
719=== added directory 'xubuntu_autopilot_tests/orage-calendar'
720=== added file 'xubuntu_autopilot_tests/orage-calendar/__init__.py'
721--- xubuntu_autopilot_tests/orage-calendar/__init__.py 1970-01-01 00:00:00 +0000
722+++ xubuntu_autopilot_tests/orage-calendar/__init__.py 2014-03-30 18:20:04 +0000
723@@ -0,0 +1,2 @@
724+# -*- coding: utf-8 -*-
725+
726
727=== added file 'xubuntu_autopilot_tests/orage-calendar/test_orage_calendar.py'
728--- xubuntu_autopilot_tests/orage-calendar/test_orage_calendar.py 1970-01-01 00:00:00 +0000
729+++ xubuntu_autopilot_tests/orage-calendar/test_orage_calendar.py 2014-03-30 18:20:04 +0000
730@@ -0,0 +1,51 @@
731+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
732+#
733+# Copyright (C) 2014
734+#
735+# Author: Thomas Molloy beetyrootey@gmail.com
736+#
737+# This program is free software; you can redistribute it and/or modify
738+# it under the terms of the GNU Lesser General Public License as published by
739+# the Free Software Foundation; version 3.
740+#
741+# This program is distributed in the hope that it will be useful,
742+# but WITHOUT ANY WARRANTY; without even the implied warranty of
743+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
744+# GNU Lesser General Public License for more details.
745+#
746+# You should have received a copy of the GNU Lesser General Public License
747+# along with this program. If not, see <http://www.gnu.org/licenses/>.
748+from autopilot.matchers import Eventually
749+from testtools.matchers import Equals, Contains
750+from autopilot.testcase import AutopilotTestCase
751+from autopilot.process import ProcessManager
752+
753+# register gnumeric app
754+ProcessManager.register_known_application(
755+ "orage",
756+ "orage.desktop",
757+ "orage")
758+
759+class OrageCalendarWindowTests(AutopilotTestCase):
760+ """ Window tests for the xfce4-screenshooter """
761+
762+ def setUp(self):
763+ """ Basic setup instruction to run before each test """
764+ super(OrageCalendarWindowTests, self).setUp()
765+ self.manager = ProcessManager.create('BAMF')
766+ self.app = self.manager.start_app("orage")
767+ # This will make sure Screenshooter window you launched is focused and ready
768+ # to accept your keyboard input
769+ self.assertTrue(self.app.is_active)
770+
771+ def test_window_visible(self):
772+ """ Check to see if the main window has the proper title """
773+ windows = self.app.get_windows()
774+ window = windows[0]
775+
776+ # We must assert the window title = Archive Manager
777+ # It fails with assertTrue(self.app.is_focused)
778+ self.assertThat(lambda: window.title, Eventually(Contains('Orage')))
779+
780+ for window in windows:
781+ window.close()
782
783=== added directory 'xubuntu_autopilot_tests/orage-globaltime'
784=== added file 'xubuntu_autopilot_tests/orage-globaltime/__init__.py'
785--- xubuntu_autopilot_tests/orage-globaltime/__init__.py 1970-01-01 00:00:00 +0000
786+++ xubuntu_autopilot_tests/orage-globaltime/__init__.py 2014-03-30 18:20:04 +0000
787@@ -0,0 +1,2 @@
788+# -*- coding: utf-8 -*-
789+
790
791=== added file 'xubuntu_autopilot_tests/orage-globaltime/test_orage_globaltime.py'
792--- xubuntu_autopilot_tests/orage-globaltime/test_orage_globaltime.py 1970-01-01 00:00:00 +0000
793+++ xubuntu_autopilot_tests/orage-globaltime/test_orage_globaltime.py 2014-03-30 18:20:04 +0000
794@@ -0,0 +1,51 @@
795+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
796+#
797+# Copyright (C) 2014
798+#
799+# Author: Thomas Molloy beetyrootey@gmail.com
800+#
801+# This program is free software; you can redistribute it and/or modify
802+# it under the terms of the GNU Lesser General Public License as published by
803+# the Free Software Foundation; version 3.
804+#
805+# This program is distributed in the hope that it will be useful,
806+# but WITHOUT ANY WARRANTY; without even the implied warranty of
807+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
808+# GNU Lesser General Public License for more details.
809+#
810+# You should have received a copy of the GNU Lesser General Public License
811+# along with this program. If not, see <http://www.gnu.org/licenses/>.
812+from autopilot.matchers import Eventually
813+from testtools.matchers import Equals, Contains
814+from autopilot.testcase import AutopilotTestCase
815+from autopilot.process import ProcessManager
816+
817+# register gnumeric app
818+ProcessManager.register_known_application(
819+ "globaltime",
820+ "globaltime.desktop",
821+ "globaltime")
822+
823+class OrageCalendarWindowTests(AutopilotTestCase):
824+ """ Window tests for the xfce4-screenshooter """
825+
826+ def setUp(self):
827+ """ Basic setup instruction to run before each test """
828+ super(OrageCalendarWindowTests, self).setUp()
829+ self.manager = ProcessManager.create('BAMF')
830+ self.app = self.manager.start_app("globaltime")
831+ # This will make sure Screenshooter window you launched is focused and ready
832+ # to accept your keyboard input
833+ self.assertTrue(self.app.is_active)
834+
835+ def test_window_visible(self):
836+ """ Check to see if the main window has the proper title """
837+ windows = self.app.get_windows()
838+ window = windows[0]
839+
840+ # We must assert the window title = Archive Manager
841+ # It fails with assertTrue(self.app.is_focused)
842+ self.assertThat(lambda: window.title, Eventually(Contains('Global Time')))
843+
844+ for window in windows:
845+ window.close()
846
847=== added directory 'xubuntu_autopilot_tests/pavucontrol'
848=== added file 'xubuntu_autopilot_tests/pavucontrol/__init__.py'
849--- xubuntu_autopilot_tests/pavucontrol/__init__.py 1970-01-01 00:00:00 +0000
850+++ xubuntu_autopilot_tests/pavucontrol/__init__.py 2014-03-30 18:20:04 +0000
851@@ -0,0 +1,2 @@
852+# -*- coding: utf-8 -*-
853+
854
855=== added file 'xubuntu_autopilot_tests/pavucontrol/test_pavucontrol.py'
856--- xubuntu_autopilot_tests/pavucontrol/test_pavucontrol.py 1970-01-01 00:00:00 +0000
857+++ xubuntu_autopilot_tests/pavucontrol/test_pavucontrol.py 2014-03-30 18:20:04 +0000
858@@ -0,0 +1,51 @@
859+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
860+#
861+# Copyright (C) 2014
862+#
863+# Author: Thomas Molloy beetyrootey@gmail.com
864+#
865+# This program is free software; you can redistribute it and/or modify
866+# it under the terms of the GNU Lesser General Public License as published by
867+# the Free Software Foundation; version 3.
868+#
869+# This program is distributed in the hope that it will be useful,
870+# but WITHOUT ANY WARRANTY; without even the implied warranty of
871+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
872+# GNU Lesser General Public License for more details.
873+#
874+# You should have received a copy of the GNU Lesser General Public License
875+# along with this program. If not, see <http://www.gnu.org/licenses/>.
876+from autopilot.matchers import Eventually
877+from testtools.matchers import Equals, Contains
878+from autopilot.testcase import AutopilotTestCase
879+from autopilot.process import ProcessManager
880+
881+# register gnumeric app
882+ProcessManager.register_known_application(
883+ "pavucontrol",
884+ "pavucontrol.desktop",
885+ "pavucontrol")
886+
887+class PavucontrolWindowTests(AutopilotTestCase):
888+ """ Window tests for the xfce4-screenshooter """
889+
890+ def setUp(self):
891+ """ Basic setup instruction to run before each test """
892+ super(PavucontrolWindowTests, self).setUp()
893+ self.manager = ProcessManager.create('BAMF')
894+ self.app = self.manager.start_app("pavucontrol")
895+ # This will make sure Screenshooter window you launched is focused and ready
896+ # to accept your keyboard input
897+ self.assertTrue(self.app.is_active)
898+
899+ def test_window_visible(self):
900+ """ Check to see if the main window has the proper title """
901+ windows = self.app.get_windows()
902+ window = windows[0]
903+
904+ # We must assert the window title = Archive Manager
905+ # It fails with assertTrue(self.app.is_focused)
906+ self.assertThat(lambda: window.title, Eventually(Contains('Volume Control')))
907+
908+ for window in windows:
909+ window.close()
910
911=== added directory 'xubuntu_autopilot_tests/pidgin'
912=== added file 'xubuntu_autopilot_tests/pidgin/__init__.py'
913--- xubuntu_autopilot_tests/pidgin/__init__.py 1970-01-01 00:00:00 +0000
914+++ xubuntu_autopilot_tests/pidgin/__init__.py 2014-03-30 18:20:04 +0000
915@@ -0,0 +1,2 @@
916+# -*- coding: utf-8 -*-
917+
918
919=== added file 'xubuntu_autopilot_tests/pidgin/test_pidgin.py'
920--- xubuntu_autopilot_tests/pidgin/test_pidgin.py 1970-01-01 00:00:00 +0000
921+++ xubuntu_autopilot_tests/pidgin/test_pidgin.py 2014-03-30 18:20:04 +0000
922@@ -0,0 +1,51 @@
923+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
924+#
925+# Copyright (C) 2014
926+#
927+# Author: Thomas Molloy beetyrootey@gmail.com
928+#
929+# This program is free software; you can redistribute it and/or modify
930+# it under the terms of the GNU Lesser General Public License as published by
931+# the Free Software Foundation; version 3.
932+#
933+# This program is distributed in the hope that it will be useful,
934+# but WITHOUT ANY WARRANTY; without even the implied warranty of
935+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
936+# GNU Lesser General Public License for more details.
937+#
938+# You should have received a copy of the GNU Lesser General Public License
939+# along with this program. If not, see <http://www.gnu.org/licenses/>.
940+from autopilot.matchers import Eventually
941+from testtools.matchers import Equals, Contains
942+from autopilot.testcase import AutopilotTestCase
943+from autopilot.process import ProcessManager
944+
945+# register gnumeric app
946+ProcessManager.register_known_application(
947+ "pidgin",
948+ "pidgin.desktop",
949+ "pidgin")
950+
951+class PidginWindowTests(AutopilotTestCase):
952+ """ Window tests for the xfce4-screenshooter """
953+
954+ def setUp(self):
955+ """ Basic setup instruction to run before each test """
956+ super(PidginWindowTests, self).setUp()
957+ self.manager = ProcessManager.create('BAMF')
958+ self.app = self.manager.start_app("pidgin")
959+ # This will make sure Screenshooter window you launched is focused and ready
960+ # to accept your keyboard input
961+ self.assertTrue(self.app.is_active)
962+
963+ def test_window_visible(self):
964+ """ Check to see if the main window has the proper title """
965+ windows = self.app.get_windows()
966+ window = windows[0]
967+
968+ # We must assert the window title = Archive Manager
969+ # It fails with assertTrue(self.app.is_focused)
970+ self.assertThat(lambda: window.title, Eventually(Contains('Accounts')))
971+
972+ for window in windows:
973+ window.close()
974
975=== added directory 'xubuntu_autopilot_tests/ristretto'
976=== added file 'xubuntu_autopilot_tests/ristretto/__init__.py'
977--- xubuntu_autopilot_tests/ristretto/__init__.py 1970-01-01 00:00:00 +0000
978+++ xubuntu_autopilot_tests/ristretto/__init__.py 2014-03-30 18:20:04 +0000
979@@ -0,0 +1,2 @@
980+# -*- coding: utf-8 -*-
981+
982
983=== added file 'xubuntu_autopilot_tests/ristretto/test_ristretto.py'
984--- xubuntu_autopilot_tests/ristretto/test_ristretto.py 1970-01-01 00:00:00 +0000
985+++ xubuntu_autopilot_tests/ristretto/test_ristretto.py 2014-03-30 18:20:04 +0000
986@@ -0,0 +1,51 @@
987+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
988+#
989+# Copyright (C) 2014
990+#
991+# Author: Thomas Molloy beetyrootey@gmail.com
992+#
993+# This program is free software; you can redistribute it and/or modify
994+# it under the terms of the GNU Lesser General Public License as published by
995+# the Free Software Foundation; version 3.
996+#
997+# This program is distributed in the hope that it will be useful,
998+# but WITHOUT ANY WARRANTY; without even the implied warranty of
999+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1000+# GNU Lesser General Public License for more details.
1001+#
1002+# You should have received a copy of the GNU Lesser General Public License
1003+# along with this program. If not, see <http://www.gnu.org/licenses/>.
1004+from autopilot.matchers import Eventually
1005+from testtools.matchers import Equals, Contains
1006+from autopilot.testcase import AutopilotTestCase
1007+from autopilot.process import ProcessManager
1008+
1009+# register gThumb app
1010+ProcessManager.register_known_application(
1011+ "ristretto",
1012+ "ristretto.desktop",
1013+ "ristretto")
1014+
1015+class RistrettoWindowTests(AutopilotTestCase):
1016+ """ Window tests for the gthumb """
1017+
1018+ def setUp(self):
1019+ """ Basic setup instruction to run before each test """
1020+ super(RistrettoWindowTests, self).setUp()
1021+ self.manager = ProcessManager.create('BAMF')
1022+ self.app = self.manager.start_app("ristretto")
1023+ # This will make sure Mines window you launched is focused and ready
1024+ # to accept your keyboard input
1025+ self.assertTrue(self.app.is_active)
1026+
1027+ def test_window_visible(self):
1028+ """ Check to see if the main window has the proper title """
1029+ windows = self.app.get_windows()
1030+ window = windows[0]
1031+
1032+ # We must assert the window title = ristretto here to keep focus of ristretto
1033+ # It fails with assertTrue(self.app.is_focused)
1034+ self.assertThat(lambda: window.title, Eventually(Contains('Image Viewer')))
1035+
1036+ for window in windows:
1037+ window.close()
1038
1039=== added directory 'xubuntu_autopilot_tests/simple-scan'
1040=== added file 'xubuntu_autopilot_tests/simple-scan/__init__.py'
1041--- xubuntu_autopilot_tests/simple-scan/__init__.py 1970-01-01 00:00:00 +0000
1042+++ xubuntu_autopilot_tests/simple-scan/__init__.py 2014-03-30 18:20:04 +0000
1043@@ -0,0 +1,2 @@
1044+# -*- coding: utf-8 -*-
1045+
1046
1047=== added file 'xubuntu_autopilot_tests/simple-scan/test_simple_scan.py'
1048--- xubuntu_autopilot_tests/simple-scan/test_simple_scan.py 1970-01-01 00:00:00 +0000
1049+++ xubuntu_autopilot_tests/simple-scan/test_simple_scan.py 2014-03-30 18:20:04 +0000
1050@@ -0,0 +1,50 @@
1051+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
1052+#
1053+# Copyright (C) 2014
1054+#
1055+# Author: Thomas Molloy beetyrootey@gmail.com
1056+#
1057+# This program is free software; you can redistribute it and/or modify
1058+# it under the terms of the GNU Lesser General Public License as published by
1059+# the Free Software Foundation; version 3.
1060+#
1061+# This program is distributed in the hope that it will be useful,
1062+# but WITHOUT ANY WARRANTY; without even the implied warranty of
1063+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1064+# GNU Lesser General Public License for more details.
1065+#
1066+# You should have received a copy of the GNU Lesser General Public License
1067+# along with this program. If not, see <http://www.gnu.org/licenses/>.
1068+from autopilot.matchers import Eventually
1069+from testtools.matchers import Equals, Contains
1070+from autopilot.testcase import AutopilotTestCase
1071+from autopilot.process import ProcessManager
1072+
1073+# register Simple-scan app
1074+ProcessManager.register_known_application(
1075+ "simple-scan",
1076+ "simple-scan.desktop",
1077+ "Simple-scan")
1078+
1079+class SimpleScanWindowTests(AutopilotTestCase):
1080+ """ Window tests for the game Simple scan """
1081+
1082+ def setUp(self):
1083+ """ Basic setup instruction to run before each test """
1084+ super(SimpleScanWindowTests, self).setUp()
1085+ self.manager = ProcessManager.create('BAMF')
1086+ self.app = self.manager.start_app("simple-scan")
1087+ # This will make sure Sudoku window you launched is focused and ready
1088+ # to accept your keyboard input
1089+ self.assertTrue(self.app.is_active)
1090+
1091+ def test_window_visible(self):
1092+ """ Basic test to see if the window opens with the correct name """
1093+ # We must assert the window title = Simple Scan here to keep focus of SimpleScan
1094+ # It fails with assertTrue(self.app.is_focused)
1095+ windows = self.app.get_windows()
1096+ self.assertTrue(len(windows) == 1)
1097+ mainWindow = windows[0]
1098+ self.assertThat(lambda: mainWindow.title, Eventually(Contains('Simple Scan')))
1099+ # We must close the window else the test fails as it is unable to close it automatically
1100+ mainWindow.close()
1101\ No newline at end of file
1102
1103=== added directory 'xubuntu_autopilot_tests/sudoku'
1104=== added file 'xubuntu_autopilot_tests/sudoku/__init__.py'
1105--- xubuntu_autopilot_tests/sudoku/__init__.py 1970-01-01 00:00:00 +0000
1106+++ xubuntu_autopilot_tests/sudoku/__init__.py 2014-03-30 18:20:04 +0000
1107@@ -0,0 +1,2 @@
1108+# -*- coding: utf-8 -*-
1109+
1110
1111=== added file 'xubuntu_autopilot_tests/sudoku/test_sudoku.py'
1112--- xubuntu_autopilot_tests/sudoku/test_sudoku.py 1970-01-01 00:00:00 +0000
1113+++ xubuntu_autopilot_tests/sudoku/test_sudoku.py 2014-03-30 18:20:04 +0000
1114@@ -0,0 +1,49 @@
1115+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
1116+#
1117+# Copyright (C) 2014
1118+#
1119+# Author: Thomas Molloy beetyrootey@gmail.com
1120+#
1121+# This program is free software; you can redistribute it and/or modify
1122+# it under the terms of the GNU Lesser General Public License as published by
1123+# the Free Software Foundation; version 3.
1124+#
1125+# This program is distributed in the hope that it will be useful,
1126+# but WITHOUT ANY WARRANTY; without even the implied warranty of
1127+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1128+# GNU Lesser General Public License for more details.
1129+#
1130+# You should have received a copy of the GNU Lesser General Public License
1131+# along with this program. If not, see <http://www.gnu.org/licenses/>.
1132+from autopilot.matchers import Eventually
1133+from testtools.matchers import Equals, Contains
1134+from autopilot.testcase import AutopilotTestCase
1135+from autopilot.process import ProcessManager
1136+
1137+# register sudoku app
1138+ProcessManager.register_known_application(
1139+ "gnome-sudoku",
1140+ "gnome-sudoku.desktop",
1141+ "gnome-sudoku")
1142+
1143+class SudokuWindowTests(AutopilotTestCase):
1144+ """ Window tests for the game Sudoku """
1145+
1146+ def setUp(self):
1147+ """ Basic setup instruction to run before each test """
1148+ super(SudokuWindowTests, self).setUp()
1149+ self.manager = ProcessManager.create('BAMF')
1150+ self.app = self.manager.start_app("gnome-sudoku")
1151+ # This will make sure Sudoku window you launched is focused and ready
1152+ # to accept your keyboard input
1153+ self.assertTrue(self.app.is_active)
1154+
1155+ def test_window_visible(self):
1156+ # We must assert the window title = Sudoku here to keep focus of Sudoku
1157+ # It fails with assertTrue(self.app.is_focused)
1158+ windows = self.app.get_windows()
1159+ self.assertTrue(len(windows) == 1)
1160+ mainWindow = windows[0]
1161+ self.assertThat(lambda: mainWindow.title, Eventually(Contains('Sudoku')))
1162+ # We must close the window else the test fails as it is unable to close it automatically
1163+ mainWindow.close()
1164
1165=== added directory 'xubuntu_autopilot_tests/thunderbird'
1166=== added file 'xubuntu_autopilot_tests/thunderbird/__init__.py'
1167--- xubuntu_autopilot_tests/thunderbird/__init__.py 1970-01-01 00:00:00 +0000
1168+++ xubuntu_autopilot_tests/thunderbird/__init__.py 2014-03-30 18:20:04 +0000
1169@@ -0,0 +1,2 @@
1170+# -*- coding: utf-8 -*-
1171+
1172
1173=== added file 'xubuntu_autopilot_tests/thunderbird/test_thunderbird.py'
1174--- xubuntu_autopilot_tests/thunderbird/test_thunderbird.py 1970-01-01 00:00:00 +0000
1175+++ xubuntu_autopilot_tests/thunderbird/test_thunderbird.py 2014-03-30 18:20:04 +0000
1176@@ -0,0 +1,49 @@
1177+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
1178+#
1179+# Copyright (C) 2014
1180+#
1181+# Author: Thomas Molloy beetyrootey@gmail.com
1182+#
1183+# This program is free software; you can redistribute it and/or modify
1184+# it under the terms of the GNU Lesser General Public License as published by
1185+# the Free Software Foundation; version 3.
1186+#
1187+# This program is distributed in the hope that it will be useful,
1188+# but WITHOUT ANY WARRANTY; without even the implied warranty of
1189+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1190+# GNU Lesser General Public License for more details.
1191+#
1192+# You should have received a copy of the GNU Lesser General Public License
1193+# along with this program. If not, see <http://www.gnu.org/licenses/>.
1194+from autopilot.matchers import Eventually
1195+from testtools.matchers import Equals, Contains
1196+from autopilot.testcase import AutopilotTestCase
1197+from autopilot.process import ProcessManager
1198+
1199+# register sudoku app
1200+ProcessManager.register_known_application(
1201+ "thunderbird",
1202+ "thunderbird.desktop",
1203+ "thunderbird")
1204+
1205+class ThunderbirdWindowTests(AutopilotTestCase):
1206+ """ Window tests for the game Sudoku """
1207+
1208+ def setUp(self):
1209+ """ Basic setup instruction to run before each test """
1210+ super(ThunderbirdWindowTests, self).setUp()
1211+ self.manager = ProcessManager.create('BAMF')
1212+ self.app = self.manager.start_app("thunderbird")
1213+ # This will make sure Sudoku window you launched is focused and ready
1214+ # to accept your keyboard input
1215+ self.assertTrue(self.app.is_active)
1216+
1217+ def test_window_visible(self):
1218+ # We must assert the window title = Sudoku here to keep focus of Sudoku
1219+ # It fails with assertTrue(self.app.is_focused)
1220+ windows = self.app.get_windows()
1221+ self.assertTrue(len(windows) == 1)
1222+ mainWindow = windows[0]
1223+ self.assertThat(lambda: mainWindow.title, Eventually(Contains('Thunderbird')))
1224+ # We must close the window else the test fails as it is unable to close it automatically
1225+ mainWindow.close()
1226
1227=== added directory 'xubuntu_autopilot_tests/transmission-gtk'
1228=== added file 'xubuntu_autopilot_tests/transmission-gtk/__init__.py'
1229--- xubuntu_autopilot_tests/transmission-gtk/__init__.py 1970-01-01 00:00:00 +0000
1230+++ xubuntu_autopilot_tests/transmission-gtk/__init__.py 2014-03-30 18:20:04 +0000
1231@@ -0,0 +1,2 @@
1232+# -*- coding: utf-8 -*-
1233+
1234
1235=== added file 'xubuntu_autopilot_tests/transmission-gtk/test_transmission_gtk.py'
1236--- xubuntu_autopilot_tests/transmission-gtk/test_transmission_gtk.py 1970-01-01 00:00:00 +0000
1237+++ xubuntu_autopilot_tests/transmission-gtk/test_transmission_gtk.py 2014-03-30 18:20:04 +0000
1238@@ -0,0 +1,49 @@
1239+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
1240+#
1241+# Copyright (C) 2014
1242+#
1243+# Author: Thomas Molloy beetyrootey@gmail.com
1244+#
1245+# This program is free software; you can redistribute it and/or modify
1246+# it under the terms of the GNU Lesser General Public License as published by
1247+# the Free Software Foundation; version 3.
1248+#
1249+# This program is distributed in the hope that it will be useful,
1250+# but WITHOUT ANY WARRANTY; without even the implied warranty of
1251+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1252+# GNU Lesser General Public License for more details.
1253+#
1254+# You should have received a copy of the GNU Lesser General Public License
1255+# along with this program. If not, see <http://www.gnu.org/licenses/>.
1256+from autopilot.matchers import Eventually
1257+from testtools.matchers import Equals, Contains
1258+from autopilot.testcase import AutopilotTestCase
1259+from autopilot.process import ProcessManager
1260+
1261+# register sudoku app
1262+ProcessManager.register_known_application(
1263+ "transmission-gtk",
1264+ "transmission-gtk.desktop",
1265+ "transmission-gtk")
1266+
1267+class TransmissionGTKwindowTests(AutopilotTestCase):
1268+ """ Window tests for the game Sudoku """
1269+
1270+ def setUp(self):
1271+ """ Basic setup instruction to run before each test """
1272+ super(TransmissionGTKwindowTests, self).setUp()
1273+ self.manager = ProcessManager.create('BAMF')
1274+ self.app = self.manager.start_app("transmission-gtk")
1275+ # This will make sure Sudoku window you launched is focused and ready
1276+ # to accept your keyboard input
1277+ self.assertTrue(self.app.is_active)
1278+
1279+ def test_window_visible(self):
1280+ # We must assert the window title = Sudoku here to keep focus of Sudoku
1281+ # It fails with assertTrue(self.app.is_focused)
1282+ windows = self.app.get_windows()
1283+ self.assertTrue(len(windows) == 1)
1284+ mainWindow = windows[0]
1285+ self.assertThat(lambda: mainWindow.title, Eventually(Contains('Transmission')))
1286+ # We must close the window else the test fails as it is unable to close it automatically
1287+ mainWindow.close()
1288
1289=== added directory 'xubuntu_autopilot_tests/xfce4-appfinder'
1290=== added file 'xubuntu_autopilot_tests/xfce4-appfinder/__init__.py'
1291--- xubuntu_autopilot_tests/xfce4-appfinder/__init__.py 1970-01-01 00:00:00 +0000
1292+++ xubuntu_autopilot_tests/xfce4-appfinder/__init__.py 2014-03-30 18:20:04 +0000
1293@@ -0,0 +1,2 @@
1294+# -*- coding: utf-8 -*-
1295+
1296
1297=== added file 'xubuntu_autopilot_tests/xfce4-appfinder/test_xfce4_appfinder.py'
1298--- xubuntu_autopilot_tests/xfce4-appfinder/test_xfce4_appfinder.py 1970-01-01 00:00:00 +0000
1299+++ xubuntu_autopilot_tests/xfce4-appfinder/test_xfce4_appfinder.py 2014-03-30 18:20:04 +0000
1300@@ -0,0 +1,51 @@
1301+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
1302+#
1303+# Copyright (C) 2014
1304+#
1305+# Author: Thomas Molloy beetyrootey@gmail.com
1306+#
1307+# This program is free software; you can redistribute it and/or modify
1308+# it under the terms of the GNU Lesser General Public License as published by
1309+# the Free Software Foundation; version 3.
1310+#
1311+# This program is distributed in the hope that it will be useful,
1312+# but WITHOUT ANY WARRANTY; without even the implied warranty of
1313+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1314+# GNU Lesser General Public License for more details.
1315+#
1316+# You should have received a copy of the GNU Lesser General Public License
1317+# along with this program. If not, see <http://www.gnu.org/licenses/>.
1318+from autopilot.matchers import Eventually
1319+from testtools.matchers import Equals, Contains
1320+from autopilot.testcase import AutopilotTestCase
1321+from autopilot.process import ProcessManager
1322+
1323+# register xfce4-appfinder app
1324+ProcessManager.register_known_application(
1325+ "xfce4-appfinder",
1326+ "xfce4-appfinder.desktop",
1327+ "xfce4-appfinder")
1328+
1329+class xfce4AppfinderWindowTests(AutopilotTestCase):
1330+ """ Window tests for the xfce4-appfinder """
1331+
1332+ def setUp(self):
1333+ """ Basic setup instruction to run before each test """
1334+ super(xfce4AppfinderWindowTests, self).setUp()
1335+ self.manager = ProcessManager.create('BAMF')
1336+ self.app = self.manager.start_app("xfce4-appfinder")
1337+ # This will make sure Mines window you launched is focused and ready
1338+ # to accept your keyboard input
1339+ self.assertTrue(self.app.is_active)
1340+
1341+ def test_window_visible(self):
1342+ """ Check to see if the main window has the proper title """
1343+ windows = self.app.get_windows()
1344+ window = windows[0]
1345+
1346+ # We must assert the window title = Application Finder
1347+ # It fails with assertTrue(self.app.is_focused)
1348+ self.assertThat(lambda: window.title, Eventually(Contains('Application Finder')))
1349+
1350+ for window in windows:
1351+ window.close()
1352
1353=== added directory 'xubuntu_autopilot_tests/xfce4-dict'
1354=== added file 'xubuntu_autopilot_tests/xfce4-dict/__init__.py'
1355--- xubuntu_autopilot_tests/xfce4-dict/__init__.py 1970-01-01 00:00:00 +0000
1356+++ xubuntu_autopilot_tests/xfce4-dict/__init__.py 2014-03-30 18:20:04 +0000
1357@@ -0,0 +1,2 @@
1358+# -*- coding: utf-8 -*-
1359+
1360
1361=== added file 'xubuntu_autopilot_tests/xfce4-dict/test_xfce4_dict.py'
1362--- xubuntu_autopilot_tests/xfce4-dict/test_xfce4_dict.py 1970-01-01 00:00:00 +0000
1363+++ xubuntu_autopilot_tests/xfce4-dict/test_xfce4_dict.py 2014-03-30 18:20:04 +0000
1364@@ -0,0 +1,51 @@
1365+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
1366+#
1367+# Copyright (C) 2014
1368+#
1369+# Author: Thomas Molloy beetyrootey@gmail.com
1370+#
1371+# This program is free software; you can redistribute it and/or modify
1372+# it under the terms of the GNU Lesser General Public License as published by
1373+# the Free Software Foundation; version 3.
1374+#
1375+# This program is distributed in the hope that it will be useful,
1376+# but WITHOUT ANY WARRANTY; without even the implied warranty of
1377+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1378+# GNU Lesser General Public License for more details.
1379+#
1380+# You should have received a copy of the GNU Lesser General Public License
1381+# along with this program. If not, see <http://www.gnu.org/licenses/>.
1382+from autopilot.matchers import Eventually
1383+from testtools.matchers import Equals, Contains
1384+from autopilot.testcase import AutopilotTestCase
1385+from autopilot.process import ProcessManager
1386+
1387+# register xfce4-dict app
1388+ProcessManager.register_known_application(
1389+ "xfce4-dict",
1390+ "xfce4-dict.desktop",
1391+ "xfce4-dict")
1392+
1393+class xfce4DictWindowTests(AutopilotTestCase):
1394+ """ Window tests for the dict """
1395+
1396+ def setUp(self):
1397+ """ Basic setup instruction to run before each test """
1398+ super(xfce4DictWindowTests, self).setUp()
1399+ self.manager = ProcessManager.create('BAMF')
1400+ self.app = self.manager.start_app("xfce4-dict")
1401+ # This will make sure Mines window you launched is focused and ready
1402+ # to accept your keyboard input
1403+ self.assertTrue(self.app.is_active)
1404+
1405+ def test_window_visible(self):
1406+ """ Check to see if the main window has the proper title """
1407+ windows = self.app.get_windows()
1408+ window = windows[0]
1409+
1410+ # We must assert the window title = Dictionary
1411+ # It fails with assertTrue(self.app.is_focused)
1412+ self.assertThat(lambda: window.title, Eventually(Contains('Dictionary')))
1413+
1414+ for window in windows:
1415+ window.close()
1416
1417=== added directory 'xubuntu_autopilot_tests/xfce4-screenshooter'
1418=== added file 'xubuntu_autopilot_tests/xfce4-screenshooter/__init__.py'
1419--- xubuntu_autopilot_tests/xfce4-screenshooter/__init__.py 1970-01-01 00:00:00 +0000
1420+++ xubuntu_autopilot_tests/xfce4-screenshooter/__init__.py 2014-03-30 18:20:04 +0000
1421@@ -0,0 +1,2 @@
1422+# -*- coding: utf-8 -*-
1423+
1424
1425=== added file 'xubuntu_autopilot_tests/xfce4-screenshooter/test_xfce4_screenshooter.py'
1426--- xubuntu_autopilot_tests/xfce4-screenshooter/test_xfce4_screenshooter.py 1970-01-01 00:00:00 +0000
1427+++ xubuntu_autopilot_tests/xfce4-screenshooter/test_xfce4_screenshooter.py 2014-03-30 18:20:04 +0000
1428@@ -0,0 +1,51 @@
1429+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
1430+#
1431+# Copyright (C) 2014
1432+#
1433+# Author: Thomas Molloy beetyrootey@gmail.com
1434+#
1435+# This program is free software; you can redistribute it and/or modify
1436+# it under the terms of the GNU Lesser General Public License as published by
1437+# the Free Software Foundation; version 3.
1438+#
1439+# This program is distributed in the hope that it will be useful,
1440+# but WITHOUT ANY WARRANTY; without even the implied warranty of
1441+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1442+# GNU Lesser General Public License for more details.
1443+#
1444+# You should have received a copy of the GNU Lesser General Public License
1445+# along with this program. If not, see <http://www.gnu.org/licenses/>.
1446+from autopilot.matchers import Eventually
1447+from testtools.matchers import Equals, Contains
1448+from autopilot.testcase import AutopilotTestCase
1449+from autopilot.process import ProcessManager
1450+
1451+# register xfce4-screenshooter app
1452+ProcessManager.register_known_application(
1453+ "xfce4-screenshooter",
1454+ "xfce4-screenshooter.desktop",
1455+ "xfce4-screenshooter")
1456+
1457+class xfce4ScreenshooterWindowTests(AutopilotTestCase):
1458+ """ Window tests for the xfce4-screenshooter """
1459+
1460+ def setUp(self):
1461+ """ Basic setup instruction to run before each test """
1462+ super(xfce4ScreenshooterWindowTests, self).setUp()
1463+ self.manager = ProcessManager.create('BAMF')
1464+ self.app = self.manager.start_app("xfce4-screenshooter")
1465+ # This will make sure Screenshooter window you launched is focused and ready
1466+ # to accept your keyboard input
1467+ self.assertTrue(self.app.is_active)
1468+
1469+ def test_window_visible(self):
1470+ """ Check to see if the main window has the proper title """
1471+ windows = self.app.get_windows()
1472+ window = windows[0]
1473+
1474+ # We must assert the window title = Screenshot
1475+ # It fails with assertTrue(self.app.is_focused)
1476+ self.assertThat(lambda: window.title, Eventually(Contains('Screenshot')))
1477+
1478+ for window in windows:
1479+ window.close()
1480
1481=== added directory 'xubuntu_autopilot_tests/xfce4-settings-manager'
1482=== added file 'xubuntu_autopilot_tests/xfce4-settings-manager/__init__.py'
1483--- xubuntu_autopilot_tests/xfce4-settings-manager/__init__.py 1970-01-01 00:00:00 +0000
1484+++ xubuntu_autopilot_tests/xfce4-settings-manager/__init__.py 2014-03-30 18:20:04 +0000
1485@@ -0,0 +1,2 @@
1486+# -*- coding: utf-8 -*-
1487+
1488
1489=== added file 'xubuntu_autopilot_tests/xfce4-settings-manager/test_xfce4_settings_manager.py'
1490--- xubuntu_autopilot_tests/xfce4-settings-manager/test_xfce4_settings_manager.py 1970-01-01 00:00:00 +0000
1491+++ xubuntu_autopilot_tests/xfce4-settings-manager/test_xfce4_settings_manager.py 2014-03-30 18:20:04 +0000
1492@@ -0,0 +1,66 @@
1493+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
1494+#
1495+# Copyright (C) 2013
1496+#
1497+# Author: Daniel Chapman daniel@chapman-mail.com
1498+#
1499+# This program is free software; you can redistribute it and/or modify
1500+# it under the terms of the GNU Lesser General Public License as published by
1501+# the Free Software Foundation; version 3.
1502+#
1503+# This program is distributed in the hope that it will be useful,
1504+# but WITHOUT ANY WARRANTY; without even the implied warranty of
1505+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1506+# GNU Lesser General Public License for more details.
1507+#
1508+# You should have received a copy of the GNU Lesser General Public License
1509+# along with this program. If not, see <http://www.gnu.org/licenses/>.
1510+from autopilot.matchers import Eventually
1511+from testtools.matchers import Equals, Contains
1512+from autopilot.testcase import AutopilotTestCase
1513+from autopilot.process import ProcessManager
1514+
1515+# register xfce4-settings-manager app
1516+ProcessManager.register_known_application(
1517+ "xfce4-settings-manager", "xfce-settings-manager.desktop", "xfce4-settings-manager")
1518+
1519+class xfce4SettingsManagerindowTests(AutopilotTestCase):
1520+ """ Window tests for the xfce4-settings-manager """
1521+
1522+ def setUp(self):
1523+ """ Basic setup instruction to run before each test """
1524+ super(xfce4SettingsManagerindowTests, self).setUp()
1525+ self.manager = ProcessManager.create('BAMF')
1526+ self.app = self.manager.start_app("xfce4-settings-manager")
1527+ self.assertTrue(self.app.is_active)
1528+
1529+ def test_window_visible(self):
1530+ """ Check to see if the main window has the proper title """
1531+ windows = self.app.get_windows()
1532+ window = windows[0]
1533+
1534+ # We must assert the window title = Settings
1535+ # It fails with assertTrue(self.app.is_focused)
1536+ self.assertThat(lambda: window.title, Eventually(Contains('Settings')))
1537+
1538+ for window in windows:
1539+ window.close()
1540+
1541+ def test_main_menu_settings_visible(self, ):
1542+ windows = self.app.get_windows()
1543+ self.assertTrue(len(windows) == 1)
1544+ mainWindow = windows[0]
1545+ self.assertTrue(mainWindow.title == "Settings")
1546+ self.keyboard.type("Main menu")
1547+ self.keyboard.press("Enter")
1548+ self.keyboard.press("Enter")
1549+ mainMenu = self.manager.get_running_applications()
1550+ mainMenuFound = False
1551+ for menu in mainMenu:
1552+ if menu.name == "Main Menu":
1553+ mainMenuFound = True
1554+ mainMenuWindows = menu.get_windows()
1555+ for window in mainMenuWindows:
1556+ window.close()
1557+ return
1558+ self.assertTrue(mainMenuFound)
1559\ No newline at end of file
1560
1561=== added directory 'xubuntu_autopilot_tests/xfce4-taskmanager'
1562=== added file 'xubuntu_autopilot_tests/xfce4-taskmanager/__init__.py'
1563--- xubuntu_autopilot_tests/xfce4-taskmanager/__init__.py 1970-01-01 00:00:00 +0000
1564+++ xubuntu_autopilot_tests/xfce4-taskmanager/__init__.py 2014-03-30 18:20:04 +0000
1565@@ -0,0 +1,2 @@
1566+# -*- coding: utf-8 -*-
1567+
1568
1569=== added file 'xubuntu_autopilot_tests/xfce4-taskmanager/test_xfce4_taskmanager.py'
1570--- xubuntu_autopilot_tests/xfce4-taskmanager/test_xfce4_taskmanager.py 1970-01-01 00:00:00 +0000
1571+++ xubuntu_autopilot_tests/xfce4-taskmanager/test_xfce4_taskmanager.py 2014-03-30 18:20:04 +0000
1572@@ -0,0 +1,51 @@
1573+# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
1574+#
1575+# Copyright (C) 2014
1576+#
1577+# Author: Thomas Molloy beetyrootey@gmail.com
1578+#
1579+# This program is free software; you can redistribute it and/or modify
1580+# it under the terms of the GNU Lesser General Public License as published by
1581+# the Free Software Foundation; version 3.
1582+#
1583+# This program is distributed in the hope that it will be useful,
1584+# but WITHOUT ANY WARRANTY; without even the implied warranty of
1585+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1586+# GNU Lesser General Public License for more details.
1587+#
1588+# You should have received a copy of the GNU Lesser General Public License
1589+# along with this program. If not, see <http://www.gnu.org/licenses/>.
1590+from autopilot.matchers import Eventually
1591+from testtools.matchers import Equals, Contains
1592+from autopilot.testcase import AutopilotTestCase
1593+from autopilot.process import ProcessManager
1594+
1595+# register xfce4-taskmanager app
1596+ProcessManager.register_known_application(
1597+ "xfce4-taskmanager",
1598+ "xfce4-taskmanager.desktop",
1599+ "xfce4-taskmanager")
1600+
1601+class xfce4TaskmanagerWindowTests(AutopilotTestCase):
1602+ """ Window tests for the xfce4-taskmanager """
1603+
1604+ def setUp(self):
1605+ """ Basic setup instruction to run before each test """
1606+ super(xfce4TaskmanagerWindowTests, self).setUp()
1607+ self.manager = ProcessManager.create('BAMF')
1608+ self.app = self.manager.start_app("xfce4-taskmanager")
1609+ # This will make sure Notes window you launched is focused and ready
1610+ # to accept your keyboard input
1611+ self.assertTrue(self.app.is_active)
1612+
1613+ def test_window_visible(self):
1614+ """ Check to see if the main window has the proper title """
1615+ windows = self.app.get_windows()
1616+ window = windows[0]
1617+
1618+ # We must assert the window title = Task Manager
1619+ # It fails with assertTrue(self.app.is_focused)
1620+ self.assertThat(lambda: window.title, Eventually(Contains('Task Manager')))
1621+
1622+ for window in windows:
1623+ window.close()
1624
1625=== modified file 'xubuntu_autopilot_tests/xfce4-terminal/__init__.py'
1626--- xubuntu_autopilot_tests/xfce4-terminal/__init__.py 2014-01-14 19:00:17 +0000
1627+++ xubuntu_autopilot_tests/xfce4-terminal/__init__.py 2014-03-30 18:20:04 +0000
1628@@ -41,4 +41,4 @@
1629 self.keyboard.type('mkdir /tmp/temp-dir\n')
1630 self.keyboard.type('touch /tmp/temp-dir/a\n')
1631 self.keyboard.type('touch /tmp/temp-dir/b\n')
1632- self.keyboard.type('touch /tmp/temp-dir/c\n')
1633+ self.keyboard.type('touch /tmp/temp-dir/c\n')
1634\ No newline at end of file
1635
1636=== modified file 'xubuntu_autopilot_tests/xfce4-terminal/test_terminal.py'
1637--- xubuntu_autopilot_tests/xfce4-terminal/test_terminal.py 2014-01-14 19:00:17 +0000
1638+++ xubuntu_autopilot_tests/xfce4-terminal/test_terminal.py 2014-03-30 18:20:04 +0000
1639@@ -1,8 +1,8 @@
1640 # -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
1641 #
1642-# Copyright (C) 2013
1643+# Copyright (C) 2014
1644 #
1645-# Author: Daniel Chapman daniel@chapman-mail.com
1646+# Author: Thomas Molloy beetyrootey@gmail.com
1647 #
1648 # This program is free software; you can redistribute it and/or modify
1649 # it under the terms of the GNU Lesser General Public License as published by

Subscribers

People subscribed via source and target branches