dependencies:
pre:
- sudo apt-get update -qq
- - sudo apt-get install -qq cmake gcc libevent-dev libglib2.0-dev libgmime-2.6-dev libluajit-5.1-dev liblua5.1-0-dev libmagic-dev libpcre3-dev libsqlite3-dev libssl-dev make python-psutil ragel redis-server
+ - sudo apt-get install -qq cmake gcc libevent-dev libglib2.0-dev libgmime-2.6-dev libluajit-5.1-dev liblua5.1-0-dev libmagic-dev libpcre3-dev libsqlite3-dev libssl-dev make python-dev ragel redis-server
+ - sudo pip install psutil
- sudo pip install robotframework
test:
def encode_filename(filename):
return "".join(['%%%0X' % ord(b) for b in filename])
-def get_process_children(pid):
- children = []
- for p in psutil.process_iter():
- # ppid could be int or function depending on library version
- if callable(p.ppid):
- ppid = p.ppid()
- else:
- ppid = p.ppid
- if ppid == pid:
- children.append(p.pid)
- return children
-
def get_test_directory():
return os.path.abspath(os.path.dirname(os.path.realpath(__file__)) + "../../")
def shutdown_process_with_children(pid):
pid = int(pid)
- children = get_process_children(pid)
+ children = psutil.Process(pid=pid).children(recursive=False)
shutdown_process(pid)
for child in children:
- shutdown_process(child)
+ shutdown_process(child.pid)