Merge lp:~nskaggs/ubuntu-weather-app/manual-tests into lp:ubuntu-weather-app

Proposed by Nicholas Skaggs
Status: Merged
Approved by: Andrew Hayzen
Approved revision: 189
Merged at revision: 192
Proposed branch: lp:~nskaggs/ubuntu-weather-app/manual-tests
Merge into: lp:ubuntu-weather-app
Diff against target: 323 lines (+271/-0)
9 files modified
tests/manual/2015.com.ubuntu.weather:weather-tests/jobs/weather-firstrun.pxu (+65/-0)
tests/manual/2015.com.ubuntu.weather:weather-tests/jobs/weather-forecasts.pxu (+62/-0)
tests/manual/2015.com.ubuntu.weather:weather-tests/jobs/weather-locations.pxu (+79/-0)
tests/manual/2015.com.ubuntu.weather:weather-tests/jobs/weather-settings.pxu (+40/-0)
tests/manual/2015.com.ubuntu.weather:weather-tests/manage.py (+21/-0)
tests/manual/2015.com.ubuntu.weather:weather-tests/whitelists/weather-firstrun.whitelist (+1/-0)
tests/manual/2015.com.ubuntu.weather:weather-tests/whitelists/weather-forecasts.whitelist (+1/-0)
tests/manual/2015.com.ubuntu.weather:weather-tests/whitelists/weather-locations.whitelist (+1/-0)
tests/manual/2015.com.ubuntu.weather:weather-tests/whitelists/weather-settings.whitelist (+1/-0)
To merge this branch: bzr merge lp:~nskaggs/ubuntu-weather-app/manual-tests
Reviewer Review Type Date Requested Status
Jenkins Bot continuous-integration Approve
Andrew Hayzen Approve
Victor Thompson Approve
Ubuntu Phone Apps Jenkins Bot continuous-integration Pending
Nicholas Skaggs Pending
Review via email: mp+280775@code.launchpad.net

This proposal supersedes a proposal from 2015-09-29.

Commit message

Add manual tests

Description of the change

Adding the checkbox tests that shipped long ago with Pilot. This includes the provider and is a nice drop-in solution. I took the comments from the first merge as well.

To post a comment you must log in.
Revision history for this message
Ubuntu Phone Apps Jenkins Bot (ubuntu-phone-apps-jenkins-bot) wrote : Posted in a previous version of this proposal
review: Approve (continuous-integration)
Revision history for this message
Nicholas Skaggs (nskaggs) wrote : Posted in a previous version of this proposal

These are fine, but will need a provider and folder layout to make them plug and play. I'll bundle them and try them before providing a diff.

Revision history for this message
Nicholas Skaggs (nskaggs) wrote : Posted in a previous version of this proposal

These work. Some comments

Avoid using dashes for the file name
s/first-run/firstrun/

Prefix the tests file names with 'weather-'

You are missing a colon
s/_description/_description:/g

review: Needs Fixing
Revision history for this message
Ubuntu Phone Apps Jenkins Bot (ubuntu-phone-apps-jenkins-bot) wrote : Posted in a previous version of this proposal
review: Approve (continuous-integration)
Revision history for this message
Jenkins Bot (ubuntu-core-apps-jenkins-bot) wrote : Posted in a previous version of this proposal
review: Needs Fixing (continuous-integration)
Revision history for this message
Jenkins Bot (ubuntu-core-apps-jenkins-bot) wrote : Posted in a previous version of this proposal
review: Approve (continuous-integration)
Revision history for this message
Victor Thompson (vthompson) wrote : Posted in a previous version of this proposal

See 1 inline comment.

Also:
1. Please add an entry to the changelog, we're trying to maintain this file as we make fixes/updates.
2. There seem to be a lot of indentation issues. Is that problematic at all? Will it show up in an odd fashion to those running through the tests?

review: Needs Fixing
Revision history for this message
Nicholas Skaggs (nskaggs) wrote :

Sorry for overlaying your old MP popey; it was very helpful.

Revision history for this message
Jenkins Bot (ubuntu-core-apps-jenkins-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
Jenkins Bot (ubuntu-core-apps-jenkins-bot) wrote :
review: Approve (continuous-integration)
Revision history for this message
Victor Thompson (vthompson) wrote :

lgtm! Thanks balloons! :)

review: Approve
Revision history for this message
Andrew Hayzen (ahayzen) wrote :

LGTM! lets land it :-)

