def test_user_defined_annotated_call_wrong_arguments_number():
""" User tries to call an annotated function on the wrong number of arguments.
"""
program = f'def add_3(num1: int, num2: int, num3: int) -> int:\n' \
f' return num1 + num2 + num3\n' \
f'\n' \
f'add_3()\n'
try:
module, inferer = cs._parse_text(program)
except:
raise SkipTest()
call_node = list(module.nodes_of_class(astroid.Call))[0]
expected_msg = f'In the Call node in line 4, there was an error in calling the function "add_3":\n' \
f'the function was expecting 3 arguments, but was given 0.'
assert call_node.type_constraints.type.msg == expected_msg
评论列表
文章目录