logo

pleroma

My custom branche(s) on git.pleroma.social/pleroma/pleroma git clone https://anongit.hacktivis.me/git/pleroma.git/

database_search_test.exs (1454B)


  1. # Pleroma: A lightweight social networking server
  2. # Copyright © 2017-2022 Pleroma Authors <https://pleroma.social/>
  3. # SPDX-License-Identifier: AGPL-3.0-only
  4. defmodule Pleroma.Search.DatabaseSearchTest do
  5. alias Pleroma.Search.DatabaseSearch, as: Search
  6. alias Pleroma.Web.CommonAPI
  7. import Pleroma.Factory
  8. use Pleroma.DataCase, async: true
  9. test "it finds something" do
  10. user = insert(:user)
  11. {:ok, post} = CommonAPI.post(user, %{status: "it's wednesday my dudes"})
  12. [result] = Search.search(nil, "wednesday")
  13. assert result.id == post.id
  14. end
  15. test "it finds local-only posts for authenticated users" do
  16. user = insert(:user)
  17. reader = insert(:user)
  18. {:ok, post} = CommonAPI.post(user, %{status: "it's wednesday my dudes", visibility: "local"})
  19. [result] = Search.search(reader, "wednesday")
  20. assert result.id == post.id
  21. end
  22. test "it does not find local-only posts for anonymous users" do
  23. user = insert(:user)
  24. {:ok, _post} = CommonAPI.post(user, %{status: "it's wednesday my dudes", visibility: "local"})
  25. assert [] = Search.search(nil, "wednesday")
  26. end
  27. test "using websearch_to_tsquery" do
  28. user = insert(:user)
  29. {:ok, _post} = CommonAPI.post(user, %{status: "it's wednesday my dudes"})
  30. {:ok, other_post} = CommonAPI.post(user, %{status: "it's wednesday my bros"})
  31. assert [result] = Search.search(nil, "wednesday -dudes")
  32. assert result.id == other_post.id
  33. end
  34. end