# HG changeset patch # User Abderrahim Kitouni # Date 1246960046 -3600 # Node ID f40d18ff59ebc640babcf9817c060cc2e3373edc # Parent 9a27c618d0edd2412332d26aeeedbf7997322c74 add test for named branches diff --git a/tests/test-git-push b/tests/test-hg-author rename from tests/test-git-push rename to tests/test-hg-author diff --git a/tests/test-git-push.out b/tests/test-hg-author.out rename from tests/test-git-push.out rename to tests/test-hg-author.out diff --git a/tests/test-hg-branch b/tests/test-hg-branch new file mode 100755 --- /dev/null +++ b/tests/test-hg-branch @@ -0,0 +1,72 @@ +#!/bin/sh + +# Fails for some reason, need to investigate +# "$TESTDIR/hghave" git || exit 80 + +# bail early if the user is already running git-daemon +echo hi | nc localhost 9418 2>/dev/null && exit 80 + +echo "[extensions]" >> $HGRCPATH +echo "hggit=$(echo $(dirname $(dirname $0)))" >> $HGRCPATH +echo 'hgext.graphlog =' >> $HGRCPATH +echo 'hgext.bookmarks =' >> $HGRCPATH + +GIT_AUTHOR_NAME='test'; export GIT_AUTHOR_NAME +GIT_AUTHOR_EMAIL='test@example.org'; export GIT_AUTHOR_EMAIL +GIT_AUTHOR_DATE="2007-01-01 00:00:00 +0000"; export GIT_AUTHOR_DATE +GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME"; export GIT_COMMITTER_NAME +GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL"; export GIT_COMMITTER_EMAIL +GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"; export GIT_COMMITTER_DATE + +count=10 +commit() +{ + GIT_AUTHOR_DATE="2007-01-01 00:00:$count +0000" + GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE" + git commit "$@" >/dev/null 2>/dev/null || echo "hg commit error" + count=`expr $count + 1` +} +hgcommit() +{ + HGDATE="2007-01-01 00:00:$count +0000" + hg commit -d "$HGDATE" "$@" >/dev/null 2>/dev/null || echo "hg commit error" + count=`expr $count + 1` +} + +mkdir gitrepo +cd gitrepo +git init | python -c "import sys; print sys.stdin.read().replace('$(dirname $(pwd))/', '')" + +echo alpha > alpha +git add alpha +commit -m "add alpha" + +# dulwich does not presently support local git repos, workaround +cd .. +git daemon --base-path="$(pwd)"\ + --listen=localhost\ + --export-all\ + --pid-file=gitdaemon.pid \ + --detach --reuseaddr \ + --enable=receive-pack + +hg clone git://localhost/gitrepo hgrepo + +cd hgrepo +hg mv alpha beta +hgcommit -m 'rename alpha to beta' +hg push + +hg branch gamma +hgcommit -m 'started branch gamma' +hg push + +hg log --graph + +cd .. +hg clone git://localhost/gitrepo hgrepo2 +cd hgrepo2 +hg log --graph + +cd .. +kill `cat gitdaemon.pid` diff --git a/tests/test-hg-branch.out b/tests/test-hg-branch.out new file mode 100644 --- /dev/null +++ b/tests/test-hg-branch.out @@ -0,0 +1,74 @@ +Initialized empty Git repository in gitrepo/.git/ + +fetching from : git://localhost/gitrepo +importing Hg objects into Git +Counting objects: 3, done. +Total 3 (delta 0), reused 0 (delta 0) +importing Git objects into Hg +at: 0/1 +updating working directory +1 files updated, 0 files merged, 0 files removed, 0 files unresolved +pushing to git://localhost/gitrepo +fetching from : git://localhost/gitrepo +importing Hg objects into Git +at: 0/1 +importing Git objects into Hg +pushing to : git://localhost/gitrepo +creating and sending data + default::refs/heads/master => GIT:05c2bcbe +marked working directory as branch gamma +pushing to git://localhost/gitrepo +fetching from : git://localhost/gitrepo +importing Hg objects into Git +at: 0/1 +importing Git objects into Hg +pushing to : git://localhost/gitrepo +creating and sending data + default::refs/heads/master => GIT:296802ef +@ changeset: 2:698615204564 +| branch: gamma +| tag: master +| tag: default/master +| tag: tip +| user: test +| date: Mon Jan 01 00:00:12 2007 +0000 +| summary: started branch gamma +| +o changeset: 1:71414c4e3c6f +| user: test +| date: Mon Jan 01 00:00:11 2007 +0000 +| summary: rename alpha to beta +| +o changeset: 0:3442585be8a6 + user: test + date: Mon Jan 01 00:00:10 2007 +0000 + summary: add alpha + +fetching from : git://localhost/gitrepo +importing Hg objects into Git +Counting objects: 6, done. +Compressing objects: 33% (1/3) Compressing objects: 66% (2/3) Compressing objects: 100% (3/3) Compressing objects: 100% (3/3), done. +Total 6 (delta 0), reused 0 (delta 0) +importing Git objects into Hg +at: 0/3 +updating working directory +1 files updated, 0 files merged, 0 files removed, 0 files unresolved +o changeset: 2:698615204564 +| branch: gamma +| tag: master +| tag: default/master +| tag: tip +| user: test +| date: Mon Jan 01 00:00:12 2007 +0000 +| summary: started branch gamma +| +@ changeset: 1:71414c4e3c6f +| user: test +| date: Mon Jan 01 00:00:11 2007 +0000 +| summary: rename alpha to beta +| +o changeset: 0:3442585be8a6 + user: test + date: Mon Jan 01 00:00:10 2007 +0000 + summary: add alpha +