home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / unix / volume26 / cook-1.4 / part01 / test / 00 / t0017a.sh < prev    next >
Linux/UNIX/POSIX Shell Script  |  1993-05-03  |  1KB  |  60 lines

  1. #! /bin/sh
  2. #
  3. #    cook - file construction tool
  4. #    Copyright (C) 1990, 1991, 1992, 1993 Peter Miller.
  5. #    All rights reserved.
  6. #
  7. #    This program is free software; you can redistribute it and/or modify
  8. #    it under the terms of the GNU General Public License as published by
  9. #    the Free Software Foundation; either version 2 of the License, or
  10. #    (at your option) any later version.
  11. #
  12. #    This program is distributed in the hope that it will be useful,
  13. #    but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  15. #    GNU General Public License for more details.
  16. #
  17. #    You should have received a copy of the GNU General Public License
  18. #    along with this program; if not, write to the Free Software
  19. #    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  20. #
  21. # MANIFEST: test the "head" builtin function
  22. #
  23. tmp=/tmp/$$
  24. here=`pwd`
  25.  
  26. fail()
  27. {
  28.     echo 'FAILED test of builtin function "head"' 1>&2
  29.     cd $here
  30.     rm -rf $tmp
  31.     exit 1
  32. }
  33. pass()
  34. {
  35.     cd $here
  36.     rm -rf $tmp
  37.     exit 0
  38. }
  39. trap "fail" 1 2 3 15
  40.  
  41. mkdir $tmp
  42. cd $tmp
  43.  
  44. cat > Howto.cook <<foobar
  45. test:
  46. {
  47.     if [not [in [head ab cd ef] ab]] then fail;
  48.     if [not [in [head ab cd] ab]] then fail;
  49.     if [not [in [head ab] ab]] then fail;
  50.     if [head] then fail;
  51. }
  52. foobar
  53. if test $? -ne 0 ; then fail; fi
  54.  
  55. $here/bin/cook -nl
  56. if test $? -ne 0 ; then fail; fi
  57.  
  58. # probably OK
  59. pass
  60.