summaryrefslogtreecommitdiff
path: root/tests/test-convert-baz
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test-convert-baz')
-rwxr-xr-xtests/test-convert-baz79
1 files changed, 79 insertions, 0 deletions
diff --git a/tests/test-convert-baz b/tests/test-convert-baz
new file mode 100755
index 0000000..699cca5
--- /dev/null
+++ b/tests/test-convert-baz
@@ -0,0 +1,79 @@
+#!/bin/sh
+
+"$TESTDIR/hghave" baz || exit 80
+
+baz my-id "mercurial <mercurial@selenic.com>"
+
+echo "[extensions]" >> $HGRCPATH
+echo "convert=" >> $HGRCPATH
+echo 'graphlog =' >> $HGRCPATH
+
+echo % create baz archive
+baz make-archive baz@mercurial--convert hg-test-convert-baz
+
+echo % initialize baz repo
+mkdir baz-repo
+cd baz-repo/
+baz init-tree baz@mercurial--convert/baz--test--0
+baz import
+
+echo % create initial files
+echo 'this is a file' > a
+baz add a
+mkdir src
+baz add src
+cd src
+dd count=1 if=/dev/zero of=b > /dev/null 2> /dev/null
+baz add b
+# HACK: hide GNU tar-1.22 "tar: The --preserve option is deprecated, use --preserve-permissions --preserve-order instead"
+baz commit -s "added a file, src and src/b (binary)" 2>&1 | grep -v '^tar'
+
+echo % create link file and modify a
+ln -s ../a a-link
+baz add a-link
+echo 'this a modification to a' >> ../a
+baz commit -s "added link to a and modify a"
+
+echo % create second link and modify b
+ln -s ../a a-link-2
+baz add a-link-2
+dd count=1 seek=1 if=/dev/zero of=b > /dev/null 2> /dev/null
+baz commit -s "added second link and modify b"
+
+echo % b file to link and a-link-2 to regular file
+rm -f a-link-2
+echo 'this is now a regular file' > a-link-2
+ln -sf ../a b
+baz commit -s "file to link and link to file test"
+
+echo % move a-link-2 file and src directory
+cd ..
+baz mv src/a-link-2 c
+baz mv src test
+baz commit -s "move and rename a-link-2 file and src directory"
+
+echo % move and add the moved file again
+echo e > e
+baz add e
+baz commit -s "add e"
+baz mv e f
+echo ee > e
+baz add e
+baz commit -s "move e and recreate it again"
+cd ..
+
+echo % converting baz repo to Mercurial
+hg convert baz-repo baz-repo-hg
+
+baz register-archive -d baz@mercurial--convert
+
+glog()
+{
+ hg glog --template '{rev} "{desc|firstline}" files: {files}\n' "$@"
+}
+
+echo % show graph log
+glog -R baz-repo-hg
+hg up -q -R baz-repo-hg
+hg -R baz-repo-hg manifest --debug
+hg -R baz-repo-hg log -r 5 -r 7 -C --debug | grep copies