#!/bin/sh
# tag: Tom Lord Tue Dec 4 14:54:32 2001 (fs-tests/unit-file-names.sh)
#
set -e
arg0="$0"
srcdir=`dirname "$arg0"`
echo ================ unit-file-names tests ================
echo home...
test `./unit-file-names --home` = `echo ~/ | sed 's,^//,/,'`
echo is-absolute...
test `./unit-file-names --is-absolute /this/is` = yes
test `./unit-file-names --is-absolute /` = yes
test `./unit-file-names --is-absolute this/is/not` = no
test `./unit-file-names --is-absolute ./this/is/not` = no
echo expand...
test `./unit-file-names --expand /no/change` = /no/change
test `./unit-file-names --expand "~/some/file"` = `echo ~/some/file | sed 's,^//,/,'`
test `./unit-file-names --expand "~root/some/file"` = `echo ~root/some/file | sed 's,^//,/,'`
test `./unit-file-names --expand "~no_such_user/some/file"` = `echo ~no_such_user/some/file`
echo tail...
test `./unit-file-names --tail /usr/bin/ls` = ls
test x`./unit-file-names --tail /usr/bin/` = x
test `./unit-file-names --tail ls` = "ls"
echo as-directory...
test `./unit-file-names --as-directory /usr/bin/ls` = /usr/bin/ls/
test `./unit-file-names --as-directory /usr/bin/` = /usr/bin/
test `./unit-file-names --as-directory /usr/bin////` = /usr/bin/
test `./unit-file-names --as-directory ls` = ls/
echo directory-file-name...
test `./unit-file-names --directory-file-name /usr/bin/ls` = /usr/bin/ls
test `./unit-file-names --directory-file-name ls` = ls
test `./unit-file-names --directory-file-name /usr/bin/` = /usr/bin
test `./unit-file-names --directory-file-name /usr/bin/////` = /usr/bin
test `./unit-file-names --directory-file-name /` = /
echo file-name-directory...
test `./unit-file-names --file-name-directory /usr/bin/ls` = /usr/bin/
test `./unit-file-names --file-name-directory /usr/bin/////ls` = /usr/bin/
test `./unit-file-names --file-name-directory /usr/bin/` = /usr/bin/
test `./unit-file-names --file-name-directory /usr/bin` = /usr/
test `./unit-file-names --file-name-directory /` = /
test `./unit-file-names --file-name-directory ls` = "(null)"
echo in-vicinity...
test `./unit-file-names --in-vicinity /usr/bin ls` = /usr/bin/ls
test `./unit-file-names --in-vicinity /usr/bin/ ls` = /usr/bin/ls
test `./unit-file-names --in-vicinity /usr/bin/// ls` = /usr/bin/ls
test `./unit-file-names --in-vicinity /etc /usr/bin/ls` = /usr/bin/ls
test `./unit-file-names --in-vicinity "" ls` = ls
echo path...
rm -f ,path
echo /bin > ,path
echo /usr/bin >> ,path
echo . >> ,path
echo /usr/local/bin >> ,path
./unit-file-names --path /bin:/usr/bin::/usr/local/bin | cmp - ,path
echo which...
test `./unit-file-names --which ls` = `which ls`
test `./unit-file-names --which cat` = `which cat`
# `which test` doesn't reliably return a path when /bin/sh
# is zsh.
#
# test `./unit-file-names --which test` = `which test`
echo ...passed
syntax highlighted by Code2HTML, v. 0.9.1