Зачем ловить исключение, чтобы просто поднять его?
Если вы ничего не делаете в комплекте исключений, кроме повторного вызова исключения, просто не поймайте исключение в первую очередь:
@staticmethod
def exception():
Something.objects.all()
Если вы делаете что-то нетривиальное внутри except
suite, тогда:
def exception(self):
try:
Something.objects.all()
except Exception:
# do something (with self?)
raise
Затем, чтобы проверить, что метод exception
вызывает исключение:
def test_exception(self):
instance = Something()
self.assertRaises(Exception, instance.exception)
Это зависит от Something.objects.all()
повышения Exception
.
PS. Если exception
не зависит от self
, то лучше удалить его из списка аргументов и сделать exception
статическим методом.
PPS. Exception
- очень широкий базовый класс исключений. Более конкретное исключение будет более полезным для отладки и позволит другому коду перехватить это конкретное исключение вместо того, чтобы заставлять его обрабатывать любые возможные Exception
.