Skip to content

Commit 662665e

Browse files
author
c-kruse
committed
Add test cases to cover tuple return values from view functions
1 parent 57ef362 commit 662665e

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

tests/test_views.py

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,37 @@ def view(**kwargs):
1919
res = client.get('/', {'name': 'freddie'})
2020
assert res.json == {'name': 'freddie'}
2121

22+
def test_view_returning_tuple(self, app, client):
23+
@app.route('/all')
24+
@use_kwargs({'name': fields.Str()})
25+
def all(**kwargs):
26+
return kwargs, 202, {'x-msg': 'test'}
27+
28+
@app.route('/headers')
29+
@use_kwargs({'name': fields.Str()})
30+
def view_headers(**kwargs):
31+
return kwargs, {'x-msg': 'test'}
32+
33+
@app.route('/code')
34+
@use_kwargs({'name': fields.Str()})
35+
def view_code(**kwargs):
36+
return kwargs, 202
37+
38+
res_all = client.get('/all', {'name': 'freddie'})
39+
assert res_all.json == {'name': 'freddie'}
40+
assert res_all.status_code == 202
41+
assert res_all.headers.get('x-msg') == 'test'
42+
43+
res_headers = client.get('/headers', {'name': 'freddie'})
44+
assert res_headers.json == {'name': 'freddie'}
45+
assert res_headers.status_code == 200
46+
assert res_headers.headers.get('x-msg') == 'test'
47+
48+
res_code = client.get('/code', {'name': 'freddie'})
49+
assert res_code.json == {'name': 'freddie'}
50+
assert res_code.status_code == 202
51+
assert 'x-msg' not in res_code.headers
52+
2253
def test_use_kwargs_schema(self, app, client):
2354
class ArgSchema(Schema):
2455
name = fields.Str()

0 commit comments

Comments
 (0)