7
7
8
8
@app .route ("/html1" ) # $routeSetup="/html1"
9
9
def html1 (): # $routeHandler
10
- return "<h1>hello</h1>" # $HttpResponse $ mimetype=text/html $ responseBody="<h1>hello</h1>"
10
+ return "<h1>hello</h1>" # $HttpResponse mimetype=text/html responseBody="<h1>hello</h1>"
11
11
12
12
13
13
@app .route ("/html2" ) # $routeSetup="/html2"
14
14
def html2 (): # $routeHandler
15
15
# note that response saved in a variable intentionally -- we wan the annotations to
16
16
# show that we recognize the response creation, and not the return (hopefully). (and
17
17
# do the same in the following of the file)
18
- resp = make_response ("<h1>hello</h1>" ) # $HttpResponse $ mimetype=text/html $ responseBody="<h1>hello</h1>"
19
- return resp # $f+: HttpResponse $f+: mimetype=text/html $f+: responseBody=resp
18
+ resp = make_response ("<h1>hello</h1>" ) # $HttpResponse mimetype=text/html responseBody="<h1>hello</h1>"
19
+ return resp # $ SPURIOUS: HttpResponse mimetype=text/html responseBody=resp
20
20
21
21
22
22
@app .route ("/html3" ) # $routeSetup="/html3"
23
23
def html3 (): # $routeHandler
24
- resp = app .make_response ("<h1>hello</h1>" ) # $HttpResponse $ mimetype=text/html $ responseBody="<h1>hello</h1>"
25
- return resp # $f+: HttpResponse $f+: mimetype=text/html $f+: responseBody=resp
24
+ resp = app .make_response ("<h1>hello</h1>" ) # $HttpResponse mimetype=text/html responseBody="<h1>hello</h1>"
25
+ return resp # $ SPURIOUS: HttpResponse mimetype=text/html responseBody=resp
26
26
27
27
28
28
# TODO: Create test-cases for the many ways that `make_response` can be used
@@ -31,38 +31,38 @@ def html3(): # $routeHandler
31
31
32
32
@app .route ("/html4" ) # $routeSetup="/html4"
33
33
def html4 (): # $routeHandler
34
- resp = Response ("<h1>hello</h1>" ) # $HttpResponse $ mimetype=text/html $ responseBody="<h1>hello</h1>"
35
- return resp # $f+: HttpResponse $f+: mimetype=text/html $f+: responseBody=resp
34
+ resp = Response ("<h1>hello</h1>" ) # $HttpResponse mimetype=text/html responseBody="<h1>hello</h1>"
35
+ return resp # $ SPURIOUS: HttpResponse mimetype=text/html responseBody=resp
36
36
37
37
38
38
@app .route ("/html5" ) # $routeSetup="/html5"
39
39
def html5 (): # $routeHandler
40
40
# note: flask.Flask.response_class is set to `flask.Response` by default.
41
41
# it can be overridden, but we don't try to handle that right now.
42
- resp = Flask .response_class ("<h1>hello</h1>" ) # $HttpResponse $ mimetype=text/html $ responseBody="<h1>hello</h1>"
43
- return resp # $f+: HttpResponse $f+: mimetype=text/html $f+: responseBody=resp
42
+ resp = Flask .response_class ("<h1>hello</h1>" ) # $HttpResponse mimetype=text/html responseBody="<h1>hello</h1>"
43
+ return resp # $ SPURIOUS: HttpResponse mimetype=text/html responseBody=resp
44
44
45
45
46
46
@app .route ("/html6" ) # $routeSetup="/html6"
47
47
def html6 (): # $routeHandler
48
48
# note: app.response_class (flask.Flask.response_class) is set to `flask.Response` by default.
49
49
# it can be overridden, but we don't try to handle that right now.
50
- resp = app .response_class ("<h1>hello</h1>" ) # $HttpResponse $ mimetype=text/html $ responseBody="<h1>hello</h1>"
51
- return resp # $f+: HttpResponse $f+: mimetype=text/html $f+: responseBody=resp
50
+ resp = app .response_class ("<h1>hello</h1>" ) # $HttpResponse mimetype=text/html responseBody="<h1>hello</h1>"
51
+ return resp # $ SPURIOUS: HttpResponse mimetype=text/html responseBody=resp
52
52
53
53
54
54
@app .route ("/html7" ) # $routeSetup="/html7"
55
55
def html7 (): # $routeHandler
56
- resp = make_response () # $HttpResponse $ mimetype=text/html
57
- resp .set_data ("<h1>hello</h1>" ) # $f-: responseBody="<h1>hello</h1>"
58
- return resp # $f+: HttpResponse $f+: mimetype=text/html $f+: responseBody=resp
56
+ resp = make_response () # $HttpResponse mimetype=text/html
57
+ resp .set_data ("<h1>hello</h1>" ) # $ MISSING: responseBody="<h1>hello</h1>"
58
+ return resp # $ SPURIOUS: HttpResponse mimetype=text/html responseBody=resp
59
59
60
60
61
61
@app .route ("/jsonify" ) # $routeSetup="/jsonify"
62
62
def jsonify_route (): # $routeHandler
63
63
data = {"foo" : "bar" }
64
- resp = jsonify (data ) # $f-: HttpResponse $f-: mimetype=application/json $f-: responseBody=data
65
- return resp # $f+: HttpResponse $f+: mimetype=text/html $f+: responseBody=resp
64
+ resp = jsonify (data ) # $ MISSING: HttpResponse mimetype=application/json responseBody=data
65
+ return resp # $ SPURIOUS: HttpResponse mimetype=text/html responseBody=resp
66
66
67
67
################################################################################
68
68
# Tricky return handling
@@ -73,19 +73,19 @@ def tricky_return1(): # $routeHandler
73
73
if "raw" in request .args :
74
74
resp = "<h1>hellu</h1>"
75
75
else :
76
- resp = make_response ("<h1>hello</h1>" ) # $HttpResponse $ mimetype=text/html $ responseBody="<h1>hello</h1>"
77
- return resp # $HttpResponse $ mimetype=text/html $ responseBody=resp
76
+ resp = make_response ("<h1>hello</h1>" ) # $HttpResponse mimetype=text/html responseBody="<h1>hello</h1>"
77
+ return resp # $HttpResponse mimetype=text/html responseBody=resp
78
78
79
79
def helper ():
80
80
if "raw" in request .args :
81
81
return "<h1>hellu</h1>"
82
82
else :
83
- return make_response ("<h1>hello</h1>" ) # $HttpResponse $ mimetype=text/html $ responseBody="<h1>hello</h1>"
83
+ return make_response ("<h1>hello</h1>" ) # $HttpResponse mimetype=text/html responseBody="<h1>hello</h1>"
84
84
85
85
@app .route ("/tricky-return2" ) # $routeSetup="/tricky-return2"
86
86
def tricky_return2 (): # $routeHandler
87
87
resp = helper ()
88
- return resp # $HttpResponse $ mimetype=text/html $ responseBody=resp
88
+ return resp # $HttpResponse mimetype=text/html responseBody=resp
89
89
90
90
91
91
################################################################################
@@ -95,16 +95,16 @@ def tricky_return2(): # $routeHandler
95
95
96
96
@app .route ("/content-type/response-modification1" ) # $routeSetup="/content-type/response-modification1"
97
97
def response_modification1 (): # $routeHandler
98
- resp = make_response ("<h1>hello</h1>" ) # $HttpResponse $ mimetype=text/html $ responseBody="<h1>hello</h1>"
99
- resp .content_type = "text/plain" # $f-: HttpResponse $f-: mimetype=text/plain
100
- return resp # $f+: HttpResponse $f+: mimetype=text/html $f+: responseBody=resp
98
+ resp = make_response ("<h1>hello</h1>" ) # $HttpResponse mimetype=text/html responseBody="<h1>hello</h1>"
99
+ resp .content_type = "text/plain" # $ MISSING: HttpResponse mimetype=text/plain
100
+ return resp # $ SPURIOUS: HttpResponse mimetype=text/html responseBody=resp
101
101
102
102
103
103
@app .route ("/content-type/response-modification2" ) # $routeSetup="/content-type/response-modification2"
104
104
def response_modification2 (): # $routeHandler
105
- resp = make_response ("<h1>hello</h1>" ) # $HttpResponse $ mimetype=text/html $ responseBody="<h1>hello</h1>"
106
- resp .headers ["content-type" ] = "text/plain" # $f-: HttpResponse $f-: mimetype=text/plain
107
- return resp # $f+: HttpResponse $f+: mimetype=text/html $f+: responseBody=resp
105
+ resp = make_response ("<h1>hello</h1>" ) # $HttpResponse mimetype=text/html responseBody="<h1>hello</h1>"
106
+ resp .headers ["content-type" ] = "text/plain" # $ MISSING: HttpResponse mimetype=text/plain
107
+ return resp # $ SPURIOUS: HttpResponse mimetype=text/html responseBody=resp
108
108
109
109
110
110
# Exploration of mimetype/content_type/headers arguments to `app.response_class` -- things can get tricky
@@ -113,60 +113,60 @@ def response_modification2(): # $routeHandler
113
113
114
114
@app .route ("/content-type/Response1" ) # $routeSetup="/content-type/Response1"
115
115
def Response1 (): # $routeHandler
116
- resp = Response ("<h1>hello</h1>" , mimetype = "text/plain" ) # $HttpResponse $ mimetype=text/plain $ responseBody="<h1>hello</h1>"
117
- return resp # $f+: HttpResponse $f+: mimetype=text/html $f+: responseBody=resp
116
+ resp = Response ("<h1>hello</h1>" , mimetype = "text/plain" ) # $HttpResponse mimetype=text/plain responseBody="<h1>hello</h1>"
117
+ return resp # $ SPURIOUS: HttpResponse mimetype=text/html responseBody=resp
118
118
119
119
120
120
@app .route ("/content-type/Response2" ) # $routeSetup="/content-type/Response2"
121
121
def Response2 (): # $routeHandler
122
- resp = Response ("<h1>hello</h1>" , content_type = "text/plain; charset=utf-8" ) # $HttpResponse $ mimetype=text/plain $ responseBody="<h1>hello</h1>"
123
- return resp # $f+: HttpResponse $f+: mimetype=text/html $f+: responseBody=resp
122
+ resp = Response ("<h1>hello</h1>" , content_type = "text/plain; charset=utf-8" ) # $HttpResponse mimetype=text/plain responseBody="<h1>hello</h1>"
123
+ return resp # $ SPURIOUS: HttpResponse mimetype=text/html responseBody=resp
124
124
125
125
126
126
@app .route ("/content-type/Response3" ) # $routeSetup="/content-type/Response3"
127
127
def Response3 (): # $routeHandler
128
128
# content_type argument takes priority (and result is text/plain)
129
- resp = Response ("<h1>hello</h1>" , content_type = "text/plain; charset=utf-8" , mimetype = "text/html" ) # $HttpResponse $ mimetype=text/plain $ responseBody="<h1>hello</h1>"
130
- return resp # $f+: HttpResponse $f+: mimetype=text/html $f+: responseBody=resp
129
+ resp = Response ("<h1>hello</h1>" , content_type = "text/plain; charset=utf-8" , mimetype = "text/html" ) # $HttpResponse mimetype=text/plain responseBody="<h1>hello</h1>"
130
+ return resp # $ SPURIOUS: HttpResponse mimetype=text/html responseBody=resp
131
131
132
132
133
133
@app .route ("/content-type/Response4" ) # $routeSetup="/content-type/Response4"
134
134
def Response4 (): # $routeHandler
135
135
# note: capitalization of Content-Type does not matter
136
- resp = Response ("<h1>hello</h1>" , headers = {"Content-TYPE" : "text/plain" }) # $HttpResponse $f+: mimetype=text/html $f-: mimetype=text/plain $responseBody="<h1>hello</h1>"
137
- return resp # $f+: HttpResponse $f+: mimetype=text/html $f+: responseBody=resp
136
+ resp = Response ("<h1>hello</h1>" , headers = {"Content-TYPE" : "text/plain" }) # $HttpResponse responseBody="<h1>hello</h1>" SPURIOUS: mimetype=text/html MISSING: mimetype=text/plain
137
+ return resp # $ SPURIOUS: HttpResponse mimetype=text/html responseBody=resp
138
138
139
139
140
140
@app .route ("/content-type/Response5" ) # $routeSetup="/content-type/Response5"
141
141
def Response5 (): # $routeHandler
142
142
# content_type argument takes priority (and result is text/plain)
143
143
# note: capitalization of Content-Type does not matter
144
- resp = Response ("<h1>hello</h1>" , headers = {"Content-TYPE" : "text/html" }, content_type = "text/plain; charset=utf-8" ) # $HttpResponse $ mimetype=text/plain $ responseBody="<h1>hello</h1>"
145
- return resp # $f+: HttpResponse $f+: mimetype=text/html $f+: responseBody=resp
144
+ resp = Response ("<h1>hello</h1>" , headers = {"Content-TYPE" : "text/html" }, content_type = "text/plain; charset=utf-8" ) # $HttpResponse mimetype=text/plain responseBody="<h1>hello</h1>"
145
+ return resp # $ SPURIOUS: HttpResponse mimetype=text/html responseBody=resp
146
146
147
147
148
148
@app .route ("/content-type/Response6" ) # $routeSetup="/content-type/Response6"
149
149
def Response6 (): # $routeHandler
150
150
# mimetype argument takes priority over header (and result is text/plain)
151
151
# note: capitalization of Content-Type does not matter
152
- resp = Response ("<h1>hello</h1>" , headers = {"Content-TYPE" : "text/html" }, mimetype = "text/plain" ) # $HttpResponse $ mimetype=text/plain $ responseBody="<h1>hello</h1>"
153
- return resp # $f+: HttpResponse $f+: mimetype=text/html $f+: responseBody=resp
152
+ resp = Response ("<h1>hello</h1>" , headers = {"Content-TYPE" : "text/html" }, mimetype = "text/plain" ) # $HttpResponse mimetype=text/plain responseBody="<h1>hello</h1>"
153
+ return resp # $ SPURIOUS: HttpResponse mimetype=text/html responseBody=resp
154
154
155
155
156
156
@app .route ("/content-type/Flask-response-class" ) # $routeSetup="/content-type/Flask-response-class"
157
157
def Flask_response_class (): # $routeHandler
158
158
# note: flask.Flask.response_class is set to `flask.Response` by default.
159
159
# it can be overridden, but we don't try to handle that right now.
160
- resp = Flask .response_class ("<h1>hello</h1>" , mimetype = "text/plain" ) # $HttpResponse $ mimetype=text/plain $ responseBody="<h1>hello</h1>"
161
- return resp # $f+: HttpResponse $f+: mimetype=text/html $f+: responseBody=resp
160
+ resp = Flask .response_class ("<h1>hello</h1>" , mimetype = "text/plain" ) # $HttpResponse mimetype=text/plain responseBody="<h1>hello</h1>"
161
+ return resp # $ SPURIOUS: HttpResponse mimetype=text/html responseBody=resp
162
162
163
163
164
164
@app .route ("/content-type/app-response-class" ) # $routeSetup="/content-type/app-response-class"
165
165
def app_response_class (): # $routeHandler
166
166
# note: app.response_class (flask.Flask.response_class) is set to `flask.Response` by default.
167
167
# it can be overridden, but we don't try to handle that right now.
168
- resp = app .response_class ("<h1>hello</h1>" , mimetype = "text/plain" ) # $HttpResponse $ mimetype=text/plain $ responseBody="<h1>hello</h1>"
169
- return resp # $f+: HttpResponse $f+: mimetype=text/html $f+: responseBody=resp
168
+ resp = app .response_class ("<h1>hello</h1>" , mimetype = "text/plain" ) # $HttpResponse mimetype=text/plain responseBody="<h1>hello</h1>"
169
+ return resp # $ SPURIOUS: HttpResponse mimetype=text/html responseBody=resp
170
170
171
171
172
172
# TODO: add tests for setting status code
0 commit comments