Thread (6 messages) flat view 6 messages, 4 authors, 2016-06-15

Re: [PATCH] git-svn: Support for git-svn propset

From: Torsten Bögershausen <hidden>
Date: 2016-06-15 23:03:13

quoted hunk ↗ jump to hunk
diff --git a/t/t9148-git-svn-propset.sh b/t/t9148-git-svn-propset.sh
new file mode 100755
index 0000000..b36a8a2
--- /dev/null
+++ b/t/t9148-git-svn-propset.sh
@@ -0,0 +1,71 @@
+#!/bin/sh
+#
+# Copyright (c) 2014 Alfred Perlstein
+#
+
+test_description='git svn propset tests'
+
+. ./lib-git-svn.sh
+
+foo_subdir2="subdir/subdir2/foo_subdir2"
+
In case something goes wrong (for whatever reason):
do we need a && chain here ?
+mkdir import
+(cd import
+	mkdir subdir
+	mkdir subdir/subdir2
+	touch foo		# for 'add props top level'
"touch foo" can be written shorter:
foo
+	touch subdir/foo_subdir # for 'add props relative'
+	touch "$foo_subdir2"	# for 'add props subdir'
+	svn_cmd import -m 'import for git svn' . "$svnrepo" >/dev/null
+)
+rm -rf import
+
+test_expect_success 'initialize git svn' 'git svn init "$svnrepo"'
+test_expect_success 'fetch revisions from svn' 'git svn fetch'
This may look a little bit strange, 2 times test_expect_success in a row,
is the indentention OK ?
+
+# There is a bogus feature about svn propset which means that it will only
+# be taken as a delta for svn dcommit iff the file is also modified.
+# That is fine for now.
"there is a bogus feature ?"
Small typo: s/iff/if/
How about this:
#The current implementation has a restriction:
#svn propset will be taken as a delta for svn dcommit only
#if the file content is also modified
+test_expect_success 'add props top level' '
+	git svn propset svn:keywords "FreeBSD=%H" foo &&
+	echo hello >> foo &&
+	git commit -m "testing propset" foo &&
+	git svn dcommit
+	svn_cmd co "$svnrepo" svn_project &&
+	(cd svn_project && test "`svn propget svn:keywords foo`" = "FreeBSD=%H") &&
+	rm -rf svn_project
+	'
Is there a reason why there is no "&&" after "git svn dcommit" ?
If yes, it could be better to make this really clear to the readers and write
(This idea is stolen from Peff)

{ git svn dcommit || true } &&
+
+test_expect_success 'add multiple props' '
+	git svn propset svn:keywords "FreeBSD=%H" foo &&
+	git svn propset fbsd:nokeywords yes foo &&
+	echo hello >> foo &&
+	git commit -m "testing propset" foo &&
+	git svn dcommit
+	svn_cmd co "$svnrepo" svn_project &&
+	(cd svn_project && test "`svn propget svn:keywords foo`" = "FreeBSD=%H") &&
+	(cd svn_project && test "`svn propget fbsd:nokeywords foo`" = "yes") &&
+	(cd svn_project && test "`svn proplist -q foo | wc -l`" -eq 2) &&
+	rm -rf svn_project
+	'
+
Ah, another small thing:
the "wc -l" will not work under Mac OS X.
Please see test_line_count() in t/test-lib-functions.sh

And thanks for improving Git
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help