summaryrefslogtreecommitdiff
path: root/t/t9113-git-svn-dcommit-new-file.sh
blob: ae78e334acac717a737b75bdc93af48542190b67 (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
#!/bin/sh
#
# Copyright (c) 2007 Eric Wong
#

# Don't run this test by default unless the user really wants it
# I don't like the idea of taking a port and possibly leaving a
# daemon running on a users system if the test fails.
# Not all git users will need to interact with SVN.

test_description='git-svn dcommit new files over svn:// test'

. ./lib-git-svn.sh

if test -z "$SVNSERVE_PORT"
then
	say 'skipping svnserve test. (set $SVNSERVE_PORT to enable)'
	test_done
	exit
fi

start_svnserve () {
	svnserve --listen-port $SVNSERVE_PORT \
	         --root "$rawsvnrepo" \
	         --listen-once \
	         --listen-host 127.0.0.1 &
}

test_expect_success 'start tracking an empty repo' '
	svn mkdir -m "empty dir" "$svnrepo"/empty-dir &&
	echo "[general]" > "$rawsvnrepo"/conf/svnserve.conf &&
	echo anon-access = write >> "$rawsvnrepo"/conf/svnserve.conf &&
	start_svnserve &&
	git svn init svn://127.0.0.1:$SVNSERVE_PORT &&
	git svn fetch
	'

test_expect_success 'create files in new directory with dcommit' "
	mkdir git-new-dir &&
	echo hello > git-new-dir/world &&
	git update-index --add git-new-dir/world &&
	git commit -m hello &&
	start_svnserve &&
	git svn dcommit
	"

test_done