##// END OF EJS Templates
largefiles: check file in the repo store before checking remotely (issue5257)...
largefiles: check file in the repo store before checking remotely (issue5257) Problem was files to check were gathered in the repository where the verify was launched but verification was done on the remote store. It was observed when user committed in cloned repository and ran verify before pushing - committed files were marked as non existing. This commit fixes this by checking in the remote store only files that are not existing in the repository store where verify was launched. Solution is similiar to fd288d118074

File last commit:

r28861:86db5cb5 default
r29421:ecbbf4d5 default
Show More
test-hgweb-no-path-info.t
146 lines | 3.8 KiB | text/troff | Tads3Lexer
/ tests / test-hgweb-no-path-info.t
Matt Mackall
tests: unify test-hgweb-no-path-info
r12438 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.
Martin Geisler
tests: remove redundant mkdir...
r13956 $ hg init repo
Matt Mackall
tests: unify test-hgweb-no-path-info
r12438 $ cd repo
$ echo foo > bar
$ hg add bar
$ hg commit -m "test"
$ hg tip
changeset: 0:61c9426e69fe
tag: tip
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: test
$ cat > request.py <<EOF
timeless
py3: use absolute_import in test-hgweb-no-path-info.t
r28857 > from __future__ import absolute_import
> import os
> import sys
> from mercurial.hgweb import (
> hgweb,
> hgwebdir,
> )
timeless
pycompat: switch to util.stringio for py3 compat
r28861 > from mercurial import (
> util,
> )
> stringio = util.stringio
Matt Mackall
tests: unify test-hgweb-no-path-info
r12438 >
timeless
pycompat: switch to util.stringio for py3 compat
r28861 > errors = stringio()
> input = stringio()
Matt Mackall
tests: unify test-hgweb-no-path-info
r12438 >
> def startrsp(status, headers):
Adrian Buehlmann
check-code: add 'no tab indent' check for unified tests...
r12743 > print '---- STATUS'
> print status
> print '---- HEADERS'
> print [i for i in headers if i[0] != 'ETag']
> print '---- DATA'
> return output.write
Matt Mackall
tests: unify test-hgweb-no-path-info
r12438 >
> env = {
Adrian Buehlmann
check-code: add 'no tab indent' check for unified tests...
r12743 > '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',
Mads Kiilerich
hgweb: make the test suite use hgweb in a more WSGI compliant way...
r18646 > 'PATH_INFO': '/',
Adrian Buehlmann
check-code: add 'no tab indent' check for unified tests...
r12743 > 'SCRIPT_NAME': '',
> 'SERVER_NAME': '127.0.0.1',
> 'SERVER_PORT': os.environ['HGPORT'],
> 'SERVER_PROTOCOL': 'HTTP/1.0'
Matt Mackall
tests: unify test-hgweb-no-path-info
r12438 > }
>
> def process(app):
> content = app(env, startrsp)
> sys.stdout.write(output.getvalue())
> sys.stdout.write(''.join(content))
Mads Kiilerich
hgweb: make the test suite use hgweb in a more WSGI compliant way...
r18646 > getattr(content, 'close', lambda : None)()
Matt Mackall
tests: unify test-hgweb-no-path-info
r12438 > print '---- ERRORS'
> print errors.getvalue()
>
timeless
pycompat: switch to util.stringio for py3 compat
r28861 > output = stringio()
Matt Mackall
tests: unify test-hgweb-no-path-info
r12438 > env['QUERY_STRING'] = 'style=atom'
> process(hgweb('.', name='repo'))
>
timeless
pycompat: switch to util.stringio for py3 compat
r28861 > output = stringio()
Matt Mackall
tests: unify test-hgweb-no-path-info
r12438 > env['QUERY_STRING'] = 'style=raw'
> process(hgwebdir({'repo': '.'}))
> EOF
$ python request.py
---- STATUS
200 Script output follows
---- HEADERS
[('Content-Type', 'application/atom+xml; charset=ascii')]
---- DATA
<?xml version="1.0" encoding="ascii"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<!-- Changelog -->
Mads Kiilerich
tests: reintroduce ":$HGPORT" in test output...
r12643 <id>http://127.0.0.1:$HGPORT/</id>
<link rel="self" href="http://127.0.0.1:$HGPORT/atom-log"/>
<link rel="alternate" href="http://127.0.0.1:$HGPORT/"/>
Matt Mackall
tests: unify test-hgweb-no-path-info
r12438 <title>repo Changelog</title>
<updated>1970-01-01T00:00:00+00:00</updated>
<entry>
Aaron Jensen
hgweb: adding branch, tags, bookmarks, user, and file list to atom feed entries
r21056 <title>[default] test</title>
Mads Kiilerich
tests: reintroduce ":$HGPORT" in test output...
r12643 <id>http://127.0.0.1:$HGPORT/#changeset-61c9426e69fef294feed5e2bbfc97d39944a5b1c</id>
<link href="http://127.0.0.1:$HGPORT/rev/61c9426e69fe"/>
Matt Mackall
tests: unify test-hgweb-no-path-info
r12438 <author>
<name>test</name>
<email>&#116;&#101;&#115;&#116;</email>
</author>
<updated>1970-01-01T00:00:00+00:00</updated>
<published>1970-01-01T00:00:00+00:00</published>
<content type="xhtml">
Aaron Jensen
hgweb: adding branch, tags, bookmarks, user, and file list to atom feed entries
r21056 <table xmlns="http://www.w3.org/1999/xhtml">
<tr>
<th style="text-align:left;">changeset</th>
<td>61c9426e69fe</td>
Aaron Jensen
hgweb: adding branch names from inbranch template to atom feed
r21117 </tr>
<tr>
<th style="text-align:left;">branch</th>
<td>default</td>
</tr>
<tr>
<th style="text-align:left;">bookmark</th>
Aaron Jensen
hgweb: adding branch, tags, bookmarks, user, and file list to atom feed entries
r21056 <td></td>
</tr>
<tr>
<th style="text-align:left;">tag</th>
<td>tip</td>
</tr>
<tr>
<th style="text-align:left;">user</th>
<td>&#116;&#101;&#115;&#116;</td>
</tr>
<tr>
<th style="text-align:left;vertical-align:top;">description</th>
<td>test</td>
</tr>
<tr>
<th style="text-align:left;vertical-align:top;">files</th>
<td>bar<br /></td>
</tr>
</table>
Matt Mackall
tests: unify test-hgweb-no-path-info
r12438 </content>
</entry>
</feed>
---- ERRORS
---- STATUS
200 Script output follows
---- HEADERS
[('Content-Type', 'text/plain; charset=ascii')]
---- DATA
Mads Kiilerich
hgweb: make the test suite use hgweb in a more WSGI compliant way...
r18646 /repo/
Matt Mackall
tests: unify test-hgweb-no-path-info
r12438
---- ERRORS
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913
$ cd ..