summaryrefslogtreecommitdiff
path: root/t/t9105-git-svn-commit-diff.sh
blob: ba99abb6d975351cf2725e757a588a26109a9723 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#!/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