]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
test: use idiomatic bash loop iteration 27261/head
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Fri, 7 Apr 2023 08:17:15 +0000 (10:17 +0200)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Mon, 24 Apr 2023 19:59:28 +0000 (21:59 +0200)
In a few cases, also avoid a sleep in the last (failed) iteration of the loop.
It doesn't matter too much, but it's still ugly.

test/units/testsuite-17.06.sh
test/units/testsuite-17.07.sh
test/units/testsuite-17.08.sh
test/units/testsuite-17.09.sh
test/units/testsuite-35.sh
test/units/testsuite-45.sh
test/units/testsuite-46.sh
test/units/testsuite-50.sh
test/units/testsuite-60.sh
test/units/testsuite-64.sh
test/units/testsuite-73.sh

index 224063f6a6725c78727db1454bc95b17c6d0eade..4d452ff97c38ecb1847375b08759a09a9f965f9b 100755 (executable)
@@ -16,20 +16,18 @@ function check_validity() {
 }
 
 function check() {
-    local i j
-
-    for ((i = 0; i < 2; i++)); do
+    for _ in {1..2}; do
         systemctl restart systemd-udevd.service
         udevadm control --ping
         udevadm settle
         check_validity
 
-        for ((j = 0; j < 2; j++)); do
+        for _ in {1..2}; do
             udevadm trigger -w --action add --subsystem-match=block
             check_validity
         done
 
-        for ((j = 0; j < 2; j++)); do
+        for _ in {1..2}; do
             udevadm trigger -w --action change --subsystem-match=block
             check_validity
         done
index 549107af1016e90d5c1fcf6c8921463517d41e5b..b4dfd904e9982967f504d2cea534b6ed5d17a930 100755 (executable)
@@ -8,8 +8,8 @@ set -o pipefail
 
 wait_service_active() {(
     set +ex
-    for (( i = 0; i < 20; i++ )); do
-        if (( i != 0 )); then sleep 0.5; fi
+    for i in {1..20}; do
+        (( i > 1 )) && sleep 0.5
         if systemctl --quiet is-active "${1?}"; then
             return 0
         fi
@@ -19,8 +19,8 @@ wait_service_active() {(
 
 wait_service_inactive() {(
     set +ex
-    for (( i = 0; i < 20; i++ )); do
-        if (( i != 0 )); then sleep 0.5; fi
+    for i in {1..20}; do
+        (( i > 1 )) && sleep 0.5
         systemctl --quiet is-active "${1?}"
         if [[ "$?" == "3" ]]; then
             return 0
index f740b337f70a77217c7cd8d53708a5867d3053f8..a49a77dc44810e31d47ca735f8c5b92a73b241d8 100755 (executable)
@@ -18,8 +18,8 @@ EOF
 udevadm control --reload
 
 udevadm trigger --settle --action add /dev/null
-for ((i = 0; i < 20; i++)); do
-    ((i == 0)) || sleep .5
+for i in {1..20}; do
+    ((i > 1)) && sleep .5
 
     (
         systemctl -q is-active /dev/test/symlink-to-null-on-add
@@ -34,8 +34,8 @@ assert_rc 0 systemctl -q is-active /sys/test/alias-to-null-on-add
 assert_rc 3 systemctl -q is-active /sys/test/alias-to-null-on-change
 
 udevadm trigger --settle --action change /dev/null
-for ((i = 0; i < 20; i++)); do
-    ((i == 0)) || sleep .5
+for i in {1..20}; do
+    ((i > 1)) && sleep .5
 
     (
         ! systemctl -q is-active /dev/test/symlink-to-null-on-add
@@ -50,8 +50,8 @@ assert_rc 3 systemctl -q is-active /sys/test/alias-to-null-on-add
 assert_rc 0 systemctl -q is-active /sys/test/alias-to-null-on-change
 
 udevadm trigger --settle --action add /dev/null
-for ((i = 0; i < 20; i++)); do
-    ((i == 0)) || sleep .5
+for i in {1..20}; do
+    ((i > 1)) && sleep .5
 
     (
         systemctl -q is-active /dev/test/symlink-to-null-on-add
index 01ac5f17090543307d074ddb2a2d4f819d1661ef..31fc9d684233b889d17744ab15bb3f7e07a4553b 100755 (executable)
@@ -15,7 +15,7 @@ KERNEL!="null", GOTO="test-end"
 ACTION=="remove", GOTO="test-end"
 
 # add 100 * 100byte of properties
-$(for ((i = 0; i < 100; i++)); do printf 'ENV{XXX%03i}="0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789"\n' "$i"; done)
+$(for i in {1..100}; do printf 'ENV{XXX%03i}="0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789"\n' "$i"; done)
 
 LABEL="test-end"
 EOF
@@ -46,7 +46,7 @@ for _ in {1..40}; do
     fi
 
     FOUND=1
-    for ((i = 0; i < 100; i++)); do
+    for i in {1..100}; do
         if ! grep -F "$(printf 'XXX%03i=0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789' "$i")" "$TMPDIR"/monitor.txt; then
             FOUND=
             break
index 0b83a6a536b5c080ce3220b166e25f9cca6da384..bfd11658d6257c4e7cd3aa6621d22af79a740adf 100755 (executable)
@@ -330,8 +330,8 @@ EOF
     systemctl restart getty@tty2.service
 
     # check session
-    for ((i = 0; i < 30; i++)); do
-        (( i != 0 )) && sleep 1
+    for i in {1..30}; do
+        (( i > 1 )) && sleep 1
         check_session && break
     done
     check_session
index 73608756bf80760576dbb1a7a143ddfd49e210b4..74b3a2c6a97f17edfee92263f932bb8484deb771 100755 (executable)
@@ -212,8 +212,8 @@ start_mon() {
 }
 
 wait_mon() {
-    for ((i = 0; i < 10; i++)); do
-        if (( i != 0 )); then sleep 1; fi
+    for i in {1..10}; do
+        (( i > 1 )) && sleep 1
         if grep -q "$1" "$mon"; then break; fi
     done
     assert_in "$2" "$(cat "$mon")"
@@ -243,8 +243,8 @@ EOF
 
     echo 'disable NTP'
     timedatectl set-ntp false
-    for ((i = 0; i < 10; i++)); do
-        if (( i != 0 )); then sleep 1; fi
+    for i in {1..10}; do
+        (( i > 1 )) && sleep 1
         if [[ "$(systemctl show systemd-timesyncd --property ActiveState)" == "ActiveState=inactive" ]]; then
             break;
         fi
@@ -258,8 +258,8 @@ EOF
     timedatectl set-ntp true
     wait_mon "NTP" "BOOLEAN true"
     assert_ntp "true"
-    for ((i = 0; i < 10; i++)); do
-        if (( i != 0 )); then sleep 1; fi
+    for i in {1..10}; do
+        (( i > 1 )) && sleep 1
         if [[ "$(systemctl show systemd-timesyncd --property ActiveState)" == "ActiveState=active" ]]; then
             break;
         fi
index 46ee34b7338236ea91bec2c480f439fc3185e422..ec80b7147f990c9d49df12cdc7572f059ba0055f 100755 (executable)
@@ -27,9 +27,9 @@ inspect() {
 }
 
 wait_for_state() {
-    for ((i = 0; i < 10; i++)) ; do
+    for i in {1..10}; do
+        (( i > 1 )) && sleep 0.5
         homectl inspect "$1" | grep -qF "State: $2" && break
-        sleep .5
     done
 }
 
index 75cb4c49b2e5e78a869d242b839734b81324586f..1b703dc18c6b94283d64b79c8e8d981812687804 100755 (executable)
@@ -489,7 +489,7 @@ systemd-dissect --detach "$LOOP"
 # Note, sizeof_field(struct loop_info64, lo_file_name) == 64,
 # and --loop-ref accepts upto 63 characters, and udev creates symlink
 # based on the name when it has upto _62_ characters.
-name="$(for (( i = 0; i < 62; i++ )); do echo -n 'x'; done)"
+name="$(for _ in {1..62}; do echo -n 'x'; done)"
 LOOP="$(systemd-dissect --attach --loop-ref="$name" "${image}.raw")"
 udevadm trigger -w "$LOOP"
 
@@ -499,7 +499,7 @@ test "/dev/loop/by-ref/$name" -ef "$LOOP"
 # Detach by the /dev/loop/by-ref symlink
 systemd-dissect --detach "/dev/loop/by-ref/$name"
 
-name="$(for (( i = 0; i < 63; i++ )); do echo -n 'x'; done)"
+name="$(for _ in {1..63}; do echo -n 'x'; done)"
 LOOP="$(systemd-dissect --attach --loop-ref="$name" "${image}.raw")"
 udevadm trigger -w "$LOOP"
 
index 1b45ba21fbad72485c134b398512b7f37146a9d0..5795d6bbeb72287658070a91a9f9a8e39c091f08 100755 (executable)
@@ -181,7 +181,7 @@ EOF
     # Trigger the mount ratelimiting
     cd "$(mktemp -d)"
     mkdir foo
-    for ((i = 0; i < 50; i++)); do
+    for _ in {1..50}; do
         mount --bind foo foo
         umount foo
     done
@@ -225,7 +225,7 @@ EOF
     # shellcheck disable=SC2064
     trap "rm -f /run/systemd/system/tmp-hoge.mount '$mount_mytmpfs'" RETURN
 
-    for ((i = 0; i < 10; i++)); do
+    for _ in {1..10}; do
         systemctl --no-block start tmp-hoge.mount
         sleep ".$RANDOM"
         systemctl daemon-reexec
index 015b6b69b50265bba8e4ece4dfe5969a349c6635..ad502a229c108eaee7f1bb2b620f3e0f03ccec66 100755 (executable)
@@ -158,11 +158,11 @@ helper_check_device_units() {(
 
     local i
 
-    for (( i = 0; i < 20; i++ )); do
+    for i in {1..20}; do
+        (( i > 1 )) && sleep 0.5
         if check_device_units 0 "$@"; then
             return 0
         fi
-        sleep .5
     done
 
     check_device_units 1 "$@"
index e5ac09c2e3533dcc430576078bbf96aa36c1716a..7be400d43e249f46e88de6dc63b361fb43e9bd34 100755 (executable)
@@ -206,8 +206,8 @@ restore_keymap() {
 
 wait_vconsole_setup() {
     local i ss
-    for ((i = 0; i < 20; i++)); do
-        if (( i != 0 )); then sleep .5; fi
+    for i in {1..20}; do
+        (( i > 1 )) && sleep 0.5
         ss="$(systemctl --property SubState --value show systemd-vconsole-setup.service)"
         if [[ "$ss" == "exited" || "$ss" == "dead" || "$ss" == "condition" ]]; then
             return 0