Refactor test_merge.bash for multiple tests

We will be adding more tests, so make it more of a framework for that.

Also fix up minor lib.yaml formatting bug.

Change-Id: Ic0fe1679f8d62680dfd0acf215c849aa38b913da
This commit is contained in:
Clint Byrum 2013-09-25 10:37:52 -07:00
parent 0dbf2810a0
commit cd3ddc482f
2 changed files with 23 additions and 16 deletions

View File

@ -1,7 +1,9 @@
Parameters:
ImportantValue:
Default: a_default
Type: String
Default: a_default
Type: String
BImage:
Type: String
Resources:
GenericB:
Type: OS::Nova::Server

View File

@ -7,18 +7,23 @@ cleanup() {
fi
}
trap cleanup EXIT
result=$(mktemp /tmp/test_merge.XXXXXX)
fail=0
python merge.py examples/source.yaml > $result
if ! cmp $result examples/source_lib_result.yaml ; then
diff -u $result examples/source_lib_result.yaml
echo
echo FAIL - merge of source.yaml result does not match expected output
echo
fail=1
else
echo
echo PASS - merge of source.yaml result matches expected output
echo
fi
run_test() {
local cmd=$1
local expected=$2
result=$(mktemp /tmp/test_merge.XXXXXX)
fail=0
$cmd > $result
if ! cmp $result $expected ; then
diff -u $expected $result || :
echo FAIL - $cmd result does not match expected
fail=1
else
echo PASS - $cmd
fi
cleanup
}
echo
run_test "python merge.py examples/source.yaml" examples/source_lib_result.yaml
echo
trap - EXIT
exit $fail