Skip to content

Commit f15af98

Browse files
authored
Merge pull request #117 from TTWShell/release/2.0.3
fix set response code = 0 err
2 parents b90e940 + 5c02f1f commit f15af98

File tree

4 files changed

+23
-6
lines changed

4 files changed

+23
-6
lines changed

docs/changelog.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
Change history
22
==============
33

4+
2.0.3 (2021-07-08)
5+
******************
6+
7+
* Fix set response.xxxResult code = 0.
8+
49
2.0.2 (2021-07-08)
510
******************
611

hobbit_core/response.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,8 @@ def __init__(self, response=None, status=None, headers=None,
6464
'Error response, must include keys: code, data, detail, message'
6565
super(Result, self).__init__(
6666
response=dumps(response, indent=0, separators=(',', ':')) + '\n',
67-
status=status or self.status, headers=headers, mimetype=mimetype,
67+
status=status if status is not None else self.status,
68+
headers=headers, mimetype=mimetype,
6869
content_type=content_type, direct_passthrough=direct_passthrough)
6970

7071

@@ -76,7 +77,8 @@ class SuccessResult(Result):
7677
def __init__(self, message: str = '', code: Optional[int] = None,
7778
detail: Any = None, status: Optional[int] = None, data=None):
7879
super(SuccessResult, self).__init__(
79-
gen_response(code or self.status, message, detail, data),
80+
gen_response(code if code is not None else self.status,
81+
message, detail, data),
8082
status or self.status)
8183

8284

@@ -88,7 +90,9 @@ class FailedResult(Result):
8890
def __init__(self, message: str = '', code: Optional[int] = None,
8991
detail: Any = None):
9092
super(FailedResult, self).__init__(
91-
gen_response(code or self.status, message, detail), self.status)
93+
gen_response(
94+
code if code is not None else self.status, message, detail),
95+
self.status)
9296

9397

9498
class UnauthorizedResult(FailedResult):

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ def gen_data(data_root='static'):
3232

3333
setup(
3434
name='hobbit-core',
35-
version='2.0.2',
35+
version='2.0.3',
3636
python_requires='>=3.6, <4',
3737
description='Hobbit - A flask project generator.',
3838
long_description=long_description,

tests/test_response.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ class TestResponse(BaseTest):
1818
((1, '测试', ['1'], []), {
1919
'code': '1', 'message': '测试', 'detail': ['1'], 'data': []}),
2020
])
21-
def test_gen_response(self, input_, excepted):
21+
def test_gen_response(self, app, input_, excepted):
2222
assert excepted == gen_response(*input_)
2323

2424
def test_result(self):
@@ -34,7 +34,7 @@ def test_result(self):
3434
result = Result(response, status=201)
3535
assert result.status_code == 201
3636

37-
def test_success_result(self):
37+
def test_success_result(self, app):
3838
# assert status can rewrite
3939
excepted = b'{\n"code":"200",\n"data":null,\n"detail":null,\n"message":"message"\n}\n' # NOQA
4040
result = SuccessResult('message', status=301)
@@ -45,6 +45,14 @@ def test_success_result(self):
4545
result = SuccessResult()
4646
assert result.status_code == 200
4747

48+
app.config['HOBBIT_USE_CODE_ORIGIN_TYPE'] = True
49+
result = SuccessResult(code=0)
50+
assert b'"code":0' in result.data
51+
52+
app.config['HOBBIT_USE_CODE_ORIGIN_TYPE'] = False
53+
result = SuccessResult(code=0)
54+
assert b'"code":"0"' in result.data
55+
4856
def test_failed_result(self):
4957
result = FailedResult()
5058
assert result.status_code == 400

0 commit comments

Comments
 (0)