X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=tests%2Flib.sh.test;h=e46e937678a5126baf60812efd731c2706d31d46;hb=8348ecd5e6759f9551fac0431a45c3bdffc36956;hp=03184a01461371823de8a7b483faa00b0f1463ec;hpb=4cb251564b860a64b316aba2cb3ab376ce6c36de;p=config%2Fdotfiles.git diff --git a/tests/lib.sh.test b/tests/lib.sh.test index 03184a0..e46e937 100644 --- a/tests/lib.sh.test +++ b/tests/lib.sh.test @@ -1,7 +1,80 @@ +# Tests for lib.sh. + +# Copyright (C) 2009-2013 Simon Ruderich +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . . ../lib.sh -# Tests for installed(). -installed ls && echo ls installed -installed doesnt-exist && echo doesnt-exist installed + +# Tests for generate(). +echo "Simple test file for generate() using m4. +include(../lib.m4)dnl +IF(TEST,m4) + m4 +FI +IF(TEST,n4) + n4 +FI" > tmp/test.m4 +generate 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 generate(). +echo "Test with multiple arguments passed to generate(). +first: FIRST +second: SECOND +" > tmp/test-multiple.m4 +generate 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 generate(). +echo "Test with multiple arguments with spaces passed to generate(). +first: FIRST +second: SECOND +" > tmp/test-multiple-spaces.m4 +generate 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" + +# Test generate() using awk. +echo "Simple test fiel for generate() using awk. +first second +" > tmp/test-awk.in +generate awk tmp/test-awk '{ print $1 }' +# Remove the line with the current date as it changes every time. +cat tmp/test-awk | grep -v "It was generated from tmp/test-awk.in" + +# Test generate() using perl. +echo "Simple test fiel for generate() using perl. +first second +" > tmp/test-perl.in +generate perl tmp/test-perl -p -e 's/first/best/' +# Remove the line with the current date as it changes every time. +cat tmp/test-perl | grep -v "It was generated from tmp/test-perl.in" + +# Test generate() using cat. +echo "Simple test fiel for generate() using cat (simple copy). + +... +" > tmp/test-cat.real +generate cat tmp/test-cat .real +# Remove the line with the current date as it changes every time. +cat tmp/test-cat | grep -v "It was generated from tmp/test-cat.real" + +# vim: ft=sh