#!/bin/sh
# Handle git-diff headers upon adding an empty file.

if test "$VERBOSE" = yes; then
  set -x
  vc-dwim --version
fi

. $srcdir/trap-setup

require_git_

framework_failure=0
mkdir -p $tmp && cd $tmp \
  || framework_failure=1

cat <<EOF > ChangeLog || framework_failure=1
2006-09-04  Jim Meyering  <jim@meyering.net>
EOF
git init > /dev/null			\
  && echo foo > x			\
  && git add .				\
  && git commit -m m . > /dev/null	\
  && git mv x y				\
  && : > y				\
    || framework_failure=1

cat <<EOF >> ChangeLog || framework_failure=1

	* x: Rename to...
	* y: ...this.
EOF

cat <<\EOF > exp || framework_failure=1
* x: Rename to...
* y: ...this.
diff --git a/x b/x
deleted file mode 100644
index 257cc56..0000000
--- a/x
+++ /dev/null
@@ -1 +0,0 @@
-foo
diff --git a/y b/y
new file mode 100644
index 0000000..e69de29
EOF

if test $framework_failure = 1; then
  echo "$0: failure in testing framework" 1>&2
  (exit 1); exit 1
fi

set -e

vc-dwim ChangeLog > out

cmp out exp \
  || { diff out exp 2> /dev/null; false; }

Exit 0
