| from math import inf |
|
|
| import pytest |
| from fastapi.testclient import TestClient |
|
|
|
|
| @pytest.fixture(scope="package") |
| def client(): |
| from hibiapi.app import app, application |
|
|
| application.RATE_LIMIT_MAX = inf |
|
|
| with TestClient(app, base_url="http://testserver/api/tieba/") as client: |
| yield client |
|
|
|
|
| def test_post_list(client: TestClient): |
| response = client.get("post_list", params={"name": "minecraft"}) |
| assert response.status_code == 200 |
| if response.json()["error_code"] != "0": |
| pytest.xfail(reason=response.text) |
|
|
|
|
| def test_post_list_chinese(client: TestClient): |
| |
| response = client.get("post_list", params={"name": "图拉丁"}) |
| assert response.status_code == 200 |
| if response.json()["error_code"] != "0": |
| pytest.xfail(reason=response.text) |
|
|
|
|
| def test_post_detail(client: TestClient): |
| response = client.get("post_detail", params={"tid": 1766018024}) |
| assert response.status_code == 200 |
| if response.json()["error_code"] != "0": |
| pytest.xfail(reason=response.text) |
|
|
|
|
| def test_subpost_detail(client: TestClient): |
| response = client.get( |
| "subpost_detail", params={"tid": 1766018024, "pid": 22616319749} |
| ) |
| assert response.status_code == 200 |
| assert int(response.json()["error_code"]) == 0 |
|
|
|
|
| def test_user_profile(client: TestClient): |
| response = client.get("user_profile", params={"uid": 105525655}) |
| assert response.status_code == 200 |
| assert int(response.json()["error_code"]) == 0 |
|
|