Mercurial > hg
view tests/test-dispatch.py @ 40098:8a08aefa9273
tests: do not change sys.path, it can break loading cext.parsers
When running this tests with run-tests, the prefix would resolve
mercurial.cext to the source tree and the attempt to load
mercurial.cext.parsers would therefore fail since it doesn't exist in
it. With the regular search path from run-tests, it is picked up from
the temporary prefix correctly.
Differential Revision: https://phab.mercurial-scm.org/D4910
author | Joerg Sonnenberger <joerg@bec.de> |
---|---|
date | Mon, 08 Oct 2018 21:53:32 +0200 |
parents | 32106c474086 |
children | 2372284d9457 |
line wrap: on
line source
from __future__ import absolute_import, print_function import os import sys from mercurial import ( dispatch, ) def printb(data, end=b'\n'): out = getattr(sys.stdout, 'buffer', sys.stdout) out.write(data + end) out.flush() def testdispatch(cmd): """Simple wrapper around dispatch.dispatch() Prints command and result value, but does not handle quoting. """ printb(b"running: %s" % (cmd,)) req = dispatch.request(cmd.split()) result = dispatch.dispatch(req) printb(b"result: %r" % (result,)) testdispatch(b"init test1") os.chdir('test1') # create file 'foo', add and commit f = open('foo', 'wb') f.write(b'foo\n') f.close() testdispatch(b"add foo") testdispatch(b"commit -m commit1 -d 2000-01-01 foo") # append to file 'foo' and commit f = open('foo', 'ab') f.write(b'bar\n') f.close() testdispatch(b"commit -m commit2 -d 2000-01-02 foo") # check 88803a69b24 (fancyopts modified command table) testdispatch(b"log -r 0") testdispatch(b"log -r tip")