Skip to content

Commit

Permalink
Added MonitorRunner exceptions
Browse files Browse the repository at this point in the history
  • Loading branch information
gatufo committed May 5, 2015
1 parent a32c476 commit 7575f09
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 10 deletions.
16 changes: 10 additions & 6 deletions spidermon/exceptions.py
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
class SpiderMonException(Exception):
class SpidermonException(Exception):
pass


class InvalidStatsOperation(SpiderMonException):
class InvalidStatsOperation(SpidermonException):
pass


class NotAllowedMethod(SpiderMonException):
class NotAllowedMethod(SpidermonException):
pass


class InvalidMonitor(SpiderMonException):
class InvalidMonitor(SpidermonException):
pass


Expand All @@ -26,9 +26,13 @@ class InvalidMonitorTuple(InvalidMonitor):
pass


class InvalidExpression(SpiderMonException):
class InvalidExpression(SpidermonException):
pass


class SkipAction(SpiderMonException):
class InvalidResult(SpidermonException):
pass


class SkipAction(SpidermonException):
pass
7 changes: 4 additions & 3 deletions spidermon/runners.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
import sys

from core.suites import MonitorSuite
from spidermon.core.suites import MonitorSuite
from spidermon.results.monitor import MonitorResult
from spidermon.results.text import TextMonitorResult
from spidermon.exceptions import InvalidMonitor, InvalidResult


class MonitorRunner(object):
Expand All @@ -12,12 +13,12 @@ def __init__(self):

def run(self, suite, data=None):
if not isinstance(suite, MonitorSuite):
raise Exception('Not valid') # TODO: Add custom exception
raise InvalidMonitor('Runners must receive a MonitorSuite instance')
self.suite = suite
self.suite.init_data(**(data or {}))
self.result = self.create_result()
if not isinstance(self.result, MonitorResult):
raise Exception('Not valid') # TODO: Add custom exception
raise InvalidResult('Runners must use a MonitorResult instance')
return self.run_suite()

def run_suite(self):
Expand Down
2 changes: 1 addition & 1 deletion to-do.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ FEATURES
[X] Descriptions
[X] Levels
[X] Ordering
[ ] Monitor runner exceptions
[X] Monitor runner exceptions
[X] Actions
[X] Suite actions hooks
[X] Results
Expand Down

0 comments on commit 7575f09

Please sign in to comment.