aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Richardson <arichardson@FreeBSD.org>2021-02-13 13:53:50 +0000
committerAlex Richardson <arichardson@FreeBSD.org>2021-02-13 13:53:51 +0000
commit5ff2e55e0071dabbf18cdbe13a1230822d1270d4 (patch)
treeb0a816bbefcf21917f95711a7d45fbc8092aee17
parent90b5fc95832da64a5f56295e687379732c33718f (diff)
downloadsrc-5ff2e55e0071dabbf18cdbe13a1230822d1270d4.tar.gz
src-5ff2e55e0071dabbf18cdbe13a1230822d1270d4.zip
bin/pkill: Fix {pgrep,pkill}-j_test.sh
The POSIX sh case statement does not allow for pattern matching using the regex + qualifier so this case statement never matches. Instead just check for a string starting with a digit followed by any character. While touching these files also fix various shellcheck warnings. `kyua -v parallelism=4 test` failed before, succeeds now. Reviewed By: imp Differential Revision: https://reviews.freebsd.org/D28480
-rw-r--r--bin/pkill/tests/pgrep-j_test.sh34
-rw-r--r--bin/pkill/tests/pkill-j_test.sh37
2 files changed, 37 insertions, 34 deletions
diff --git a/bin/pkill/tests/pgrep-j_test.sh b/bin/pkill/tests/pgrep-j_test.sh
index 0e54fd1106a7..5f44109d41b3 100644
--- a/bin/pkill/tests/pgrep-j_test.sh
+++ b/bin/pkill/tests/pgrep-j_test.sh
@@ -9,7 +9,7 @@ jail_name_to_jid()
base=pgrep_j_test
-if [ `id -u` -ne 0 ]; then
+if [ "$(id -u)" -ne 0 ]; then
echo "1..0 # skip Test needs uid 0."
exit 0
fi
@@ -28,12 +28,12 @@ jail -c path=/ name=${base}_1_2 ip4.addr=127.0.0.1 \
command=daemon -p ${PWD}/${base}_1_2.pid $sleep $sleep_amount &
sleep 0.5
-for i in `seq 1 10`; do
+for i in $(seq 1 10); do
jid1=$(jail_name_to_jid ${base}_1_1)
jid2=$(jail_name_to_jid ${base}_1_2)
jid="${jid1},${jid2}"
case "$jid" in
- [0-9]+,[0-9]+)
+ [0-9]*,[0-9]*)
break
;;
esac
@@ -43,14 +43,14 @@ sleep 0.5
pid1="$(pgrep -f -x -j "$jid" "$sleep $sleep_amount" | sort)"
pid2=$(printf "%s\n%s" "$(cat ${PWD}/${base}_1_1.pid)" \
- $(cat ${PWD}/${base}_1_2.pid) | sort)
+ "$(cat ${PWD}/${base}_1_2.pid)" | sort)
if [ "$pid1" = "$pid2" ]; then
echo "ok 1 - $name"
else
- echo "not ok 1 - $name # pgrep output: '$(echo $pid1)', pidfile output: '$(echo $pid2)'"
+ echo "not ok 1 - $name # pgrep output: '$pid1', pidfile output: '$pid2'"
fi
-[ -f ${PWD}/${base}_1_1.pid ] && kill $(cat ${PWD}/${base}_1_1.pid)
-[ -f ${PWD}/${base}_1_2.pid ] && kill $(cat ${PWD}/${base}_1_2.pid)
+[ -f ${PWD}/${base}_1_1.pid ] && kill "$(cat ${PWD}/${base}_1_1.pid)"
+[ -f ${PWD}/${base}_1_2.pid ] && kill "$(cat ${PWD}/${base}_1_2.pid)"
wait
name="pgrep -j any"
@@ -64,14 +64,14 @@ jail -c path=/ name=${base}_2_2 ip4.addr=127.0.0.1 \
sleep 2
pid1="$(pgrep -f -x -j any "$sleep $sleep_amount" | sort)"
pid2=$(printf "%s\n%s" "$(cat ${PWD}/${base}_2_1.pid)" \
- $(cat ${PWD}/${base}_2_2.pid) | sort)
+ "$(cat ${PWD}/${base}_2_2.pid)" | sort)
if [ "$pid1" = "$pid2" ]; then
echo "ok 2 - $name"
else
- echo "not ok 2 - $name # pgrep output: '$(echo $pid1)', pidfile output: '$(echo $pid2)'"
+ echo "not ok 2 - $name # pgrep output: '$pid1', pidfile output: '$pid2'"
fi
-[ -f ${PWD}/${base}_2_1.pid ] && kill $(cat ${PWD}/${base}_2_1.pid)
-[ -f ${PWD}/${base}_2_2.pid ] && kill $(cat ${PWD}/${base}_2_2.pid)
+[ -f ${PWD}/${base}_2_1.pid ] && kill "$(cat ${PWD}/${base}_2_1.pid)"
+[ -f ${PWD}/${base}_2_2.pid ] && kill "$(cat ${PWD}/${base}_2_2.pid)"
wait
name="pgrep -j none"
@@ -84,10 +84,10 @@ pid="$(pgrep -f -x -j none "$sleep $sleep_amount")"
if [ "$pid" = "$(cat ${PWD}/${base}_3_1.pid)" ]; then
echo "ok 3 - $name"
else
- echo "not ok 3 - $name # pgrep output: '$(echo $pid1)', pidfile output: '$(echo $pid2)'"
+ echo "not ok 3 - $name # pgrep output: '$pid1', pidfile output: '$pid2'"
fi
-[ -f ${PWD}/${base}_3_1.pid ] && kill $(cat $PWD/${base}_3_1.pid)
-[ -f ${PWD}/${base}_3_2.pid ] && kill $(cat $PWD/${base}_3_2.pid)
+[ -f ${PWD}/${base}_3_1.pid ] && kill "$(cat $PWD/${base}_3_1.pid)"
+[ -f ${PWD}/${base}_3_2.pid ] && kill "$(cat $PWD/${base}_3_2.pid)"
wait
# test 4 is like test 1 except with jname instead of jid.
@@ -104,14 +104,14 @@ sleep 0.5
jname="${base}_4_1,${base}_4_2"
pid1="$(pgrep -f -x -j "$jname" "$sleep $sleep_amount" | sort)"
pid2=$(printf "%s\n%s" "$(cat ${PWD}/${base}_4_1.pid)" \
- $(cat ${PWD}/${base}_4_2.pid) | sort)
+ "$(cat ${PWD}/${base}_4_2.pid)" | sort)
if [ "$pid1" = "$pid2" ]; then
echo "ok 4 - $name"
else
echo "not ok 4 - $name # pgrep output: '$(echo $pid1)', pidfile output: '$(echo $pid2)'"
fi
-[ -f ${PWD}/${base}_4_1.pid ] && kill $(cat ${PWD}/${base}_4_1.pid)
-[ -f ${PWD}/${base}_4_2.pid ] && kill $(cat ${PWD}/${base}_4_2.pid)
+[ -f ${PWD}/${base}_4_1.pid ] && kill "$(cat ${PWD}/${base}_4_1.pid)"
+[ -f ${PWD}/${base}_4_2.pid ] && kill "$(cat ${PWD}/${base}_4_2.pid)"
wait
rm -f $sleep
diff --git a/bin/pkill/tests/pkill-j_test.sh b/bin/pkill/tests/pkill-j_test.sh
index 442d9d23885e..1710ca04f653 100644
--- a/bin/pkill/tests/pkill-j_test.sh
+++ b/bin/pkill/tests/pkill-j_test.sh
@@ -9,7 +9,7 @@ jail_name_to_jid()
base=pkill_j_test
-if [ `id -u` -ne 0 ]; then
+if [ "$(id -u)" -ne 0 ]; then
echo "1..0 # skip Test needs uid 0."
exit 0
fi
@@ -29,28 +29,31 @@ jail -c path=/ name=${base}_1_2 ip4.addr=127.0.0.1 \
$sleep $sleep_amount &
-for i in `seq 1 10`; do
+for i in $(seq 1 10); do
jid1=$(jail_name_to_jid ${base}_1_1)
jid2=$(jail_name_to_jid ${base}_1_2)
jid="${jid1},${jid2}"
case "$jid" in
- [0-9]+,[0-9]+)
+ [0-9]*,[0-9]*)
break
;;
+ *)
+ echo "Did not match: '${jid}'" >&2
+ ;;
esac
sleep 0.1
done
sleep 0.5
if pkill -f -j "$jid" $sleep && sleep 0.5 &&
- ! -f ${PWD}/${base}_1_1.pid &&
- ! -f ${PWD}/${base}_1_2.pid ; then
+ ! test -f "${PWD}/${base}_1_1.pid" &&
+ ! test -f "${PWD}/${base}_1_2.pid" ; then
echo "ok 1 - $name"
else
echo "not ok 1 - $name"
fi 2>/dev/null
-[ -f ${PWD}/${base}_1_1.pid ] && kill $(cat ${PWD}/${base}_1_1.pid)
-[ -f ${PWD}/${base}_1_2.pid ] && kill $(cat ${PWD}/${base}_1_2.pid)
+[ -f ${PWD}/${base}_1_1.pid ] && kill "$(cat ${PWD}/${base}_1_1.pid)"
+[ -f ${PWD}/${base}_1_2.pid ] && kill "$(cat ${PWD}/${base}_1_2.pid)"
wait
name="pkill -j any"
@@ -65,14 +68,14 @@ $sleep $sleep_amount &
chpid3=$!
sleep 0.5
if pkill -f -j any $sleep && sleep 0.5 &&
- [ ! -f ${PWD}/${base}_2_1.pid -a
- ! -f ${PWD}/${base}_2_2.pid ] && kill $chpid3; then
+ ! test -f ${PWD}/${base}_2_1.pid &&
+ ! test -f ${PWD}/${base}_2_2.pid && kill $chpid3; then
echo "ok 2 - $name"
else
echo "not ok 2 - $name"
fi 2>/dev/null
-[ -f ${PWD}/${base}_2_1.pid ] && kill $(cat ${PWD}/${base}_2_1.pid)
-[ -f ${PWD}/${base}_2_2.pid ] && kill $(cat ${PWD}/${base}_2_2.pid)
+[ -f ${PWD}/${base}_2_1.pid ] && kill "$(cat ${PWD}/${base}_2_1.pid)"
+[ -f ${PWD}/${base}_2_2.pid ] && kill "$(cat ${PWD}/${base}_2_2.pid)"
wait
name="pkill -j none"
@@ -88,8 +91,8 @@ else
ls ${PWD}/*.pid
echo "not ok 3 - $name"
fi 2>/dev/null
-[ -f ${PWD}/${base}_3_1.pid ] && kill $(cat ${base}_3_1.pid)
-[ -f ${PWD}/${base}_3_2.pid ] && kill $(cat ${base}_3_2.pid)
+[ -f ${PWD}/${base}_3_1.pid ] && kill "$(cat ${base}_3_1.pid)"
+[ -f ${PWD}/${base}_3_2.pid ] && kill "$(cat ${base}_3_2.pid)"
wait
# test 4 is like test 1 except with jname instead of jid.
@@ -107,14 +110,14 @@ sleep 0.5
jname="${base}_4_1,${base}_4_2"
if pkill -f -j "$jname" $sleep && sleep 0.5 &&
- ! -f ${PWD}/${base}_4_1.pid &&
- ! -f ${PWD}/${base}_4_2.pid ; then
+ ! test -f ${PWD}/${base}_4_1.pid &&
+ ! test -f ${PWD}/${base}_4_2.pid ; then
echo "ok 4 - $name"
else
echo "not ok 4 - $name"
fi 2>/dev/null
-[ -f ${PWD}/${base}_4_1.pid ] && kill $(cat ${PWD}/${base}_4_1.pid)
-[ -f ${PWD}/${base}_4_2.pid ] && kill $(cat ${PWD}/${base}_4_2.pid)
+[ -f ${PWD}/${base}_4_1.pid ] && kill "$(cat ${PWD}/${base}_4_1.pid)"
+[ -f ${PWD}/${base}_4_2.pid ] && kill "$(cat ${PWD}/${base}_4_2.pid)"
wait
rm -f $sleep