--- a/tests/test-convert-hg-svn Sun Sep 26 16:48:57 2010 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,79 +0,0 @@
-#!/bin/sh
-
-"$TESTDIR/hghave" svn svn-bindings || exit 80
-
-fix_path()
-{
- tr '\\' /
-}
-
-echo "[extensions]" >> $HGRCPATH
-echo "convert = " >> $HGRCPATH
-echo "mq = " >> $HGRCPATH
-
-svnpath=`pwd | fix_path`/svn-repo
-svnadmin create "$svnpath"
-
-cat > "$svnpath"/hooks/pre-revprop-change <<'EOF'
-#!/bin/sh
-
-REPOS="$1"
-REV="$2"
-USER="$3"
-PROPNAME="$4"
-ACTION="$5"
-
-if [ "$ACTION" = "M" -a "$PROPNAME" = "svn:log" ]; then exit 0; fi
-if [ "$ACTION" = "A" -a "$PROPNAME" = "hg:convert-branch" ]; then exit 0; fi
-if [ "$ACTION" = "A" -a "$PROPNAME" = "hg:convert-rev" ]; then exit 0; fi
-
-echo "Changing prohibited revision property" >&2
-exit 1
-EOF
-chmod +x "$svnpath"/hooks/pre-revprop-change
-
-# SVN wants all paths to start with a slash. Unfortunately,
-# Windows ones don't. Handle that.
-svnurl="$svnpath"
-expr "$svnurl" : "\/" > /dev/null
-if [ $? -ne 0 ]; then
- svnurl="/$svnurl"
-fi
-svnurl="file://$svnurl"
-svn co "$svnurl" "$svnpath"-wc
-
-cd "$svnpath"-wc
-echo a > a
-svn add a
-svn ci -m'added a' a
-
-cd ..
-
-echo % initial roundtrip
-hg convert -s svn -d hg "$svnpath"-wc "$svnpath"-hg | grep -v initializing
-hg convert -s hg -d svn "$svnpath"-hg "$svnpath"-wc
-
-echo % second roundtrip should do nothing
-hg convert -s svn -d hg "$svnpath"-wc "$svnpath"-hg
-hg convert -s hg -d svn "$svnpath"-hg "$svnpath"-wc
-
-echo % new hg rev
-
-hg clone "$svnpath"-hg "$svnpath"-work
-cd "$svnpath"-work
-echo b > b
-hg add b
-hg ci -mb
-echo '% adding an empty revision'
-hg qnew -m emtpy empty
-hg qfinish -a
-cd ..
-
-echo % echo hg to svn
-hg --cwd "$svnpath"-hg pull -q "$svnpath"-work
-hg convert -s hg -d svn "$svnpath"-hg "$svnpath"-wc
-
-echo % svn back to hg should do nothing
-hg convert -s svn -d hg "$svnpath"-wc "$svnpath"-hg
-echo % hg back to svn should do nothing
-hg convert -s hg -d svn "$svnpath"-hg "$svnpath"-wc
--- a/tests/test-convert-hg-svn.out Sun Sep 26 16:48:57 2010 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,38 +0,0 @@
-Checked out revision 0.
-A a
-Adding a
-Transmitting file data .
-Committed revision 1.
-% initial roundtrip
-scanning source...
-sorting...
-converting...
-0 added a
-scanning source...
-sorting...
-converting...
-% second roundtrip should do nothing
-scanning source...
-sorting...
-converting...
-scanning source...
-sorting...
-converting...
-% new hg rev
-updating to branch default
-1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-% adding an empty revision
-% echo hg to svn
-scanning source...
-sorting...
-converting...
-1 b
-0 emtpy
-% svn back to hg should do nothing
-scanning source...
-sorting...
-converting...
-% hg back to svn should do nothing
-scanning source...
-sorting...
-converting...
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-convert-hg-svn.t Sun Sep 26 16:53:06 2010 -0500
@@ -0,0 +1,108 @@
+
+ $ "$TESTDIR/hghave" svn svn-bindings || exit 80
+ $ fix_path()
+ > {
+ > tr '\\' /
+ > }
+ $ echo "[extensions]" >> $HGRCPATH
+ $ echo "convert = " >> $HGRCPATH
+ $ echo "mq = " >> $HGRCPATH
+ $ svnpath=`pwd | fix_path`/svn-repo
+ $ svnadmin create "$svnpath"
+ $ cat > "$svnpath"/hooks/pre-revprop-change <<EOF
+ > #!/bin/sh
+ >
+ > REPOS="$1"
+ > REV="$2"
+ > USER="$3"
+ > PROPNAME="$4"
+ > ACTION="$5"
+ >
+ > if [ "$ACTION" = "M" -a "$PROPNAME" = "svn:log" ]; then exit 0; fi
+ > if [ "$ACTION" = "A" -a "$PROPNAME" = "hg:convert-branch" ]; then exit 0; fi
+ > if [ "$ACTION" = "A" -a "$PROPNAME" = "hg:convert-rev" ]; then exit 0; fi
+ >
+ > echo "Changing prohibited revision property" >&2
+ > exit 1
+ > EOF
+ $ chmod +x "$svnpath"/hooks/pre-revprop-change
+ $
+ $ # SVN wants all paths to start with a slash. Unfortunately,
+ $ # Windows ones don't. Handle that.
+ $ svnurl="$svnpath"
+ $ expr "$svnurl" : "\/" > /dev/null || svnurl="/$svnurl"
+ $ svnurl="file://$svnurl"
+ $ svn co "$svnurl" "$svnpath"-wc
+ Checked out revision 0.
+ $ cd "$svnpath"-wc
+ $ echo a > a
+ $ svn add a
+ A a
+ $ svn ci -m'added a' a
+ Adding a
+ Transmitting file data .
+ Committed revision 1.
+ $ cd ..
+
+initial roundtrip
+
+ $ hg convert -s svn -d hg "$svnpath"-wc "$svnpath"-hg | grep -v initializing
+ scanning source...
+ sorting...
+ converting...
+ 0 added a
+ $ hg convert -s hg -d svn "$svnpath"-hg "$svnpath"-wc
+ scanning source...
+ sorting...
+ converting...
+
+second roundtrip should do nothing
+
+ $ hg convert -s svn -d hg "$svnpath"-wc "$svnpath"-hg
+ scanning source...
+ sorting...
+ converting...
+ $ hg convert -s hg -d svn "$svnpath"-hg "$svnpath"-wc
+ scanning source...
+ sorting...
+ converting...
+
+new hg rev
+
+ $ hg clone "$svnpath"-hg "$svnpath"-work
+ updating to branch default
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ cd "$svnpath"-work
+ $ echo b > b
+ $ hg add b
+ $ hg ci -mb
+
+adding an empty revision
+
+ $ hg qnew -m emtpy empty
+ $ hg qfinish -a
+ $ cd ..
+
+echo hg to svn
+
+ $ hg --cwd "$svnpath"-hg pull -q "$svnpath"-work
+ $ hg convert -s hg -d svn "$svnpath"-hg "$svnpath"-wc
+ scanning source...
+ sorting...
+ converting...
+ 1 b
+ 0 emtpy
+
+svn back to hg should do nothing
+
+ $ hg convert -s svn -d hg "$svnpath"-wc "$svnpath"-hg
+ scanning source...
+ sorting...
+ converting...
+
+hg back to svn should do nothing
+
+ $ hg convert -s hg -d svn "$svnpath"-hg "$svnpath"-wc
+ scanning source...
+ sorting...
+ converting...