1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
|
from __future__ import print_function
import select
import contextlib
import errno
from systemd import login
import pytest
@contextlib.contextmanager
def skip_oserror(code):
try:
yield
except (OSError, IOError) as e:
if e.errno == code:
pytest.skip()
raise
def test_seats():
# just check that we get some sequence back
with skip_oserror(errno.ENOENT):
seats = login.seats()
assert len(seats) >= 0
def test_sessions():
with skip_oserror(errno.ENOENT):
sessions = login.sessions()
assert len(sessions) >= 0
def test_machine_names():
with skip_oserror(errno.ENOENT):
machine_names = login.machine_names()
assert len(machine_names) >= 0
def test_uids():
with skip_oserror(errno.ENOENT):
uids = login.uids()
assert len(uids) >= 0
def test_monitor():
p = select.poll()
with skip_oserror(errno.ENOENT):
m = login.Monitor("machine")
p.register(m, m.get_events())
login.machine_names()
p.poll(1)
login.machine_names()
|