view tests/heredoctest.py @ 18198:9b4adaef0db9 stable

amend: prevent loss of bookmark on failed amend The active bookmark were moved to the temporary commit. When the transaction were rollbacked, the bookmark were lost. We now temporarly disable the bookmark to prevent this effect.
author Pierre-Yves David <pierre-yves.david@ens-lyon.org>
date Sun, 30 Dec 2012 03:49:15 +0100
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)