Mercurial > hg > hg-git
changeset 499:4b64fc97ec7b
tests: unify test-file-removal
author | David M. Carr <david@carrclan.us> |
---|---|
date | Mon, 10 Sep 2012 00:26:58 -0400 |
parents | ab8099aaa447 |
children | deb7f683e0d5 |
files | tests/test-conflict-1.t tests/test-conflict-2.t tests/test-convergedmerge.t tests/test-empty-working-tree.t tests/test-file-removal tests/test-file-removal.out tests/test-file-removal.t tests/test-help.t tests/test-keywords.t |
diffstat | 2 files changed, 148 insertions(+), 150 deletions(-) [+] |
line wrap: on
line diff
deleted file mode 100644 --- a/tests/test-file-removal.out +++ /dev/null @@ -1,77 +0,0 @@ -Initialized empty Git repository in gitrepo/.git/ - -rm 'alpha' -rm 'foo/bar' -% final manifest in git is just beta -beta -Initialized empty Git repository in gitrepo2/ - -importing git objects into hg -1 files updated, 0 files merged, 0 files removed, 0 files unresolved -@ changeset: 4:ea41a3f0ed10 -| tag: default/master -| tag: tip -| user: test <test@example.org> -| date: Mon Jan 01 00:00:14 2007 +0000 -| summary: remove foo/bar -| -o changeset: 3:c84537f94bcc -| user: test <test@example.org> -| date: Mon Jan 01 00:00:13 2007 +0000 -| summary: remove alpha -| -o changeset: 2:e25450e1354f -| user: test <test@example.org> -| date: Mon Jan 01 00:00:12 2007 +0000 -| summary: add foo -| -o changeset: 1:7bcd915dc873 -| user: test <test@example.org> -| date: Mon Jan 01 00:00:11 2007 +0000 -| summary: add beta -| -o changeset: 0:3442585be8a6 - user: test <test@example.org> - date: Mon Jan 01 00:00:10 2007 +0000 - summary: add alpha - - -% make sure alpha is not in this manifest -beta -foo/bar - -% make sure that only beta is in the manifest -beta -clearing out the git cache data -pushing to git://localhost/gitrepo2 -exporting hg objects to git -creating and sending data -commit b991de8952c482a7cd51162674ffff8474862218 -Author: test <test@example.org> -Date: Mon Jan 1 00:00:14 2007 +0000 - - remove foo/bar - -commit b0edaf0adac19392cf2867498b983bc5192b41dd -Author: test <test@example.org> -Date: Mon Jan 1 00:00:13 2007 +0000 - - remove alpha - -commit f2d0d5bfa905e12dee728b509b96cf265bb6ee43 -Author: test <test@example.org> -Date: Mon Jan 1 00:00:12 2007 +0000 - - add foo - -commit 9497a4ee62e16ee641860d7677cdb2589ea15554 -Author: test <test@example.org> -Date: Mon Jan 1 00:00:11 2007 +0000 - - add beta - -commit 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 -Author: test <test@example.org> -Date: Mon Jan 1 00:00:10 2007 +0000 - - add alpha
rename from tests/test-file-removal rename to tests/test-file-removal.t --- a/tests/test-file-removal +++ b/tests/test-file-removal.t @@ -1,85 +1,160 @@ -#!/bin/sh +# Fails for some reason, need to investigate +# $ "$TESTDIR/hghave" git || exit 80 + +bail if the user does not have dulwich + $ python -c 'import dulwich, dulwich.repo' || exit 80 -# 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 -# bail if the user does not have dulwich -python -c 'import dulwich, dulwich.repo' || exit 80 + $ echo "[extensions]" >> $HGRCPATH + $ echo "hggit=$(echo $(dirname $TESTDIR))/hggit" >> $HGRCPATH + $ echo 'hgext.graphlog =' >> $HGRCPATH + $ echo 'hgext.bookmarks =' >> $HGRCPATH -# bail early if the user is already running git-daemon -echo hi | nc localhost 9418 2>/dev/null && exit 80 + $ 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 -echo "[extensions]" >> $HGRCPATH -echo "hggit=$(echo $(dirname $(dirname $0)))/hggit" >> $HGRCPATH -echo 'hgext.graphlog =' >> $HGRCPATH -echo 'hgext.bookmarks =' >> $HGRCPATH + $ 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 "git commit error" + > count=`expr $count + 1` + > } -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 + $ mkdir gitrepo + $ cd gitrepo + $ git init | python -c "import sys; print sys.stdin.read().replace('$(dirname $(pwd))/', '')" + Initialized empty Git repository in gitrepo/.git/ + + $ echo alpha > alpha + $ git add alpha + $ commit -m 'add alpha' + $ echo beta > beta + $ git add beta + $ commit -m 'add beta' + $ mkdir foo + $ echo blah > foo/bar + $ git add foo + $ commit -m 'add foo' + $ git rm alpha + rm 'alpha' + $ commit -m 'remove alpha' + $ git rm foo/bar + rm 'foo/bar' + $ commit -m 'remove foo/bar' + $ echo % final manifest in git is just beta + % final manifest in git is just beta + $ git ls-files + beta -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 "git commit error" - count=`expr $count + 1` -} + $ cd .. + $ mkdir gitrepo2 + $ cd gitrepo2 + $ git init --bare | python -c "import sys; print sys.stdin.read().replace('$(dirname $(pwd))/', '')" + Initialized empty Git repository in gitrepo2/ + + +dulwich does not presently support local git repos, workaround + $ cd .. + $ git daemon --base-path="$(pwd)"\ + > --listen=localhost\ + > --export-all\ + > --pid-file="$DAEMON_PIDS" \ + > --detach --reuseaddr \ + > --enable=receive-pack -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' -echo beta > beta -git add beta -commit -m 'add beta' -mkdir foo -echo blah > foo/bar -git add foo -commit -m 'add foo' -git rm alpha -commit -m 'remove alpha' -git rm foo/bar -commit -m 'remove foo/bar' -echo % final manifest in git is just beta -git ls-files + $ hg clone git://localhost/gitrepo hgrepo | grep -v '^updating' + importing git objects into hg + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ cd hgrepo + $ hg log --graph | grep -v ': *master' + @ changeset: 4:ea41a3f0ed10 + | tag: default/master + | tag: tip + | user: test <test@example.org> + | date: Mon Jan 01 00:00:14 2007 +0000 + | summary: remove foo/bar + | + o changeset: 3:c84537f94bcc + | user: test <test@example.org> + | date: Mon Jan 01 00:00:13 2007 +0000 + | summary: remove alpha + | + o changeset: 2:e25450e1354f + | user: test <test@example.org> + | date: Mon Jan 01 00:00:12 2007 +0000 + | summary: add foo + | + o changeset: 1:7bcd915dc873 + | user: test <test@example.org> + | date: Mon Jan 01 00:00:11 2007 +0000 + | summary: add beta + | + o changeset: 0:3442585be8a6 + user: test <test@example.org> + date: Mon Jan 01 00:00:10 2007 +0000 + summary: add alpha + -cd .. -mkdir gitrepo2 -cd gitrepo2 -git init --bare | python -c "import sys; print sys.stdin.read().replace('$(dirname $(pwd))/', '')" + $ echo + + $ echo % make sure alpha is not in this manifest + % make sure alpha is not in this manifest + $ hg manifest -r 3 + beta + foo/bar -# dulwich does not presently support local git repos, workaround -cd .. -git daemon --base-path="$(pwd)"\ - --listen=localhost\ - --export-all\ - --pid-file="$DAEMON_PIDS" \ - --detach --reuseaddr \ - --enable=receive-pack + $ echo + + $ echo % make sure that only beta is in the manifest + % make sure that only beta is in the manifest + $ hg manifest + beta -hg clone git://localhost/gitrepo hgrepo | grep -v '^updating' -cd hgrepo -hg log --graph | grep -v ': *master' + $ hg gclear + clearing out the git cache data + $ hg push git://localhost/gitrepo2 + pushing to git://localhost/gitrepo2 + exporting hg objects to git + creating and sending data -echo -echo % make sure alpha is not in this manifest -hg manifest -r 3 - -echo -echo % make sure that only beta is in the manifest -hg manifest + $ cd ../gitrepo2 + $ git log --pretty=medium + commit b991de8952c482a7cd51162674ffff8474862218 + Author: test <test@example.org> + Date: Mon Jan 1 00:00:14 2007 +0000 + + remove foo/bar + + commit b0edaf0adac19392cf2867498b983bc5192b41dd + Author: test <test@example.org> + Date: Mon Jan 1 00:00:13 2007 +0000 + + remove alpha + + commit f2d0d5bfa905e12dee728b509b96cf265bb6ee43 + Author: test <test@example.org> + Date: Mon Jan 1 00:00:12 2007 +0000 + + add foo + + commit 9497a4ee62e16ee641860d7677cdb2589ea15554 + Author: test <test@example.org> + Date: Mon Jan 1 00:00:11 2007 +0000 + + add beta + + commit 7eeab2ea75ec1ac0ff3d500b5b6f8a3447dd7c03 + Author: test <test@example.org> + Date: Mon Jan 1 00:00:10 2007 +0000 + + add alpha -hg gclear -hg push git://localhost/gitrepo2 - -cd ../gitrepo2 -git log --pretty=medium - -cd .. + $ cd ..