1
1
mirror of https://github.com/mgree/ffs.git synced 2024-09-11 19:17:40 +03:00
ffs/tests/rename.sh
Michael Greenberg 520c606821 test for rename
2021-06-14 21:26:32 -04:00

49 lines
853 B
Bash
Executable File

#!/bin/sh
fail() {
echo FAILED: $1
if [ "$MNT" ]
then
cd
umount "$MNT"
rmdir "$MNT"
fi
exit 1
}
MNT=$(mktemp -d)
ffs "$MNT" ../json/object.json &
PID=$!
sleep 2
cd "$MNT"
case $(ls) in
(eyes*fingernails*human*name) ;;
(*) fail ls1;;
esac
mv name full_name
[ "$(cat full_name)" = "Michael Greenberg" ] || fail name1
case $(ls) in
(eyes*fingernails*full_name*human) ;;
(*) fail ls2;;
esac
echo Prof. G >name
mv full_name name
case $(ls) in
(eyes*fingernails*human*name) ;;
(*) fail ls3;;
esac
[ "$(cat name)" = "Michael Greenberg" ] || fail name2
mv nonesuch name && fail mv1
case $(ls) in
(eyes*fingernails*human*name) ;;
(*) fail ls4;;
esac
cd - >/dev/null 2>&1
umount "$MNT" || fail unmount
sleep 1
kill -0 $PID >/dev/null 2>&1 && fail process
rmdir "$MNT" || fail mount