start-stop-daemon.tests 993 B

123456789101112131415161718192021222324252627282930313233343536
  1. #!/bin/sh
  2. # Copyright 2008 by Denys Vlasenko
  3. # Licensed under GPLv2, see file LICENSE in this source tree.
  4. . ./testing.sh
  5. # testing "test name" "cmd" "expected result" "file input" "stdin"
  6. testing "start-stop-daemon -x without -a" \
  7. 'start-stop-daemon -S -x true 2>&1; echo $?' \
  8. "0\n" \
  9. "" ""
  10. testing "start-stop-daemon -a without -x" \
  11. 'start-stop-daemon -S -a false 2>&1; echo $?' \
  12. "1\n" \
  13. "" ""
  14. testing "start-stop-daemon without -x and -a" \
  15. 'start-stop-daemon -S false 2>&1; echo $?' \
  16. "1\n" \
  17. "" ""
  18. # This runs /bin/false with argv[0..2] of { "qwerty", "false", NULL }.
  19. #
  20. # Unfortunately, this does not actually check argv[0] correctness,
  21. # but at least it checks that pathname to exec() is correct
  22. #
  23. # NB: this fails if /bin/false is a busybox symlink:
  24. # busybox looks at argv[0] and says "qwerty: applet not found"
  25. testing "start-stop-daemon with both -x and -a" \
  26. 'start-stop-daemon -S -x /bin/false -a qwerty false 2>&1; echo $?' \
  27. "1\n" \
  28. "" ""
  29. exit $FAILCOUNT