hwdb: fix screen rotation for EXO Wings 2in1 w1125 (#36283)
[systemd.io.git] / test / units / TEST-78-SIGQUEUE.sh
blob46afd3c4316669dec3ab119080217401a80f3557
1 #!/usr/bin/env bash
2 # SPDX-License-Identifier: LGPL-2.1-or-later
3 set -ex
4 set -o pipefail
6 if ! env --block-signal=SIGUSR1 true 2> /dev/null ; then
7 echo "env tool too old, can't block signals, skipping test." >&2
8 echo OK >/testok
9 exit 0
12 systemd-analyze log-level debug
14 UNIT="test-sigqueue-$RANDOM.service"
16 systemd-run -u "$UNIT" -p Type=notify -p DynamicUser=1 -- env --block-signal=SIGRTMIN+7 systemd-notify --exec --ready \; sleep infinity
18 systemctl kill --kill-whom=main --kill-value=4 --signal=SIGRTMIN+7 "$UNIT"
19 systemctl kill --kill-whom=main --kill-value=4 --signal=SIGRTMIN+7 "$UNIT"
20 systemctl kill --kill-whom=main --kill-value=7 --signal=SIGRTMIN+7 "$UNIT"
21 systemctl kill --kill-whom=main --kill-value=16 --signal=SIGRTMIN+7 "$UNIT"
22 systemctl kill --kill-whom=main --kill-value=32 --signal=SIGRTMIN+7 "$UNIT"
23 systemctl kill --kill-whom=main --kill-value=16 --signal=SIGRTMIN+7 "$UNIT"
25 # We simply check that six signals are queued now. There's no easy way to check
26 # from shell which ones those are, hence we don't check that.
27 P=$(systemctl show -P MainPID "$UNIT")
29 test "$(grep SigQ: /proc/"$P"/status | cut -d: -f2 | cut -d/ -f1)" -eq 6
31 systemctl stop $UNIT
33 systemd-analyze log-level info
35 touch /testok