review: Approve
Revision history for this message
Jenkins Bot (ubuntu-core-apps-jenkins-bot) :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added directory 'tests/manual'
2=== added directory 'tests/manual/2015.com.ubuntu.weather:weather-tests'
3=== added directory 'tests/manual/2015.com.ubuntu.weather:weather-tests/jobs'
4=== added file 'tests/manual/2015.com.ubuntu.weather:weather-tests/jobs/weather-firstrun.pxu'
5--- tests/manual/2015.com.ubuntu.weather:weather-tests/jobs/weather-firstrun.pxu 1970-01-01 00:00:00 +0000
6+++ tests/manual/2015.com.ubuntu.weather:weather-tests/jobs/weather-firstrun.pxu 2015-12-16 21:52:36 +0000
7@@ -0,0 +1,65 @@
8+plugin: resource
9+id: weather-firstrun/system-image
10+_summary: [Automated] gather system information
11+command: system-image-cli -i
12+_description:
13+ Gather system info
14+
15+id: weather-firstrun/check-icon
16+plugin: manual
17+_summary: Test to check correct icon is used
18+estimated_duration: 600
19+_description:
20+ Test to check correct icon is used
21+ 1. Install weather reboot
22+ Weather icon with a cloud and 12-spiked sun should appear in the dash
23+
24+id: weather-firstrun/location-check
25+plugin: manual
26+_summary: Test to confirm location is requested
27+estimated_duration: 600
28+_description:
29+ Test to confirm location is requested
30+ 1. Launch weather reboot
31+ Expect to see 'location acceptance screen'
32+
33+id: weather-firstrun/location-deny
34+plugin: manual
35+_summary: Test to confirm effect of denying location access
36+estimated_duration: 600
37+_description:
38+ Test to confirm effect of denying location access
39+ 1. Launch weather reboot
40+ Expect to see 'location acceptance screen'
41+ 2. Choose 'deny'
42+ Expect to see the "Cannot determine your location", "Manually add" screen
43+
44+id: weather-firstrun/location-allow
45+plugin: manual
46+_summary: Test to confirm effect of allowing location access
47+estimated_duration: 600
48+_description:
49+ Test to confirm effect of allowing location access
50+ 1. Close weather app (if already open)
51+ 2. Launch System Settings
52+ 3. Choose "Security & Privacy"
53+ 4. Choose "Location Access"
54+ 5. Switch location access for weather app on
55+ This reverses the location denial from the previous test
56+ 6. Launch weather reboot
57+ Expect to _not_ see 'location acceptance screen'
58+ 7. Wait for a short while
59+ Expect to see weather for your current location
60+
61+id: weather-firstrun/pull-refresh
62+plugin: manual
63+_summary: Test to confirm pull to refresh works
64+estimated_duration: 600
65+_description:
66+ Test to confirm pull to refresh works
67+ 1. Launch weather reboot
68+ Expect to see weather details for current location
69+ 2. Pull down the screen to refresh
70+ Expect to see 'Pull down to refresh' then 'Release to refresh'
71+ 3. Let go of the screen
72+ Expect view to refresh - although you may not see any difference if the data recently refreshed
73
74=== added file 'tests/manual/2015.com.ubuntu.weather:weather-tests/jobs/weather-forecasts.pxu'
75--- tests/manual/2015.com.ubuntu.weather:weather-tests/jobs/weather-forecasts.pxu 1970-01-01 00:00:00 +0000
76+++ tests/manual/2015.com.ubuntu.weather:weather-tests/jobs/weather-forecasts.pxu 2015-12-16 21:52:36 +0000
77@@ -0,0 +1,62 @@
78+plugin: resource
79+id: weather-forecasts/system-image
80+_summary: [Automated] gather system information
81+command: system-image-cli -i
82+_description:
83+ Gather system info
84+
85+id: weather-forecasts/test-daily-forecast
86+plugin: manual
87+_summary: Test to future day forecast is shown
88+estimated_duration: 600
89+_description:
90+ Test to future day forecast is shown
91+ 1. Launch weather app
92+ Expect to see weather for your current location
93+ 2. Scroll up
94+ Expect to see weather for at least the following 4 days
95+
96+id: weather-forecasts/test-hourly-forecast-detail
97+plugin: manual
98+_summary: Test to ensure hourly forecast detail is shown
99+estimated_duration: 600
100+_description:
101+ Test to ensure hourly forecast detail is shown
102+ 1. Launch weather app
103+ Expect to see weather for your current location
104+ 2. Tap large current weather icon (cloud/sun/rain) in the top half of the display
105+ Expect to see weather for the following hours
106+ 3. Swipe right and left
107+ Expect to see further details about the weather on coming hours
108+ 4. Tap in that area again
109+ Expect the previously shown current weather icon to be displayed
110+
111+id: weather-forecasts/test-daily-forecast-detail
112+plugin: manual
113+_summary: Test to ensure daily forecast detail is shown
114+estimated_duration: 600
115+_description:
116+ Test to ensure daily forecast detail is shown
117+ 1. Launch weather app
118+ Expect to see weather for your current location
119+ 2. Scroll up
120+ Expect to see weather for at least the following 4 days
121+ 3. Tap any day in the future
122+ Expect to see further details about the weather on that day
123+ 4. Tap any other day
124+ Expect the previously tapped day to shrink, and the newly tapped day to expand
125+ 5. Tap the same day again
126+ Expect the tapped day detail to shrink
127+
128+id: weather-forecasts/test-final-day
129+plugin: manual
130+_summary: Test to ensure UI expands properly
131+estimated_duration: 600
132+_description:
133+ Test to ensure UI expands properly
134+ 1. Launch weather app
135+ Expect to see weather for your current location
136+ 2. Scroll up to the very bottom
137+ Expect to see weather for at least the following 4 days
138+ 3. Tap the final day in the list
139+ Expect it to expand, and still be on screen (i.e. not expanded off-screen)
140
141=== added file 'tests/manual/2015.com.ubuntu.weather:weather-tests/jobs/weather-locations.pxu'
142--- tests/manual/2015.com.ubuntu.weather:weather-tests/jobs/weather-locations.pxu 1970-01-01 00:00:00 +0000
143+++ tests/manual/2015.com.ubuntu.weather:weather-tests/jobs/weather-locations.pxu 2015-12-16 21:52:36 +0000
144@@ -0,0 +1,79 @@
145+plugin: resource
146+id: weather-locations/system-image
147+_summary: [Automated] gather system information
148+command: system-image-cli -i
149+_description:
150+ Gather system info
151+
152+id: weather-locations/show-list-of-locations
153+plugin: manual
154+_summary: Test to see a list of locations
155+estimated_duration: 600
156+_description:
157+ Test to see a list of locations
158+ 1. Launch weather app
159+ Expect to see weather for your current location
160+ 2. Swipe up from the bottom of the screen
161+ Expect to see a list of locations (only one location on first run, or no locations if gps access denied)
162+
163+id: weather-locations/add-pre-defined-location
164+plugin: manual
165+_summary: Test to add a location from a pre-defined list
166+estimated_duration: 600
167+_description:
168+ Test to add a location from a pre-defined list
169+ 1. Launch weather app
170+ Expect to see weather for your current location
171+ 2. Swipe up from the bottom of the screen
172+ Expect to see a list of locations (only one location on first run, or no locations if gps access denied)
173+ 3. Press "+" icon
174+ Expect to see a pre-defined list of city names
175+ 4. Tap any city on the list
176+ Expect to see it added to the list of locations
177+ 5. Continue to add more cities
178+ There is a hard wired limit of 7 locations currently
179+
180+id: weather-locations/switch-location-by-swipe
181+plugin: manual
182+_summary: Test to switch locations by swiping
183+estimated_duration: 600
184+_description:
185+ Test to switch locations by swiping
186+ 1. Launch weather app
187+ Expect to see weather for your current location
188+ 2. Swipe left
189+ Expect to switch location
190+ 3. Swipe right
191+ Expect to switch back to previous location
192+
193+id: weather-locations/switch-location-by-edge
194+plugin: manual
195+_summary: Test to switch locations using bottom edge
196+estimated_duration: 600
197+_description:
198+ Test to switch locations using bottom edge
199+ 1. Launch weather app
200+ Expect to see weather for your current location
201+ 2. Swipe up from the bottom of the screen
202+ Expect to see a list of locations
203+ 3. Tap a location
204+ Expect to be returned to the main screen, showing weather for selected location
205+
206+id: weather-locations/delete-location
207+plugin: manual
208+_summary: Test to remove locations
209+estimated_duration: 600
210+_description:
211+ Test to remove locations
212+ 1. Launch weather app
213+ Expect to see weather for your current location
214+ 2. Swipe up from the bottom of the screen
215+ Expect to see a list of locations
216+ 3. Swipe a location to the right
217+ Expect to see a delete option
218+ 4. Swipe location left again
219+ Expect location NOT to be deleted
220+ 5. Swipe a location to the right
221+ Expect to see a delete option
222+ 6. Tap delete (trash) button
223+ Expect location to be deleted
224
225=== added file 'tests/manual/2015.com.ubuntu.weather:weather-tests/jobs/weather-settings.pxu'
226--- tests/manual/2015.com.ubuntu.weather:weather-tests/jobs/weather-settings.pxu 1970-01-01 00:00:00 +0000
227+++ tests/manual/2015.com.ubuntu.weather:weather-tests/jobs/weather-settings.pxu 2015-12-16 21:52:36 +0000
228@@ -0,0 +1,40 @@
229+plugin: resource
230+id: weather-settings/system-image
231+_summary: [Automated] gather system information
232+command: system-image-cli -i
233+_description:
234+ Gather system info
235+
236+id: weather-settings/change-units-temp
237+plugin: manual
238+_summary: Test to change temperature units
239+estimated_duration: 600
240+_description:
241+ Test to change temperature units
242+ 1. Launch weather app
243+ Expect to see weather for your current location
244+ 2. Tap settings cog in top right corner
245+ Expect to see a list of settings
246+ 3. Tap "Units"
247+ Expect to see 'Units' screen
248+ 4. Tap "Temperature"
249+ Expect to see options unfolded
250+ 5. Switch to different temperature units and go back to main screen
251+ Expect units shown to be different
252+
253+id: weather-settings/change-units-speed
254+plugin: manual
255+_summary: Test to change wind speed units
256+estimated_duration: 600
257+_description:
258+ Test to change wind speed units
259+ 1. Launch weather app
260+ Expect to see weather for your current location
261+ 2. Tap settings cog in top right corner
262+ Expect to see a list of settings
263+ 3. Tap "Units"
264+ Expect to see 'Units' screen
265+ 4. Tap "Wind Speed"
266+ Expect to see options unfolded
267+ 5. Switch to different wind speed units and go back to main screen
268+ Expect wind speed units shown to be different
269
270=== added file 'tests/manual/2015.com.ubuntu.weather:weather-tests/manage.py'
271--- tests/manual/2015.com.ubuntu.weather:weather-tests/manage.py 1970-01-01 00:00:00 +0000
272+++ tests/manual/2015.com.ubuntu.weather:weather-tests/manage.py 2015-12-16 21:52:36 +0000
273@@ -0,0 +1,21 @@
274+#!/usr/bin/env python3
275+from plainbox.provider_manager import setup, N_
276+
277+# You can inject other stuff here but please don't go overboard.
278+#
279+# In particular, if you need comprehensive compilation support to get
280+# your bin/ populated then please try to discuss that with us in the
281+# upstream project IRC channel #checkbox on irc.freenode.net.
282+
283+# NOTE: one thing that you could do here, that makes a lot of sense,
284+# is to compute version somehow. This may vary depending on the
285+# context of your provider. Future version of PlainBox will offer git,
286+# bzr and mercurial integration using the versiontools library
287+# (optional)
288+
289+setup(
290+ name='2015.com.ubuntu.weather:weather-tests',
291+ version="1.0",
292+ description=N_("The 2015.com.ubuntu.weather:weather-tests provider"),
293+ gettext_domain="2015_com_ubuntu_weather_weather-tests",
294+)
295
296=== added directory 'tests/manual/2015.com.ubuntu.weather:weather-tests/whitelists'
297=== added file 'tests/manual/2015.com.ubuntu.weather:weather-tests/whitelists/weather-firstrun.whitelist'
298--- tests/manual/2015.com.ubuntu.weather:weather-tests/whitelists/weather-firstrun.whitelist 1970-01-01 00:00:00 +0000
299+++ tests/manual/2015.com.ubuntu.weather:weather-tests/whitelists/weather-firstrun.whitelist 2015-12-16 21:52:36 +0000
300@@ -0,0 +1,1 @@
301+weather-firstrun/.*
302\ No newline at end of file
303
304=== added file 'tests/manual/2015.com.ubuntu.weather:weather-tests/whitelists/weather-forecasts.whitelist'
305--- tests/manual/2015.com.ubuntu.weather:weather-tests/whitelists/weather-forecasts.whitelist 1970-01-01 00:00:00 +0000
306+++ tests/manual/2015.com.ubuntu.weather:weather-tests/whitelists/weather-forecasts.whitelist 2015-12-16 21:52:36 +0000
307@@ -0,0 +1,1 @@
308+weather-forecasts/.*
309\ No newline at end of file
310
311=== added file 'tests/manual/2015.com.ubuntu.weather:weather-tests/whitelists/weather-locations.whitelist'
312--- tests/manual/2015.com.ubuntu.weather:weather-tests/whitelists/weather-locations.whitelist 1970-01-01 00:00:00 +0000
313+++ tests/manual/2015.com.ubuntu.weather:weather-tests/whitelists/weather-locations.whitelist 2015-12-16 21:52:36 +0000
314@@ -0,0 +1,1 @@
315+weather-locations/.*
316\ No newline at end of file
317
318=== added file 'tests/manual/2015.com.ubuntu.weather:weather-tests/whitelists/weather-settings.whitelist'
319--- tests/manual/2015.com.ubuntu.weather:weather-tests/whitelists/weather-settings.whitelist 1970-01-01 00:00:00 +0000
320+++ tests/manual/2015.com.ubuntu.weather:weather-tests/whitelists/weather-settings.whitelist 2015-12-16 21:52:36 +0000
321@@ -0,0 +1,1 @@
322+weather-settings/.*
323\ No newline at end of file

Subscribers

People subscribed via source and target branches

to all changes: