summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2022-08-17 09:53:25 +0200
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2022-08-17 12:17:57 +0200
commit8f84fbe8c2bdcea957829cd903f0c9dc62cefaed (patch)
tree266d6bfb315d57bb2ffffcc829f7fc8d19ef5722
parentdc1dae2eaa00e2369c366f80f9bcd3f729b7abca (diff)
downloadpython-systemd-8f84fbe8c2bdcea957829cd903f0c9dc62cefaed.tar.gz
tests: check for errnos that sd_id128_get_machine actually returns
Fixes #118.
-rw-r--r--systemd/test/test_id128.py11
-rw-r--r--systemd/test/test_journal.py6
2 files changed, 12 insertions, 5 deletions
diff --git a/systemd/test/test_id128.py b/systemd/test/test_id128.py
index 146ec73..e87b1cc 100644
--- a/systemd/test/test_id128.py
+++ b/systemd/test/test_id128.py
@@ -6,11 +6,11 @@ import pytest
from systemd import id128
@contextlib.contextmanager
-def skip_oserror(code):
+def skip_oserror(*errnos):
try:
yield
except (OSError, IOError) as e:
- if e.errno == code:
+ if e.errno in errnos:
pytest.skip()
raise
@@ -21,7 +21,10 @@ def test_randomize():
assert u1 != u2
def test_get_machine():
- u1 = id128.get_machine()
+ # yikes, python2 doesn't know ENOMEDIUM
+ with skip_oserror(errno.ENOENT, errno.ENOSYS, 123):
+ u1 = id128.get_machine()
+
u2 = id128.get_machine()
assert u1 == u2
@@ -29,7 +32,7 @@ def test_get_machine_app_specific():
a1 = uuid.uuid1()
a2 = uuid.uuid1()
- with skip_oserror(errno.ENOSYS):
+ with skip_oserror(errno.ENOENT, errno.ENOSYS, 123):
u1 = id128.get_machine_app_specific(a1)
u2 = id128.get_machine_app_specific(a2)
diff --git a/systemd/test/test_journal.py b/systemd/test/test_journal.py
index c192136..dd733cf 100644
--- a/systemd/test/test_journal.py
+++ b/systemd/test/test_journal.py
@@ -233,7 +233,11 @@ def test_reader_this_boot(tmpdir):
def test_reader_this_machine(tmpdir):
j = journal.Reader(path=tmpdir.strpath)
with j:
- j.this_machine()
+ try:
+ j.this_machine()
+ except OSError:
+ pass
+
j.this_machine(TEST_MID)
j.this_machine(TEST_MID.hex)