Make cleanup routines idempotent
cleanup routines can be executed at any point during the execution of the body, including even before the body has done any real work. In those cases, cleanup routines should be careful to not raise spurious errors so as to not "override" the actual result of the test case. This is just general good coding style but is not a problem in practice for these specific tests. (The way I discovered the issue, though, was due to a regression I introduced in Kyua itself while refactoring some internals.) MFC after: 1 week
This commit is contained in:
parent
b42f5bb715
commit
5c6b494ea7
@ -98,9 +98,12 @@ arpresolve_checks_interface_fib_body()
|
||||
}
|
||||
arpresolve_checks_interface_fib_cleanup()
|
||||
{
|
||||
for PID in `cat "processes_to_kill"`; do
|
||||
kill $PID
|
||||
done
|
||||
if [ -f processes_to_kill ]; then
|
||||
for pid in $(cat processes_to_kill); do
|
||||
kill "${pid}"
|
||||
done
|
||||
rm -f processes_to_kill
|
||||
fi
|
||||
cleanup_tap
|
||||
}
|
||||
|
||||
@ -476,8 +479,10 @@ setup_tap()
|
||||
|
||||
cleanup_tap()
|
||||
{
|
||||
for TAPD in `cat "tap_devices_to_cleanup"`; do
|
||||
ifconfig ${TAPD} destroy
|
||||
done
|
||||
rm "tap_devices_to_cleanup"
|
||||
if [ -f tap_devices_to_cleanup ]; then
|
||||
for tap_device in $(cat tap_devices_to_cleanup); do
|
||||
ifconfig "${tap_device}" destroy
|
||||
done
|
||||
rm -f tap_devices_to_cleanup
|
||||
fi
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user