From fe71a2b1a96024b11b2c46146f226094daedca95 Mon Sep 17 00:00:00 2001 From: Sergio Oliveira Date: Tue, 4 Aug 2015 11:32:38 -0300 Subject: [PATCH] Using custom exception --- colab/exceptions.py | 3 +++ colab/signals/exceptions.py | 6 ++++++ colab/signals/signals.py | 6 ++++-- colab/signals/tests/test_signals.py | 8 ++++---- 4 files changed, 17 insertions(+), 6 deletions(-) create mode 100644 colab/exceptions.py create mode 100644 colab/signals/exceptions.py diff --git a/colab/exceptions.py b/colab/exceptions.py new file mode 100644 index 0000000..4986eb7 --- /dev/null +++ b/colab/exceptions.py @@ -0,0 +1,3 @@ + +class ColabException(Exception): + """Base class for all exceptions raised by Colab""" diff --git a/colab/signals/exceptions.py b/colab/signals/exceptions.py new file mode 100644 index 0000000..a668150 --- /dev/null +++ b/colab/signals/exceptions.py @@ -0,0 +1,6 @@ + +from ..exceptions import ColabException + + +class SignalDoesNotExist(ColabException): + """Expcetion raised when signal does not exist""" diff --git a/colab/signals/signals.py b/colab/signals/signals.py index 4ad4abb..e82ab23 100644 --- a/colab/signals/signals.py +++ b/colab/signals/signals.py @@ -1,6 +1,8 @@ from django.dispatch import Signal from colab.signals.celery import app +from .exceptions import SignalDoesNotExist + registered_signals = {} signal_instances = {} @@ -28,11 +30,11 @@ def connect_signal(signal_name, sender, handling_method): signal_instances[signal_name].connect(handling_method.delay, sender=sender) else: - raise Exception("Signal does not exist!") + raise SignalDoesNotExist def send(signal_name, sender, **kwargs): if signal_name in signal_instances: signal_instances[signal_name].send(sender=sender, **kwargs) else: - raise Exception("Signal does not exist!") + raise SignalDoesNotExist diff --git a/colab/signals/tests/test_signals.py b/colab/signals/tests/test_signals.py index 8bdb8c5..e6bf927 100644 --- a/colab/signals/tests/test_signals.py +++ b/colab/signals/tests/test_signals.py @@ -9,8 +9,8 @@ from django.test import TestCase from mock import patch, MagicMock, PropertyMock -from colab.signals.signals import (registered_signals, register_signal, - connect_signal, send) +from ..signals import registered_signals, register_signal, connect_signal, send +from ..exceptions import SignalDoesNotExist class SignalsTest(TestCase): @@ -43,7 +43,7 @@ class SignalsTest(TestCase): handling_method = 'Test' signal_name = 'Test' - self.assertRaises(Exception, connect_signal, signal_name, + self.assertRaises(SignalDoesNotExist, connect_signal, signal_name, sender, handling_method) @patch('colab.signals.signals.Signal.connect') @@ -76,4 +76,4 @@ class SignalsTest(TestCase): self.assertTrue(mock.is_called) def test_send_signal_not_registered(self): - self.assertRaises(Exception, send, 'test_signal', 'test') + self.assertRaises(SignalDoesNotExist, send, 'test_signal', 'test') -- libgit2 0.21.2