Blame tests/filename-quoting

Packit 33f14e
#!/bin/sh
Packit 33f14e
# filename quoting
Packit 33f14e
Packit 33f14e
. "${srcdir=.}/init.sh"; path_prepend_ ../src
Packit 33f14e
Packit 33f14e
fail=0
Packit 33f14e
Packit 33f14e
cat <<EOF > exp- || fail=1
Packit 33f14e
diff -N -r "a/ " "b/ "
Packit 33f14e
0a1
Packit 33f14e
> space
Packit 33f14e
EOF
Packit 33f14e
Packit 33f14e
cat <<EOF > exp--u || fail=1
Packit 33f14e
diff -N -r -u "a/ " "b/ "
Packit 33f14e
--- "a/ "
Packit 33f14e
+++ "b/ "
Packit 33f14e
@@ -0,0 +1 @@
Packit 33f14e
+space
Packit 33f14e
EOF
Packit 33f14e
Packit 33f14e
cat <<EOF > exp--c || fail=1
Packit 33f14e
diff -N -r -c "a/ " "b/ "
Packit 33f14e
*** "a/ "
Packit 33f14e
--- "b/ "
Packit 33f14e
***************
Packit 33f14e
*** 0 ****
Packit 33f14e
--- 1 ----
Packit 33f14e
+ space
Packit 33f14e
EOF
Packit 33f14e
Packit 33f14e
mkdir a b
Packit 33f14e
echo space > "b/ " || fail=1
Packit 33f14e
for opt in '' -u -c; do
Packit 33f14e
  returns_ 1 diff -N -r $opt a b > out 2> err || fail=1
Packit 33f14e
  # Remove date and time.
Packit 33f14e
  sed -e 's/^\([-+*][-+*][-+*] [^	]*\)	.*/\1/' out > k; mv k out
Packit 33f14e
  compare exp-$(echo $opt|tr ' ' _) out || fail=1
Packit 33f14e
done
Packit 33f14e
Packit 33f14e
rm -f "b/ "
Packit 33f14e
Packit 33f14e
cat <<EOF > exp || fail=1
Packit 33f14e
--- "a/\t"
Packit 33f14e
+++ "b/\001"
Packit 33f14e
@@ -1 +1 @@
Packit 33f14e
-tab
Packit 33f14e
+one
Packit 33f14e
EOF
Packit 33f14e
Packit 33f14e
tab=$(printf '\t')
Packit 33f14e
x01=$(printf '\001')
Packit 33f14e
Packit 33f14e
echo tab > "a/$tab"   || fail=1
Packit 33f14e
echo one > "b/$x01" || fail=1
Packit 33f14e
returns_ 1 diff -u "a/$tab" "b/$x01" > out 2> err || fail=1
Packit 33f14e
# Remove date and time.
Packit 33f14e
sed -e 's/^\([-+*][-+*][-+*] [^	]*\)	.*/\1/' out > k; mv k out
Packit 33f14e
compare exp out || fail=1
Packit 33f14e
Packit 33f14e
Exit $fail