logo

utils-std

Collection of commonly available Unix tools git clone https://anongit.hacktivis.me/git/utils-std.git

basename.sh (1260B)


  1. #!/bin/sh
  2. # SPDX-FileCopyrightText: 2017 Haelwenn (lanodan) Monnier <contact+utils@hacktivis.me>
  3. # SPDX-License-Identifier: MPL-2.0
  4. target="$(dirname "$0")/../cmd/basename"
  5. plans=9
  6. . "$(dirname "$0")/tap.sh"
  7. t 'no args' '' '.
  8. '
  9. t '/usr/bin' '/usr/bin' 'bin
  10. '
  11. t '/usr//bin' '/usr//bin' 'bin
  12. '
  13. t '-- /usr//bin' '-- /usr//bin' 'bin
  14. '
  15. t 'suffix' '/usr//bin-test -test' 'bin
  16. '
  17. t dash '-' '-
  18. '
  19. t double-dash '--' '.
  20. '
  21. t triple-dash '---' '---
  22. '
  23. t double-dash-letter '--a a' '--
  24. '
  25. #atf_test_case usage
  26. #usage_body() {
  27. # atf_check -s exit:1 -e "inline:usage: basename string [suffix]\n" ../cmd/basename 1 2 3
  28. #}
  29. #atf_test_case devfull
  30. #devfull_body() {
  31. # has_glibc && atf_skip "glibc ignoring write errors for puts()"
  32. # [ "$(uname -s)" = "NetBSD" ] && atf_skip "NetBSD ignoring write errors for puts()"
  33. # [ "$(uname -s)" = "FreeBSD" ] && atf_skip "FreeBSD ignoring write errors for puts()"
  34. #
  35. # atf_check -s exit:1 -e 'inline:basename: puts: No space left on device\n' sh -c '../cmd/basename >/dev/full'
  36. # atf_check -s exit:1 -e 'inline:basename: puts: No space left on device\n' sh -c '../cmd/basename "/usr/bin" >/dev/full'
  37. # atf_check -s exit:1 -e 'inline:basename: puts: No space left on device\n' sh -c '../cmd/basename "/usr//bin-test" "-test" >/dev/full'
  38. #}