bpo-21269: Provide args and kwargs attributes on mock call objects GH11807

This commit is contained in:
Kumar Akshay 2019-03-22 13:40:40 +05:30 committed by Chris Withers
parent 40b6907b37
commit b0df45e55d
5 changed files with 51 additions and 11 deletions

View file

@ -2135,6 +2135,22 @@ class _Call(tuple):
def index(self, *args, **kwargs):
return self.__getattr__('index')(*args, **kwargs)
def _get_call_arguments(self):
if len(self) == 2:
args, kwargs = self
else:
name, args, kwargs = self
return args, kwargs
@property
def args(self):
return self._get_call_arguments()[0]
@property
def kwargs(self):
return self._get_call_arguments()[1]
def __repr__(self):
if not self._mock_from_kall:
name = self._mock_name or 'call'