diff options
-rw-r--r-- | setup.py | 3 | ||||
-rw-r--r-- | systemd/test/test_id128.py | 46 |
2 files changed, 48 insertions, 1 deletions
@@ -94,7 +94,8 @@ setup (name = 'systemd-python', py_modules = ['systemd.journal', 'systemd.daemon', 'systemd.test.test_daemon', 'systemd.test.test_journal', - 'systemd.test.test_login'], + 'systemd.test.test_login', + 'systemd.test.test_id128'], ext_modules = [_journal, _reader, _daemon, diff --git a/systemd/test/test_id128.py b/systemd/test/test_id128.py new file mode 100644 index 0000000..146ec73 --- /dev/null +++ b/systemd/test/test_id128.py @@ -0,0 +1,46 @@ +import contextlib +import errno +import uuid +import pytest + +from systemd import id128 + +@contextlib.contextmanager +def skip_oserror(code): + try: + yield + except (OSError, IOError) as e: + if e.errno == code: + pytest.skip() + raise + + +def test_randomize(): + u1 = id128.randomize() + u2 = id128.randomize() + assert u1 != u2 + +def test_get_machine(): + u1 = id128.get_machine() + u2 = id128.get_machine() + assert u1 == u2 + +def test_get_machine_app_specific(): + a1 = uuid.uuid1() + a2 = uuid.uuid1() + + with skip_oserror(errno.ENOSYS): + u1 = id128.get_machine_app_specific(a1) + + u2 = id128.get_machine_app_specific(a2) + u3 = id128.get_machine_app_specific(a1) + u4 = id128.get_machine_app_specific(a2) + + assert u1 != u2 + assert u1 == u3 + assert u2 == u4 + +def test_get_boot(): + u1 = id128.get_boot() + u2 = id128.get_boot() + assert u1 == u2 |