From: James Page Date: Thu, 20 Jun 2013 21:31:52 +0000 (+0100) Subject: tests: Tolerate init process pid != 1. X-Git-Tag: v1.9.3~11 X-Git-Url: http://git.cascardo.eti.br/?p=cascardo%2Fovs.git;a=commitdiff_plain;h=c75310c38d6f6d362fa205f8661d2ee23c91c0ed tests: Tolerate init process pid != 1. On Ubuntu Saucy based desktops, upstart runs with user sessions enabled which means that the init process under which a daemon might run is not always pid = 1. Instead of checking for pid = 1, check to ensure that the parent pid of the monitor is not the pid of the shell that started it. Signed-off-by: James Page Signed-off-by: Ben Pfaff --- diff --git a/tests/daemon-py.at b/tests/daemon-py.at index 39ab3ccd3..9bc781030 100644 --- a/tests/daemon-py.at +++ b/tests/daemon-py.at @@ -142,7 +142,7 @@ CHECK([kill -0 `cat daemon`]) CHECK([ps -o ppid= -p `cat daemon` > monitor]) CHECK([kill -0 `cat monitor`]) CHECK([ps -o ppid= -p `cat monitor` > init]) -CHECK([test `cat init` = 1]) +CHECK([test `cat init` != $$]) # Kill the daemon process, making it look like a segfault, # and wait for a new daemon process to get spawned. CHECK([cp daemon olddaemon]) @@ -159,7 +159,7 @@ CHECK([ps -o ppid= -p `cat daemon` > newmonitor]) CHECK([diff monitor newmonitor]) CHECK([kill -0 `cat newmonitor`]) CHECK([ps -o ppid= -p `cat newmonitor` > init]) -CHECK([test `cat init` = 1]) +CHECK([test `cat init` != $$]) # Kill the daemon process with SIGTERM, and wait for the daemon # and the monitor processes to go away and the pidfile to get deleted. CHECK([kill `cat daemon`], [0], [], [ignore]) diff --git a/tests/daemon.at b/tests/daemon.at index a80cd3e84..7c30e108f 100644 --- a/tests/daemon.at +++ b/tests/daemon.at @@ -104,7 +104,7 @@ CHECK([kill -0 `cat daemon`]) CHECK([ps -o ppid= -p `cat daemon` > monitor]) CHECK([kill -0 `cat monitor`]) CHECK([ps -o ppid= -p `cat monitor` > init]) -CHECK([test `cat init` = 1]) +CHECK([test `cat init` != $$]) # Kill the daemon process, making it look like a segfault, # and wait for a new daemon process to get spawned. CHECK([cp daemon olddaemon]) @@ -121,7 +121,7 @@ CHECK([ps -o ppid= -p `cat daemon` > newmonitor]) CHECK([diff monitor newmonitor]) CHECK([kill -0 `cat newmonitor`]) CHECK([ps -o ppid= -p `cat newmonitor` > init]) -CHECK([test `cat init` = 1]) +CHECK([test `cat init` != $$]) # Kill the daemon process with SIGTERM, and wait for the daemon # and the monitor processes to go away and the pidfile to get deleted. CHECK([kill `cat daemon`], [0], [], [ignore])