git-commit-vandalism/t/t9105-git-svn-commit-diff.sh

44 lines
1.1 KiB
Bash
Raw Normal View History

#!/bin/sh
#
# Copyright (c) 2006 Eric Wong
test_description='git-svn commit-diff'
. ./lib-git-svn.sh
test_expect_success 'initialize repo' "
mkdir import &&
cd import &&
echo hello > readme &&
svn import -m 'initial' . $svnrepo &&
cd .. &&
echo hello > readme &&
git update-index --add readme &&
git commit -a -m 'initial' &&
echo world >> readme &&
git commit -a -m 'another'
"
head=`git rev-parse --verify HEAD^0`
prev=`git rev-parse --verify HEAD^1`
# the internals of the commit-diff command are the same as the regular
# commit, so only a basic test of functionality is needed since we've
# already tested commit extensively elsewhere
test_expect_success 'test the commit-diff command' "
test -n '$prev' && test -n '$head' &&
git-svn commit-diff -r1 '$prev' '$head' '$svnrepo' &&
svn co $svnrepo wc &&
cmp readme wc/readme
"
test_expect_success 'commit-diff to a sub-directory (with git-svn config)' "
svn import -m 'sub-directory' import $svnrepo/subdir &&
git-svn init --minimize-url $svnrepo/subdir &&
git-svn fetch &&
git-svn commit-diff -r3 '$prev' '$head' &&
svn cat $svnrepo/subdir/readme > readme.2 &&
cmp readme readme.2
"
test_done