Mercurial > hg
view tests/test-sshserver.py @ 37333:44f3b60deafb
hgweb: drop support for "manifest" parameter
AFAICT (but note that this is the first time I look at hgweb code),
the "mercurial" query parameter was removed from rendered pages in
36fa5db79dd5 (hgweb: convert gitweb to NWI, 2006-10-05). Search for
"manifest=" in that diff to see why I think it was removed. It's about
time we stop looking for the parameter in requests.
Differential Revision: https://phab.mercurial-scm.org/D3073
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Tue, 03 Apr 2018 21:50:42 -0700 |
parents | a8a902d7176e |
children | b4d85bc122bd |
line wrap: on
line source
from __future__ import absolute_import, print_function import io import unittest import silenttestrunner from mercurial import ( wireproto, wireprotoserver, ) from mercurial.utils import ( procutil, ) class SSHServerGetArgsTests(unittest.TestCase): def testparseknown(self): tests = [ (b'* 0\nnodes 0\n', [b'', {}]), (b'* 0\nnodes 40\n1111111111111111111111111111111111111111\n', [b'1111111111111111111111111111111111111111', {}]), ] for input, expected in tests: self.assertparse(b'known', input, expected) def assertparse(self, cmd, input, expected): server = mockserver(input) proto = wireprotoserver.sshv1protocolhandler(server._ui, server._fin, server._fout) _func, spec = wireproto.commands[cmd] self.assertEqual(proto.getargs(spec), expected) def mockserver(inbytes): ui = mockui(inbytes) repo = mockrepo(ui) return wireprotoserver.sshserver(ui, repo) class mockrepo(object): def __init__(self, ui): self.ui = ui class mockui(object): def __init__(self, inbytes): self.fin = io.BytesIO(inbytes) self.fout = io.BytesIO() self.ferr = io.BytesIO() if __name__ == '__main__': # Don't call into msvcrt to set BytesIO to binary mode procutil.setbinary = lambda fp: True silenttestrunner.main(__name__)