Karthikeyan Singaravelan <tir.kar...@gmail.com> added the comment:

Currently, the exception is not instantiated. Maybe we can check if it's 
callable and pass args, kwargs to the exception constructor to be raised.

diff --git a/Lib/unittest/mock.py b/Lib/unittest/mock.py
index a48132c5b1..f5bcb911f5 100644
--- a/Lib/unittest/mock.py
+++ b/Lib/unittest/mock.py
@@ -1145,7 +1145,10 @@ class CallableMixin(Base):
         effect = self.side_effect
         if effect is not None:
             if _is_exception(effect):
-                raise effect
+                if _callable(effect):
+                    raise effect(*args, **kwargs)
+                else:
+                    raise effect
             elif not _callable(effect):
                 result = next(effect)
                 if _is_exception(result):

nosy: +cjw296, lisroach, mariocj89, michael.foord

Python tracker <rep...@bugs.python.org>
Python-bugs-list mailing list

Reply via email to