Files
would-reformat/tests/project-root1.sh
Michael Wolf 7ed9ffce4a Add addl tests
2023-09-30 14:23:34 -06:00

66 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
cd "$DIR"/.. || exit
source ./_reformat-common.bash
setUp() {
cd "$DIR"/.. || exit
}
testProjectRoot001() {
dir=$(mktemp -d --tmpdir would-reformat-testProjectRoot001.XXXXXX)
cd "$dir" || exit
git init >/dev/null 2>&1
echo 'abc123' >random-file
pr=$(project_root random-file)
assertEquals "$dir" "$pr"
}
# This won't work (yet) because our only method of determining a
# project root is to ask git what it thinks.
testProjectRoot002() {
dir=$(mktemp -d --tmpdir would-reformat-testProjectRoot001.XXXXXX)
cd "$dir" || exit
echo 'abc123' >random-file
pr=$(project_root random-file)
assertEquals "" "$pr"
}
testResolveSymlink001() {
d1=$(mktemp -d --tmpdir targetdir.XXXXX)
expected="$d1/target"
touch "$expected"
d2=$(mktemp -d --tmpdir linkdir.XXXXX)
link="$d2"/link
ln -s "$d1"/target "$link"
resolved=$(resolve_symlink $link)
assertEquals "$expected" "$resolved"
}
# This test is ugly but there's no obvious way to make it
# better without making it entirely tautological.
testNoramlizeDirOfFile001() {
input="$DIR"/../install.sh
expected="$DIR/.."
out=$(normalize_dir_of_file "$input")
assertEquals "$expected" "$out/tests/.."
}
# shellcheck disable=SC1091
source shunit2