minor corrections
[tails-test.git] / features / usb_install.feature
blob780c32aecf569bce8d48b831119198a37849e410
1 @product @old_iso
2 Feature: Installing Tails to a USB drive, upgrading it, and using persistence
3   As a Tails user
4   I may want to install Tails to a USB drive
5   and upgrade it to new Tails versions
6   and use persistence
8   @keep_volumes
9   Scenario: Installing Tails to a pristine USB drive
10     Given a computer
11     And the computer is set to boot from the Tails DVD
12     And the network is unplugged
13     And I start the computer
14     When the computer boots Tails
15     And I log in to a new session
16     And GNOME has started
17     And all notifications have disappeared
18     And I create a new 4 GiB USB drive named "current"
19     And I plug USB drive "current"
20     And I "Clone & Install" Tails to USB drive "current"
21     Then the running Tails is installed on USB drive "current"
22     But there is no persistence partition on USB drive "current"
23     And I unplug USB drive "current"
25   @keep_volumes
26   Scenario: Booting Tails from a USB drive without a persistent partition and creating one
27     Given a computer
28     And the computer is set to boot from USB drive "current"
29     And the network is unplugged
30     When I start the computer
31     And the computer boots Tails
32     And the boot device has safe access rights
33     And I log in to a new session
34     And GNOME has started
35     And all notifications have disappeared
36     Then Tails seems to have booted normally
37     And Tails is running from USB drive "current"
38     And the boot device has safe access rights
39     And there is no persistence partition on USB drive "current"
40     And I create a persistent partition with password "asdf"
41     Then a Tails persistence partition with password "asdf" exists on USB drive "current"
42     And I shutdown Tails and wait for the computer to power off
44   @keep_volumes
45   Scenario: Booting Tails from a USB drive with a disabled persistent partition
46     Given a computer
47     And the computer is set to boot from USB drive "current"
48     And the network is unplugged
49     When I start the computer
50     And the computer boots Tails
51     And I log in to a new session
52     Then Tails seems to have booted normally
53     And Tails is running from USB drive "current"
54     And the boot device has safe access rights
55     And persistence is disabled
56     But a Tails persistence partition with password "asdf" exists on USB drive "current"
58   @keep_volumes
59   Scenario: Writing files to a read/write-enabled persistent partition
60     Given a computer
61     And the computer is set to boot from USB drive "current"
62     And the network is unplugged
63     When I start the computer
64     And the computer boots Tails
65     And Tails is running from USB drive "current"
66     And the boot device has safe access rights
67     And I enable persistence with password "asdf"
68     And I log in to a new session
69     And GNOME has started
70     And all notifications have disappeared
71     And persistence is enabled
72     And I write some files expected to persist
73     And persistent filesystems have safe access rights
74     And persistence configuration files have safe access rights
75     And persistent directories have safe access rights
76     And I shutdown Tails and wait for the computer to power off
77     Then only the expected files should persist on USB drive "current"
79   @keep_volumes
80   Scenario: Writing files to a read-only-enabled persistent partition
81     Given a computer
82     And the computer is set to boot from USB drive "current"
83     And the network is unplugged
84     When I start the computer
85     And the computer boots Tails
86     And Tails is running from USB drive "current"
87     And the boot device has safe access rights
88     And I enable read-only persistence with password "asdf"
89     And I log in to a new session
90     And GNOME has started
91     And all notifications have disappeared
92     And persistence is enabled
93     And I write some files not expected to persist
94     And I remove some files expected to persist
95     And I shutdown Tails and wait for the computer to power off
96     Then only the expected files should persist on USB drive "current"
98   @keep_volumes
99   Scenario: Deleting a Tails persistent partition
100     Given a computer
101     And the computer is set to boot from USB drive "current"
102     And the network is unplugged
103     And I start the computer
104     And the computer boots Tails
105     And I log in to a new session
106     And Tails is running from USB drive "current"
107     And the boot device has safe access rights
108     And Tails seems to have booted normally
109     And persistence is disabled
110     But a Tails persistence partition with password "asdf" exists on USB drive "current"
111     And all notifications have disappeared
112     When I delete the persistent partition
113     Then there is no persistence partition on USB drive "current"
115   @keep_volumes
116   Scenario: Installing an old version of Tails to a pristine USB drive
117     Given a computer
118     And the computer is set to boot from the old Tails DVD
119     And the network is unplugged
120     And I start the computer
121     When the computer boots Tails
122     And I log in to a new session
123     And GNOME has started
124     And all notifications have disappeared
125     And I create a new 4 GiB USB drive named "old"
126     And I plug USB drive "old"
127     And I "Clone & Install" Tails to USB drive "old"
128     Then the running Tails is installed on USB drive "old"
129     But there is no persistence partition on USB drive "old"
130     And I unplug USB drive "old"
132   @keep_volumes
133   Scenario: Creating a persistent partition with the old Tails USB installation
134     Given a computer
135     And the computer is set to boot from USB drive "old"
136     And the network is unplugged
137     When I start the computer
138     And the computer boots Tails
139     And Tails is running from USB drive "old"
140     And I log in to a new session
141     And GNOME has started
142     And all notifications have disappeared
143     And I create a persistent partition with password "asdf"
144     Then a Tails persistence partition with password "asdf" exists on USB drive "old"
145     And I shutdown Tails and wait for the computer to power off
147   @keep_volumes
148   Scenario: Writing files to a read/write-enabled persistent partition with the old Tails USB installation
149     Given a computer
150     And the computer is set to boot from USB drive "old"
151     And the network is unplugged
152     When I start the computer
153     And the computer boots Tails
154     And Tails is running from USB drive "old"
155     And I enable persistence with password "asdf"
156     And I log in to a new session
157     And GNOME has started
158     And all notifications have disappeared
159     And persistence is enabled
160     And I write some files expected to persist
161     And persistent filesystems have safe access rights
162     And persistence configuration files have safe access rights
163     And persistent directories have safe access rights
164     And I shutdown Tails and wait for the computer to power off
165     Then only the expected files should persist on USB drive "old"
167   @keep_volumes
168   Scenario: Upgrading an old Tails USB installation from a Tails DVD
169     Given a computer
170     And I clone USB drive "old" to a new USB drive "to_upgrade"
171     And the computer is set to boot from the Tails DVD
172     And the network is unplugged
173     When I start the computer
174     And the computer boots Tails
175     And I log in to a new session
176     And GNOME has started
177     And all notifications have disappeared
178     And I plug USB drive "to_upgrade"
179     And I "Clone & Upgrade" Tails to USB drive "to_upgrade"
180     Then the running Tails is installed on USB drive "to_upgrade"
181     And I unplug USB drive "to_upgrade"
183   @keep_volumes
184   Scenario: Booting Tails from a USB drive upgraded from DVD with persistence enabled
185     Given a computer
186     And the computer is set to boot from USB drive "to_upgrade"
187     And the network is unplugged
188     When I start the computer
189     And the computer boots Tails
190     And I enable persistence with password "asdf"
191     And I log in to a new session
192     Then Tails seems to have booted normally
193     And Tails is running from USB drive "to_upgrade"
194     And the boot device has safe access rights
195     And the expected persistent files are present in the filesystem
196     And persistent directories have safe access rights
198   @keep_volumes
199   Scenario: Upgrading an old Tails USB installation from another Tails USB drive
200     Given a computer
201     And I clone USB drive "old" to a new USB drive "to_upgrade"
202     And the computer is set to boot from USB drive "current"
203     And the network is unplugged
204     When I start the computer
205     And the computer boots Tails
206     And Tails is running from USB drive "current"
207     And the boot device has safe access rights
208     And I log in to a new session
209     And GNOME has started
210     And all notifications have disappeared
211     And I plug USB drive "to_upgrade"
212     And I "Clone & Upgrade" Tails to USB drive "to_upgrade"
213     Then the running Tails is installed on USB drive "to_upgrade"
214     And I unplug USB drive "to_upgrade"
215     And I unplug USB drive "current"
217   @keep_volumes
218   Scenario: Booting Tails from a USB drive upgraded from USB with persistence enabled
219     Given a computer
220     And the computer is set to boot from USB drive "to_upgrade"
221     And the network is unplugged
222     When I start the computer
223     And the computer boots Tails
224     And I enable persistence with password "asdf"
225     And I log in to a new session
226     Then Tails seems to have booted normally
227     And persistence is enabled
228     And Tails is running from USB drive "to_upgrade"
229     And the boot device has safe access rights
230     And the expected persistent files are present in the filesystem
231     And persistent directories have safe access rights
233   @keep_volumes
234   Scenario: Upgrading an old Tails USB installation from an ISO image, running on the old version
235     Given a computer
236     And I clone USB drive "old" to a new USB drive "to_upgrade"
237     And the computer is set to boot from USB drive "old"
238     And the network is unplugged
239     And I setup a filesystem share containing the Tails ISO
240     When I start the computer
241     And the computer boots Tails
242     And I log in to a new session
243     And GNOME has started
244     And all notifications have disappeared
245     And I plug USB drive "to_upgrade"
246     And I do a "Upgrade from ISO" on USB drive "to_upgrade"
247     Then the ISO's Tails is installed on USB drive "to_upgrade"
248     And I unplug USB drive "to_upgrade"
250   @keep_volumes
251   Scenario: Upgrading an old Tails USB installation from an ISO image, running on the new version
252     Given a computer
253     And I clone USB drive "old" to a new USB drive "to_upgrade"
254     And the computer is set to boot from the Tails DVD
255     And the network is unplugged
256     And I setup a filesystem share containing the Tails ISO
257     When I start the computer
258     And the computer boots Tails
259     And I log in to a new session
260     And GNOME has started
261     And all notifications have disappeared
262     And I plug USB drive "to_upgrade"
263     And I do a "Upgrade from ISO" on USB drive "to_upgrade"
264     Then the ISO's Tails is installed on USB drive "to_upgrade"
265     And I unplug USB drive "to_upgrade"
267   Scenario: Booting a USB drive upgraded from ISO with persistence enabled
268     Given a computer
269     And the computer is set to boot from USB drive "to_upgrade"
270     And the network is unplugged
271     When I start the computer
272     And the computer boots Tails
273     And I enable persistence with password "asdf"
274     And I log in to a new session
275     Then Tails seems to have booted normally
276     And persistence is enabled
277     And Tails is running from USB drive "to_upgrade"
278     And the boot device has safe access rights
279     And the expected persistent files are present in the filesystem
280     And persistent directories have safe access rights
282   @keep_volumes
283   Scenario: Installing Tails to a USB drive with an MBR partition table but no partitions
284     Given a computer
285     And I create a 4 GiB disk named "mbr"
286     And I create a msdos label on disk "mbr"
287     And the computer is set to boot from the Tails DVD
288     And the network is unplugged
289     And I start the computer
290     When the computer boots Tails
291     And I log in to a new session
292     And GNOME has started
293     And all notifications have disappeared
294     And I plug USB drive "mbr"
295     And I "Clone & Install" Tails to USB drive "mbr"
296     Then the running Tails is installed on USB drive "mbr"
297     But there is no persistence partition on USB drive "mbr"
298     And I unplug USB drive "mbr"
300   Scenario: Booting a USB drive that originally had an empty MBR partition table
301     Given a computer
302     And the computer is set to boot from USB drive "mbr"
303     And the network is unplugged
304     When I start the computer
305     And the computer boots Tails
306     And I log in to a new session
307     Then Tails seems to have booted normally
308     And Tails is running from USB drive "mbr"
309     And the boot device has safe access rights
310     And there is no persistence partition on USB drive "mbr"
312   @keep_volumes
313   Scenario: Cat:ing a Tails isohybrid to a USB drive and booting it
314     Given a computer
315     And I create a 4 GiB disk named "isohybrid"
316     And I cat an ISO hybrid of the Tails image to disk "isohybrid"
317     And the computer is set to boot from USB drive "isohybrid"
318     And the network is unplugged
319     When I start the computer
320     And the computer boots Tails
321     And I log in to a new session
322     Then Tails seems to have booted normally
323     And Tails is running from USB drive "isohybrid"
325   @keep_volumes
326   Scenario: Try upgrading but end up installing Tails to a USB drive containing a Tails isohybrid installation
327     Given a computer
328     And the computer is set to boot from the Tails DVD
329     And the network is unplugged
330     And I start the computer
331     When the computer boots Tails
332     And I log in to a new session
333     And GNOME has started
334     And all notifications have disappeared
335     And I plug USB drive "isohybrid"
336     And I try a "Clone & Upgrade" Tails to USB drive "isohybrid"
337     But I am suggested to do a "Clone & Install"
338     And I kill the process "liveusb-creator"
339     And I "Clone & Install" Tails to USB drive "isohybrid"
340     Then the running Tails is installed on USB drive "isohybrid"
341     But there is no persistence partition on USB drive "isohybrid"
342     And I unplug USB drive "isohybrid"
344   Scenario: Booting a USB drive that originally had a isohybrid installation
345     Given a computer
346     And the computer is set to boot from USB drive "isohybrid"
347     And the network is unplugged
348     When I start the computer
349     And the computer boots Tails
350     And I log in to a new session
351     Then Tails seems to have booted normally
352     And Tails is running from USB drive "isohybrid"
353     And the boot device has safe access rights
354     And there is no persistence partition on USB drive "isohybrid"