Mercurial > hg-stable
changeset 12490:8ae02203065e
tests: unify test-ssh-clone-r
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Sun, 26 Sep 2010 13:44:49 -0500 |
parents | d039c4285092 |
children | f0c5c334ded1 |
files | tests/test-ssh-clone-r tests/test-ssh-clone-r.out tests/test-ssh-clone-r.t |
diffstat | 3 files changed, 289 insertions(+), 292 deletions(-) [+] |
line wrap: on
line diff
--- a/tests/test-ssh-clone-r Sun Sep 26 13:44:49 2010 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,100 +0,0 @@ -#!/bin/sh - -# This test tries to exercise the ssh functionality with a dummy script - -cat <<EOF > dummyssh -import sys -import os - -os.chdir(os.path.dirname(sys.argv[0])) -if sys.argv[1] != "user@dummy": - sys.exit(-1) - -if not os.path.exists("dummyssh"): - sys.exit(-1) - -os.environ["SSH_CLIENT"] = "127.0.0.1 1 2" - -log = open("dummylog", "ab") -log.write("Got arguments") -for i, arg in enumerate(sys.argv[1:]): - log.write(" %d:%s" % (i+1, arg)) -log.write("\n") -log.close() -r = os.system(sys.argv[2]) -sys.exit(bool(r)) -EOF - -hg init remote -cd remote -echo "# creating 'remote'" -cat >>afile <<EOF -0 -EOF -hg add afile -hg commit -m "0.0" -cat >>afile <<EOF -1 -EOF -hg commit -m "0.1" -cat >>afile <<EOF -2 -EOF -hg commit -m "0.2" -cat >>afile <<EOF -3 -EOF -hg commit -m "0.3" -hg update -C 0 -cat >>afile <<EOF -1 -EOF -hg commit -m "1.1" -cat >>afile <<EOF -2 -EOF -hg commit -m "1.2" -cat >fred <<EOF -a line -EOF -cat >>afile <<EOF -3 -EOF -hg add fred -hg commit -m "1.3" -hg mv afile adifferentfile -hg commit -m "1.3m" -hg update -C 3 -hg mv afile anotherfile -hg commit -m "0.3m" -hg debugindex .hg/store/data/afile.i -hg debugindex .hg/store/data/adifferentfile.i -hg debugindex .hg/store/data/anotherfile.i -hg debugindex .hg/store/data/fred.i -hg debugindex .hg/store/00manifest.i -hg verify -cd .. - -echo "# clone remote via stream" -for i in 0 1 2 3 4 5 6 7 8; do - hg clone -e "python ./dummyssh" --uncompressed -r "$i" ssh://user@dummy/remote test-"$i" 2>&1 - if cd test-"$i"; then - hg verify - cd .. - fi -done -cd test-8 -hg pull ../test-7 -hg verify -cd .. -cd test-1 -hg pull -e "python ../dummyssh" -r 4 ssh://user@dummy/remote 2>&1 -hg verify -hg pull -e "python ../dummyssh" ssh://user@dummy/remote 2>&1 -cd .. -cd test-2 -hg pull -e "python ../dummyssh" -r 5 ssh://user@dummy/remote 2>&1 -hg verify -hg pull -e "python ../dummyssh" ssh://user@dummy/remote 2>&1 -hg verify -cd ..
--- a/tests/test-ssh-clone-r.out Sun Sep 26 13:44:49 2010 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,192 +0,0 @@ -# creating 'remote' -1 files updated, 0 files merged, 0 files removed, 0 files unresolved -created new head -1 files updated, 0 files merged, 2 files removed, 0 files unresolved - rev offset length base linkrev nodeid p1 p2 - 0 0 3 0 0 362fef284ce2 000000000000 000000000000 - 1 3 5 1 1 125144f7e028 362fef284ce2 000000000000 - 2 8 7 2 2 4c982badb186 125144f7e028 000000000000 - 3 15 9 3 3 19b1fc555737 4c982badb186 000000000000 - rev offset length base linkrev nodeid p1 p2 - 0 0 75 0 7 2565f3199a74 000000000000 000000000000 - rev offset length base linkrev nodeid p1 p2 - 0 0 75 0 8 2565f3199a74 000000000000 000000000000 - rev offset length base linkrev nodeid p1 p2 - 0 0 8 0 6 12ab3bcc5ea4 000000000000 000000000000 - rev offset length base linkrev nodeid p1 p2 - 0 0 48 0 0 43eadb1d2d06 000000000000 000000000000 - 1 48 48 1 1 8b89697eba2c 43eadb1d2d06 000000000000 - 2 96 48 2 2 626a32663c2f 8b89697eba2c 000000000000 - 3 144 48 3 3 f54c32f13478 626a32663c2f 000000000000 - 4 192 58 3 6 de68e904d169 626a32663c2f 000000000000 - 5 250 68 3 7 09bb521d218d de68e904d169 000000000000 - 6 318 54 6 8 1fde233dfb0f f54c32f13478 000000000000 -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -4 files, 9 changesets, 7 total revisions -# clone remote via stream -requesting all changes -adding changesets -adding manifests -adding file changes -added 1 changesets with 1 changes to 1 files -updating to branch default -1 files updated, 0 files merged, 0 files removed, 0 files unresolved -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -1 files, 1 changesets, 1 total revisions -requesting all changes -adding changesets -adding manifests -adding file changes -added 2 changesets with 2 changes to 1 files -updating to branch default -1 files updated, 0 files merged, 0 files removed, 0 files unresolved -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -1 files, 2 changesets, 2 total revisions -requesting all changes -adding changesets -adding manifests -adding file changes -added 3 changesets with 3 changes to 1 files -updating to branch default -1 files updated, 0 files merged, 0 files removed, 0 files unresolved -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -1 files, 3 changesets, 3 total revisions -requesting all changes -adding changesets -adding manifests -adding file changes -added 4 changesets with 4 changes to 1 files -updating to branch default -1 files updated, 0 files merged, 0 files removed, 0 files unresolved -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -1 files, 4 changesets, 4 total revisions -requesting all changes -adding changesets -adding manifests -adding file changes -added 2 changesets with 2 changes to 1 files -updating to branch default -1 files updated, 0 files merged, 0 files removed, 0 files unresolved -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -1 files, 2 changesets, 2 total revisions -requesting all changes -adding changesets -adding manifests -adding file changes -added 3 changesets with 3 changes to 1 files -updating to branch default -1 files updated, 0 files merged, 0 files removed, 0 files unresolved -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -1 files, 3 changesets, 3 total revisions -requesting all changes -adding changesets -adding manifests -adding file changes -added 4 changesets with 5 changes to 2 files -updating to branch default -2 files updated, 0 files merged, 0 files removed, 0 files unresolved -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -2 files, 4 changesets, 5 total revisions -requesting all changes -adding changesets -adding manifests -adding file changes -added 5 changesets with 6 changes to 3 files -updating to branch default -2 files updated, 0 files merged, 0 files removed, 0 files unresolved -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -3 files, 5 changesets, 6 total revisions -requesting all changes -adding changesets -adding manifests -adding file changes -added 5 changesets with 5 changes to 2 files -updating to branch default -1 files updated, 0 files merged, 0 files removed, 0 files unresolved -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -2 files, 5 changesets, 5 total revisions -pulling from ../test-7 -searching for changes -adding changesets -adding manifests -adding file changes -added 4 changesets with 2 changes to 3 files (+1 heads) -(run 'hg heads' to see heads, 'hg merge' to merge) -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -4 files, 9 changesets, 7 total revisions -pulling from ssh://user@dummy/remote -searching for changes -adding changesets -adding manifests -adding file changes -added 1 changesets with 0 changes to 1 files (+1 heads) -(run 'hg heads' to see heads, 'hg merge' to merge) -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -1 files, 3 changesets, 2 total revisions -pulling from ssh://user@dummy/remote -searching for changes -adding changesets -adding manifests -adding file changes -added 6 changesets with 5 changes to 4 files -(run 'hg update' to get a working copy) -pulling from ssh://user@dummy/remote -searching for changes -adding changesets -adding manifests -adding file changes -added 2 changesets with 0 changes to 1 files (+1 heads) -(run 'hg heads' to see heads, 'hg merge' to merge) -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -1 files, 5 changesets, 3 total revisions -pulling from ssh://user@dummy/remote -searching for changes -adding changesets -adding manifests -adding file changes -added 4 changesets with 4 changes to 4 files -(run 'hg update' to get a working copy) -checking changesets -checking manifests -crosschecking files in changesets and manifests -checking files -4 files, 9 changesets, 7 total revisions
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-ssh-clone-r.t Sun Sep 26 13:44:49 2010 -0500 @@ -0,0 +1,289 @@ +This test tries to exercise the ssh functionality with a dummy script + + $ cat <<EOF > dummyssh + > import sys + > import os + > + > os.chdir(os.path.dirname(sys.argv[0])) + > if sys.argv[1] != "user@dummy": + > sys.exit(-1) + > + > if not os.path.exists("dummyssh"): + > sys.exit(-1) + > + > os.environ["SSH_CLIENT"] = "127.0.0.1 1 2" + > + > log = open("dummylog", "ab") + > log.write("Got arguments") + > for i, arg in enumerate(sys.argv[1:]): + > log.write(" %d:%s" % (i+1, arg)) + > log.write("\n") + > log.close() + > r = os.system(sys.argv[2]) + > sys.exit(bool(r)) + > EOF + $ hg init remote + $ cd remote + +creating 'remote + + $ cat >>afile <<EOF + > 0 + > EOF + $ hg add afile + $ hg commit -m "0.0" + $ cat >>afile <<EOF + > 1 + > EOF + $ hg commit -m "0.1" + $ cat >>afile <<EOF + > 2 + > EOF + $ hg commit -m "0.2" + $ cat >>afile <<EOF + > 3 + > EOF + $ hg commit -m "0.3" + $ hg update -C 0 + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ cat >>afile <<EOF + > 1 + > EOF + $ hg commit -m "1.1" + created new head + $ cat >>afile <<EOF + > 2 + > EOF + $ hg commit -m "1.2" + $ cat >fred <<EOF + > a line + > EOF + $ cat >>afile <<EOF + > 3 + > EOF + $ hg add fred + $ hg commit -m "1.3" + $ hg mv afile adifferentfile + $ hg commit -m "1.3m" + $ hg update -C 3 + 1 files updated, 0 files merged, 2 files removed, 0 files unresolved + $ hg mv afile anotherfile + $ hg commit -m "0.3m" + $ hg debugindex .hg/store/data/afile.i + rev offset length base linkrev nodeid p1 p2 + 0 0 3 0 0 362fef284ce2 000000000000 000000000000 + 1 3 5 1 1 125144f7e028 362fef284ce2 000000000000 + 2 8 7 2 2 4c982badb186 125144f7e028 000000000000 + 3 15 9 3 3 19b1fc555737 4c982badb186 000000000000 + $ hg debugindex .hg/store/data/adifferentfile.i + rev offset length base linkrev nodeid p1 p2 + 0 0 75 0 7 2565f3199a74 000000000000 000000000000 + $ hg debugindex .hg/store/data/anotherfile.i + rev offset length base linkrev nodeid p1 p2 + 0 0 75 0 8 2565f3199a74 000000000000 000000000000 + $ hg debugindex .hg/store/data/fred.i + rev offset length base linkrev nodeid p1 p2 + 0 0 8 0 6 12ab3bcc5ea4 000000000000 000000000000 + $ hg debugindex .hg/store/00manifest.i + rev offset length base linkrev nodeid p1 p2 + 0 0 48 0 0 43eadb1d2d06 000000000000 000000000000 + 1 48 48 1 1 8b89697eba2c 43eadb1d2d06 000000000000 + 2 96 48 2 2 626a32663c2f 8b89697eba2c 000000000000 + 3 144 48 3 3 f54c32f13478 626a32663c2f 000000000000 + 4 192 58 3 6 de68e904d169 626a32663c2f 000000000000 + 5 250 68 3 7 09bb521d218d de68e904d169 000000000000 + 6 318 54 6 8 1fde233dfb0f f54c32f13478 000000000000 + $ hg verify + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 4 files, 9 changesets, 7 total revisions + $ cd .. + +clone remote via stream + + $ for i in 0 1 2 3 4 5 6 7 8; do + > hg clone -e "python ./dummyssh" --uncompressed -r "$i" ssh://user@dummy/remote test-"$i" + > if cd test-"$i"; then + > hg verify + > cd .. + > fi + > done + requesting all changes + adding changesets + adding manifests + adding file changes + added 1 changesets with 1 changes to 1 files + updating to branch default + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 1 files, 1 changesets, 1 total revisions + requesting all changes + adding changesets + adding manifests + adding file changes + added 2 changesets with 2 changes to 1 files + updating to branch default + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 1 files, 2 changesets, 2 total revisions + requesting all changes + adding changesets + adding manifests + adding file changes + added 3 changesets with 3 changes to 1 files + updating to branch default + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 1 files, 3 changesets, 3 total revisions + requesting all changes + adding changesets + adding manifests + adding file changes + added 4 changesets with 4 changes to 1 files + updating to branch default + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 1 files, 4 changesets, 4 total revisions + requesting all changes + adding changesets + adding manifests + adding file changes + added 2 changesets with 2 changes to 1 files + updating to branch default + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 1 files, 2 changesets, 2 total revisions + requesting all changes + adding changesets + adding manifests + adding file changes + added 3 changesets with 3 changes to 1 files + updating to branch default + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 1 files, 3 changesets, 3 total revisions + requesting all changes + adding changesets + adding manifests + adding file changes + added 4 changesets with 5 changes to 2 files + updating to branch default + 2 files updated, 0 files merged, 0 files removed, 0 files unresolved + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 2 files, 4 changesets, 5 total revisions + requesting all changes + adding changesets + adding manifests + adding file changes + added 5 changesets with 6 changes to 3 files + updating to branch default + 2 files updated, 0 files merged, 0 files removed, 0 files unresolved + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 3 files, 5 changesets, 6 total revisions + requesting all changes + adding changesets + adding manifests + adding file changes + added 5 changesets with 5 changes to 2 files + updating to branch default + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 2 files, 5 changesets, 5 total revisions + $ cd test-8 + $ hg pull ../test-7 + pulling from ../test-7 + searching for changes + adding changesets + adding manifests + adding file changes + added 4 changesets with 2 changes to 3 files (+1 heads) + (run 'hg heads' to see heads, 'hg merge' to merge) + $ hg verify + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 4 files, 9 changesets, 7 total revisions + $ cd .. + $ cd test-1 + $ hg pull -e "python ../dummyssh" -r 4 ssh://user@dummy/remote + pulling from ssh://user@dummy/remote + searching for changes + adding changesets + adding manifests + adding file changes + added 1 changesets with 0 changes to 1 files (+1 heads) + (run 'hg heads' to see heads, 'hg merge' to merge) + $ hg verify + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 1 files, 3 changesets, 2 total revisions + $ hg pull -e "python ../dummyssh" ssh://user@dummy/remote + pulling from ssh://user@dummy/remote + searching for changes + adding changesets + adding manifests + adding file changes + added 6 changesets with 5 changes to 4 files + (run 'hg update' to get a working copy) + $ cd .. + $ cd test-2 + $ hg pull -e "python ../dummyssh" -r 5 ssh://user@dummy/remote + pulling from ssh://user@dummy/remote + searching for changes + adding changesets + adding manifests + adding file changes + added 2 changesets with 0 changes to 1 files (+1 heads) + (run 'hg heads' to see heads, 'hg merge' to merge) + $ hg verify + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 1 files, 5 changesets, 3 total revisions + $ hg pull -e "python ../dummyssh" ssh://user@dummy/remote + pulling from ssh://user@dummy/remote + searching for changes + adding changesets + adding manifests + adding file changes + added 4 changesets with 4 changes to 4 files + (run 'hg update' to get a working copy) + $ hg verify + checking changesets + checking manifests + crosschecking files in changesets and manifests + checking files + 4 files, 9 changesets, 7 total revisions