bcd.test 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #!/bin/sh
  2. # tests/bcd.test - test functionality of bcd.
  3. #
  4. # Copyright (c) 1999 Joseph Samuel Myers.
  5. # All rights reserved.
  6. #
  7. # Redistribution and use in source and binary forms, with or without
  8. # modification, are permitted provided that the following conditions
  9. # are met:
  10. # 1. Redistributions of source code must retain the above copyright
  11. # notice, this list of conditions and the following disclaimer.
  12. # 2. Redistributions in binary form must reproduce the above copyright
  13. # notice, this list of conditions and the following disclaimer in the
  14. # documentation and/or other materials provided with the distribution.
  15. # 3. The name of the author may not be used to endorse or promote products
  16. # derived from this software without specific prior written permission.
  17. #
  18. # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
  19. # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  20. # OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  21. # IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
  22. # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
  23. # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
  24. # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
  25. # AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  26. # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  27. # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  28. # SUCH DAMAGE.
  29. set -e
  30. . tests/common
  31. testexec bcd bcd/bcd
  32. testno 1
  33. bcd/bcd foo >test.out 2>&1 || failtest
  34. compare test.out tests/bcd.foo
  35. rm -f test.out
  36. testno 2
  37. bcd/bcd "foo bar" >test.out 2>&1 || failtest
  38. compare test.out tests/bcd.foobar
  39. rm -f test.out
  40. testno 3
  41. bcd/bcd >test.out 2>&1 <<EOF || failtest
  42. foo
  43. EOF
  44. compare test.out tests/bcd.foo
  45. rm -f test.out
  46. testno 4
  47. bcd/bcd foo bar >test.out 2>&1 || failtest
  48. compare test.out tests/bcd.fooxbar
  49. rm -f test.out
  50. testno 5
  51. bcd/bcd >test.out 2>&1 <<EOF || failtest
  52. foo
  53. bar
  54. EOF
  55. compare test.out tests/bcd.fooxbar
  56. rm -f test.out