##// END OF EJS Templates
manifest: move pure parsing code out of pure...
manifest: move pure parsing code out of pure This lets us transition more smoothly.

File last commit:

r22565:8d45a42b default
r24215:feddc528 default
Show More
heredoctest.py
18 lines | 467 B | text/x-python | PythonLexer
Matt Mackall
run-tests: replace inline python handling with more native scheme...
r15434 import sys
Idan Kamara
tests: remove temp doctest file when finished running it
r15247
Matt Mackall
run-tests: replace inline python handling with more native scheme...
r15434 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)
Yuya Nishihara
heredoctest: do not append extra newline character to continuation line...
r22565 snippet += l[4:]
Matt Mackall
run-tests: replace inline python handling with more native scheme...
r15434 c = compile(snippet, '<heredoc>', 'single')
try:
Yuya Nishihara
heredoctest: use the same dict for local/global contexts as in doctest...
r22564 exec c in globalvars
Matt Mackall
run-tests: replace inline python handling with more native scheme...
r15434 except Exception, inst:
print repr(inst)