diff options
author | Roman Chvanikov <chvanikoff@pm.me> | 2020-07-30 21:43:11 +0300 |
---|---|---|
committer | Roman Chvanikov <chvanikoff@pm.me> | 2020-07-30 21:46:00 +0300 |
commit | 5d5287989a8639d23a35d386294567efdde5bd6d (patch) | |
tree | a8faf938254f9a24eda4f376e6b32282e1b4f8a8 /test/web/controllers/frontend | |
parent | ef12eb5e12ba34e78428c0f070efe328d94587ac (diff) | |
download | pleroma-5d5287989a8639d23a35d386294567efdde5bd6d.tar.gz |
Migrate Redirect controller
Diffstat (limited to 'test/web/controllers/frontend')
-rw-r--r-- | test/web/controllers/frontend/pleroma_controller_test.exs | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/test/web/controllers/frontend/pleroma_controller_test.exs b/test/web/controllers/frontend/pleroma_controller_test.exs new file mode 100644 index 000000000..7c91d4581 --- /dev/null +++ b/test/web/controllers/frontend/pleroma_controller_test.exs @@ -0,0 +1,76 @@ +defmodule Pleroma.Web.Frontend.PleromaControllerTest do + use Pleroma.Web.ConnCase + import Pleroma.Factory + + test "GET /pleroma/admin -> /pleroma/admin/", %{conn: conn} do + assert redirected_to(get(conn, "/pleroma/admin")) =~ "/pleroma/admin/" + end + + describe "neither preloaded data nor metadata attached to" do + test "GET /registration/:token", %{conn: conn} do + response = get(conn, "/registration/foo") + + assert html_response(response, 200) =~ "<!--server-generated-meta-->" + end + + test "GET /*path", %{conn: conn} do + assert conn + |> get("/foo") + |> html_response(200) =~ "<!--server-generated-meta-->" + end + end + + describe "preloaded data and metadata attached to" do + test "GET /:maybe_nickname_or_id", %{conn: conn} do + user = insert(:user) + user_missing = get(conn, "/foo") + user_present = get(conn, "/#{user.nickname}") + + assert(html_response(user_missing, 200) =~ "<!--server-generated-meta-->") + refute html_response(user_present, 200) =~ "<!--server-generated-meta-->" + assert html_response(user_present, 200) =~ "initial-results" + end + + test "GET /*path", %{conn: conn} do + assert conn + |> get("/foo") + |> html_response(200) =~ "<!--server-generated-meta-->" + + refute conn + |> get("/foo/bar") + |> html_response(200) =~ "<!--server-generated-meta-->" + end + end + + describe "preloaded data is attached to" do + test "GET /main/public", %{conn: conn} do + public_page = get(conn, "/main/public") + + refute html_response(public_page, 200) =~ "<!--server-generated-meta-->" + assert html_response(public_page, 200) =~ "initial-results" + end + + test "GET /main/all", %{conn: conn} do + public_page = get(conn, "/main/all") + + refute html_response(public_page, 200) =~ "<!--server-generated-meta-->" + assert html_response(public_page, 200) =~ "initial-results" + end + end + + test "GET /api*path", %{conn: conn} do + assert conn + |> get("/api/foo") + |> json_response(404) == %{"error" => "Not implemented"} + end + + test "OPTIONS /*path", %{conn: conn} do + assert conn + |> options("/foo") + |> response(204) == "" + + assert conn + |> options("/foo/bar") + |> response(204) == "" + end +end |