1 @product @not_release_blocker
2 Feature: Emergency shutdown
4 when I unplug my Tails device to trigger emergency shutdown
5 I want the system memory to be free from sensitive data.
7 # Test something close to real-world usage, without interfering,
8 # i.e. without the "I prepare Tails for memory erasure tests" step;
9 # and test that Tails eventually shuts down, which we don't do in
10 # the following scenarios for test suite performance reasons.
11 Scenario: Tails shuts down on DVD boot medium removal
12 Given I have started Tails from DVD and logged in and the network is connected
13 When I eject the boot medium
14 Then Tails eventually shuts down
16 Scenario: Tails erases memory on DVD boot medium removal: overlayfs read-write branch
17 Given I have started Tails from DVD without network and logged in
18 And I prepare Tails for memory erasure tests
19 And I fill a 128 MiB file with a known pattern on the root filesystem
20 And patterns cover at least 128 MiB in the guest's memory
21 When I eject the boot medium
22 And I wait for Tails to finish wiping the memory
23 Then I find very few patterns in the guest's memory
25 Scenario: Tails erases memory on DVD boot medium removal: vfat
26 Given I have started Tails from DVD without network and logged in
27 And I prepare Tails for memory erasure tests
28 And I plug and mount a 128 MiB USB drive with a vfat filesystem
29 And I fill the USB drive with a known pattern
30 And I read the content of the test FS
31 And patterns cover at least 90% of the test FS size in the guest's memory
32 When I eject the boot medium
33 And I wait for Tails to finish wiping the memory
34 Then I find very few patterns in the guest's memory
36 Scenario: Tails erases memory on DVD boot medium removal: LUKS-encrypted ext4
37 Given I have started Tails from DVD without network and logged in
38 And I prepare Tails for memory erasure tests
39 And I plug and mount a 128 MiB USB drive with an ext4 filesystem encrypted with password "asdf"
40 And I fill the USB drive with a known pattern
41 And I read the content of the test FS
42 And patterns cover at least 99% of the test FS size in the guest's memory
43 When I eject the boot medium
44 And I wait for Tails to finish wiping the memory
45 Then I find very few patterns in the guest's memory
47 Scenario: Tails erases memory and shuts down on USB boot medium removal: persistent data
48 Given I have started Tails without network from a USB drive with a persistent partition enabled and logged in
49 And I prepare Tails for memory erasure tests
50 And I fill a 128 MiB file with a known pattern on the persistent filesystem
51 And patterns cover at least 100 MiB in the guest's memory
52 When I eject the boot medium
53 And I wait for Tails to finish wiping the memory
54 Then I find very few patterns in the guest's memory
55 And Tails eventually shuts down