diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/mix/tasks/pleroma/instance_test.exs | 11 | ||||
| -rw-r--r-- | test/mix/tasks/pleroma/release_env_test.exs | 30 | ||||
| -rw-r--r-- | test/pleroma/user_search_test.exs | 2 | ||||
| -rw-r--r-- | test/pleroma/user_test.exs | 4 | ||||
| -rw-r--r-- | test/pleroma/web/activity_pub/activity_pub_test.exs | 16 | ||||
| -rw-r--r-- | test/pleroma/web/admin_api/search_test.exs | 2 | ||||
| -rw-r--r-- | test/pleroma/web/metadata/providers/restrict_indexing_test.exs | 4 | ||||
| -rw-r--r-- | test/pleroma/web/metadata_test.exs | 8 | ||||
| -rw-r--r-- | test/support/factory.ex | 2 | 
9 files changed, 67 insertions, 12 deletions
| diff --git a/test/mix/tasks/pleroma/instance_test.exs b/test/mix/tasks/pleroma/instance_test.exs index 8a02710ee..fe69a2def 100644 --- a/test/mix/tasks/pleroma/instance_test.exs +++ b/test/mix/tasks/pleroma/instance_test.exs @@ -5,6 +5,8 @@  defmodule Mix.Tasks.Pleroma.InstanceTest do    use ExUnit.Case +  @release_env_file "./test/pleroma.test.env" +    setup do      File.mkdir_p!(tmp_path()) @@ -16,6 +18,8 @@ defmodule Mix.Tasks.Pleroma.InstanceTest do          File.rm_rf(Path.join(static_dir, "robots.txt"))        end +      if File.exists?(@release_env_file), do: File.rm_rf(@release_env_file) +        Pleroma.Config.put([:instance, :static_dir], static_dir)      end) @@ -69,7 +73,9 @@ defmodule Mix.Tasks.Pleroma.InstanceTest do          "--dedupe-uploads",          "n",          "--anonymize-uploads", -        "n" +        "n", +        "--release-env-file", +        @release_env_file        ])      end @@ -91,6 +97,9 @@ defmodule Mix.Tasks.Pleroma.InstanceTest do      assert generated_config =~ "filters: [Pleroma.Upload.Filter.ExifTool]"      assert File.read!(tmp_path() <> "setup.psql") == generated_setup_psql()      assert File.exists?(Path.expand("./test/instance/static/robots.txt")) +    assert File.exists?(@release_env_file) + +    assert File.read!(@release_env_file) =~ ~r/^RELEASE_COOKIE=.*/    end    defp generated_setup_psql do diff --git a/test/mix/tasks/pleroma/release_env_test.exs b/test/mix/tasks/pleroma/release_env_test.exs new file mode 100644 index 000000000..519f1eba9 --- /dev/null +++ b/test/mix/tasks/pleroma/release_env_test.exs @@ -0,0 +1,30 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/> +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Mix.Tasks.Pleroma.ReleaseEnvTest do +  use ExUnit.Case +  import ExUnit.CaptureIO, only: [capture_io: 1] + +  @path "config/pleroma.test.env" + +  def do_clean do +    if File.exists?(@path) do +      File.rm_rf(@path) +    end +  end + +  setup do +    do_clean() +    on_exit(fn -> do_clean() end) +    :ok +  end + +  test "generate pleroma.env" do +    assert capture_io(fn -> +             Mix.Tasks.Pleroma.ReleaseEnv.run(["gen", "--path", @path, "--force"]) +           end) =~ "The file generated" + +    assert File.read!(@path) =~ "RELEASE_COOKIE=" +  end +end diff --git a/test/pleroma/user_search_test.exs b/test/pleroma/user_search_test.exs index c4b805005..31d787ffa 100644 --- a/test/pleroma/user_search_test.exs +++ b/test/pleroma/user_search_test.exs @@ -66,7 +66,7 @@ defmodule Pleroma.UserSearchTest do      end      test "excludes users when discoverable is false" do -      insert(:user, %{nickname: "john 3000", discoverable: false}) +      insert(:user, %{nickname: "john 3000", is_discoverable: false})        insert(:user, %{nickname: "john 3001"})        users = User.search("john") diff --git a/test/pleroma/user_test.exs b/test/pleroma/user_test.exs index d8ac652af..7220ce846 100644 --- a/test/pleroma/user_test.exs +++ b/test/pleroma/user_test.exs @@ -1467,7 +1467,7 @@ defmodule Pleroma.UserTest do          pleroma_settings_store: %{"q" => "x"},          fields: [%{"gg" => "qq"}],          raw_fields: [%{"gg" => "qq"}], -        discoverable: true, +        is_discoverable: true,          also_known_as: ["https://lol.olo/users/loll"]        }) @@ -1509,7 +1509,7 @@ defmodule Pleroma.UserTest do               pleroma_settings_store: %{},               fields: [],               raw_fields: [], -             discoverable: false, +             is_discoverable: false,               also_known_as: []             } = user    end diff --git a/test/pleroma/web/activity_pub/activity_pub_test.exs b/test/pleroma/web/activity_pub/activity_pub_test.exs index 1a8a844ca..e6b6086e6 100644 --- a/test/pleroma/web/activity_pub/activity_pub_test.exs +++ b/test/pleroma/web/activity_pub/activity_pub_test.exs @@ -752,6 +752,22 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubTest do      refute repeat_activity in activities    end +  test "returns your own posts regardless of mute" do +    user = insert(:user) +    muted = insert(:user) + +    {:ok, muted_post} = CommonAPI.post(muted, %{status: "Im stupid"}) + +    {:ok, reply} = +      CommonAPI.post(user, %{status: "I'm muting you", in_reply_to_status_id: muted_post.id}) + +    {:ok, _} = User.mute(user, muted) + +    [activity] = ActivityPub.fetch_activities([], %{muting_user: user, skip_preload: true}) + +    assert activity.id == reply.id +  end +    test "doesn't return muted activities" do      activity_one = insert(:note_activity)      activity_two = insert(:note_activity) diff --git a/test/pleroma/web/admin_api/search_test.exs b/test/pleroma/web/admin_api/search_test.exs index d88867c52..ceec64f1e 100644 --- a/test/pleroma/web/admin_api/search_test.exs +++ b/test/pleroma/web/admin_api/search_test.exs @@ -180,7 +180,7 @@ defmodule Pleroma.Web.AdminAPI.SearchTest do      test "it returns non-discoverable users" do        insert(:user) -      insert(:user, discoverable: false) +      insert(:user, is_discoverable: false)        {:ok, _results, total} = Search.user() diff --git a/test/pleroma/web/metadata/providers/restrict_indexing_test.exs b/test/pleroma/web/metadata/providers/restrict_indexing_test.exs index 6b3a65372..282d132c8 100644 --- a/test/pleroma/web/metadata/providers/restrict_indexing_test.exs +++ b/test/pleroma/web/metadata/providers/restrict_indexing_test.exs @@ -14,13 +14,13 @@ defmodule Pleroma.Web.Metadata.Providers.RestrictIndexingTest do      test "for local user" do        assert Pleroma.Web.Metadata.Providers.RestrictIndexing.build_tags(%{ -               user: %Pleroma.User{local: true, discoverable: true} +               user: %Pleroma.User{local: true, is_discoverable: true}               }) == []      end      test "for local user when discoverable is false" do        assert Pleroma.Web.Metadata.Providers.RestrictIndexing.build_tags(%{ -               user: %Pleroma.User{local: true, discoverable: false} +               user: %Pleroma.User{local: true, is_discoverable: false}               }) == [{:meta, [name: "robots", content: "noindex, noarchive"], []}]      end    end diff --git a/test/pleroma/web/metadata_test.exs b/test/pleroma/web/metadata_test.exs index ca6cbe67f..8fb946540 100644 --- a/test/pleroma/web/metadata_test.exs +++ b/test/pleroma/web/metadata_test.exs @@ -16,14 +16,14 @@ defmodule Pleroma.Web.MetadataTest do      end      test "for local user" do -      user = insert(:user, discoverable: false) +      user = insert(:user, is_discoverable: false)        assert Pleroma.Web.Metadata.build_tags(%{user: user}) =~                 "<meta content=\"noindex, noarchive\" name=\"robots\">"      end      test "for local user set to discoverable" do -      user = insert(:user, discoverable: true) +      user = insert(:user, is_discoverable: true)        refute Pleroma.Web.Metadata.build_tags(%{user: user}) =~                 "<meta content=\"noindex, noarchive\" name=\"robots\">" @@ -33,14 +33,14 @@ defmodule Pleroma.Web.MetadataTest do    describe "no metadata for private instances" do      test "for local user set to discoverable" do        clear_config([:instance, :public], false) -      user = insert(:user, bio: "This is my secret fedi account bio", discoverable: true) +      user = insert(:user, bio: "This is my secret fedi account bio", is_discoverable: true)        assert "" = Pleroma.Web.Metadata.build_tags(%{user: user})      end      test "search exclusion metadata is included" do        clear_config([:instance, :public], false) -      user = insert(:user, bio: "This is my secret fedi account bio", discoverable: false) +      user = insert(:user, bio: "This is my secret fedi account bio", is_discoverable: false)        assert ~s(<meta content="noindex, noarchive" name="robots">) ==                 Pleroma.Web.Metadata.build_tags(%{user: user}) diff --git a/test/support/factory.ex b/test/support/factory.ex index fb82be0c4..80b882ee4 100644 --- a/test/support/factory.ex +++ b/test/support/factory.ex @@ -31,7 +31,7 @@ defmodule Pleroma.Factory do        nickname: sequence(:nickname, &"nick#{&1}"),        password_hash: Pbkdf2.hash_pwd_salt("test"),        bio: sequence(:bio, &"Tester Number #{&1}"), -      discoverable: true, +      is_discoverable: true,        last_digest_emailed_at: NaiveDateTime.utc_now(),        last_refreshed_at: NaiveDateTime.utc_now(),        notification_settings: %Pleroma.User.NotificationSetting{}, | 
