diff options
| author | Valentin David <valentin.david@canonical.com> | 2023-05-04 16:30:29 +0200 |
|---|---|---|
| committer | Michael Vogt <michael.vogt@gmail.com> | 2023-06-05 17:20:46 +0200 |
| commit | 8897c00077295e31bc00370bcd45dde96a608963 (patch) | |
| tree | 77f83cf6c285530087a5bbe538cc327f4b1c5fdd | |
| parent | 564aa182ebc7b515d8190b3187591a564d838b50 (diff) | |
test-invariant: make stray-dbus-daemon less brittle
| -rwxr-xr-x | tests/lib/tools/tests.invariant | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/tests/lib/tools/tests.invariant b/tests/lib/tools/tests.invariant index da4ff2880f..7f2a5c2797 100755 --- a/tests/lib/tools/tests.invariant +++ b/tests/lib/tools/tests.invariant @@ -80,7 +80,10 @@ check_lxcfs_mounted() { check_stray_dbus_daemon() { n="$1" # invariant name - ( + wait_for_dbus_daemon=5 + failed=() + while [ "${wait_for_dbus_daemon}" -gt 0 ]; do + failed=() skipped_system=0 skipped_root_session=0 for pid in $(pgrep -x dbus-daemon); do @@ -102,11 +105,16 @@ check_stray_dbus_daemon() { continue fi # Report stray dbus-daemon. - echo "pid:$pid user:$user cmdline:$cmdline" + failed+=("pid:$pid user:$user cmdline:$cmdline") done - ) > "$TESTSTMP/tests.invariant.$n" - if [ -s "$TESTSTMP/tests.invariant.$n" ]; then - echo "tests.invariant: more than one dbus-daemon running" >&2 + : $((wait_for_dbus_daemon--)) + sleep 1 + done + + if [ "${#failed[@]}" -ne 0 ]; then + (for line in "${failed[@]}"; do + echo "${line}" + done) >"$TESTSTMP/tests.invariant.$n" cat "$TESTSTMP/tests.invariant.$n" >&2 return 1 fi |
