File size: 1,352 Bytes
a783939
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
def test_feedback_correct(client, device_header):
    r = client.post(
        "/v1/analyze/text",
        json={"text": "Срочно сообщите код из СМС!"},
        headers=device_header,
    )
    analysis_id = r.json()["id"]
    f = client.post(
        "/v1/feedback",
        json={"analysis_id": analysis_id, "correct": True, "comment": "точно мошенник"},
        headers=device_header,
    )
    assert f.status_code == 200
    body = f.json()
    assert body["ok"] is True
    assert body["analysis_id"] == analysis_id


def test_feedback_not_found(client, device_header):
    f = client.post(
        "/v1/feedback",
        json={
            "analysis_id": "99999999-9999-9999-9999-999999999999",
            "correct": False,
        },
        headers=device_header,
    )
    assert f.status_code == 404
    assert f.json()["error"] == "NOT_FOUND"


def test_feedback_isolated_per_device(client, device_header, other_device_header):
    r = client.post(
        "/v1/analyze/text",
        json={"text": "Срочно сообщите код из СМС!"},
        headers=device_header,
    )
    analysis_id = r.json()["id"]
    f = client.post(
        "/v1/feedback",
        json={"analysis_id": analysis_id, "correct": True},
        headers=other_device_header,
    )
    assert f.status_code == 404