Test: More async/sync tweaks.
authorlain <lain@soykaf.club>
Mon, 21 Dec 2020 14:05:56 +0000 (15:05 +0100)
committerlain <lain@soykaf.club>
Mon, 21 Dec 2020 14:05:56 +0000 (15:05 +0100)
test/pleroma/config_test.exs
test/pleroma/http/adapter_helper/gun_test.exs
test/pleroma/web/activity_pub/transmogrifier/user_update_handling_test.exs
test/pleroma/web/admin_api/controllers/config_controller_test.exs
test/pleroma/web/mastodon_api/controllers/domain_block_controller_test.exs
test/pleroma/web/mastodon_api/controllers/instance_controller_test.exs
test/pleroma/web/mastodon_api/update_credentials_test.exs
test/pleroma/web/plugs/ensure_public_or_authenticated_plug_test.exs
test/pleroma/web/plugs/user_enabled_plug_test.exs
test/pleroma/web/rel_me_test.exs
test/pleroma/web/twitter_api/remote_follow_controller_test.exs

index ac7c8bba9c0b53704c726a833430d7fd12a41cee..f524d90ddfd9b11b503d06b83bdb181b9f12bf0f 100644 (file)
@@ -3,7 +3,7 @@
 # SPDX-License-Identifier: AGPL-3.0-only
 
 defmodule Pleroma.ConfigTest do
-  use Pleroma.DataCase, async: true
+  use Pleroma.DataCase
 
   test "get/1 with an atom" do
     assert Pleroma.Config.get(:instance) == Application.get_env(:pleroma, :instance)
index 80589c73d5f452cdccb64d4b164afc23055464f7..487d2e7c17eb14a08f4b90dd433405e407f4f81d 100644 (file)
@@ -3,7 +3,7 @@
 # SPDX-License-Identifier: AGPL-3.0-only
 
 defmodule Pleroma.HTTP.AdapterHelper.GunTest do
-  use ExUnit.Case, async: true
+  use ExUnit.Case
   use Pleroma.Tests.Helpers
 
   import Mox
index 326466f7fa3797be6e43dbc92515409b014b52b5..8ed5e5e9073c101a6149952b42f78a21f579c44c 100644 (file)
@@ -3,7 +3,7 @@
 # SPDX-License-Identifier: AGPL-3.0-only
 
 defmodule Pleroma.Web.ActivityPub.Transmogrifier.UserUpdateHandlingTest do
-  use Pleroma.DataCase, async: true
+  use Pleroma.DataCase
 
   alias Pleroma.Activity
   alias Pleroma.User
@@ -103,7 +103,7 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier.UserUpdateHandlingTest do
              %{"name" => "foo1", "value" => "updated"}
            ]
 
-    Pleroma.Config.put([:instance, :max_remote_account_fields], 2)
+    clear_config([:instance, :max_remote_account_fields], 2)
 
     update_data =
       update_data
index e6b203e7470685ba5838df176072fd93ed834a2b..df5d74d459674e8ebd9a47b12392b65fc8a9bf82 100644 (file)
@@ -3,7 +3,7 @@
 # SPDX-License-Identifier: AGPL-3.0-only
 
 defmodule Pleroma.Web.AdminAPI.ConfigControllerTest do
-  use Pleroma.Web.ConnCase, async: true
+  use Pleroma.Web.ConnCase
 
   import ExUnit.CaptureLog
   import Pleroma.Factory
index 66465450003c213770b0b7ffa583eeee019b9d75..b10aa6966fdf2283d02ee51273267972d0bcfe1f 100644 (file)
@@ -3,6 +3,7 @@
 # SPDX-License-Identifier: AGPL-3.0-only
 
 defmodule Pleroma.Web.MastodonAPI.DomainBlockControllerTest do
+  # TODO: Should not need Cachex
   use Pleroma.Web.ConnCase
 
   alias Pleroma.User
index 605df6ed66b2fb841dd610067857fc7b8e603cfe..71a170240a178429e195b9add04354478c85f7fd 100644 (file)
@@ -3,6 +3,7 @@
 # SPDX-License-Identifier: AGPL-3.0-only
 
 defmodule Pleroma.Web.MastodonAPI.InstanceControllerTest do
+  # TODO: Should not need Cachex
   use Pleroma.Web.ConnCase
 
   alias Pleroma.User
index ed1921c9145d2b503b6a1c7160bdab4cbba89961..023726468ef070892b7ee9808ddcc633da2753ea 100644 (file)
@@ -11,8 +11,6 @@ defmodule Pleroma.Web.MastodonAPI.UpdateCredentialsTest do
   import Mock
   import Pleroma.Factory
 
-  setup do: clear_config([:instance, :max_account_fields])
-
   describe "updating credentials" do
     setup do: oauth_access(["write:accounts"])
     setup :request_content_type
@@ -446,7 +444,7 @@ defmodule Pleroma.Web.MastodonAPI.UpdateCredentialsTest do
                |> patch("/api/v1/accounts/update_credentials", %{"fields_attributes" => fields})
                |> json_response_and_validate_schema(403)
 
