Mercurial > hg
view tests/heredoctest.py @ 22589:9ab18a912c44
ui: show prompt choice if input is not a tty but is forced to be interactive
The tests often set ui.interactive to control normally interactive prompts from
stdin. That gave an output where it was non-obvious what prompts got which
which response, and the output lacked the newline users would see after input.
Instead, if the input not is a tty, write the selection and a newline.
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Wed, 01 Oct 2014 01:04:18 +0200 |
parents | 8d45a42b0c0f |
children | 1db2127d2373 |
line wrap: on
line source
import sys globalvars = {} lines = sys.stdin.readlines() while lines: l = lines.pop(0) if l.startswith('SALT'): print l[:-1] elif l.startswith('>>> '): snippet = l[4:] while lines and lines[0].startswith('... '): l = lines.pop(0) snippet += l[4:] c = compile(snippet, '<heredoc>', 'single') try: exec c in globalvars except Exception, inst: print repr(inst)