@@ -13,88 +13,86 @@ def get_multi_source_blueprint(sources, name):
13
13
@param_bp .route ("/required_bool" , methods = ["GET" , "POST" ])
14
14
@param_bp .route ("/required_bool/<v>" , methods = ["GET" , "POST" ])
15
15
@ValidateParameters ()
16
- def multi_source_bool (v : bool = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
16
+ def multi_source_bool (v : bool = MultiSource (sources [0 ], sources [1 ])):
17
17
assert type (v ) is bool
18
18
return jsonify ({"v" : v })
19
19
20
20
@param_bp .route ("/optional_bool" , methods = ["GET" , "POST" ])
21
21
@param_bp .route ("/optional_bool/<v>" , methods = ["GET" , "POST" ])
22
22
@ValidateParameters ()
23
- def multi_source_optional_bool (v : Optional [bool ] = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
23
+ def multi_source_optional_bool (v : Optional [bool ] = MultiSource (sources [0 ], sources [1 ])):
24
24
return jsonify ({"v" : v })
25
25
26
26
@param_bp .route ("/required_date" , methods = ["GET" , "POST" ])
27
27
@param_bp .route ("/required_date/<v>" , methods = ["GET" , "POST" ])
28
28
@ValidateParameters ()
29
- def multi_source_date (v : datetime .date = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
29
+ def multi_source_date (v : datetime .date = MultiSource (sources [0 ], sources [1 ])):
30
30
assert type (v ) is datetime .date
31
31
return jsonify ({"v" : v .isoformat ()})
32
32
33
33
@param_bp .route ("/optional_date" , methods = ["GET" , "POST" ])
34
34
@param_bp .route ("/optional_date/<v>" , methods = ["GET" , "POST" ])
35
35
@ValidateParameters ()
36
- def multi_source_optional_date (v : Optional [datetime .date ] = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
36
+ def multi_source_optional_date (v : Optional [datetime .date ] = MultiSource (sources [0 ], sources [1 ])):
37
37
return jsonify ({"v" : v .isoformat () if v else v })
38
38
39
39
@param_bp .route ("/required_datetime" , methods = ["GET" , "POST" ])
40
40
@param_bp .route ("/required_datetime/<v>" , methods = ["GET" , "POST" ])
41
41
@ValidateParameters ()
42
- def multi_source_datetime (v : datetime .datetime = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
42
+ def multi_source_datetime (v : datetime .datetime = MultiSource (sources [0 ], sources [1 ])):
43
43
assert type (v ) is datetime .datetime
44
44
return jsonify ({"v" : v .isoformat ()})
45
45
46
46
@param_bp .route ("/optional_datetime" , methods = ["GET" , "POST" ])
47
47
@param_bp .route ("/optional_datetime/<v>" , methods = ["GET" , "POST" ])
48
48
@ValidateParameters ()
49
- def multi_source_optional_datetime (v : Optional [datetime .datetime ] = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
49
+ def multi_source_optional_datetime (v : Optional [datetime .datetime ] = MultiSource (sources [0 ], sources [1 ])):
50
50
return jsonify ({"v" : v .isoformat () if v else v })
51
51
52
52
@param_bp .route ("/required_dict" , methods = ["GET" , "POST" ])
53
53
# Route doesn't support dict parameters
54
54
@ValidateParameters ()
55
- def multi_source_dict (v : dict = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
55
+ def multi_source_dict (v : dict = MultiSource (sources [0 ], sources [1 ])):
56
56
assert type (v ) is dict
57
57
return jsonify ({"v" : v })
58
58
59
59
@param_bp .route ("/optional_dict" , methods = ["GET" , "POST" ])
60
60
# Route doesn't support dict parameters
61
61
@ValidateParameters ()
62
- def multi_source_optional_dict (v : Optional [dict ] = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
62
+ def multi_source_optional_dict (v : Optional [dict ] = MultiSource (sources [0 ], sources [1 ])):
63
63
return jsonify ({"v" : v })
64
64
65
65
@param_bp .route ("/required_float" , methods = ["GET" , "POST" ])
66
66
@param_bp .route ("/required_float/<v>" , methods = ["GET" , "POST" ])
67
67
@ValidateParameters ()
68
- def multi_source_float (v : float = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
68
+ def multi_source_float (v : float = MultiSource (sources [0 ], sources [1 ])):
69
69
assert type (v ) is float
70
70
return jsonify ({"v" : v })
71
71
72
72
@param_bp .route ("/optional_float" , methods = ["GET" , "POST" ])
73
73
@param_bp .route ("/optional_float/<v>" , methods = ["GET" , "POST" ])
74
74
@ValidateParameters ()
75
- def multi_source_optional_float (v : Optional [float ] = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
75
+ def multi_source_optional_float (v : Optional [float ] = MultiSource (sources [0 ], sources [1 ])):
76
76
return jsonify ({"v" : v })
77
77
78
-
79
78
@param_bp .route ("/required_int" , methods = ["GET" , "POST" ])
80
79
@param_bp .route ("/required_int/<v>" , methods = ["GET" , "POST" ])
81
80
@ValidateParameters ()
82
- def multi_source_int (v : int = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
81
+ def multi_source_int (v : int = MultiSource (sources [0 ], sources [1 ])):
83
82
assert type (v ) is int
84
83
return jsonify ({"v" : v })
85
84
86
85
@param_bp .route ("/optional_int" , methods = ["GET" , "POST" ])
87
86
@param_bp .route ("/optional_int/<v>" , methods = ["GET" , "POST" ])
88
87
@ValidateParameters ()
89
- def multi_source_optional_int (v : Optional [int ] = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
88
+ def multi_source_optional_int (v : Optional [int ] = MultiSource (sources [0 ], sources [1 ])):
90
89
return jsonify ({"v" : v })
91
90
92
-
93
91
# Only List[int] is tested here - the other existing tests for lists should be exhaustive enough to catch issues
94
92
@param_bp .route ("/required_list" , methods = ["GET" , "POST" ])
95
93
# Route doesn't support List parameters
96
94
@ValidateParameters ()
97
- def multi_source_list (v : List [int ] = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
95
+ def multi_source_list (v : List [int ] = MultiSource (sources [0 ], sources [1 ])):
98
96
assert type (v ) is list
99
97
assert len (v ) > 0
100
98
assert type (v [0 ]) is int
@@ -103,46 +101,52 @@ def multi_source_list(v: List[int] = MultiSource([sources[0](), sources[1]()])):
103
101
@param_bp .route ("/optional_list" , methods = ["GET" , "POST" ])
104
102
# Route doesn't support List parameters
105
103
@ValidateParameters ()
106
- def multi_source_optional_list (v : Optional [List [int ]] = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
104
+ def multi_source_optional_list (v : Optional [List [int ]] = MultiSource (sources [0 ], sources [1 ])):
107
105
return jsonify ({"v" : v })
108
106
109
107
@param_bp .route ("/required_str" , methods = ["GET" , "POST" ])
110
108
@param_bp .route ("/required_str/<v>" , methods = ["GET" , "POST" ])
111
109
@ValidateParameters ()
112
- def multi_source_str (v : str = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
110
+ def multi_source_str (v : str = MultiSource (sources [0 ], sources [1 ])):
113
111
assert type (v ) is str
114
112
return jsonify ({"v" : v })
115
113
116
114
@param_bp .route ("/optional_str" , methods = ["GET" , "POST" ])
117
115
@param_bp .route ("/optional_str/<v>" , methods = ["GET" , "POST" ])
118
116
@ValidateParameters ()
119
- def multi_source_optional_str (v : Optional [str ] = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
117
+ def multi_source_optional_str (v : Optional [str ] = MultiSource (sources [0 ], sources [1 ])):
120
118
return jsonify ({"v" : v })
121
119
122
120
@param_bp .route ("/required_time" , methods = ["GET" , "POST" ])
123
121
@param_bp .route ("/required_time/<v>" , methods = ["GET" , "POST" ])
124
122
@ValidateParameters ()
125
- def multi_source_time (v : datetime .time = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
123
+ def multi_source_time (v : datetime .time = MultiSource (sources [0 ], sources [1 ])):
126
124
assert type (v ) is datetime .time
127
125
return jsonify ({"v" : v .isoformat ()})
128
126
129
127
@param_bp .route ("/optional_time" , methods = ["GET" , "POST" ])
130
128
@param_bp .route ("/optional_time/<v>" , methods = ["GET" , "POST" ])
131
129
@ValidateParameters ()
132
- def multi_source_optional_time (v : Optional [datetime .time ] = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
130
+ def multi_source_optional_time (v : Optional [datetime .time ] = MultiSource (sources [0 ], sources [1 ])):
133
131
return jsonify ({"v" : v .isoformat () if v else v })
134
132
135
133
@param_bp .route ("/required_union" , methods = ["GET" , "POST" ])
136
134
@param_bp .route ("/required_union/<v>" , methods = ["GET" , "POST" ])
137
135
@ValidateParameters ()
138
- def multi_source_union (v : Union [int , str ] = MultiSource ([ sources [0 ]() , sources [1 ]() ])):
136
+ def multi_source_union (v : Union [int , str ] = MultiSource (sources [0 ], sources [1 ])):
139
137
assert type (v ) is int or type (v ) is str
140
138
return jsonify ({"v" : v })
141
139
142
140
@param_bp .route ("/optional_union" , methods = ["GET" , "POST" ])
143
141
@param_bp .route ("/optional_union/<v>" , methods = ["GET" , "POST" ])
144
142
@ValidateParameters ()
145
- def multi_source_optional_union (v : Optional [Union [int , str ]] = MultiSource ([sources [0 ](), sources [1 ]()])):
143
+ def multi_source_optional_union (v : Optional [Union [int , str ]] = MultiSource (sources [0 ], sources [1 ])):
144
+ return jsonify ({"v" : v })
145
+
146
+ @param_bp .route ("/kwargs" , methods = ["GET" , "POST" ])
147
+ @param_bp .route ("/kwargs/<v>" , methods = ["GET" , "POST" ])
148
+ @ValidateParameters ()
149
+ def multi_source_kwargs (v : int = MultiSource (sources [0 ], sources [1 ], min_int = 0 )):
146
150
return jsonify ({"v" : v })
147
151
148
- return param_bp
152
+ return param_bp
0 commit comments