16 from robot.errors import (ExecutionFailed, ExecutionStatus, DataError,
17 HandlerExecutionFailed, KeywordError, VariableError)
20 from .modelcombiner
import ModelCombiner
25 def __init__(self, data, result, context, run=True, suppress=False):
31 result.status = result.NOT_SET
33 self.
pass_statuspass_status = result.status = result.NOT_RUN
47 if doc.startswith(
'*DEPRECATED')
and '*' in doc[1:]:
48 message =
' ' + doc.split(
'*', 2)[-1].strip()
49 self.
contextcontext.
warn(
"Keyword '%s' is deprecated.%s" % (name, message))
54 failure = self.
_get_failure_get_failure(exc_type, exc_val, exc_tb, context)
58 result.status = failure.status
59 if result.type == result.TEARDOWN:
60 result.message = failure.message
62 context.test.status = result.status
65 if failure
is not exc_val
and not self.
suppresssuppress:
72 if isinstance(exc_value, ExecutionStatus):
74 if isinstance(exc_value, DataError):
75 msg = exc_value.message
78 error = ErrorDetails(exc_value)
81 context.timeout_occurred =
True
83 context.skip(error.message)
85 context.fail(error.message)
87 context.debug(error.traceback)
Used for communicating failures in test execution.
def __exit__(self, exc_type, exc_val, exc_tb)
def _get_failure(self, exc_type, exc_value, exc_tb, context)
def __init__(self, data, result, context, run=True, suppress=False)
def _warn_if_deprecated(self, doc, name)
def warn(msg, html=False)
Writes the message to the log file using the WARN level.
def get_timestamp(daysep='', daytimesep=' ', timesep=':', millissep='.')