summaryrefslogtreecommitdiff
path: root/src/leap/common/check.py
diff options
context:
space:
mode:
authorTomás Touceda <chiiph@leap.se>2013-07-25 11:07:44 -0300
committerTomás Touceda <chiiph@leap.se>2013-07-25 11:07:44 -0300
commit09eb321e6040555f93ace9966da56435ff70b30a (patch)
tree38fd1111f55ef5f560cbd61e87e091b0b9e6fc4a /src/leap/common/check.py
parentc22072f6a12a9d896eb324a848043011b0ea30c5 (diff)
parent7747b4c28c4d9ed596e72061f34261d6158efe17 (diff)
Merge remote-tracking branch 'ivan/feature/add-leap-check' into develop
Diffstat (limited to 'src/leap/common/check.py')
-rw-r--r--src/leap/common/check.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/leap/common/check.py b/src/leap/common/check.py
index e6b0b52..82da5ff 100644
--- a/src/leap/common/check.py
+++ b/src/leap/common/check.py
@@ -60,3 +60,20 @@ def leap_assert_type(var, expectedType):
leap_assert(isinstance(var, expectedType),
"Expected type %r instead of %r" %
(expectedType, type(var)))
+
+
+def leap_check(condition, message="", exception=Exception):
+ """
+ Asserts the condition and displays the message if that's not
+ met. It also logs the error and its backtrace.
+
+ :param condition: condition to check
+ :type condition: bool
+ :param message: message to display if the condition isn't met
+ :type message: str
+ :param exception: the exception to raise in case of condition being false.
+ :type exception: Exception
+ """
+ if not condition:
+ logger.error(message)
+ raise exception(message)