diff --git a/lettuce/__init__.py b/lettuce/__init__.py index 64416469d..9b37e4567 100644 --- a/lettuce/__init__.py +++ b/lettuce/__init__.py @@ -180,6 +180,9 @@ def run(self): except exceptions.LettuceSyntaxError, e: sys.stderr.write(e.msg) failed = True + except exceptions.NoDefinitionFound, e: + sys.stderr.write(e.msg) + failed = True except: if not self.failfast: e = sys.exc_info()[1] diff --git a/lettuce/exceptions.py b/lettuce/exceptions.py index 158cd567c..27436c859 100644 --- a/lettuce/exceptions.py +++ b/lettuce/exceptions.py @@ -28,8 +28,11 @@ class NoDefinitionFound(Exception): """ def __init__(self, step): self.step = step - super(NoDefinitionFound, self).__init__( - 'The step r"%s" is not defined' % self.step.sentence) + + error = filter(lambda x : 0 <= ord(x) <= 127, + 'The step r"%s" is not defined' % self.step.sentence) + super(NoDefinitionFound, self).__init__(error) + class ReasonToFail(object):