in testslide/mock_callable.py [0:0]
def __call__(self, *args: Any, **kwargs: Any) -> Optional[Any]:
runner = self._get_runner(*args, **kwargs)
if runner:
if self.is_async:
if isinstance(runner, _AsyncRunner):
async def async_wrapper(*args: Any, **kwargs: Any) -> Any:
value = await runner.run(*args, **kwargs)
self._validate_return_type(runner, value)
return value
value = async_wrapper(*args, **kwargs)
else:
async def async_wrapper(*args: Any, **kwargs: Any) -> Any:
value = runner.run(*args, **kwargs)
self._validate_return_type(runner, value)
return value
value = async_wrapper(*args, **kwargs)
else:
value = runner.run(*args, **kwargs)
self._validate_return_type(runner, value)
return value
else:
ex_msg = (
"{}, {}:\n"
" Received call:\n"
"{}"
" But no behavior was defined for it."
).format(
_format_target(self.target),
repr(self.method),
_format_args(2, *args, **kwargs),
)
if self._registered_calls:
ex_msg += "\n These are the registered calls:\n" "{}".format(
"".join(
_format_args(2, *reg_args, **reg_kwargs)
for reg_args, reg_kwargs in self._registered_calls
)
)
raise UnexpectedCallArguments(ex_msg)
raise UndefinedBehaviorForCall(ex_msg)