-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathtest_api_base_response.py
65 lines (45 loc) · 1.74 KB
/
test_api_base_response.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
import json
import pytest
from easy.response import BaseAPIResponse
def test_base_api_result_base():
assert BaseAPIResponse("").json_data["data"] == ""
assert BaseAPIResponse("1").json_data["data"] == "1"
assert BaseAPIResponse("0").json_data["data"] == "0"
assert BaseAPIResponse().json_data["data"] == {}
assert BaseAPIResponse([]).json_data["data"] == []
assert BaseAPIResponse(True).json_data["data"] is True
assert BaseAPIResponse(False).json_data["data"] is False
assert BaseAPIResponse([1, 2, 3]).json_data["data"] == [1, 2, 3]
def test_base_api_result_dict():
assert BaseAPIResponse({"a": 1, "b": 2}).json_data["data"] == {
"a": 1,
"b": 2,
}
assert (BaseAPIResponse({"code": 2, "im": 14})).json_data["data"]["im"] == 14
assert (BaseAPIResponse({"code": 2, "im": 14})).json_data["data"]["code"] == 2
def test_base_api_result_message():
assert (
BaseAPIResponse(code=-1, message="error test").json_data["message"]
== "error test"
)
assert BaseAPIResponse().json_data["message"]
def test_base_api_edit():
orig_resp = BaseAPIResponse(
{"item_id": 2, "im": 14},
code=0,
)
with pytest.raises(KeyError):
print(orig_resp.json_data["detail"])
data = orig_resp.json_data
data["detail"] = "Edited!!!"
orig_resp.content = json.dumps(data)
assert orig_resp.json_data["detail"] == "Edited!!!"
data = orig_resp.json_data
assert data["code"] == 0
data["code"] = 401
orig_resp.update_content(data)
assert orig_resp.json_data["code"] == 401
assert orig_resp.json_data["data"]["im"] == 14
data["data"]["im"] = 8888
orig_resp.update_content(data)
assert orig_resp.json_data["data"]["im"] == 8888