diff --git a/tests/test-http-branchmap.out b/tests/test-http-branchmap.out deleted file mode 100644 --- a/tests/test-http-branchmap.out +++ /dev/null @@ -1,42 +0,0 @@ -marked working directory as branch æ -adding foo -listening at http://localhost/ (bound to 127.0.0.1) -requesting all changes -adding changesets -adding manifests -adding file changes -added 1 changesets with 1 changes to 1 files -updating to branch æ -1 files updated, 0 files merged, 0 files removed, 0 files unresolved -changeset: 0:867c11ce77b8 -branch: æ -tag: tip -user: test -date: Thu Jan 01 00:00:00 1970 +0000 -summary: foo - -pushing to http://localhost:PORT -searching for changes -remote: adding changesets -remote: adding manifests -remote: adding file changes -remote: added 1 changesets with 1 changes to 1 files -changeset: 1:58e7c90d67cb -branch: æ -tag: tip -user: test -date: Thu Jan 01 00:00:00 1970 +0000 -summary: bar - -changeset: 0:867c11ce77b8 -branch: æ -user: test -date: Thu Jan 01 00:00:00 1970 +0000 -summary: foo - -pushing to ssh://dummy/ -searching for changes -remote: adding changesets -remote: adding manifests -remote: adding file changes -remote: added 1 changesets with 1 changes to 1 files diff --git a/tests/test-http-branchmap b/tests/test-http-branchmap.t old mode 100755 new mode 100644 rename from tests/test-http-branchmap rename to tests/test-http-branchmap.t --- a/tests/test-http-branchmap +++ b/tests/test-http-branchmap.t @@ -1,58 +1,92 @@ -#!/bin/sh - -hgserve() -{ - hg serve -a localhost -p $HGPORT1 -d --pid-file=hg.pid -E errors.log -v $@ \ - | sed -e 's/:[0-9][0-9]*//g' -e 's/http:\/\/[^/]*\//http:\/\/localhost\//' - cat hg.pid >> "$DAEMON_PIDS" -} - -hg init a -hg --encoding utf-8 -R a branch æ -echo foo > a/foo -hg -R a ci -Am foo - -hgserve -R a --config web.push_ssl=False --config web.allow_push=* --encoding latin1 -hg --encoding utf-8 clone http://localhost:$HGPORT1 b -hg --encoding utf-8 -R b log -echo bar >> b/foo -hg -R b ci -m bar -hg --encoding utf-8 -R b push | sed "s/$HGPORT1/PORT/" -hg -R a --encoding utf-8 log - -kill `cat hg.pid` - - -# verify 7e7d56fe4833 (encoding fallback in branchmap to maintain compatibility with 1.3.x) -cat < oldhg -import sys -from mercurial import ui, hg, commands - -class StdoutWrapper(object): - def __init__(self, stdout): - self._file = stdout + $ hgserve() { + > hg serve -a localhost -p $HGPORT1 -d --pid-file=hg.pid -E errors.log -v $@ + > cat hg.pid >> "$DAEMON_PIDS" + > } + $ hg init a + $ hg --encoding utf-8 -R a branch æ + marked working directory as branch æ + $ echo foo > a/foo + $ hg -R a ci -Am foo + adding foo + $ hgserve -R a --config web.push_ssl=False --config web.allow_push=* --encoding latin1 + listening at http://localhost*/ (bound to 127.0.0.1:*) (glob) + $ hg --encoding utf-8 clone http://localhost:$HGPORT1 b + requesting all changes + adding changesets + adding manifests + adding file changes + added 1 changesets with 1 changes to 1 files + updating to branch æ + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ hg --encoding utf-8 -R b log + changeset: 0:867c11ce77b8 + branch: æ + tag: tip + user: test + date: Thu Jan 01 00:00:00 1970 +0000 + summary: foo + + $ echo bar >> b/foo + $ hg -R b ci -m bar + $ hg --encoding utf-8 -R b push + pushing to http://localhost:* (glob) + searching for changes + remote: adding changesets + remote: adding manifests + remote: adding file changes + remote: added 1 changesets with 1 changes to 1 files + $ hg -R a --encoding utf-8 log + changeset: 1:58e7c90d67cb + branch: æ + tag: tip + user: test + date: Thu Jan 01 00:00:00 1970 +0000 + summary: bar + + changeset: 0:867c11ce77b8 + branch: æ + user: test + date: Thu Jan 01 00:00:00 1970 +0000 + summary: foo + + $ kill `cat hg.pid` - def write(self, data): - if data == '47\n': - # latin1 encoding is one %xx (3 bytes) shorter - data = '44\n' - elif data.startswith('%C3%A6 '): - # translate to latin1 encoding - data = '%%E6 %s' % data[7:] - self._file.write(data) - - def __getattr__(self, name): - return getattr(self._file, name) +verify 7e7d56fe4833 (encoding fallback in branchmap to maintain compatibility with 1.3.x) -sys.stdout = StdoutWrapper(sys.stdout) -sys.stderr = StdoutWrapper(sys.stderr) - -myui = ui.ui() -repo = hg.repository(myui, 'a') -commands.serve(myui, repo, stdio=True) -EOF - -echo baz >> b/foo -hg -R b ci -m baz -hg push -R b -e 'python oldhg' ssh://dummy/ --encoding latin1 + $ cat < oldhg + > import sys + > from mercurial import ui, hg, commands + > + > class StdoutWrapper(object): + > def __init__(self, stdout): + > self._file = stdout + > + > def write(self, data): + > if data == '47\n': + > # latin1 encoding is one %xx (3 bytes) shorter + > data = '44\n' + > elif data.startswith('%C3%A6 '): + > # translate to latin1 encoding + > data = '%%E6 %s' % data[7:] + > self._file.write(data) + > + > def __getattr__(self, name): + > return getattr(self._file, name) + > + > sys.stdout = StdoutWrapper(sys.stdout) + > sys.stderr = StdoutWrapper(sys.stderr) + > + > myui = ui.ui() + > repo = hg.repository(myui, 'a') + > commands.serve(myui, repo, stdio=True) + > EOF + $ echo baz >> b/foo + $ hg -R b ci -m baz + $ hg push -R b -e 'python oldhg' ssh://dummy/ --encoding latin1 + pushing to ssh://dummy/ + searching for changes + remote: adding changesets + remote: adding manifests + remote: adding file changes + remote: added 1 changesets with 1 changes to 1 files