summaryrefslogtreecommitdiff
path: root/tests/commands
diff options
context:
space:
mode:
authorRuben Pollan <meskio@sindominio.net>2017-09-25 21:13:08 +0200
committerRuben Pollan <meskio@sindominio.net>2017-09-26 08:49:17 +0200
commit1b3f12f4e3a7bd6bbfe06e42b41658484a291174 (patch)
tree438b947a473fb142b8894f0da31b23f4411c4b53 /tests/commands
parentf355be0f22177f8590befbc20d5ae9694ca45809 (diff)
tests/commands/utils: Add encrypt to self tests
Diffstat (limited to 'tests/commands')
-rw-r--r--tests/commands/utils_tests.py35
1 files changed, 35 insertions, 0 deletions
diff --git a/tests/commands/utils_tests.py b/tests/commands/utils_tests.py
index 9abc36e1..5339bbf8 100644
--- a/tests/commands/utils_tests.py
+++ b/tests/commands/utils_tests.py
@@ -126,6 +126,12 @@ class TestGetKeys(unittest.TestCase):
ui.choice.assert_called_once()
+class _Account(object):
+ def __init__(self, encrypt_to_self=True, gpg_key=None):
+ self.encrypt_to_self = encrypt_to_self
+ self.gpg_key = gpg_key
+
+
class TestSetEncrypt(unittest.TestCase):
@inlineCallbacks
@@ -169,3 +175,32 @@ class TestSetEncrypt(unittest.TestCase):
yield utils.set_encrypt(ui, envelope)
self.assertFalse(envelope.encrypt)
self.assertEqual(envelope.encrypt_keys, {})
+
+ @inlineCallbacks
+ def test_encrypt_to_self_true(self):
+ ui = mock.Mock()
+ envelope = Envelope()
+ envelope['From'] = 'test@example.com'
+ envelope['To'] = 'ambig@example.com'
+ gpg_key = crypto.get_key(FPR)
+ account = _Account(encrypt_to_self=True, gpg_key=gpg_key)
+ with mock.patch('alot.commands.thread.settings.get_account_by_address',
+ mock.Mock(return_value=account)):
+ yield utils.set_encrypt(ui, envelope)
+ self.assertTrue(envelope.encrypt)
+ self.assertIn(FPR, envelope.encrypt_keys)
+ self.assertEqual(gpg_key, envelope.encrypt_keys[FPR])
+
+ @inlineCallbacks
+ def test_encrypt_to_self_false(self):
+ ui = mock.Mock()
+ envelope = Envelope()
+ envelope['From'] = 'test@example.com'
+ envelope['To'] = 'ambig@example.com'
+ gpg_key = crypto.get_key(FPR)
+ account = _Account(encrypt_to_self=False, gpg_key=gpg_key)
+ with mock.patch('alot.commands.thread.settings.get_account_by_address',
+ mock.Mock(return_value=account)):
+ yield utils.set_encrypt(ui, envelope)
+ self.assertTrue(envelope.encrypt)
+ self.assertNotIn(FPR, envelope.encrypt_keys)