[Piglit] [PATCH 5/7] framework/status.py: Make StatusException a child of PiglitInternalError
Dylan Baker
baker.dylan.c at gmail.com
Wed Sep 2 14:18:24 PDT 2015
This change makes makes it simpler to handle this error than being a
descendant of LookupError. The biggest advantage is that the __str__
method provides a good error message.
This will be used in a later patch in this series.
Signed-off-by: Dylan Baker <dylanx.c.baker at intel.com>
---
framework/status.py | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/framework/status.py b/framework/status.py
index 98a9e3d..1e974a1 100644
--- a/framework/status.py
+++ b/framework/status.py
@@ -57,6 +57,7 @@ The formula for determining fixes is:
"""
from __future__ import print_function, absolute_import
+from framework import exceptions
__all__ = ['NOTRUN',
'PASS',
@@ -96,10 +97,10 @@ def status_lookup(status):
return status_dict[status]
except KeyError:
# Raise a StatusException rather than a key error
- raise StatusException
+ raise StatusException(status)
-class StatusException(LookupError):
+class StatusException(exceptions.PiglitInternalError):
""" Raise this exception when a string is passed to status_lookup that
doesn't exists
@@ -109,7 +110,12 @@ class StatusException(LookupError):
Error class here allows for more fine-grained control.
"""
- pass
+ def __init__(self, status):
+ self.__status = status
+ super(StatusException, self).__init__(self)
+
+ def __str__(self):
+ return 'Unknown status "{}"'.format(self.__status)
class Status(object):
--
2.5.1
More information about the Piglit
mailing list