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