ctdb-common: Start listening to sockets only on successful startup
[metze/samba/wip.git] / ctdb / tests / cunit / sock_daemon_test_001.sh
1 #!/bin/sh
2
3 . "${TEST_SCRIPTS_DIR}/unit.sh"
4
5 pidfile="${TEST_VAR_DIR}/sock_daemon_test.pid.$$"
6 sockpath="${TEST_VAR_DIR}/sock_daemon_test.sock.$$"
7
8 remove_files ()
9 {
10         rm -f "$pidfile"
11         rm -f "$sockpath"
12 }
13
14 test_cleanup remove_files
15
16 result_filter ()
17 {
18         _pid="[0-9][0-9]*"
19         sed -e "s|pid=${_pid}|pid=PID|" \
20             -e "s|PID ${_pid}|PID PID|" \
21             -e "s|\[${_pid}\]|[PID]|"
22 }
23
24
25 ok <<EOF
26 test1[PID]: daemon started, pid=PID
27 test1[PID]: startup failed, ret=1
28 test1[PID]: daemon started, pid=PID
29 test1[PID]: startup completed successfully
30 test1[PID]: listening on $sockpath
31 test1[PID]: Shutting down
32 EOF
33 unit_test sock_daemon_test "$pidfile" "$sockpath" 1
34
35 ok <<EOF
36 test2[PID]: daemon started, pid=PID
37 test2[PID]: startup completed successfully
38 test2[PID]: listening on $sockpath
39 test2[PID]: Received signal 1
40 test2[PID]: reconfigure failed, ret=1
41 test2[PID]: Received signal 10
42 test2[PID]: reconfigure completed successfully
43 test2[PID]: Received signal 15
44 test2[PID]: Shutting down
45 EOF
46 unit_test sock_daemon_test "$pidfile" "$sockpath" 2
47
48 ok <<EOF
49 test3[PID]: daemon started, pid=PID
50 test3[PID]: listening on $sockpath
51 test3[PID]: PID PID gone away, exiting
52 test3[PID]: Shutting down
53 EOF
54 unit_test sock_daemon_test "$pidfile" "$sockpath" 3
55
56 ok <<EOF
57 test4[PID]: daemon started, pid=PID
58 test4[PID]: Shutting down
59 EOF
60 unit_test sock_daemon_test "$pidfile" "$sockpath" 4
61
62 ok <<EOF
63 test5[PID]: daemon started, pid=PID
64 test5[PID]: listening on $sockpath
65 test5[PID]: Received signal 15
66 test5[PID]: Shutting down
67 EOF
68 unit_test sock_daemon_test "$pidfile" "$sockpath" 5
69
70 ok <<EOF
71 test6[PID]: daemon started, pid=PID
72 test6[PID]: listening on $sockpath
73 test6[PID]: Shutting down
74 EOF
75 unit_test sock_daemon_test "$pidfile" "$sockpath" 6
76
77 ok <<EOF
78 test7[PID]: daemon started, pid=PID
79 test7[PID]: startup completed successfully
80 test7[PID]: Received signal 15
81 test7[PID]: Shutting down
82 EOF
83 unit_test sock_daemon_test "$pidfile" "$sockpath" 7
84
85 ok <<EOF
86 test8[PID]: daemon started, pid=PID
87 test8[PID]: startup completed successfully
88 test8[PID]: Received signal 15
89 test8[PID]: Shutting down
90 test8[PID]: daemon started, pid=PID
91 test8[PID]: startup completed successfully
92 test8[PID]: Received signal 15
93 test8[PID]: Shutting down
94 EOF
95 unit_test sock_daemon_test "$pidfile" "$sockpath" 8
96
97 ok <<EOF
98 test9[PID]: daemon started, pid=PID
99 test9[PID]: startup completed successfully
100 test9[PID]: Received signal 15
101 test9[PID]: Shutting down
102 test9[PID]: daemon started, pid=PID
103 test9[PID]: startup completed successfully
104 test9[PID]: Received signal 15
105 test9[PID]: Shutting down
106 EOF
107 unit_test sock_daemon_test "$pidfile" "$sockpath" 9
108
109 ok <<EOF
110 test10[PID]: daemon started, pid=PID
111 test10[PID]: listening on $sockpath
112 test10[PID]: daemon started, pid=PID
113 test10[PID]: listening on $sockpath
114 test10[PID]: Received signal 15
115 test10[PID]: Shutting down
116 EOF
117 unit_test sock_daemon_test "$pidfile" "$sockpath" 10