Выполнение приведенного ниже кода на Python3.7 и python3.11 дает разные типы. На Python3.7 тип — в то время как в python3.11 типом является .
- Не могу найти его в официальной документации, где он был изменен?
- Как правильно работать с аргументами вызова? Допустим, я хочу проверить, что для kwarg с именем foo было установлено значение «bar» при вызове имитируемой функции (с dict это очень просто, с _Call я не нашел способа сделать это).
def foobar(foo = None, bar = None):
print(f'args: {foo}, {bar}')
l = None
with mock.patch('__main__.foobar') as m:
foobar(foo=1, bar=4)
l = m.call_args_list
type(l[0].kwargs)
Подробнее здесь: https://stackoverflow.com/questions/786 ... -list-type