dumb-init/tests/proxies_signals_test.py

26 lines
674 B
Python
Raw Normal View History

2015-09-12 01:57:22 +03:00
import os
import re
2015-09-12 01:57:22 +03:00
import signal
import sys
from subprocess import PIPE
from subprocess import Popen
from tests.lib.testing import CATCHABLE_SIGNALS
from tests.lib.testing import pid_tree
def test_prints_signals(both_debug_modes, both_setsid_modes):
proc = Popen(
('dumb-init', sys.executable, '-m', 'tests.lib.print_signals'),
stdout=PIPE,
)
assert re.match(b'^ready \(pid: (?:[0-9]+)\)\n$', proc.stdout.readline())
2015-09-12 01:57:22 +03:00
for signum in CATCHABLE_SIGNALS:
proc.send_signal(signum)
2015-09-12 03:24:18 +03:00
assert proc.stdout.readline() == '{0}\n'.format(signum).encode('ascii')
2015-09-12 01:57:22 +03:00
for pid in pid_tree(proc.pid):
os.kill(pid, signal.SIGKILL)