tests: update with new parameter spec

This commit is contained in:
2026-07-03 19:31:17 +02:00
parent 9229f00375
commit c18d9c18de
5 changed files with 698 additions and 648 deletions

View File

@@ -124,7 +124,7 @@
22 22
] ]
}, },
"message": "Multiple values for argument 'b'" "message": "Multiple values for parameter 'b'"
}, },
{ {
"type": "Error", "type": "Error",
@@ -152,7 +152,7 @@
12 12
] ]
}, },
"message": "Unknown keyword argument 'a'" "message": "Unknown keyword parameter 'a'"
}, },
{ {
"type": "Error", "type": "Error",
@@ -194,7 +194,7 @@
17 17
] ]
}, },
"message": "Unknown keyword argument 'g'" "message": "Unknown keyword parameter 'g'"
}, },
{ {
"type": "Error", "type": "Error",
@@ -277,36 +277,38 @@
"name": "foo" "name": "foo"
}, },
"type": { "type": {
"pos_args": [ "params": {
{ "pos": [
"pos": 0, {
"name": "a", "pos": 0,
"type": { "name": "a",
"name": "int" "type": {
}, "name": "int"
"required": true },
} "required": true
], }
"args": [ ],
{ "mixed": [
"pos": 1, {
"name": "b", "pos": 1,
"type": { "name": "b",
"name": "float" "type": {
}, "name": "float"
"required": true },
} "required": true
], }
"kw_args": [ ],
{ "kw": [
"pos": 2, {
"name": "c", "pos": 2,
"type": { "name": "c",
"name": "str" "type": {
}, "name": "str"
"required": true },
} "required": true
], }
]
},
"returns": { "returns": {
"name": "bool" "name": "bool"
} }
@@ -351,36 +353,38 @@
"name": "foo" "name": "foo"
}, },
"type": { "type": {
"pos_args": [ "params": {
{ "pos": [
"pos": 0, {
"name": "a", "pos": 0,
"type": { "name": "a",
"name": "int" "type": {
}, "name": "int"
"required": true },
} "required": true
], }
"args": [ ],
{ "mixed": [
"pos": 1, {
"name": "b", "pos": 1,
"type": { "name": "b",
"name": "float" "type": {
}, "name": "float"
"required": true },
} "required": true
], }
"kw_args": [ ],
{ "kw": [
"pos": 2, {
"name": "c", "pos": 2,
"type": { "name": "c",
"name": "str" "type": {
}, "name": "str"
"required": true },
} "required": true
], }
]
},
"returns": { "returns": {
"name": "bool" "name": "bool"
} }
@@ -443,36 +447,38 @@
"name": "foo" "name": "foo"
}, },
"type": { "type": {
"pos_args": [ "params": {
{ "pos": [
"pos": 0, {
"name": "a", "pos": 0,
"type": { "name": "a",
"name": "int" "type": {
}, "name": "int"
"required": true },
} "required": true
], }
"args": [ ],
{ "mixed": [
"pos": 1, {
"name": "b", "pos": 1,
"type": { "name": "b",
"name": "float" "type": {
}, "name": "float"
"required": true },
} "required": true
], }
"kw_args": [ ],
{ "kw": [
"pos": 2, {
"name": "c", "pos": 2,
"type": { "name": "c",
"name": "str" "type": {
}, "name": "str"
"required": true },
} "required": true
], }
]
},
"returns": { "returns": {
"name": "bool" "name": "bool"
} }
@@ -539,36 +545,38 @@
"name": "foo" "name": "foo"
}, },
"type": { "type": {
"pos_args": [ "params": {
{ "pos": [
"pos": 0, {
"name": "a", "pos": 0,
"type": { "name": "a",
"name": "int" "type": {
}, "name": "int"
"required": true },
} "required": true
], }
"args": [ ],
{ "mixed": [
"pos": 1, {
"name": "b", "pos": 1,
"type": { "name": "b",
"name": "float" "type": {
}, "name": "float"
"required": true },
} "required": true
], }
"kw_args": [ ],
{ "kw": [
"pos": 2, {
"name": "c", "pos": 2,
"type": { "name": "c",
"name": "str" "type": {
}, "name": "str"
"required": true },
} "required": true
], }
]
},
"returns": { "returns": {
"name": "bool" "name": "bool"
} }
@@ -649,36 +657,38 @@
"name": "foo" "name": "foo"
}, },
"type": { "type": {
"pos_args": [ "params": {
{ "pos": [
"pos": 0, {
"name": "a", "pos": 0,
"type": { "name": "a",
"name": "int" "type": {
}, "name": "int"
"required": true },
} "required": true
], }
"args": [ ],
{ "mixed": [
"pos": 1, {
"name": "b", "pos": 1,
"type": { "name": "b",
"name": "float" "type": {
}, "name": "float"
"required": true },
} "required": true
], }
"kw_args": [ ],
{ "kw": [
"pos": 2, {
"name": "c", "pos": 2,
"type": { "name": "c",
"name": "str" "type": {
}, "name": "str"
"required": true },
} "required": true
], }
]
},
"returns": { "returns": {
"name": "bool" "name": "bool"
} }
@@ -762,36 +772,38 @@
"name": "foo" "name": "foo"
}, },
"type": { "type": {
"pos_args": [ "params": {
{ "pos": [
"pos": 0, {
"name": "a", "pos": 0,
"type": { "name": "a",
"name": "int" "type": {
}, "name": "int"
"required": true },
} "required": true
], }
"args": [ ],
{ "mixed": [
"pos": 1, {
"name": "b", "pos": 1,
"type": { "name": "b",
"name": "float" "type": {
}, "name": "float"
"required": true },
} "required": true
], }
"kw_args": [ ],
{ "kw": [
"pos": 2, {
"name": "c", "pos": 2,
"type": { "name": "c",
"name": "str" "type": {
}, "name": "str"
"required": true },
} "required": true
], }
]
},
"returns": { "returns": {
"name": "bool" "name": "bool"
} }
@@ -850,36 +862,38 @@
"name": "foo" "name": "foo"
}, },
"type": { "type": {
"pos_args": [ "params": {
{ "pos": [
"pos": 0, {
"name": "a", "pos": 0,
"type": { "name": "a",
"name": "int" "type": {
}, "name": "int"
"required": true },
} "required": true
], }
"args": [ ],
{ "mixed": [
"pos": 1, {
"name": "b", "pos": 1,
"type": { "name": "b",
"name": "float" "type": {
}, "name": "float"
"required": true },
} "required": true
], }
"kw_args": [ ],
{ "kw": [
"pos": 2, {
"name": "c", "pos": 2,
"type": { "name": "c",
"name": "str" "type": {
}, "name": "str"
"required": true },
} "required": true
], }
]
},
"returns": { "returns": {
"name": "bool" "name": "bool"
} }
@@ -929,36 +943,38 @@
"name": "foo" "name": "foo"
}, },
"type": { "type": {
"pos_args": [ "params": {
{ "pos": [
"pos": 0, {
"name": "a", "pos": 0,
"type": { "name": "a",
"name": "int" "type": {
}, "name": "int"
"required": true },
} "required": true
], }
"args": [ ],
{ "mixed": [
"pos": 1, {
"name": "b", "pos": 1,
"type": { "name": "b",
"name": "float" "type": {
}, "name": "float"
"required": true },
} "required": true
], }
"kw_args": [ ],
{ "kw": [
"pos": 2, {
"name": "c", "pos": 2,
"type": { "name": "c",
"name": "str" "type": {
}, "name": "str"
"required": true },
} "required": true
], }
]
},
"returns": { "returns": {
"name": "bool" "name": "bool"
} }
@@ -1034,36 +1050,38 @@
"name": "foo" "name": "foo"
}, },
"type": { "type": {
"pos_args": [ "params": {
{ "pos": [
"pos": 0, {
"name": "a", "pos": 0,
"type": { "name": "a",
"name": "int" "type": {
}, "name": "int"
"required": true },
} "required": true
], }
"args": [ ],
{ "mixed": [
"pos": 1, {
"name": "b", "pos": 1,
"type": { "name": "b",
"name": "float" "type": {
}, "name": "float"
"required": true },
} "required": true
], }
"kw_args": [ ],
{ "kw": [
"pos": 2, {
"name": "c", "pos": 2,
"type": { "name": "c",
"name": "str" "type": {
}, "name": "str"
"required": true },
} "required": true
], }
]
},
"returns": { "returns": {
"name": "bool" "name": "bool"
} }
@@ -1150,36 +1168,38 @@
"name": "foo" "name": "foo"
}, },
"type": { "type": {
"pos_args": [ "params": {
{ "pos": [
"pos": 0, {
"name": "a", "pos": 0,
"type": { "name": "a",
"name": "int" "type": {
}, "name": "int"
"required": true },
} "required": true
], }
"args": [ ],
{ "mixed": [
"pos": 1, {
"name": "b", "pos": 1,
"type": { "name": "b",
"name": "float" "type": {
}, "name": "float"
"required": true },
} "required": true
], }
"kw_args": [ ],
{ "kw": [
"pos": 2, {
"name": "c", "pos": 2,
"type": { "name": "c",
"name": "str" "type": {
}, "name": "str"
"required": true },
} "required": true
], }
]
},
"returns": { "returns": {
"name": "bool" "name": "bool"
} }
@@ -1266,36 +1286,38 @@
"name": "foo" "name": "foo"
}, },
"type": { "type": {
"pos_args": [ "params": {
{ "pos": [
"pos": 0, {
"name": "a", "pos": 0,
"type": { "name": "a",
"name": "int" "type": {
}, "name": "int"
"required": true },
} "required": true
], }
"args": [ ],
{ "mixed": [
"pos": 1, {
"name": "b", "pos": 1,
"type": { "name": "b",
"name": "float" "type": {
}, "name": "float"
"required": true },
} "required": true
], }
"kw_args": [ ],
{ "kw": [
"pos": 2, {
"name": "c", "pos": 2,
"type": { "name": "c",
"name": "str" "type": {
}, "name": "str"
"required": true },
} "required": true
], }
]
},
"returns": { "returns": {
"name": "bool" "name": "bool"
} }
@@ -1382,36 +1404,38 @@
"name": "foo" "name": "foo"
}, },
"type": { "type": {
"pos_args": [ "params": {
{ "pos": [
"pos": 0, {
"name": "a", "pos": 0,
"type": { "name": "a",
"name": "int" "type": {
}, "name": "int"
"required": true },
} "required": true
], }
"args": [ ],
{ "mixed": [
"pos": 1, {
"name": "b", "pos": 1,
"type": { "name": "b",
"name": "float" "type": {
}, "name": "float"
"required": true },
} "required": true
], }
"kw_args": [ ],
{ "kw": [
"pos": 2, {
"name": "c", "pos": 2,
"type": { "name": "c",
"name": "str" "type": {
}, "name": "str"
"required": true },
} "required": true
], }
]
},
"returns": { "returns": {
"name": "bool" "name": "bool"
} }

View File

@@ -136,26 +136,28 @@
"name": "maximum" "name": "maximum"
}, },
"type": { "type": {
"pos_args": [], "params": {
"args": [ "pos": [],
{ "mixed": [
"pos": 0, {
"name": "a", "pos": 0,
"type": { "name": "a",
"name": "float" "type": {
"name": "float"
},
"required": true
}, },
"required": true {
}, "pos": 1,
{ "name": "b",
"pos": 1, "type": {
"name": "b", "name": "float"
"type": { },
"name": "float" "required": true
}, }
"required": true ],
} "kw": []
], },
"kw_args": [],
"returns": { "returns": {
"name": "float" "name": "float"
} }

View File

@@ -312,16 +312,18 @@
"name": "print" "name": "print"
}, },
"type": { "type": {
"pos_args": [ "params": {
{ "pos": [
"pos": 0, {
"name": "object", "pos": 0,
"type": {}, "name": "object",
"required": false "type": {},
} "required": false
], }
"args": [], ],
"kw_args": [], "mixed": [],
"kw": []
},
"returns": {} "returns": {}
} }
}, },

