diff options
Diffstat (limited to 'soledad/tests/test_encrypted.py')
-rw-r--r-- | soledad/tests/test_encrypted.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/soledad/tests/test_encrypted.py b/soledad/tests/test_encrypted.py new file mode 100644 index 00000000..4a48266e --- /dev/null +++ b/soledad/tests/test_encrypted.py @@ -0,0 +1,39 @@ +from leap.soledad.backends.leap_backend import LeapDocument +from leap.soledad.tests import BaseSoledadTest +from leap.soledad.tests import KEY_FINGERPRINT + +try: + import simplejson as json +except ImportError: + import json # noqa + + +class EncryptedSyncTestCase(BaseSoledadTest): + """ + Tests that guarantee that data will always be encrypted when syncing. + """ + + def test_get_set_encrypted_json(self): + """ + Test getting and setting encrypted content. + """ + doc1 = LeapDocument(soledad=self._soledad) + doc1.content = {'key': 'val'} + doc2 = LeapDocument(doc_id=doc1.doc_id, + encrypted_json=doc1.get_encrypted_json(), + soledad=self._soledad) + res1 = doc1.get_json() + res2 = doc2.get_json() + self.assertEqual(res1, res2, 'incorrect document encryption') + + def test_successful_symmetric_encryption(self): + """ + Test for successful symmetric encryption. + """ + doc1 = LeapDocument(soledad=self._soledad) + doc1.content = {'key': 'val'} + enc_json = json.loads(doc1.get_encrypted_json())['_encrypted_json'] + self.assertEqual( + True, + self._soledad._gpg.is_encrypted_sym(enc_json), + "could not encrypt with passphrase.") |