diff --git a/jedi/evaluate/compiled/fake/_functools.pym b/jedi/evaluate/compiled/fake/_functools.pym index 235e80a1..3879d406 100644 --- a/jedi/evaluate/compiled/fake/_functools.pym +++ b/jedi/evaluate/compiled/fake/_functools.pym @@ -6,4 +6,4 @@ class partial(): def __call__(self, *args, **kwargs): # I know this doesn't work in Python, but in Jedi it does ;-) - return self.__func(*self.__args, *args, **self.keywords, **kwargs) + return self.__func(*self.__args, *args, **self.__keywords, **kwargs) diff --git a/test/completion/stdlib.py b/test/completion/stdlib.py index 57bd2220..6c5a330c 100644 --- a/test/completion/stdlib.py +++ b/test/completion/stdlib.py @@ -78,15 +78,22 @@ basetwo = functools.partial(int, base=2) #? int() basetwo() -def a(a, b): +def function(a, b): return a, b -a = functools.partial(a, 0) +a = functools.partial(function, 0) #? int() a('')[0] #? str() a('')[1] +kw = functools.partial(function, b=1.0) +tup = kw(1) +#? int() +tup[0] +#? float() +tup[1] + def my_decorator(f): @functools.wraps(f) def wrapper(*args, **kwds):