X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=tests%2Flib.sh.test;h=911b4db14a0ec956481c93e3d3dba42cc3730fd2;hb=f30437901deddf4e539294eaddcd2f19af1d778b;hp=03184a01461371823de8a7b483faa00b0f1463ec;hpb=4cb251564b860a64b316aba2cb3ab376ce6c36de;p=config%2Fdotfiles.git diff --git a/tests/lib.sh.test b/tests/lib.sh.test index 03184a0..911b4db 100644 --- a/tests/lib.sh.test +++ b/tests/lib.sh.test @@ -1,7 +1,57 @@ +# Tests for lib.sh. . ../lib.sh -# Tests for installed(). +# Tests for installed() with hopefully proper exit codes (1 if the program was +# not found). installed ls && echo ls installed installed doesnt-exist && echo doesnt-exist installed + +# Simulate BSD `which` like on Mac OS X which doesn't use exit codes. +function which() { + echo Mac OS X which for $1 >&2 + if [ $1 = ls ]; then + echo /bin/ls + else + echo no doesnt-exist in /usr/bin /bin /usr/sbin /sbin + fi +} +# Tests for installed() without exit codes. +installed ls && echo ls installed +installed doesnt-exist && echo doesnt-exist installed + + +# Tests for m4(). +echo "Simple test file for m4. +IF(TEST,m4) + m4 +FI +IF(TEST,n4) + n4 +FI" > tmp/test.m4 +m4 tmp/test -DTEST=m4 +# Remove the line with the current date as it changes every time. +cat tmp/test | grep -v "It was generated from tmp/test.m4" + +# Test multiple arguments to m4(). +echo "Test with multiple arguments passed to m4. +first: FIRST +second: SECOND +" > tmp/test-multiple.m4 +m4 tmp/test-multiple -DFIRST=first -DSECOND=second +# Remove the line with the current date as it changes every time. +cat tmp/test-multiple | grep -v "It was generated from tmp/test-multiple.m4" + +# Test multiple arguments with spaces to m4(). +echo "Test with multiple arguments with spaces passed to m4. +first: FIRST +second: SECOND +" > tmp/test-multiple-spaces.m4 +m4 tmp/test-multiple-spaces -DFIRST="first with spaces" \ + -DSECOND="second with spaces" +# Remove the line with the current date as it changes every time. +cat tmp/test-multiple-spaces \ + | grep -v "It was generated from tmp/test-multiple-spaces.m4" + +# vim: ft=sh