Merge remote-tracking branch 'origin/master' into stable
[tails.git] / features / pidgin.feature
blob6727ab610188b77bef5bf52bb7cf6238c1b6bce7
1 #19040
2 @product @fragile
3 Feature: Chatting anonymously using Pidgin
4   As a Tails user
5   when I chat using Pidgin
6   I should be able to persist my Pidgin configuration
7   And AppArmor should prevent Pidgin from doing dangerous things
8   And all Internet traffic should flow only through Tor
10   Scenario: Make sure Pidgin's D-Bus interface is blocked
11     Given I have started Tails from DVD without network and logged in
12     When I start "Pidgin Internet Messenger" via GNOME Activities Overview
13     Then I see Pidgin's account manager window
14     And Pidgin's D-Bus interface is not available
16   @check_tor_leaks
17   Scenario: Chatting with some friend over XMPP
18     Given I have started Tails from DVD and logged in and the network is connected
19     When I start "Pidgin Internet Messenger" via GNOME Activities Overview
20     Then I see Pidgin's account manager window
21     When I create my XMPP account
22     And I close Pidgin's account manager window
23     Then Pidgin automatically enables my XMPP account
24     Given my XMPP friend goes online
25     When I start a conversation with my friend
26     And I say something to my friend
27     Then I receive a response from my friend
29   @check_tor_leaks
30   Scenario: Chatting with some friend over XMPP in a multi-user chat
31     Given I have started Tails from DVD and logged in and the network is connected
32     When I start "Pidgin Internet Messenger" via GNOME Activities Overview
33     Then I see Pidgin's account manager window
34     When I create my XMPP account
35     And I close Pidgin's account manager window
36     Then Pidgin automatically enables my XMPP account
37     When I join some empty multi-user chat
38     And I clear the multi-user chat's scrollback
39     And my XMPP friend goes online and joins the multi-user chat
40     Then I can see that my friend joined the multi-user chat
41     And I say something to my friend in the multi-user chat
42     Then I receive a response from my friend in the multi-user chat
43     When I say https://gitlab.tails.boum.org/tails to my friend in the multi-user chat
44     Then I see the Tails GitLab URL
45     When I wait 10 seconds
46     And I click on the Tails GitLab URL
47     Then the Tor Browser loads the Tails GitLab
49   @check_tor_leaks
50   Scenario: Connecting to the tails multi-user chat with my XMPP account
51     Given I have started Tails from DVD and logged in and the network is connected
52     When I start "Pidgin Internet Messenger" via GNOME Activities Overview
53     Then I see Pidgin's account manager window
54     And I create my XMPP account
55     And I close Pidgin's account manager window
56     Then Pidgin automatically enables my XMPP account
57     And I can join the "tails" channel on "chat.disroot.org"
59   @check_tor_leaks
60   Scenario: Using a persistent Pidgin configuration
61     Given I have started Tails without network from a USB drive with a persistent partition enabled and logged in
62     And the network is plugged
63     And Tor is ready
64     And available upgrades have been checked
65     And all notifications have disappeared
66     When I start "Pidgin Internet Messenger" via GNOME Activities Overview
67     Then I see Pidgin's account manager window
68     When I create my XMPP account
69     And I close Pidgin's account manager window
70     Then Pidgin automatically enables my XMPP account
71     When I close Pidgin
72     And I take note of the configured Pidgin accounts
73     And I shutdown Tails and wait for the computer to power off
74     Given a computer
75     And I start Tails from USB drive "__internal" and I login with persistence enabled
76     And Pidgin has the expected persistent accounts configured
77     When I start "Pidgin Internet Messenger" via GNOME Activities Overview
78     Then Pidgin automatically enables my XMPP account
79     And I join some empty multi-user chat
80     # Exercise Pidgin AppArmor profile with persistence enabled.
81     # This should really be in dedicated scenarios, but it would be
82     # too costly to set up the virtual USB drive with persistence more
83     # than once in this feature.
84     Given I start monitoring the AppArmor log of "/usr/bin/pidgin"
85     Then I cannot add a certificate from the "/home/amnesia/.gnupg" directory to Pidgin
86     And AppArmor has denied "/usr/bin/pidgin" from opening "/home/amnesia/.gnupg/test.crt"
87     When I close Pidgin's certificate import failure dialog
88     And I close Pidgin's certificate manager
89     Given I restart monitoring the AppArmor log of "/usr/bin/pidgin"
90     Then I cannot add a certificate from the "/live/persistence/TailsData_unlocked/gnupg" directory to Pidgin
91     And AppArmor has denied "/usr/bin/pidgin" from opening "/live/persistence/TailsData_unlocked/gnupg/test.crt"
92     When I close Pidgin's certificate import failure dialog
93     And I close Pidgin's certificate manager
94     Then I can add a certificate from the "/home/amnesia" directory to Pidgin