| #!/usr/bin/env bash |
| |
| # Tests for DevStack meta-config functions |
| |
| TOP=$(cd $(dirname "$0")/.. && pwd) |
| |
| # Import common functions |
| source $TOP/functions |
| source $TOP/tests/unittest.sh |
| |
| # common mistake is to use $FOO instead of "FOO"; in that case we |
| # should die |
| bash -c "source $TOP/functions-common; VAR=\$(trueorfalse False \$FOO)" &> /dev/null |
| assert_equal 1 $? "missing test-value" |
| |
| VAL=$(trueorfalse False MISSING_VARIABLE) |
| assert_equal "False" $VAL "blank test-value" |
| |
| function test_trueorfalse { |
| local one=1 |
| local captrue=True |
| local lowtrue=true |
| local uppertrue=TRUE |
| local capyes=Yes |
| local lowyes=yes |
| local upperyes=YES |
| |
| for default in True False; do |
| for name in one captrue lowtrue uppertrue capyes lowyes upperyes; do |
| local msg="trueorfalse($default $name)" |
| assert_equal "True" $(trueorfalse $default $name) "$msg" |
| done |
| done |
| |
| local zero=0 |
| local capfalse=False |
| local lowfalse=false |
| local upperfalse=FALSE |
| local capno=No |
| local lowno=no |
| local upperno=NO |
| |
| for default in True False; do |
| for name in zero capfalse lowfalse upperfalse capno lowno upperno; do |
| local msg="trueorfalse($default $name)" |
| assert_equal "False" $(trueorfalse $default $name) "$msg" |
| done |
| done |
| } |
| |
| test_trueorfalse |
| |
| report_results |