store mode in rev_list, if <tree>:<filename> syntax is used
[git/jrn.git] / t / t9105-git-svn-commit-diff.sh
blobc668dd127082ab400acd505e4970fb6f9cdbad1b
1 #!/bin/sh
3 # Copyright (c) 2006 Eric Wong
4 test_description='git-svn commit-diff'
5 . ./lib-git-svn.sh
7 test_expect_success 'initialize repo' "
8 mkdir import &&
9 cd import &&
10 echo hello > readme &&
11 svn import -m 'initial' . $svnrepo &&
12 cd .. &&
13 echo hello > readme &&
14 git update-index --add readme &&
15 git commit -a -m 'initial' &&
16 echo world >> readme &&
17 git commit -a -m 'another'
20 head=`git rev-parse --verify HEAD^0`
21 prev=`git rev-parse --verify HEAD^1`
23 # the internals of the commit-diff command are the same as the regular
24 # commit, so only a basic test of functionality is needed since we've
25 # already tested commit extensively elsewhere
27 test_expect_success 'test the commit-diff command' "
28 test -n '$prev' && test -n '$head' &&
29 git-svn commit-diff -r1 '$prev' '$head' '$svnrepo' &&
30 svn co $svnrepo wc &&
31 cmp readme wc/readme
34 test_expect_success 'commit-diff to a sub-directory (with git-svn config)' "
35 svn import -m 'sub-directory' import $svnrepo/subdir &&
36 git-svn init $svnrepo/subdir &&
37 git-svn fetch &&
38 git-svn commit-diff -r3 '$prev' '$head' &&
39 svn cat $svnrepo/subdir/readme > readme.2 &&
40 cmp readme readme.2
43 test_done