-      Pleroma.Config.put([:instance, :max_account_fields], 1)
+      clear_config([:instance, :max_account_fields], 1)
 
       fields = [
         %{"name" => "foo", "value" => "bar"},
index 211443a55033f91bfd88d928a267c6c838cf8ec5..9f15f5c936fa451ae025b3c303524ab86c6d2d98 100644 (file)
@@ -3,7 +3,7 @@
 # SPDX-License-Identifier: AGPL-3.0-only
 
 defmodule Pleroma.Web.Plugs.EnsurePublicOrAuthenticatedPlugTest do
-  use Pleroma.Web.ConnCase, async: true
+  use Pleroma.Web.ConnCase
 
   alias Pleroma.Config
   alias Pleroma.User
index 71c56f03a4d2a6c86a566a8f1c314ba633fa1f0a..e9c9e5f3e0e4366a3e357690c48b58847a410365 100644 (file)
@@ -3,7 +3,7 @@
 # SPDX-License-Identifier: AGPL-3.0-only
 
 defmodule Pleroma.Web.Plugs.UserEnabledPlugTest do
-  use Pleroma.Web.ConnCase, async: true
+  use Pleroma.Web.ConnCase
 
   alias Pleroma.Web.Plugs.UserEnabledPlug
   import Pleroma.Factory
index 40c4e480134204901e3393c58859c7a3ceabc483..811cb0893e8a87b74ebd858097d07894ae349c05 100644 (file)
@@ -3,7 +3,7 @@
 # SPDX-License-Identifier: AGPL-3.0-only
 
 defmodule Pleroma.Web.RelMeTest do
-  use Pleroma.DataCase, async: true
+  use Pleroma.DataCase
 
   setup_all do
     Tesla.Mock.mock_global(fn env -> apply(HttpRequestMock, :request, [env]) end)
index a3e784d13b7c5ff9f420e37e96a7d12cd7b61e48..dfe5b02bed67811a17cebf426c129b9389fd4fdd 100644 (file)
@@ -14,18 +14,27 @@ defmodule Pleroma.Web.TwitterAPI.RemoteFollowControllerTest do
   import Pleroma.Factory
   import Ecto.Query
 
-  setup do
-    Tesla.Mock.mock(fn env -> apply(HttpRequestMock, :request, [env]) end)
-    :ok
-  end
-
   setup_all do: clear_config([:instance, :federating], true)
-  setup do: clear_config([:instance])
-  setup do: clear_config([:frontend_configurations, :pleroma_fe])
   setup do: clear_config([:user, :deny_follow_blocked])
 
   describe "GET /ostatus_subscribe - remote_follow/2" do
     test "adds status to pleroma instance if the `acct` is a status", %{conn: conn} do
+      Tesla.Mock.mock(fn
+        %{method: :get, url: "https://mastodon.social/users/emelie/statuses/101849165031453009"} ->
+          %Tesla.Env{
+            status: 200,
+            headers: [{"content-type", "application/activity+json"}],
+            body: File.read!("test/fixtures/tesla_mock/status.emelie.json")
+          }
+
+        %{method: :get, url: "https://mastodon.social/users/emelie"} ->
+          %Tesla.Env{
+            status: 200,
+            headers: [{"content-type", "application/activity+json"}],
+            body: File.read!("test/fixtures/tesla_mock/emelie.json")
+          }
+      end)
+
       assert conn
              |> get(
                remote_follow_path(conn, :follow, %{
@@ -36,6 +45,15 @@ defmodule Pleroma.Web.TwitterAPI.RemoteFollowControllerTest do
     end
 
     test "show follow account page if the `acct` is a account link", %{conn: conn} do
+      Tesla.Mock.mock(fn
+        %{method: :get, url: "https://mastodon.social/users/emelie"} ->
+          %Tesla.Env{
+            status: 200,
+            headers: [{"content-type", "application/activity+json"}],
+            body: File.read!("test/fixtures/tesla_mock/emelie.json")
+          }
+      end)
+
       response =
         conn
         |> get(remote_follow_path(conn, :follow, %{acct: "https://mastodon.social/users/emelie"}))
@@ -45,6 +63,15 @@ defmodule Pleroma.Web.TwitterAPI.RemoteFollowControllerTest do
     end
 
     test "show follow page if the `acct` is a account link", %{conn: conn} do
+      Tesla.Mock.mock(fn
+        %{method: :get, url: "https://mastodon.social/users/emelie"} ->
+          %Tesla.Env{
+            status: 200,
+            headers: [{"content-type", "application/activity+json"}],
+            body: File.read!("test/fixtures/tesla_mock/emelie.json")
+          }
+      end)
+
       user = insert(:user)
 
       response =
@@ -56,7 +83,14 @@ defmodule Pleroma.Web.TwitterAPI.RemoteFollowControllerTest do
       assert response =~ "Remote follow"
     end
 
-    test "show follow page with error when user cannot fecth by `acct` link", %{conn: conn} do
+    test "show follow page with error when user can not be fetched by `acct` link", %{conn: conn} do
+      Tesla.Mock.mock(fn
+        %{method: :get, url: "https://mastodon.social/users/not_found"} ->
+          %Tesla.Env{
+            status: 404
+          }
+      end)
+
       user = insert(:user)
 
       assert capture_log(fn ->