summaryrefslogtreecommitdiff
path: root/t/t9143-git-svn-gc.sh
blob: 4594e1ae2f36b5a5582cdb1f2421fdfbd2f8c996 (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
44
45
46
47
48
49
50
51
#!/bin/sh
#
# Copyright (c) 2009 Robert Allan Zeh
 
test_description='git svn gc basic tests'
 
. ./lib-git-svn.sh
 
test_expect_success 'setup directories and test repo' '
	mkdir import &&
	mkdir tmp &&
	echo "Sample text for Subversion repository." > import/test.txt &&
	svn_cmd import -m "import for git svn" import "$svnrepo" > /dev/null
	'
 
test_expect_success 'checkout working copy from svn' \
	'svn_cmd co "$svnrepo" test_wc'
 
test_expect_success 'set some properties to create an unhandled.log file' '
	(
		cd test_wc &&
		svn_cmd propset foo bar test.txt &&
		svn_cmd commit -m "property set"
	)'
 
test_expect_success 'Setup repo' 'git svn init "$svnrepo"'
 
test_expect_success 'Fetch repo' 'git svn fetch'
 
test_expect_success 'make backup copy of unhandled.log' '
	 cp .git/svn/refs/remotes/git-svn/unhandled.log tmp
	'
 
test_expect_success 'create leftover index' '> .git/svn/refs/remotes/git-svn/index'
 
test_expect_success 'git svn gc runs' 'git svn gc'
 
test_expect_success 'git svn index removed' '! test -f .git/svn/refs/remotes/git-svn/index'
 
if test -r .git/svn/refs/remotes/git-svn/unhandled.log.gz
then
	test_expect_success 'git svn gc produces a valid gzip file' '
		 gunzip .git/svn/refs/remotes/git-svn/unhandled.log.gz
		'
fi
 
test_expect_success 'git svn gc does not change unhandled.log files' '
	 test_cmp .git/svn/refs/remotes/git-svn/unhandled.log tmp/unhandled.log
	'
 
test_done