test: avoid using eval in shell scripts
This commit is contained in:
parent
b189a5386b
commit
671daf06b8
1 changed files with 6 additions and 8 deletions
|
@ -75,10 +75,9 @@ default_client_min_mean_out_interval=0.0
|
|||
default_client_max_min_out_interval=inf
|
||||
|
||||
# Initialize test settings from their defaults
|
||||
for defopt in $(declare | grep '^default_'); do
|
||||
defoptname=${defopt%%=*}
|
||||
for defoptname in ${!default_*}; do
|
||||
optname=${defoptname#default_}
|
||||
eval "[ -z \"\${$optname:+a}\" ] && $optname=\"\$$defoptname\""
|
||||
declare "$optname"="${!defoptname}"
|
||||
done
|
||||
|
||||
test_start() {
|
||||
|
@ -358,14 +357,13 @@ check_packet_port() {
|
|||
|
||||
# Print test settings which differ from default value
|
||||
print_nondefaults() {
|
||||
local defopt defoptname optname
|
||||
local defoptname optname
|
||||
|
||||
test_message 2 1 "non-default settings:"
|
||||
declare | grep '^default_*' | while read defopt; do
|
||||
defoptname=${defopt%%=*}
|
||||
for defoptname in ${!default_*}; do
|
||||
optname=${defoptname#default_}
|
||||
eval "[ \"\$$optname\" = \"\$$defoptname\" ]" || \
|
||||
test_message 3 1 $(eval "echo $optname=\$$optname")
|
||||
[ "${!defoptname}" = "${!optname}" ] || \
|
||||
test_message 3 1 $optname=${!optname}
|
||||
done
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue