Mercurial > hg
view tests/heredoctest.py @ 16905:671c73d523cf
tests: make .t tests stop immediately if a cd fails
This prevents tests from escaping from TESTTMP as a consequence of a failing
directory creation.
author | Mads Kiilerich <mads@kiilerich.com> |
---|---|
date | Sun, 10 Jun 2012 18:50:42 +0200 |
parents | 5635a4017061 |
children | 9599e86159ac |
line wrap: on
line source
import sys globalvars = {} localvars = {} 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 += "\n" + l[4:] c = compile(snippet, '<heredoc>', 'single') try: exec c in globalvars, localvars except Exception, inst: print repr(inst)