Mercurial > hg
view tests/blackbox-readonly-dispatch.py @ 39956:36e9d2c60837
py3: use system strings for HTTP response header comparison
res.headers is holding system strings. Attempting to compare against
bytes always fails and we fail to print decoded CBOR responses on
Python 3.
After this change, various test-wireproto* tests are now properly
printing CBOR response objects.
Differential Revision: https://phab.mercurial-scm.org/D4835
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Mon, 01 Oct 2018 23:11:07 -0700 |
parents | f4a508f4ea87 |
children | c93d046d4300 |
line wrap: on
line source
from __future__ import absolute_import import os from mercurial import ( dispatch, ui as uimod, ) def testdispatch(cmd): """Simple wrapper around dispatch.dispatch() Prints command and result value, but does not handle quoting. """ ui = uimod.ui.load() ui.status(b"running: %s\n" % cmd) req = dispatch.request(cmd.split(), ui) result = dispatch.dispatch(req) ui.status(b"result: %r\n" % result) # create file 'foo', add and commit f = open(b'foo', 'wb') f.write(b'foo\n') f.close() testdispatch(b"--debug add foo") testdispatch(b"--debug commit -m commit1 -d 2000-01-01 foo") # append to file 'foo' and commit f = open(b'foo', 'ab') f.write(b'bar\n') f.close() # remove blackbox.log directory (proxy for readonly log file) os.rmdir(b".hg/blackbox.log") # replace it with the real blackbox.log file os.rename(b".hg/blackbox.log-", b".hg/blackbox.log") testdispatch(b"--debug commit -m commit2 -d 2000-01-02 foo") # check 88803a69b24 (fancyopts modified command table) testdispatch(b"--debug log -r 0") testdispatch(b"--debug log -r tip")