{:ok, %{admin: admin, token: token, conn: conn}}
end
- describe "GET /api/pleroma/admin/reports/:id" do
+ describe "GET /api/v1/pleroma/admin/reports/:id" do
test "returns report by its id", %{conn: conn} do
[reporter, target_user] = insert_pair(:user)
activity = insert(:note_activity, user: target_user)
conn
|> put_req_header("content-type", "application/json")
- |> post("/api/pleroma/admin/reports/#{report_id}/notes", %{
+ |> post("/api/v1/pleroma/admin/reports/#{report_id}/notes", %{
content: "this is an admin note"
})
response =
conn
- |> get("/api/pleroma/admin/reports/#{report_id}")
+ |> get("/api/v1/pleroma/admin/reports/#{report_id}")
|> json_response_and_validate_schema(:ok)
assert response["id"] == report_id
end
test "returns 404 when report id is invalid", %{conn: conn} do
- conn = get(conn, "/api/pleroma/admin/reports/test")
+ conn = get(conn, "/api/v1/pleroma/admin/reports/test")
assert json_response_and_validate_schema(conn, :not_found) == %{"error" => "Not found"}
end
end
- describe "PATCH /api/pleroma/admin/reports" do
+ describe "PATCH /api/v1/pleroma/admin/reports" do
setup do
[reporter, target_user] = insert_pair(:user)
activity = insert(:note_activity, user: target_user)
conn
|> assign(:token, read_token)
|> put_req_header("content-type", "application/json")
- |> patch("/api/pleroma/admin/reports", %{
+ |> patch("/api/v1/pleroma/admin/reports", %{
"reports" => [%{"state" => "resolved", "id" => id}]
})
|> json_response_and_validate_schema(403)
conn
|> assign(:token, write_token)
|> put_req_header("content-type", "application/json")
- |> patch("/api/pleroma/admin/reports", %{
+ |> patch("/api/v1/pleroma/admin/reports", %{
"reports" => [%{"state" => "resolved", "id" => id}]
})
|> json_response_and_validate_schema(:no_content)
test "mark report as resolved", %{conn: conn, id: id, admin: admin} do
conn
|> put_req_header("content-type", "application/json")
- |> patch("/api/pleroma/admin/reports", %{
+ |> patch("/api/v1/pleroma/admin/reports", %{
"reports" => [
%{"state" => "resolved", "id" => id}
]
test "closes report", %{conn: conn, id: id, admin: admin} do
conn
|> put_req_header("content-type", "application/json")
- |> patch("/api/pleroma/admin/reports", %{
+ |> patch("/api/v1/pleroma/admin/reports", %{
"reports" => [
%{"state" => "closed", "id" => id}
]
conn =
conn
|> put_req_header("content-type", "application/json")
- |> patch("/api/pleroma/admin/reports", %{
+ |> patch("/api/v1/pleroma/admin/reports", %{
"reports" => [
%{"state" => "test", "id" => id}
]
conn =
conn
|> put_req_header("content-type", "application/json")
- |> patch("/api/pleroma/admin/reports", %{
+ |> patch("/api/v1/pleroma/admin/reports", %{
"reports" => [
%{"state" => "closed", "id" => "test"}
]
} do
conn
|> put_req_header("content-type", "application/json")
- |> patch("/api/pleroma/admin/reports", %{
+ |> patch("/api/v1/pleroma/admin/reports", %{
"reports" => [
%{"state" => "resolved", "id" => id},
%{"state" => "closed", "id" => second_report_id}
end
end
- describe "GET /api/pleroma/admin/reports" do
+ describe "GET /api/v1/pleroma/admin/reports" do
test "returns empty response when no reports created", %{conn: conn} do
response =
conn
build_conn()
|> assign(:user, user)
|> assign(:token, token)
- |> get("/api/pleroma/admin/reports")
+ |> get("/api/v1/pleroma/admin/reports")
assert json_response(conn, :forbidden) ==
%{"error" => "User is not a staff member."}
end
test "returns 403 when requested by anonymous" do
- conn = get(build_conn(), "/api/pleroma/admin/reports")
+ conn = get(build_conn(), "/api/v1/pleroma/admin/reports")
assert json_response(conn, :forbidden) == %{
"error" => "Invalid credentials."
end
end
- describe "POST /api/pleroma/admin/reports/:id/notes" do
+ describe "POST /api/v1/pleroma/admin/reports/:id/notes" do
setup %{conn: conn, admin: admin} do
[reporter, target_user] = insert_pair(:user)
activity = insert(:note_activity, user: target_user)
conn
|> put_req_header("content-type", "application/json")
- |> post("/api/pleroma/admin/reports/#{report_id}/notes", %{
+ |> post("/api/v1/pleroma/admin/reports/#{report_id}/notes", %{
content: "this is disgusting!"
})
conn
|> put_req_header("content-type", "application/json")
- |> post("/api/pleroma/admin/reports/#{report_id}/notes", %{
+ |> post("/api/v1/pleroma/admin/reports/#{report_id}/notes", %{
content: "this is disgusting2!"
})
end
test "it returns reports with notes", %{conn: conn, admin: admin} do
- conn = get(conn, "/api/pleroma/admin/reports")
+ conn = get(conn, "/api/v1/pleroma/admin/reports")
response = json_response_and_validate_schema(conn, 200)
notes = hd(response["reports"])["notes"]
assert ReportNote |> Repo.all() |> length() == 2
assert [note, _] = Repo.all(ReportNote)
- delete(conn, "/api/pleroma/admin/reports/#{report_id}/notes/#{note.id}")
+ delete(conn, "/api/v1/pleroma/admin/reports/#{report_id}/notes/#{note.id}")
assert ReportNote |> Repo.all() |> length() == 1
end