blob: 78109e85c679f4b8c6c188f7eeeb88042d75fc58 [file]
#!/usr/bin/env python
# Copyright 2019 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""Script for use in test_env unittests."""
from __future__ import print_function
import signal
import sys
import time
def print_signal(sig, *_args):
print('Signal :{}'.format(sig))
if __name__ == '__main__':
if '--spawn-leaked-child' in sys.argv:
import subprocess
child = subprocess.Popen(
[sys.executable, '-c', 'import time; time.sleep(30)'])
print('Leaked PID:{}'.format(child.pid))
sys.stdout.flush()
sys.exit(0)
signal.signal(signal.SIGTERM, print_signal)
signal.signal(signal.SIGINT, print_signal)
if sys.platform == 'win32':
signal.signal(signal.SIGBREAK, print_signal) # pylint: disable=no-member
time.sleep(2) # gives process time to receive signal.