summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2025-02-10 00:39:50 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2025-02-10 00:39:50 (GMT)
commitd01509d9afe32c0d98d2efba5e75a9df53ac5de9 (patch)
treef4d742bec88c34ee9d04c42d16dc7ac84bc642b7 /tests
parent71d0b80eca2fd2aed5883e2a6a57cb8c03aa27ff (diff)
Switch the secure storage to the GObject system.
Diffstat (limited to 'tests')
-rw-r--r--tests/glibext/re.chrysalide.tests.secstorage.gschema.xml (renamed from tests/core/re.chrysalide.tests.secstorage.gschema.xml)0
-rw-r--r--tests/glibext/secstorage.py (renamed from tests/core/secstorage.py)59
2 files changed, 26 insertions, 33 deletions
diff --git a/tests/core/re.chrysalide.tests.secstorage.gschema.xml b/tests/glibext/re.chrysalide.tests.secstorage.gschema.xml
index 6afa96b..6afa96b 100644
--- a/tests/core/re.chrysalide.tests.secstorage.gschema.xml
+++ b/tests/glibext/re.chrysalide.tests.secstorage.gschema.xml
diff --git a/tests/core/secstorage.py b/tests/glibext/secstorage.py
index 1f82388..248b3e3 100644
--- a/tests/core/secstorage.py
+++ b/tests/glibext/secstorage.py
@@ -4,8 +4,8 @@ import os
import subprocess
from chrysacase import ChrysalideTestCase
-from pychrysalide import core
from gi.repository import Gio, GLib
+from pychrysalide.glibext import SecretStorage
class TestSecretStorage(ChrysalideTestCase):
@@ -47,19 +47,21 @@ class TestSecretStorage(ChrysalideTestCase):
settings = Gio.Settings.new('re.chrysalide.tests.secstorage')
+ storage = SecretStorage(settings)
+
settings.reset('master')
self.assertEqual(len(settings.get_value('master').unpack()), 0)
- self.assertFalse(core.has_secret_storage_key(settings))
+ self.assertFalse(storage.has_key)
settings.set_value('master', GLib.Variant('ay', b'ABC'))
- self.assertFalse(core.has_secret_storage_key(settings))
+ self.assertFalse(storage.has_key)
settings.set_value('master', GLib.Variant('ay', b'A' * 23))
- self.assertTrue(core.has_secret_storage_key(settings))
+ self.assertTrue(storage.has_key)
def testMasterKeyCreation(self):
@@ -67,46 +69,35 @@ class TestSecretStorage(ChrysalideTestCase):
settings = Gio.Settings.new('re.chrysalide.tests.secstorage')
+ storage = SecretStorage(settings)
+
settings.reset('salt')
settings.reset('master')
- status = core.has_secret_storage_key(settings)
+ self.assertFalse(storage.has_key)
- self.assertFalse(status);
-
- status = core.set_secret_storage_password(settings, '')
+ status = storage.set_password('')
self.assertTrue(status);
- status = core.has_secret_storage_key(settings)
-
- self.assertTrue(status);
+ self.assertTrue(storage.has_key)
+ self.assertTrue(storage.is_locked)
- status = core.is_secret_storage_locked(settings)
+ status = storage.unlock('')
self.assertTrue(status)
- status = core.unlock_secret_storage(settings, '')
-
- self.assertTrue(status)
+ self.assertFalse(storage.is_locked)
- status = core.is_secret_storage_locked(settings)
+ storage.lock()
- self.assertFalse(status)
+ self.assertTrue(storage.is_locked)
- core.lock_secret_storage(settings)
-
- status = core.is_secret_storage_locked(settings)
-
- self.assertTrue(status)
-
- status = core.unlock_secret_storage(settings, 'XXX')
+ status = storage.unlock('XXX')
self.assertFalse(status)
- status = core.is_secret_storage_locked(settings)
-
- self.assertTrue(status)
+ self.assertTrue(storage.is_locked)
def testDataEncryption(self):
@@ -114,25 +105,27 @@ class TestSecretStorage(ChrysalideTestCase):
settings = Gio.Settings.new('re.chrysalide.tests.secstorage')
+ storage = SecretStorage(settings)
+
settings.reset('salt')
settings.reset('master')
- status = core.set_secret_storage_password(settings, '<s3cUre>')
+ status = storage.set_password('<s3cUre>')
self.assertTrue(status);
- status = core.unlock_secret_storage(settings, '<s3cUre>')
+ status = storage.unlock('<s3cUre>')
self.assertTrue(status)
original = b'ABC'
- encrypted = core.encrypt_secret_storage_data(original, settings)
+ encrypted = storage.encrypt_data(original)
self.assertIsNotNone(encrypted)
- plain = core.decrypt_secret_storage_data(encrypted, settings)
+ plain = storage.decrypt_data(encrypted)
self.assertIsNotNone(plain)
self.assertEqual(original, plain)
@@ -140,11 +133,11 @@ class TestSecretStorage(ChrysalideTestCase):
original = b'A' * 136
- encrypted = core.encrypt_secret_storage_data(original, settings)
+ encrypted = storage.encrypt_data(original)
self.assertIsNotNone(encrypted)
- plain = core.decrypt_secret_storage_data(encrypted, settings)
+ plain = storage.decrypt_data(encrypted)
self.assertIsNotNone(plain)
self.assertEqual(original, plain)