View File

@@ -120,16 +120,18 @@
"name": "bool" "name": "bool"
}, },
"type": { "type": {
"pos_args": [ "params": {
{ "pos": [
"pos": 0, {
"name": "object", "pos": 0,
"type": {}, "name": "object",
"required": false "type": {},
} "required": false
], }
"args": [], ],
"kw_args": [], "mixed": [],
"kw": []
},
"returns": { "returns": {
"name": "bool" "name": "bool"
} }
@@ -377,18 +379,20 @@
"name": "double" "name": "double"
}, },
"type": { "type": {
"pos_args": [], "params": {
"args": [ "pos": [],
{ "mixed": [
"pos": 0, {
"name": "value", "pos": 0,
"type": { "name": "value",
"name": "float" "type": {
}, "name": "float"
"required": true },
} "required": true
], }
"kw_args": [], ],
"kw": []
},
"returns": { "returns": {
"name": "float" "name": "float"
} }
@@ -439,54 +443,58 @@
} }
], ],
"body": { "body": {
"pos_args": [ "params": {
{ "pos": [
"pos": 0, {
"name": "transform", "pos": 0,
"type": { "name": "transform",
"pos_args": [ "type": {
{ "params": {
"pos": 0, "pos": [
"name": "v", {
"type": { "pos": 0,
"name": "T", "name": "v",
"bound": null, "type": {
"variance": "INVARIANT" "name": "T",
}, "bound": null,
"required": true "variance": "INVARIANT"
} },
], "required": true
"args": [], }
"kw_args": [], ],
"returns": { "mixed": [],
"name": "U", "kw": []
"bound": null, },
"variance": "INVARIANT" "returns": {
} "name": "U",
},
"required": true
},
{
"pos": 1,
"name": "iterable",
"type": {
"name": "list",
"args": [
{
"name": "T",
"bound": null, "bound": null,
"variance": "INVARIANT" "variance": "INVARIANT"
} }
], },
"body": { "required": true
"name": "list"
}
}, },
"required": true {
} "pos": 1,
], "name": "iterable",
"args": [], "type": {
"kw_args": [], "name": "list",
"args": [
{
"name": "T",
"bound": null,
"variance": "INVARIANT"
}
],
"body": {
"name": "list"
}
},
"required": true
}
],
"mixed": [],
"kw": []
},
"returns": { "returns": {
"name": "list", "name": "list",
"args": [ "args": [
@@ -548,18 +556,20 @@
"name": "double" "name": "double"
}, },
"type": { "type": {
"pos_args": [], "params": {
"args": [ "pos": [],
{ "mixed": [
"pos": 0, {
"name": "value", "pos": 0,
"type": { "name": "value",
"name": "float" "type": {
}, "name": "float"
"required": true },
} "required": true
], }
"kw_args": [], ],
"kw": []
},
"returns": { "returns": {
"name": "float" "name": "float"
} }
@@ -610,54 +620,58 @@
} }
], ],
"body": { "body": {
"pos_args": [ "params": {
{ "pos": [
"pos": 0, {
"name": "transform", "pos": 0,
"type": { "name": "transform",
"pos_args": [ "type": {
{ "params": {
"pos": 0, "pos": [
"name": "v", {
"type": { "pos": 0,
"name": "T", "name": "v",
"bound": null, "type": {
"variance": "INVARIANT" "name": "T",
}, "bound": null,
"required": true "variance": "INVARIANT"
} },
], "required": true
"args": [], }
"kw_args": [], ],
"returns": { "mixed": [],
"name": "U", "kw": []
"bound": null, },
"variance": "INVARIANT" "returns": {
} "name": "U",
},
"required": true
},
{
"pos": 1,
"name": "iterable",
"type": {
"name": "list",
"args": [
{
"name": "T",
"bound": null, "bound": null,
"variance": "INVARIANT" "variance": "INVARIANT"
} }
], },
"body": { "required": true
"name": "list"
}
}, },
"required": true {
} "pos": 1,
], "name": "iterable",
"args": [], "type": {
"kw_args": [], "name": "list",
"args": [
{
"name": "T",
"bound": null,
"variance": "INVARIANT"
}
],
"body": {
"name": "list"
}
},
"required": true
}
],
"mixed": [],
"kw": []
},
"returns": { "returns": {
"name": "list", "name": "list",
"args": [ "args": [
@@ -709,18 +723,20 @@
"name": "is_odd" "name": "is_odd"
}, },
"type": { "type": {
"pos_args": [], "params": {
"args": [ "pos": [],
{ "mixed": [
"pos": 0, {
"name": "value", "pos": 0,
"type": { "name": "value",
"name": "int" "type": {
}, "name": "int"
"required": true },
} "required": true
], }
"kw_args": [], ],
"kw": []
},
"returns": { "returns": {
"name": "bool" "name": "bool"
} }
@@ -771,54 +787,58 @@
} }
], ],
"body": { "body": {
"pos_args": [ "params": {
{ "pos": [
"pos": 0, {
"name": "transform", "pos": 0,
"type": { "name": "transform",
"pos_args": [ "type": {
{ "params": {
"pos": 0, "pos": [
"name": "v", {
"type": { "pos": 0,
"name": "T", "name": "v",
"bound": null, "type": {
"variance": "INVARIANT" "name": "T",
}, "bound": null,
"required": true "variance": "INVARIANT"
} },
], "required": true
"args": [], }
"kw_args": [], ],
"returns": { "mixed": [],
"name": "U", "kw": []
"bound": null, },
"variance": "INVARIANT" "returns": {
} "name": "U",
},
"required": true
},
{
"pos": 1,
"name": "iterable",
"type": {
"name": "list",
"args": [
{
"name": "T",
"bound": null, "bound": null,
"variance": "INVARIANT" "variance": "INVARIANT"
} }
], },
"body": { "required": true
"name": "list"
}
}, },
"required": true {
} "pos": 1,
], "name": "iterable",
"args": [], "type": {
"kw_args": [], "name": "list",
"args": [
{
"name": "T",
"bound": null,
"variance": "INVARIANT"
}
],
"body": {
"name": "list"
}
},
"required": true
}
],
"mixed": [],
"kw": []
},
"returns": { "returns": {
"name": "list", "name": "list",
"args": [ "args": [

View File

@@ -7,50 +7,51 @@
{ {
"_type": "Function", "_type": "Function",
"name": "func", "name": "func",
"posonlyargs": [], "params": {
"args": [ "_type": "ParamSpec",
{ "pos": [],
"name": "col1", "mixed": [
"type": { {
"_type": "BaseType", "name": "col1",
"base": "Column", "type": {
"args": [ "_type": "BaseType",
{ "base": "Column",
"_type": "ConstraintType", "args": [
"type": { {
"_type": "BaseType", "_type": "ConstraintType",
"base": "float", "type": {
"args": [] "_type": "BaseType",
}, "base": "float",
"constraint": "0 <= _ <= 1" "args": []
} },
] "constraint": "0 <= _ <= 1"
}
]
},
"default": null
}, },
"default": null {
}, "name": "col2",
{ "type": {
"name": "col2", "_type": "BaseType",
"type": { "base": "Column",
"_type": "BaseType", "args": [
"base": "Column", {
"args": [ "_type": "ConstraintType",
{ "type": {
"_type": "ConstraintType", "_type": "BaseType",
"type": { "base": "float",
"_type": "BaseType", "args": []
"base": "float", },
"args": [] "constraint": "0 <= _ <= 1"
}, }
"constraint": "0 <= _ <= 1" ]
} },
] "default": null
}, }
"default": null ],
} "kw": []
], },
"sink": null,
"kwonlyargs": [],
"kw_sink": null,
"returns": { "returns": {
"_type": "BaseType", "_type": "BaseType",
"base": "Column", "base": "Column",
@@ -119,41 +120,42 @@
{ {
"_type": "Function", "_type": "Function",
"name": "func2", "name": "func2",
"posonlyargs": [ "params": {
{ "_type": "ParamSpec",
"name": "a", "pos": [
"type": { {
"_type": "BaseType", "name": "a",
"base": "int", "type": {
"args": [] "_type": "BaseType",
}, "base": "int",
"default": null "args": []
} },
], "default": null
"args": [ }
{ ],
"name": "b", "mixed": [
"type": { {
"_type": "BaseType", "name": "b",
"base": "float", "type": {
"args": [] "_type": "BaseType",
}, "base": "float",
"default": null "args": []
} },
], "default": null
"sink": null, }
"kwonlyargs": [ ],
{ "kw": [
"name": "c", {
"type": { "name": "c",
"_type": "BaseType", "type": {
"base": "str", "_type": "BaseType",
"args": [] "base": "str",
}, "args": []
"default": null },
} "default": null
], }
"kw_sink": null, ]
},
"returns": null, "returns": null,
"body": [] "body": []
} }