#!/bin/bash

set -e

export REPODIR=/tmp/$RANDOM
export PATH=$PWD/..:$PATH

function empty_repo
{
	rm -rf $REPODIR || exit 1
	mkdir $REPODIR || exit 1
	cd $REPODIR
	git-init-db 2> /dev/null > /dev/null
}

function verify_repo
{
        ( find $1 -type d -printf 'd %p\n' ; find $1 -type f -printf 'f %p\n' ; find $1 -type b -printf 'b %p\n' ; find $1 -type c -printf %'c %p\n' ; find $1 -type l -printf 'l %p\n') | sort > /tmp/check-$$
        grep -v '^$' | sort | diff -u - /tmp/check-$$
        ERR=$?
        rm -f /tmp/check-$$
        return $ERR
}

function shouldfail
{
	if $* 2>/tmp/saveout-$$ ; then
		echo "UNWANTED SUCCESS: " $*
		cat /tmp/saveout-$$
		return 1
	fi
	rm -f /tmp/saveout-$$
	return 0
}

function complete_test
{
	echo "OK"
	rm -rf $REPODIR
}

export TZ="UTC"
export GIT_AUTHOR_DATE="2007-01-01 00:00:00 UTC"
export GIT_COMMITTER_DATE="2007-01-01 00:00:00 UTC"
export GIT_AUTHOR_NAME="Author Name"
export GIT_AUTHOR_EMAIL="author@email"
export GIT_COMMITTER_NAME="Commiter Name"
export GIT_COMMITTER_EMAIL="commiter@email"

echo -n "`basename $0`: "

