defmodule NullaWeb.OutboxControllerTest do use NullaWeb.ConnCase import Nulla.Fixtures.Data setup do create_data() :ok end describe "GET /users/username/outbox" do test "returns ActivityPub JSON of outbox", %{conn: conn} do conn = conn |> get(~p"/users/test/outbox") assert response = json_response(conn, 200) assert is_binary(response["@context"]) assert response["id"] == "http://localhost/users/test/outbox" assert response["type"] == "OrderedCollection" assert response["totalItems"] == 1 assert response["first"] == "http://localhost/users/test/outbox?page=true" assert response["last"] == "http://localhost/users/test/outbox?min_id=0&page=true" end test "returns ActivityPub JSON of outbox with params", %{conn: conn} do conn = conn |> get(~p"/users/test/outbox?page=true") assert response = json_response(conn, 200) assert is_list(response["@context"]) assert response["id"] == "http://localhost/users/test/outbox?page=true" assert response["type"] == "OrderedCollectionPage" assert is_binary(response["next"]) assert is_binary(response["prev"]) assert response["partOf"] == "http://localhost/users/test/outbox" assert Enum.any?(response["orderedItems"]) end end end