Mercurial > public > mercurial-scm > hg
diff tests/test-wsgirequest.py @ 43076:2372284d9457
formatting: blacken the codebase
This is using my patch to black
(https://github.com/psf/black/pull/826) so we don't un-wrap collection
literals.
Done with:
hg files 'set:**.py - mercurial/thirdparty/** - "contrib/python-zstandard/**"' | xargs black -S
# skip-blame mass-reformatting only
# no-check-commit reformats foo_bar functions
Differential Revision: https://phab.mercurial-scm.org/D6971
author | Augie Fackler <augie@google.com> |
---|---|
date | Sun, 06 Oct 2019 09:45:02 -0400 |
parents | e0598133ac68 |
children | 9f70512ae2cf |
line wrap: on
line diff
--- a/tests/test-wsgirequest.py Sat Oct 05 10:29:34 2019 -0400 +++ b/tests/test-wsgirequest.py Sun Oct 06 09:45:02 2019 -0400 @@ -2,12 +2,8 @@ import unittest -from mercurial.hgweb import ( - request as requestmod, -) -from mercurial import ( - error, -) +from mercurial.hgweb import request as requestmod +from mercurial import error DEFAULT_ENV = { r'REQUEST_METHOD': r'GET', @@ -23,12 +19,15 @@ r'wsgi.run_once': False, } + def parse(env, reponame=None, altbaseurl=None, extra=None): env = dict(env) env.update(extra or {}) - return requestmod.parserequestfromenv(env, reponame=reponame, - altbaseurl=altbaseurl) + return requestmod.parserequestfromenv( + env, reponame=reponame, altbaseurl=altbaseurl + ) + class ParseRequestTests(unittest.TestCase): def testdefault(self): @@ -50,19 +49,17 @@ self.assertEqual(len(r.headers), 0) def testcustomport(self): - r = parse(DEFAULT_ENV, extra={ - r'SERVER_PORT': r'8000', - }) + r = parse(DEFAULT_ENV, extra={r'SERVER_PORT': r'8000',}) self.assertEqual(r.url, b'http://testserver:8000') self.assertEqual(r.baseurl, b'http://testserver:8000') self.assertEqual(r.advertisedurl, b'http://testserver:8000') self.assertEqual(r.advertisedbaseurl, b'http://testserver:8000') - r = parse(DEFAULT_ENV, extra={ - r'SERVER_PORT': r'4000', - r'wsgi.url_scheme': r'https', - }) + r = parse( + DEFAULT_ENV, + extra={r'SERVER_PORT': r'4000', r'wsgi.url_scheme': r'https',}, + ) self.assertEqual(r.url, b'https://testserver:4000') self.assertEqual(r.baseurl, b'https://testserver:4000') @@ -70,9 +67,7 @@ self.assertEqual(r.advertisedbaseurl, b'https://testserver:4000') def testhttphost(self): - r = parse(DEFAULT_ENV, extra={ - r'HTTP_HOST': r'altserver', - }) + r = parse(DEFAULT_ENV, extra={r'HTTP_HOST': r'altserver',}) self.assertEqual(r.url, b'http://altserver') self.assertEqual(r.baseurl, b'http://altserver') @@ -80,9 +75,7 @@ self.assertEqual(r.advertisedbaseurl, b'http://testserver') def testscriptname(self): - r = parse(DEFAULT_ENV, extra={ - r'SCRIPT_NAME': r'', - }) + r = parse(DEFAULT_ENV, extra={r'SCRIPT_NAME': r'',}) self.assertEqual(r.url, b'http://testserver') self.assertEqual(r.baseurl, b'http://testserver') @@ -92,9 +85,7 @@ self.assertEqual(r.dispatchparts, []) self.assertIsNone(r.dispatchpath) - r = parse(DEFAULT_ENV, extra={ - r'SCRIPT_NAME': r'/script', - }) + r = parse(DEFAULT_ENV, extra={r'SCRIPT_NAME': r'/script',}) self.assertEqual(r.url, b'http://testserver/script') self.assertEqual(r.baseurl, b'http://testserver') @@ -104,9 +95,7 @@ self.assertEqual(r.dispatchparts, []) self.assertIsNone(r.dispatchpath) - r = parse(DEFAULT_ENV, extra={ - r'SCRIPT_NAME': r'/multiple words', - }) + r = parse(DEFAULT_ENV, extra={r'SCRIPT_NAME': r'/multiple words',}) self.assertEqual(r.url, b'http://testserver/multiple%20words') self.assertEqual(r.baseurl, b'http://testserver') @@ -117,9 +106,7 @@ self.assertIsNone(r.dispatchpath) def testpathinfo(self): - r = parse(DEFAULT_ENV, extra={ - r'PATH_INFO': r'', - }) + r = parse(DEFAULT_ENV, extra={r'PATH_INFO': r'',}) self.assertEqual(r.url, b'http://testserver') self.assertEqual(r.baseurl, b'http://testserver') @@ -129,9 +116,7 @@ self.assertEqual(r.dispatchparts, []) self.assertEqual(r.dispatchpath, b'') - r = parse(DEFAULT_ENV, extra={ - r'PATH_INFO': r'/pathinfo', - }) + r = parse(DEFAULT_ENV, extra={r'PATH_INFO': r'/pathinfo',}) self.assertEqual(r.url, b'http://testserver/pathinfo') self.assertEqual(r.baseurl, b'http://testserver') @@ -141,9 +126,7 @@ self.assertEqual(r.dispatchparts, [b'pathinfo']) self.assertEqual(r.dispatchpath, b'pathinfo') - r = parse(DEFAULT_ENV, extra={ - r'PATH_INFO': r'/one/two/', - }) + r = parse(DEFAULT_ENV, extra={r'PATH_INFO': r'/one/two/',}) self.assertEqual(r.url, b'http://testserver/one/two/') self.assertEqual(r.baseurl, b'http://testserver') @@ -154,10 +137,10 @@ self.assertEqual(r.dispatchpath, b'one/two') def testscriptandpathinfo(self): - r = parse(DEFAULT_ENV, extra={ - r'SCRIPT_NAME': r'/script', - r'PATH_INFO': r'/pathinfo', - }) + r = parse( + DEFAULT_ENV, + extra={r'SCRIPT_NAME': r'/script', r'PATH_INFO': r'/pathinfo',}, + ) self.assertEqual(r.url, b'http://testserver/script/pathinfo') self.assertEqual(r.baseurl, b'http://testserver') @@ -167,26 +150,34 @@ self.assertEqual(r.dispatchparts, [b'pathinfo']) self.assertEqual(r.dispatchpath, b'pathinfo') - r = parse(DEFAULT_ENV, extra={ - r'SCRIPT_NAME': r'/script1/script2', - r'PATH_INFO': r'/path1/path2', - }) + r = parse( + DEFAULT_ENV, + extra={ + r'SCRIPT_NAME': r'/script1/script2', + r'PATH_INFO': r'/path1/path2', + }, + ) - self.assertEqual(r.url, - b'http://testserver/script1/script2/path1/path2') + self.assertEqual( + r.url, b'http://testserver/script1/script2/path1/path2' + ) self.assertEqual(r.baseurl, b'http://testserver') - self.assertEqual(r.advertisedurl, - b'http://testserver/script1/script2/path1/path2') + self.assertEqual( + r.advertisedurl, b'http://testserver/script1/script2/path1/path2' + ) self.assertEqual(r.advertisedbaseurl, b'http://testserver') self.assertEqual(r.apppath, b'/script1/script2') self.assertEqual(r.dispatchparts, [b'path1', b'path2']) self.assertEqual(r.dispatchpath, b'path1/path2') - r = parse(DEFAULT_ENV, extra={ - r'HTTP_HOST': r'hostserver', - r'SCRIPT_NAME': r'/script', - r'PATH_INFO': r'/pathinfo', - }) + r = parse( + DEFAULT_ENV, + extra={ + r'HTTP_HOST': r'hostserver', + r'SCRIPT_NAME': r'/script', + r'PATH_INFO': r'/pathinfo', + }, + ) self.assertEqual(r.url, b'http://hostserver/script/pathinfo') self.assertEqual(r.baseurl, b'http://hostserver') @@ -199,32 +190,41 @@ if not getattr(unittest.TestCase, 'assertRaisesRegex', False): # Python 3.7 deprecates the regex*p* version, but 2.7 lacks # the regex version. - assertRaisesRegex = (# camelcase-required - unittest.TestCase.assertRaisesRegexp) + assertRaisesRegex = ( # camelcase-required + unittest.TestCase.assertRaisesRegexp + ) def testreponame(self): """repository path components get stripped from URL.""" - with self.assertRaisesRegex(error.ProgrammingError, - 'reponame requires PATH_INFO'): + with self.assertRaisesRegex( + error.ProgrammingError, 'reponame requires PATH_INFO' + ): parse(DEFAULT_ENV, reponame=b'repo') - with self.assertRaisesRegex(error.ProgrammingError, - 'PATH_INFO does not begin with repo ' - 'name'): - parse(DEFAULT_ENV, reponame=b'repo', extra={ - r'PATH_INFO': r'/pathinfo', - }) + with self.assertRaisesRegex( + error.ProgrammingError, 'PATH_INFO does not begin with repo ' 'name' + ): + parse( + DEFAULT_ENV, + reponame=b'repo', + extra={r'PATH_INFO': r'/pathinfo',}, + ) - with self.assertRaisesRegex(error.ProgrammingError, - 'reponame prefix of PATH_INFO'): - parse(DEFAULT_ENV, reponame=b'repo', extra={ - r'PATH_INFO': r'/repoextra/path', - }) + with self.assertRaisesRegex( + error.ProgrammingError, 'reponame prefix of PATH_INFO' + ): + parse( + DEFAULT_ENV, + reponame=b'repo', + extra={r'PATH_INFO': r'/repoextra/path',}, + ) - r = parse(DEFAULT_ENV, reponame=b'repo', extra={ - r'PATH_INFO': r'/repo/path1/path2', - }) + r = parse( + DEFAULT_ENV, + reponame=b'repo', + extra={r'PATH_INFO': r'/repo/path1/path2',}, + ) self.assertEqual(r.url, b'http://testserver/repo/path1/path2') self.assertEqual(r.baseurl, b'http://testserver') @@ -235,14 +235,17 @@ self.assertEqual(r.dispatchpath, b'path1/path2') self.assertEqual(r.reponame, b'repo') - r = parse(DEFAULT_ENV, reponame=b'prefix/repo', extra={ - r'PATH_INFO': r'/prefix/repo/path1/path2', - }) + r = parse( + DEFAULT_ENV, + reponame=b'prefix/repo', + extra={r'PATH_INFO': r'/prefix/repo/path1/path2',}, + ) self.assertEqual(r.url, b'http://testserver/prefix/repo/path1/path2') self.assertEqual(r.baseurl, b'http://testserver') - self.assertEqual(r.advertisedurl, - b'http://testserver/prefix/repo/path1/path2') + self.assertEqual( + r.advertisedurl, b'http://testserver/prefix/repo/path1/path2' + ) self.assertEqual(r.advertisedbaseurl, b'http://testserver') self.assertEqual(r.apppath, b'/prefix/repo') self.assertEqual(r.dispatchparts, [b'path1', b'path2']) @@ -301,9 +304,11 @@ self.assertIsNone(r.reponame) # With only PATH_INFO defined. - r = parse(DEFAULT_ENV, altbaseurl=b'http://altserver', extra={ - r'PATH_INFO': r'/path1/path2', - }) + r = parse( + DEFAULT_ENV, + altbaseurl=b'http://altserver', + extra={r'PATH_INFO': r'/path1/path2',}, + ) self.assertEqual(r.url, b'http://testserver/path1/path2') self.assertEqual(r.baseurl, b'http://testserver') self.assertEqual(r.advertisedurl, b'http://altserver/path1/path2') @@ -339,13 +344,16 @@ self.assertIsNone(r.reponame) # PATH_INFO + path on alt URL. - r = parse(DEFAULT_ENV, altbaseurl=b'http://altserver/altpath', extra={ - r'PATH_INFO': r'/path1/path2', - }) + r = parse( + DEFAULT_ENV, + altbaseurl=b'http://altserver/altpath', + extra={r'PATH_INFO': r'/path1/path2',}, + ) self.assertEqual(r.url, b'http://testserver/path1/path2') self.assertEqual(r.baseurl, b'http://testserver') - self.assertEqual(r.advertisedurl, - b'http://altserver/altpath/path1/path2') + self.assertEqual( + r.advertisedurl, b'http://altserver/altpath/path1/path2' + ) self.assertEqual(r.advertisedbaseurl, b'http://altserver') self.assertEqual(r.urlscheme, b'http') self.assertEqual(r.apppath, b'/altpath') @@ -354,13 +362,16 @@ self.assertIsNone(r.reponame) # PATH_INFO + path on alt URL with trailing slash. - r = parse(DEFAULT_ENV, altbaseurl=b'http://altserver/altpath/', extra={ - r'PATH_INFO': r'/path1/path2', - }) + r = parse( + DEFAULT_ENV, + altbaseurl=b'http://altserver/altpath/', + extra={r'PATH_INFO': r'/path1/path2',}, + ) self.assertEqual(r.url, b'http://testserver/path1/path2') self.assertEqual(r.baseurl, b'http://testserver') - self.assertEqual(r.advertisedurl, - b'http://altserver/altpath//path1/path2') + self.assertEqual( + r.advertisedurl, b'http://altserver/altpath//path1/path2' + ) self.assertEqual(r.advertisedbaseurl, b'http://altserver') self.assertEqual(r.urlscheme, b'http') self.assertEqual(r.apppath, b'/altpath/') @@ -369,10 +380,11 @@ self.assertIsNone(r.reponame) # Local SCRIPT_NAME is ignored. - r = parse(DEFAULT_ENV, altbaseurl=b'http://altserver', extra={ - r'SCRIPT_NAME': r'/script', - r'PATH_INFO': r'/path1/path2', - }) + r = parse( + DEFAULT_ENV, + altbaseurl=b'http://altserver', + extra={r'SCRIPT_NAME': r'/script', r'PATH_INFO': r'/path1/path2',}, + ) self.assertEqual(r.url, b'http://testserver/script/path1/path2') self.assertEqual(r.baseurl, b'http://testserver') self.assertEqual(r.advertisedurl, b'http://altserver/path1/path2') @@ -384,14 +396,16 @@ self.assertIsNone(r.reponame) # Use remote's path for script name, app path - r = parse(DEFAULT_ENV, altbaseurl=b'http://altserver/altroot', extra={ - r'SCRIPT_NAME': r'/script', - r'PATH_INFO': r'/path1/path2', - }) + r = parse( + DEFAULT_ENV, + altbaseurl=b'http://altserver/altroot', + extra={r'SCRIPT_NAME': r'/script', r'PATH_INFO': r'/path1/path2',}, + ) self.assertEqual(r.url, b'http://testserver/script/path1/path2') self.assertEqual(r.baseurl, b'http://testserver') - self.assertEqual(r.advertisedurl, - b'http://altserver/altroot/path1/path2') + self.assertEqual( + r.advertisedurl, b'http://altserver/altroot/path1/path2' + ) self.assertEqual(r.advertisedbaseurl, b'http://altserver') self.assertEqual(r.urlscheme, b'http') self.assertEqual(r.apppath, b'/altroot') @@ -400,23 +414,29 @@ self.assertIsNone(r.reponame) # reponame is factored in properly. - r = parse(DEFAULT_ENV, reponame=b'repo', - altbaseurl=b'http://altserver/altroot', - extra={ + r = parse( + DEFAULT_ENV, + reponame=b'repo', + altbaseurl=b'http://altserver/altroot', + extra={ r'SCRIPT_NAME': r'/script', r'PATH_INFO': r'/repo/path1/path2', - }) + }, + ) self.assertEqual(r.url, b'http://testserver/script/repo/path1/path2') self.assertEqual(r.baseurl, b'http://testserver') - self.assertEqual(r.advertisedurl, - b'http://altserver/altroot/repo/path1/path2') + self.assertEqual( + r.advertisedurl, b'http://altserver/altroot/repo/path1/path2' + ) self.assertEqual(r.advertisedbaseurl, b'http://altserver') self.assertEqual(r.apppath, b'/altroot/repo') self.assertEqual(r.dispatchparts, [b'path1', b'path2']) self.assertEqual(r.dispatchpath, b'path1/path2') self.assertEqual(r.reponame, b'repo') + if __name__ == '__main__': import silenttestrunner + silenttestrunner.main(__name__)