Commit c38eb0f0 authored by anonym's avatar anonym
Browse files

Do most of the Icedove → Thunderbird migration.

This is just a massive 's/Icedove/Thunderbird/' both in terms of
content and filenames. No logic is changed, which should ease
reviewing of this massive commit.

Will-fix: #12242
parent e0b8ef9f
...@@ -23,8 +23,8 @@ Package: firmware-zd1211 ...@@ -23,8 +23,8 @@ Package: firmware-zd1211
Pin: release o=Debian,n=sid Pin: release o=Debian,n=sid
Pin-Priority: 999 Pin-Priority: 999
Explanation: We ship our custom-built Icedove for now, see #6156 Explanation: We ship our custom-built Thunderbird for now, see #6156
Package: icedove* iceowl* calendar-google-provider Package: thunderbird* calendar-google-provider
Pin: origin deb.tails.boum.org Pin: origin deb.tails.boum.org
Pin-Priority: 999 Pin-Priority: 999
......
...@@ -3,10 +3,10 @@ ...@@ -3,10 +3,10 @@
set -e set -e
set -u set -u
EXT="/usr/lib/icedove/extensions" EXT="/usr/lib/thunderbird/extensions"
[ -d "$EXT" ] || exit 1 [ -d "$EXT" ] || exit 1
echo "Enabling Torbirdy and Enigmail in Icedove" echo "Enabling Torbirdy and Enigmail in Thunderbird"
ln -s /usr/share/xul-ext/torbirdy "${EXT}/castironthunderbirdclub@torproject.org" ln -s /usr/share/xul-ext/torbirdy "${EXT}/castironthunderbirdclub@torproject.org"
ln -s /usr/share/xul-ext/enigmail "${EXT}/{847b3a00-7ab1-11d4-8f02-006008948af5}" ln -s /usr/share/xul-ext/enigmail "${EXT}/{847b3a00-7ab1-11d4-8f02-006008948af5}"
#!/bin/sh
set -e
echo 'Updating icedove.desktop'
sed -i 's;^Exec=icedove;Exec=/usr/local/bin/icedove;' /usr/share/applications/icedove.desktop
#!/bin/sh
set -e
echo 'Updating thunderbird.desktop'
sed -i --regexp-extended \
's;^Exec=\S+;Exec=/usr/local/bin/thunderbird;' \
/usr/share/applications/thunderbird.desktop
...@@ -78,4 +78,4 @@ lid-close-battery-action = 'blank' ...@@ -78,4 +78,4 @@ lid-close-battery-action = 'blank'
[org/gnome/shell] [org/gnome/shell]
enabled-extensions = ['apps-menu@gnome-shell-extensions.gcampax.github.com', 'places-menu@gnome-shell-extensions.gcampax.github.com', 'window-list@gnome-shell-extensions.gcampax.github.com', 'florenceIndicator@UshakovVasilii_Github.yahoo.com', 'TopIcons@phocean.net', 'shutdown-helper@tails.boum.org', 'torstatus@tails.boum.org'] enabled-extensions = ['apps-menu@gnome-shell-extensions.gcampax.github.com', 'places-menu@gnome-shell-extensions.gcampax.github.com', 'window-list@gnome-shell-extensions.gcampax.github.com', 'florenceIndicator@UshakovVasilii_Github.yahoo.com', 'TopIcons@phocean.net', 'shutdown-helper@tails.boum.org', 'torstatus@tails.boum.org']
favorite-apps=['tor-browser.desktop', 'icedove.desktop', 'pidgin.desktop', 'keepassx.desktop', 'gnome-terminal.desktop'] favorite-apps=['tor-browser.desktop', 'thunderbird.desktop', 'pidgin.desktop', 'keepassx.desktop', 'gnome-terminal.desktop']
...@@ -9,11 +9,11 @@ application/pgp-encrypted=seahorse-pgp-encrypted.desktop ...@@ -9,11 +9,11 @@ application/pgp-encrypted=seahorse-pgp-encrypted.desktop
application/pgp-keys=seahorse-pgp-keys.desktop application/pgp-keys=seahorse-pgp-keys.desktop
application/pgp-signature=seahorse-pgp-signature.desktop application/pgp-signature=seahorse-pgp-signature.desktop
application/x-iwork-keynote-sffkey=seahorse-pgp-keys.desktop application/x-iwork-keynote-sffkey=seahorse-pgp-keys.desktop
x-scheme-handler/mailto=icedove.desktop x-scheme-handler/mailto=thunderbird.desktop
[Added Associations] [Added Associations]
application/pgp-encrypted=seahorse-pgp-encrypted.desktop application/pgp-encrypted=seahorse-pgp-encrypted.desktop
application/pgp-keys=seahorse-pgp-keys.desktop application/pgp-keys=seahorse-pgp-keys.desktop
application/pgp-signature=seahorse-pgp-signature.desktop application/pgp-signature=seahorse-pgp-signature.desktop
application/x-iwork-keynote-sffkey=seahorse-pgp-keys.desktop application/x-iwork-keynote-sffkey=seahorse-pgp-keys.desktop
x-scheme-handler/mailto=icedove.desktop x-scheme-handler/mailto=thunderbird.desktop
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
#torbirdy-anon-settings, #torbirdy-anon-settings,
#torbirdy-anonservice, #torbirdy-anonservice,
/* Hide "Chat account" on Icedove's start-up page */ /* Hide "Chat account" on Thunderbird's start-up page */
#CreateAccountChat #CreateAccountChat
{ display: none; } { display: none; }
...@@ -32,13 +32,13 @@ pref("extensions.enabledScopes", 4); ...@@ -32,13 +32,13 @@ pref("extensions.enabledScopes", 4);
// Only show the tab bar if there's more than one tab to display // Only show the tab bar if there's more than one tab to display
pref("mail.tabs.autoHide", true); pref("mail.tabs.autoHide", true);
// Try to disable "Would you like to help Icedove Mail/News by automatically reporting memory usage, performance, and responsiveness to Mozilla" // Try to disable "Would you like to help Thunderbird Mail/News by automatically reporting memory usage, performance, and responsiveness to Mozilla"
pref("toolkit.telemetry.prompted", 2); pref("toolkit.telemetry.prompted", 2);
pref("toolkit.telemetry.rejected", true); pref("toolkit.telemetry.rejected", true);
pref("toolkit.telemetry.enabled", false); pref("toolkit.telemetry.enabled", false);
// Only allow Icedove's automatic configuration wizard to use and // Only allow Thunderbird's automatic configuration wizard to use and
// configure secure (SSL/TLS) protocols. This is the Icedove default // configure secure (SSL/TLS) protocols. This is the Thunderbird default
// but let's be extra sure! // but let's be extra sure!
pref("mailnews.auto_config.ssl_only", true); pref("mailnews.auto_config.ssl_only", true);
// Drop auto-fetched configurations using Oauth2 -- they do not work // Drop auto-fetched configurations using Oauth2 -- they do not work
......
...@@ -11,27 +11,27 @@ TEXTDOMAIN="tails" ...@@ -11,27 +11,27 @@ TEXTDOMAIN="tails"
export TEXTDOMAIN export TEXTDOMAIN
CLAWSMAIL_CONFIG_DIR="${HOME}/.claws-mail" CLAWSMAIL_CONFIG_DIR="${HOME}/.claws-mail"
ICEDOVE_CONFIG_DIR="${HOME}/.icedove" THUNDERBIRD_CONFIG_DIR="${HOME}/.thunderbird"
PROFILE="${ICEDOVE_CONFIG_DIR}/profile.default" PROFILE="${THUNDERBIRD_CONFIG_DIR}/profile.default"
claws_mail_config_is_persistent() { claws_mail_config_is_persistent() {
[ "$(findmnt --noheadings --output SOURCE --target "${CLAWSMAIL_CONFIG_DIR}")" = "/dev/mapper/TailsData_unlocked[/claws-mail]" ] [ "$(findmnt --noheadings --output SOURCE --target "${CLAWSMAIL_CONFIG_DIR}")" = "/dev/mapper/TailsData_unlocked[/claws-mail]" ]
} }
icedove_config_is_persistent() { thunderbird_config_is_persistent() {
[ "$(findmnt --noheadings --output SOURCE --target "${ICEDOVE_CONFIG_DIR}")" = "/dev/mapper/TailsData_unlocked[/icedove]" ] [ "$(findmnt --noheadings --output SOURCE --target "${THUNDERBIRD_CONFIG_DIR}")" = "/dev/mapper/TailsData_unlocked[/thunderbird]" ]
} }
warn_about_claws_mail_persistence() { warn_about_claws_mail_persistence() {
local dialog_msg="<b><big>`gettext \"The <b>Claws Mail</b> persistence feature is activated.\"`</big></b> local dialog_msg="<b><big>`gettext \"The <b>Claws Mail</b> persistence feature is activated.\"`</big></b>
`gettext \"If you have emails saved in <b>Claws Mail</b>, you should <a href='https://tails.boum.org/doc/anonymous_internet/claws_mail_to_icedove'>migrate your data</a> before starting <b>Icedove</b>.\"`" `gettext \"If you have emails saved in <b>Claws Mail</b>, you should <a href='https://tails.boum.org/doc/anonymous_internet/claws_mail_to_icedove'>migrate your data</a> before starting <b>Thunderbird</b>.\"`"
if [ -f "${PROFILE}/prefs.js" ]; then if [ -f "${PROFILE}/prefs.js" ]; then
dialog_msg="${dialog_msg} dialog_msg="${dialog_msg}
`gettext \"If you already migrated your emails to <b>Icedove</b>, you should <a href='https://tails.boum.org/doc/anonymous_internet/claws_mail_to_icedove#delete'>delete all your <b>Claws Mail</b> data</a> to remove this warning.\"`" `gettext \"If you already migrated your emails to <b>Thunderbird</b>, you should <a href='https://tails.boum.org/doc/anonymous_internet/claws_mail_to_icedove#delete'>delete all your <b>Claws Mail</b> data</a> to remove this warning.\"`"
fi fi
local launch="`gettext \"_Launch\"`" local launch="`gettext \"_Launch\"`"
...@@ -43,7 +43,7 @@ warn_about_claws_mail_persistence() { ...@@ -43,7 +43,7 @@ warn_about_claws_mail_persistence() {
configure_default_incoming_protocol() { configure_default_incoming_protocol() {
# For extensions.torbirdy.defaultprotocol, POP = 0, IMAP = 1 # For extensions.torbirdy.defaultprotocol, POP = 0, IMAP = 1
local default_protocol local default_protocol
if icedove_config_is_persistent; then if thunderbird_config_is_persistent; then
default_protocol=0 default_protocol=0
else else
default_protocol=1 default_protocol=1
...@@ -53,8 +53,8 @@ configure_default_incoming_protocol() { ...@@ -53,8 +53,8 @@ configure_default_incoming_protocol() {
"${default_protocol}" "${default_protocol}"
} }
start_icedove() { start_thunderbird() {
# Give Icedove its own temp directory, similar rationale to a1fd1f0f & #9558. # Give Thunderbird its own temp directory, similar rationale to a1fd1f0f & #9558.
TMPDIR="${PROFILE}/tmp" TMPDIR="${PROFILE}/tmp"
mkdir --mode=0700 -p "$TMPDIR" mkdir --mode=0700 -p "$TMPDIR"
export TMPDIR export TMPDIR
...@@ -62,11 +62,11 @@ start_icedove() { ...@@ -62,11 +62,11 @@ start_icedove() {
unset SESSION_MANAGER unset SESSION_MANAGER
configure_default_incoming_protocol configure_default_incoming_protocol
/usr/bin/icedove --class "Icedove" -profile "${PROFILE}" "${@}" /usr/bin/thunderbird --class "Thunderbird" -profile "${PROFILE}" "${@}"
} }
if claws_mail_config_is_persistent && [ -f "${CLAWSMAIL_CONFIG_DIR}/accountrc" ]; then if claws_mail_config_is_persistent && [ -f "${CLAWSMAIL_CONFIG_DIR}/accountrc" ]; then
warn_about_claws_mail_persistence || exit 0 warn_about_claws_mail_persistence || exit 0
fi fi
start_icedove "${@}" start_thunderbird "${@}"
...@@ -131,8 +131,6 @@ haveged ...@@ -131,8 +131,6 @@ haveged
# needed by laptop-mode-tools to spin-down hard drives # needed by laptop-mode-tools to spin-down hard drives
hdparm hdparm
hopenpgp-tools hopenpgp-tools
icedove
icedove-l10n-all
inkscape inkscape
iptables iptables
# ships isolinux.bin in syslinux 6.x packaging # ships isolinux.bin in syslinux 6.x packaging
...@@ -224,6 +222,8 @@ traverso ...@@ -224,6 +222,8 @@ traverso
ttf-dejavu ttf-dejavu
tcpdump tcpdump
tcpflow tcpflow
thunderbird
thunderbird-l10n-all
tor tor
tor-geoipdb tor-geoipdb
sound-juicer sound-juicer
...@@ -406,7 +406,8 @@ xdotool ...@@ -406,7 +406,8 @@ xdotool
python-qt4 python-qt4
python-trezor python-trezor
# Provide gnome-open (used to open e.g. URLs in KeePassX, Icedove, Electrum...) # Provide gnome-open (used to open e.g. URLs in KeePassX, Thunderbird,
# Electrum...)
libgnome2-bin libgnome2-bin
# onion-grater # onion-grater
......
...@@ -346,22 +346,22 @@ Feature: custom APT sources to build branches ...@@ -346,22 +346,22 @@ Feature: custom APT sources to build branches
And I should see the 'feature-7756-reintroduce-whisperback' suite And I should see the 'feature-7756-reintroduce-whisperback' suite
Scenario: build from a feature branch with overlays based on devel Scenario: build from a feature branch with overlays based on devel
Given I am working on the feature/icedove branch based on devel Given I am working on the feature/thunderbird branch based on devel
And config/APT_overlays.d contains 'feature-icedove' And config/APT_overlays.d contains 'feature-thunderbird'
And config/APT_overlays.d contains 'bugfix-bar' And config/APT_overlays.d contains 'bugfix-bar'
When I successfully run tails-custom-apt-sources When I successfully run tails-custom-apt-sources
Then I should see the 'devel' suite Then I should see the 'devel' suite
And I should see the 'feature-icedove' suite And I should see the 'feature-thunderbird' suite
And I should see the 'bugfix-bar' suite And I should see the 'bugfix-bar' suite
Scenario: build from a feature branch without overlays based on devel Scenario: build from a feature branch without overlays based on devel
Given I am working on the feature/icedove branch based on devel Given I am working on the feature/thunderbird branch based on devel
And the config/APT_overlays.d directory is empty And the config/APT_overlays.d directory is empty
When I successfully run tails-custom-apt-sources When I successfully run tails-custom-apt-sources
Then I should see only the 'devel' suite Then I should see only the 'devel' suite
Scenario: build from a feature branch based on devel with no encoded time-based snapshot Scenario: build from a feature branch based on devel with no encoded time-based snapshot
Given I am working on the feature/icedove branch based on devel Given I am working on the feature/thunderbird branch based on devel
And no frozen APT snapshot is encoded in config/APT_snapshots.d And no frozen APT snapshot is encoded in config/APT_snapshots.d
When I successfully run "apt-snapshots-serials prepare-build" When I successfully run "apt-snapshots-serials prepare-build"
And I successfully run "apt-mirror debian" And I successfully run "apt-mirror debian"
...@@ -372,7 +372,7 @@ Feature: custom APT sources to build branches ...@@ -372,7 +372,7 @@ Feature: custom APT sources to build branches
Then I should see a time-based snapshot Then I should see a time-based snapshot
Scenario: build from a feature branch based on devel with encoded time-based snapshots Scenario: build from a feature branch based on devel with encoded time-based snapshots
Given I am working on the feature/icedove branch based on devel Given I am working on the feature/thunderbird branch based on devel
And frozen APT snapshots are encoded in config/APT_snapshots.d And frozen APT snapshots are encoded in config/APT_snapshots.d
When I successfully run "apt-snapshots-serials prepare-build" When I successfully run "apt-snapshots-serials prepare-build"
And I run "apt-mirror debian" And I run "apt-mirror debian"
...@@ -392,7 +392,7 @@ Feature: custom APT sources to build branches ...@@ -392,7 +392,7 @@ Feature: custom APT sources to build branches
And I should see the 'bugfix-bar' suite And I should see the 'bugfix-bar' suite
Scenario: build from a feature branch without overlays based on feature/jessie Scenario: build from a feature branch without overlays based on feature/jessie
Given I am working on the feature/icedove branch based on feature/jessie Given I am working on the feature/thunderbird branch based on feature/jessie
And the config/APT_overlays.d directory is empty And the config/APT_overlays.d directory is empty
When I successfully run tails-custom-apt-sources When I successfully run tails-custom-apt-sources
Then I should see only the 'feature-jessie' suite Then I should see only the 'feature-jessie' suite
......
def icedove_app def thunderbird_app
Dogtail::Application.new('Icedove') Dogtail::Application.new('Thunderbird')
end end
def icedove_main def thunderbird_main
# The main window title depends on context so without regexes it # The main window title depends on context so without regexes it
# will be hard to find it, but it so happens that it is always the # will be hard to find it, but it so happens that it is always the
# first frame of Icedove, so we do not have to be specific. # first frame of Thunderbird, so we do not have to be specific.
icedove_app.child(roleName: 'frame') thunderbird_app.child(roleName: 'frame')
end end
def icedove_wizard def thunderbird_wizard
icedove_app.child('Mail Account Setup', roleName: 'frame') thunderbird_app.child('Mail Account Setup', roleName: 'frame')
end end
def icedove_inbox def thunderbird_inbox
folder_view = icedove_main.child($config['Icedove']['address'], folder_view = thunderbird_main.child($config['Thunderbird']['address'],
roleName: 'table row').parent roleName: 'table row').parent
folder_view.children(roleName: 'table row', recursive: false).find do |e| folder_view.children(roleName: 'table row', recursive: false).find do |e|
e.name.match(/^Inbox( .*)?$/) e.name.match(/^Inbox( .*)?$/)
end end
end end
When /^I start Icedove$/ do When /^I start Thunderbird$/ do
workaround_pref_lines = [ workaround_pref_lines = [
# When we generate a random subject line it may contain one of the # When we generate a random subject line it may contain one of the
# keywords that will make Icedove show an extra prompt when trying # keywords that will make Thunderbird show an extra prompt when trying
# to send an email. Let's disable this feature. # to send an email. Let's disable this feature.
'pref("mail.compose.attachment_reminder", false);' 'pref("mail.compose.attachment_reminder", false);'
] ]
workaround_pref_lines.each do |line| workaround_pref_lines.each do |line|
$vm.file_append('/etc/icedove/pref/icedove.js ', line) $vm.file_append('/etc/thunderbird/pref/thunderbird.js ', line)
end end
step 'I start "Icedove" via the GNOME "Internet" applications menu' step 'I start "Thunderbird" via the GNOME "Internet" applications menu'
try_for(60) { icedove_main } try_for(60) { thunderbird_main }
end end
When /^I have not configured an email account$/ do When /^I have not configured an email account$/ do
conf_path = "/home/#{LIVE_USER}/.icedove/profile.default/prefs.js" conf_path = "/home/#{LIVE_USER}/.thunderbird/profile.default/prefs.js"
if $vm.file_exist?(conf_path) if $vm.file_exist?(conf_path)
icedove_prefs = $vm.file_content(conf_path).chomp thunderbird_prefs = $vm.file_content(conf_path).chomp
assert(!icedove_prefs.include?('mail.accountmanager.accounts')) assert(!thunderbird_prefs.include?('mail.accountmanager.accounts'))
end end
end end
Then /^I am prompted to setup an email account$/ do Then /^I am prompted to setup an email account$/ do
icedove_wizard thunderbird_wizard
end end
Then /^I cancel setting up an email account$/ do Then /^I cancel setting up an email account$/ do
icedove_wizard.button('Cancel').click thunderbird_wizard.button('Cancel').click
end end
Then /^I open Icedove's Add-ons Manager$/ do Then /^I open Thunderbird's Add-ons Manager$/ do
icedove_main.button('AppMenu').click thunderbird_main.button('AppMenu').click
icedove_main.child('Add-ons', roleName: 'menu item').click thunderbird_main.child('Add-ons', roleName: 'menu item').click
@icedove_addons = icedove_app.child( @thunderbird_addons = thunderbird_app.child(
'Add-ons Manager - Icedove Mail/News', roleName: 'frame' 'Add-ons Manager - Thunderbird Mail/News', roleName: 'frame'
) )
end end
Then /^I click the extensions tab$/ do Then /^I click the extensions tab$/ do
@icedove_addons.child('Extensions', roleName: 'list item').click @thunderbird_addons.child('Extensions', roleName: 'list item').click
end end
Then /^I see that only the (.+) addons are enabled in Icedove$/ do |addons| Then /^I see that only the (.+) addons are enabled in Thunderbird$/ do |addons|
expected_addons = addons.split(/, | and /) expected_addons = addons.split(/, | and /)
actual_addons = actual_addons =
@icedove_addons.child('TorBirdy', roleName: 'label') @thunderbird_addons.child('TorBirdy', roleName: 'label')
.parent.parent.children(roleName: 'list item', recursive: false) .parent.parent.children(roleName: 'list item', recursive: false)
.map { |item| item.name } .map { |item| item.name }
expected_addons.each do |addon| expected_addons.each do |addon|
...@@ -78,39 +78,39 @@ Then /^I see that only the (.+) addons are enabled in Icedove$/ do |addons| ...@@ -78,39 +78,39 @@ Then /^I see that only the (.+) addons are enabled in Icedove$/ do |addons|
end end
Then /^I see that Torbirdy is configured to use Tor$/ do Then /^I see that Torbirdy is configured to use Tor$/ do
icedove_main.child(roleName: 'status bar') thunderbird_main.child(roleName: 'status bar')
.child('TorBirdy Enabled: Tor', roleName: 'label') .child('TorBirdy Enabled: Tor', roleName: 'label')
end end
When /^I enter my email credentials into the autoconfiguration wizard$/ do When /^I enter my email credentials into the autoconfiguration wizard$/ do
icedove_wizard.child('Email address:', roleName: 'entry') thunderbird_wizard.child('Email address:', roleName: 'entry')
.typeText($config['Icedove']['address']) .typeText($config['Thunderbird']['address'])
icedove_wizard.child('Password:', roleName: 'entry') thunderbird_wizard.child('Password:', roleName: 'entry')
.typeText($config['Icedove']['password']) .typeText($config['Thunderbird']['password'])
icedove_wizard.button('Continue').click thunderbird_wizard.button('Continue').click
# This button is shown if and only if a configuration has been found # This button is shown if and only if a configuration has been found
try_for(120) { icedove_wizard.button('Done') } try_for(120) { thunderbird_wizard.button('Done') }
end end
Then /^the autoconfiguration wizard's choice for the (incoming|outgoing) server is secure (.+)$/ do |type, protocol| Then /^the autoconfiguration wizard's choice for the (incoming|outgoing) server is secure (.+)$/ do |type, protocol|
type = type.capitalize + ':' type = type.capitalize + ':'
assert_not_nil( assert_not_nil(
icedove_wizard.child(type, roleName: 'entry').text thunderbird_wizard.child(type, roleName: 'entry').text
.match(/^#{protocol},[^,]+, (SSL|STARTTLS)$/) .match(/^#{protocol},[^,]+, (SSL|STARTTLS)$/)
) )
end end
When /^I fetch my email$/ do When /^I fetch my email$/ do
account = icedove_main.child($config['Icedove']['address'], account = thunderbird_main.child($config['Thunderbird']['address'],
roleName: 'table row') roleName: 'table row')
account.click account.click
icedove_main = icedove_app.child("#{$config['Icedove']['address']} - Icedove Mail/News", roleName: 'frame') thunderbird_main = thunderbird_app.child("#{$config['Thunderbird']['address']} - Thunderbird Mail/News", roleName: 'frame')
icedove_main.child('Mail Toolbar', roleName: 'tool bar') thunderbird_main.child('Mail Toolbar', roleName: 'tool bar')
.button('Get Messages').click .button('Get Messages').click
try_for(120) do try_for(120) do
begin begin
icedove_main.child(roleName: 'status bar', retry: false) thunderbird_main.child(roleName: 'status bar', retry: false)
.child(roleName: 'progress bar', retry: false) .child(roleName: 'progress bar', retry: false)
false false
rescue rescue
...@@ -126,7 +126,7 @@ When /^I accept the (?:autoconfiguration wizard's|manual) configuration$/ do ...@@ -126,7 +126,7 @@ When /^I accept the (?:autoconfiguration wizard's|manual) configuration$/ do
begin begin
# Spam the button, even if it is disabled (while it is still # Spam the button, even if it is disabled (while it is still
# testing the password). # testing the password).
icedove_wizard.button('Done').click thunderbird_wizard.button('Done').click
false false
rescue rescue
true true
...@@ -147,11 +147,11 @@ When /^I select the autoconfiguration wizard's (IMAP|POP3) choice$/ do |protocol ...@@ -147,11 +147,11 @@ When /^I select the autoconfiguration wizard's (IMAP|POP3) choice$/ do |protocol
else else
choice = 'POP3 (keep mail on your computer)' choice = 'POP3 (keep mail on your computer)'
end end
icedove_wizard.child(choice, roleName: 'radio button').click thunderbird_wizard.child(choice, roleName: 'radio button').click
end end
When /^I select manual configuration$/ do When /^I select manual configuration$/ do
icedove_wizard.button('Manual config').click thunderbird_wizard.button('Manual config').click
end end
When /^I alter the email configuration to use (.*) over a hidden services$/ do |protocol| When /^I alter the email configuration to use (.*) over a hidden services$/ do |protocol|
...@@ -163,23 +163,23 @@ When /^I alter the email configuration to use (.*) over a hidden services$/ do | ...@@ -163,23 +163,23 @@ When /^I alter the email configuration to use (.*) over a hidden services$/ do |
else else
raise "Unknown mail protocol '#{protocol}'" raise "Unknown mail protocol '#{protocol}'"
end end
entry = icedove_wizard.child(entry_name, roleName: 'entry') entry = thunderbird_wizard.child(entry_name, roleName: 'entry')
entry.text = '' entry.text = ''
entry.typeText($config['Icedove']["#{protocol.downcase}_hidden_service"]) entry.typeText($config['Thunderbird']["#{protocol.downcase}_hidden_service"])
end end
When /^I send an email to myself$/ do When /^I send an email to myself$/ do
icedove_main.child('Mail Toolbar', roleName: 'tool bar').button('Write').click thunderbird_main.child('Mail Toolbar', roleName: 'tool bar').button('Write').click
compose_window = icedove_app.child('Write: (no subject)') compose_window = thunderbird_app.child('Write: (no subject)')
compose_window.child('To:', roleName: 'autocomplete').child(roleName: 'entry') compose_window.child('To:', roleName: 'autocomplete').child(roleName: 'entry')
.typeText($config['Icedove']['address']) .typeText($config['Thunderbird']['address'])
# The randomness of the subject will make it easier for us to later # The randomness of the subject will make it easier for us to later
# find *exactly* this email. This makes it safe to run several tests