Mercurial > hg
view tests/test-hgweb-no-request-uri @ 9815:49efeed49c94
rebase: make sure the newancestor is used during the whole update
(issue1561)
Before this change, newancestor was used only once as a replacement
for ancestor.ancestor, but merge.update calls ancestor.ancestor
several times, so it ends up with the "wrong" ancestor (the real
ancestor, but we want the parent of the rebased changeset for all but
the first rebased changeset).
Added a new test case for this: test-rebase-newancestor.
Also, in one scenario in test-rebase-collapse, there was a spurious
conflict caused by the same issue, so that test case was fixed by
removing the now unneeded conflict resolution and the output was
adapted accordingly.
author | Christian Boos <cboos@bct-technology.com> |
---|---|
date | Mon, 09 Nov 2009 20:15:49 +0100 |
parents | 6c82beaaa11a |
children | dfb11f9922c1 |
line wrap: on
line source
#!/bin/sh # This tests if hgweb and hgwebdir still work if the REQUEST_URI variable is # no longer passed with the request. Instead, SCRIPT_NAME and PATH_INFO # should be used from d74fc8dec2b4 onward to route the request. mkdir repo cd repo hg init echo foo > bar hg add bar hg commit -m "test" -u "Testing" hg tip cat > request.py <<EOF from mercurial.hgweb import hgweb, hgwebdir from StringIO import StringIO import os, sys errors = StringIO() input = StringIO() def startrsp(headers, data): print '---- HEADERS' print headers print '---- DATA' print data return output.write env = { 'wsgi.version': (1, 0), 'wsgi.url_scheme': 'http', 'wsgi.errors': errors, 'wsgi.input': input, 'wsgi.multithread': False, 'wsgi.multiprocess': False, 'wsgi.run_once': False, 'REQUEST_METHOD': 'GET', 'SCRIPT_NAME': '', 'SERVER_NAME': '127.0.0.1', 'SERVER_PORT': os.environ['HGPORT'], 'SERVER_PROTOCOL': 'HTTP/1.0' } def process(app): content = app(env, startrsp) sys.stdout.write(output.getvalue()) sys.stdout.write(''.join(content)) print '---- ERRORS' print errors.getvalue() output = StringIO() env['PATH_INFO'] = '/' env['QUERY_STRING'] = 'style=atom' process(hgweb('.', name = 'repo')) output = StringIO() env['PATH_INFO'] = '/file/tip/' env['QUERY_STRING'] = 'style=raw' process(hgweb('.', name = 'repo')) output = StringIO() env['PATH_INFO'] = '/' env['QUERY_STRING'] = 'style=raw' process(hgwebdir({'repo': '.'})) output = StringIO() env['PATH_INFO'] = '/repo/file/tip/' env['QUERY_STRING'] = 'style=raw' process(hgwebdir({'repo': '.'})) EOF python request.py | sed "s/http:\/\/127\.0\.0\.1:[0-9]*\//http:\/\/127.0.0.1\//"